JBoss Remoting SVN: r6420 - in remoting2/branches/2.5.4.SP2_JBREM-1297: src/main/org/jboss/remoting and 9 other directories.
by jboss-remoting-commits@lists.jboss.org
Author: raggz
Date: 2011-11-30 15:52:18 -0500 (Wed, 30 Nov 2011)
New Revision: 6420
Modified:
remoting2/branches/2.5.4.SP2_JBREM-1297/
remoting2/branches/2.5.4.SP2_JBREM-1297/src/main/org/jboss/remoting/Client.java
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/http/marshal/HttpContentTypeTestCase.java
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/mbeanserver/jboss/MBeanServerJBossTestClient.java
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/mbeanserver/platform/MBeanServerPlatformTestClient.java
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/multihome/remoting-servlet-service.xml
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/nopreservelines/remoting-servlet-service.xml
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/preservelines/remoting-servlet-service.xml
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/remoting-servlet-service.xml
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/ssl/keystore
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/ssl/remoting-servlet-service.xml
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/ssl/truststore
remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/socket/ssl/timeout/SSLSocketWriteTimeoutTestCase.java
Log:
JBPAPP-7631; Back port of JBREM-1297 - part1
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297
___________________________________________________________________
Added: svn:mergeinfo
+ /remoting2/branches/2.x:6401
Modified: remoting2/branches/2.5.4.SP2_JBREM-1297/src/main/org/jboss/remoting/Client.java
===================================================================
--- remoting2/branches/2.5.4.SP2_JBREM-1297/src/main/org/jboss/remoting/Client.java 2011-11-30 20:06:10 UTC (rev 6419)
+++ remoting2/branches/2.5.4.SP2_JBREM-1297/src/main/org/jboss/remoting/Client.java 2011-11-30 20:52:18 UTC (rev 6420)
@@ -1904,6 +1904,12 @@
}
}
+
+ static Object getConnectionValidatorLock()
+ {
+ return connectionValidatorLock;
+ }
+
// Protected ------------------------------------------------------------------------------------
// Private --------------------------------------------------------------------------------------
@@ -2040,17 +2046,25 @@
//
// 1. a. This method calls MicroRemoteClientInvoker.establishLease()
// b. MicroRemoteClientInvoker.establishLease() synchronizes on MicroRemoteClientInvoker.clientLeaseLock
- // and calls Client.addConnectionListener()
- // c. Client.addConnectionListener() synchronizes on Client.connectionValidatorLock
+ // c. MicroRemoteClientInvoker.establishLease() calls Client.addConnectionListener()
+ // d. Client.addConnectionListener() synchronizes on Client.connectionValidatorLock
//
- // 2. a. Client.addConnectionListener() synchronizes on Client.connectionValidatorLock and calls
- // new ConnectionValidator()
- // b. new ConnectionValidator() calls MicroRemoteClientInvoker.getLeasePinger(), which
- // synchronizes on MicroRemoteClientInvoker.clientLeaseLock
+ // 2. a. Client.addConnectionListener() synchronizes on Client.connectionValidatorLock
+ // b. Client.addConnectionListener() calls new ConnectionValidator()
+ // c. new ConnectionValidator() calls MicroRemoteClientInvoker.getLeasePinger()
+ // d. MicroRemoteClientInvoker.getLeasePinger() synchronizes on MicroRemoteClientInvoker.clientLeaseLock
//
- // By synchronizing on connectionValidatorLock here, we assure that both sequences acquire
+ // 3. a. ConnectionValidator$WaitOnConnectionCheckTimerTask.run() synchronizes on Client.connectionValidatorLock
+ // b. ConnectionValidator$WaitOnConnectionCheckTimerTask.run() calls MicroRemoteClientInvoker.terminateLease()
+ // c. MicroRemoteClientInvoker.terminateLease() synchronizes on MicroRemoteClientInvoker.clientLeaseLock
+ // d. MicroRemoteClientInvoker.terminateLease() calls LeasePinger.stopPing()
+ // e. LeasePinger.stopPing() calls Client.notifyListeners()
+ // f. Client.notifyListeners() synchronizes on Client.connectionValidatorLock
+ //
+ // By synchronizing on connectionValidatorLock here, we assure that all sequences acquire
// Client.connectionValidatorLock first and then acquire MicroRemoteClientInvoker.clientLeaseLock.
//
+ // See JBREM-1242 and JBREM-1297.
synchronized(connectionValidatorLock)
{
invoker.establishLease(sessionId, temp, leasePeriod);
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/http/marshal/HttpContentTypeTestCase.java
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/mbeanserver/jboss/MBeanServerJBossTestClient.java
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/mbeanserver/platform/MBeanServerPlatformTestClient.java
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/multihome/remoting-servlet-service.xml
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/nopreservelines/remoting-servlet-service.xml
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/preservelines/remoting-servlet-service.xml
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/remoting-servlet-service.xml
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/ssl/keystore
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/ssl/remoting-servlet-service.xml
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/servlet/ssl/truststore
___________________________________________________________________
Deleted: svn:mergeinfo
-
Property changes on: remoting2/branches/2.5.4.SP2_JBREM-1297/src/tests/org/jboss/test/remoting/transport/socket/ssl/timeout/SSLSocketWriteTimeoutTestCase.java
___________________________________________________________________
Deleted: svn:mergeinfo
-