There might be a few SDK projects that still use TransactionUtil, but this checkin gets rid of
its use otherwise.
I took a glance over the areas of the code that use UserTransaction directly and didn't see any
transactionally wrapped code that desperately needed to be put into a retry loop (i.e. write
transactions in a concurrent scenario). If you spot any that you think might qualify, let me know.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@6220 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- A patch will assign initial version values to the entities
- Deprecated TransactionUtil in favour of the RetryingTransactionHelper
- Renamed RetryingTransactionHelper.Callback to RetryingTransactionHelper.RetryingTransactionCallback
The name Callback clashes with many other classes in the classpath
- Moved loads of components to be included in the retry behaviour
Duplicate name checks
- This is done using a query, but the entity update is not written to the database early
- Concurrent adds of the same-named child node will only fail at the end of the transaction
- TODO: Detect the duplicate violation during transaction retrying
Workaround for ADMLuceneTest
- Disable session size resource management during tests
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5823 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
svn merge svn://svn.alfresco.com:3691/alfresco/BRANCHES/V2.0@5141 svn://svn.alfresco.com:3691/alfresco/BRANCHES/V2.0@51352 .
- FLOSS
- Some files will need a follow-up
-root/projects/repository/source/java/org/alfresco/repo/avm/wf/AVMRemoveWFStoreHandler.java (not yet on HEAD: 5094)
-root/projects/repository/source/java/org/alfresco/filesys/server/state/FileStateLockManager.java (not yet on HEAD: 5093)
-onContentUpdateRecord (not on HEAD)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5167 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
go through DeletedNode implementation to make sure it's fully first class.
Adding some debugging code that throws exceptions if it detects certain kinds of races.
It can be turned off but I want to leave it on until GA. And, you'll need to start from a clean
database as the AVM schema have changed.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4683 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
executeInUserTransaction().
Changed the on close callback for write listeners to use a RetryingTransaction.
The point of this exercise is to make it possible for clients of the core server
to ignore transient resource contention failures. CIFS, for example, will be able
to take advantage of this, since a transient error condition currently results in a dead
share.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4597 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
and the app still works.
Added new convenience target to common.xml, run-junit. It syntactically like
run-test but doesn't use the junit ant task, which has the unfortunate characteristic
of buffering stdout and stderr in memory. This may be fine in many cases but wreaks
havoc with memory use if you're test spews lots of diagnostics.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4577 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Extended <mandatory> definition in the DD.
The "mandatory" properties in our system have, until now, been optional, i.e. the integrity has not been enforced.
It is possible to have
<mandatory enforced="true">true</mandatory>, which means "mandatory and enforced", but
<mandatory enforced="false">true</mandatory>, which means "mandatory but not enforced".
Our system properties have been marked as "mandatory".
Dublin core has had the properties marked as "required". Currently, if the Dublin Core is added, the node is tagged with sys:incomplete.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2562 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261