Author: markt
Date: Fri Nov 27 18:46:12 2009
New Revision: 884949

URL: http://svn.apache.org/viewvc?rev=884949&view=rev
Log:
Spurious startup errors in the cluster
Although the secondary node is able to retrieve all sessions, the main thread 
doesn't see the changed stateTransfered flag, and thus waits until the transfer 
timeout occurs.
Observed on Solaris. Switching to volatile fixes it.
Port of Rainer's patch (r814024) in trunk

Modified:
    tomcat/tc5.5.x/trunk/STATUS.txt
    
tomcat/tc5.5.x/trunk/container/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaManager.java
    
tomcat/tc5.5.x/trunk/container/modules/ha/src/share/org/apache/catalina/ha/session/DeltaManager.java

Modified: tomcat/tc5.5.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=884949&r1=884948&r2=884949&view=diff
==============================================================================
--- tomcat/tc5.5.x/trunk/STATUS.txt (original)
+++ tomcat/tc5.5.x/trunk/STATUS.txt Fri Nov 27 18:46:12 2009
@@ -84,16 +84,6 @@
   +1: markt
   -1:
 
-* Spurious startup errors in the cluster
-  Although the secondary node is able to retrieve all sessions,
-  the main thread doesn't see the changed stateTransfered flag,
-  and thus waits until the transfer timeout occurs.
-  Observed on Solaris. Switching to volatile fixes it.
-  Backport from trunk: http://svn.apache.org/viewvc?rev=814024&view=rev
-  Need to patch both copies of DeltaManager (ha and cluster).
-  +1: rjung, markt, mturk
-  -1:
-
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46384
   Correct synchronisation problem that leads to cluster members permanently
   disappearing

Modified: 
tomcat/tc5.5.x/trunk/container/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaManager.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaManager.java?rev=884949&r1=884948&r2=884949&view=diff
==============================================================================
--- 
tomcat/tc5.5.x/trunk/container/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaManager.java
 (original)
+++ 
tomcat/tc5.5.x/trunk/container/modules/cluster/src/share/org/apache/catalina/cluster/session/DeltaManager.java
 Fri Nov 27 18:46:12 2009
@@ -129,7 +129,7 @@
 
     private boolean notifySessionListenersOnReplication = true;
 
-    private boolean stateTransfered = false ;
+    private volatile boolean stateTransfered = false ;
 
     private int stateTransferTimeout = 60;
 

Modified: 
tomcat/tc5.5.x/trunk/container/modules/ha/src/share/org/apache/catalina/ha/session/DeltaManager.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/modules/ha/src/share/org/apache/catalina/ha/session/DeltaManager.java?rev=884949&r1=884948&r2=884949&view=diff
==============================================================================
--- 
tomcat/tc5.5.x/trunk/container/modules/ha/src/share/org/apache/catalina/ha/session/DeltaManager.java
 (original)
+++ 
tomcat/tc5.5.x/trunk/container/modules/ha/src/share/org/apache/catalina/ha/session/DeltaManager.java
 Fri Nov 27 18:46:12 2009
@@ -111,7 +111,7 @@
     private boolean expireSessionsOnShutdown = false;
     private boolean notifyListenersOnReplication = true;
     private boolean notifySessionListenersOnReplication = true;
-    private boolean stateTransfered = false ;
+    private volatile boolean stateTransfered = false ;
     private int stateTransferTimeout = 60;
     private boolean sendAllSessions = true;
     private boolean sendClusterDomainOnly = true ;



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to