|Re: [eclipselink-dev] Bug 341261 - User should be able to add descriptor to connected session while threads doing CRUD operations concurrently.|
Updated patch is ready for review.Added two multithreaded tests: in both the main thread adds new descriptors with either default, or native, or table sequences; while several concurrent tests in one case preallocate sequence numbers; in another insert objects:
tests.simultaneous.AddDescriptorsMultithreadedTest;Updated AbstractTransactionController so that adding descriptors never cause calling clearSequencingListeners method that may derail concurrently committed transaction;
In DatasourcePlatform change sequences map from HashMap to ConcurrentHashMap. Also got rid of iterating directly on sequences map - now clone first then iterate the clone.
Cloning of Login done on several occasions (ConnectionPool.buildConnection, in ConnectionPolicy, in SequencingManager) but none of these cases interested in cloned Platform to be underneath the login. Cloning of Platform cause deep cloning of sequences - each one is recreated on the clone platform. Therefore introduced a new method Login.shalowClone and used it in all three places in core code where Login.clone was used.
On 3/30/2011 5:26 PM, Andrei Ilitchev wrote:
The patch is ready https://bugs.eclipse.org/bugs/show_bug.cgi?id=341261 Thanks, Andrei _______________________________________________ eclipselink-dev mailing list eclipselink-dev@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/eclipselink-dev
Back to the top