Author: fhanik
Date: Mon May 21 02:07:25 2007
New Revision: 540075
URL: http://svn.apache.org/viewvc?view=rev&rev=540075
Log:
remove locking from memberAdded and memberDisappeared, as it can lock with
sending messages
Modified:
tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/OrderInterceptor.java
Modified:
tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/OrderInterceptor.java
URL:
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/OrderInterceptor.java?view=diff&rev=540075&r1=540074&r2=540075
==============================================================================
---
tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/OrderInterceptor.java
(original)
+++
tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/OrderInterceptor.java
Mon May 21 02:07:25 2007
@@ -162,37 +162,17 @@
}
public void memberAdded(Member member) {
- //reset counters
- try {
- inLock.writeLock().lock();
- getInCounter(member);
- }finally {
- inLock.writeLock().unlock();
- }
- try {
- outLock.writeLock().lock();
- getOutCounter(member);
- }finally {
- outLock.writeLock().unlock();
- }
+ //reset counters - lock free
+ getInCounter(member);
+ getOutCounter(member);
//notify upwards
super.memberAdded(member);
}
public void memberDisappeared(Member member) {
- //reset counters
- try {
- inLock.writeLock().lock();
- incounter.remove(member);
- }finally {
- inLock.writeLock().unlock();
- }
- try {
- outLock.writeLock().lock();
- outcounter.remove(member);
- }finally {
- outLock.writeLock().unlock();
- }
+ //reset counters - lock free
+ incounter.remove(member);
+ outcounter.remove(member);
//clear the remaining queue
processLeftOvers(member,true);
//notify upwards
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]