Dan Haywood created ISIS-536:
--------------------------------
Summary: Provide the capability to disable concurrency checking in
core through a thread-local
Key: ISIS-536
URL: https://issues.apache.org/jira/browse/ISIS-536
Project: Isis
Issue Type: Improvement
Components: Core
Affects Versions: core-1.2.0
Reporter: Dan Haywood
Assignee: Dan Haywood
Priority: Minor
Fix For: core-1.3.0
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.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira