Issue Type: Bug Bug
Affects Versions: 4.1.7
Assignee: Galder Zamarreno
Created: 25/Sep/12 8:30 AM
Description:

When multiple threads attempt to store a big number of instances of a particular Entity type if paralell (i.e. 50k instances), contention could build up in a cleanup phase of the pending put queue in the PutFromLoadValidator.acquirePutFromLoadLock() logic. The way this can happen is if all the threads register pending puts, let's say for 40k of those instances, and then acquirePutFromLoadLock() gets called. In that case, each thread would have to go through a queue of 40k pending puts in cleanOutdatedPendingPuts(), which would create contention.

The javadoc on top of cleanOutdatedPendingPuts() indicate this was an important step, but having revised it with Brian, it can probably go.

Fix Versions: 5.0.0, 4.1.8
Project: Hibernate ORM
Priority: Major Major
Reporter: Galder Zamarreno
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