Uploaded image for project: 'Causeway'
  1. Causeway
  2. CAUSEWAY-536

Provide the capability to disable concurrency checking in core through a thread-local

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • core-1.2.0
    • core-1.3.0
    • Core
    • None

    Description

      In some situations it may be necessary to temporarily disable concurrency checking.

      One example is when running integration test fixtures, where we simply want to delete all existing data, and don't care about any existing state.

      However, another might be to get better control of callbacks from the JDO objectstore. For example, on the preDelete callback to the FrameworkSynchronizer, we've seen concurrency exceptions, but these might be as the a result of JDO bumping up the version of the adapter being deleted. Further research is required here. One possibility though is that the preDelete might require checking to be temporarily disabled for the thread, so that when the callback fires, it knows not to do the concurrency check.

      This ticket is to provide this thread local capability. Analysis of the codebase shows that - when configured with Wicket and the JDO objectstore - the ConcurrencyException is thrown either via AdapterManager, or in the Framework Synchronizer. Both of these should honour the value of the thread local.

      Attachments

        Activity

          People

            danhaywood Daniel Keir Haywood
            danhaywood Daniel Keir Haywood
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: