Author: kfujino
Date: Mon Apr 19 10:07:16 2010
New Revision: 935509
URL: http://svn.apache.org/viewvc?rev=935509&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49150
Modified:
tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java
Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java?rev=935509&r1=935508&r2=935509&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java Mon Apr
19 10:07:16 2010
@@ -21,6 +21,7 @@ import java.io.IOException;
import java.util.Iterator;
import org.apache.catalina.LifecycleException;
+import org.apache.catalina.LifecycleState;
import org.apache.catalina.Session;
import org.apache.catalina.ha.CatalinaCluster;
import org.apache.catalina.ha.ClusterManager;
@@ -198,6 +199,11 @@ public class BackupManager extends Stand
*/
@Override
protected synchronized void startInternal() throws LifecycleException {
+
+ if (!initialized) init();
+
+ // Force initialization of the random number generator
+ generateSessionId();
try {
cluster.registerManager(this);
@@ -213,8 +219,7 @@ public class BackupManager extends Stand
log.error("Unable to start BackupManager",x);
throw new LifecycleException("Failed to start BackupManager",x);
}
-
- super.startInternal();
+ setState(LifecycleState.STARTING);
}
public String getMapName() {
@@ -238,14 +243,22 @@ public class BackupManager extends Stand
@Override
protected synchronized void stopInternal() throws LifecycleException {
- super.stopInternal();
-
+ if (log.isDebugEnabled())
+ log.debug("Stopping");
+
+ setState(LifecycleState.STOPPING);
+
LazyReplicatedMap map = (LazyReplicatedMap)sessions;
if ( map!=null ) {
map.breakdown();
}
cluster.removeManager(this);
+ this.random = null;
+
+ if( initialized ) {
+ destroy();
+ }
}
@Override
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]