Author: ozeigermann Date: Fri Jun 8 14:36:59 2007 New Revision: 545634 URL: http://svn.apache.org/viewvc?view=rev&rev=545634 Log: Free lock owners once they no longer have any locks associated to them.
Modified: jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java Modified: jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java URL: http://svn.apache.org/viewvc/jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java?view=diff&rev=545634&r1=545633&r2=545634 ============================================================================== --- jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java (original) +++ jakarta/commons/proper/transaction/trunk/src/java/org/apache/commons/transaction/locking/GenericLockManager.java Fri Jun 8 14:36:59 2007 @@ -331,6 +331,7 @@ locks.remove(lock); } } + removeOwnerWithoutLocks(ownerId); } /** @@ -362,6 +363,7 @@ if (locks != null) { locks.remove(lock); } + removeOwnerWithoutLocks(ownerId); } /** @@ -528,5 +530,12 @@ } } - + protected void removeOwnerWithoutLocks(Object ownerId) { + synchronized (globalOwners) { + Set locks = (Set) globalOwners.get(ownerId); + if (locks == null || locks.isEmpty()) { + globalOwners.remove(ownerId); + } + } + } } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]