Author: kfujino Date: Tue Jun 21 11:33:03 2011 New Revision: 1137962 URL: http://svn.apache.org/viewvc?rev=1137962&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=51306. Avoid NPE when handleSESSION_EXPIRED is processed while handleSESSION_CREATED is being processed.
Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1137962&r1=1137961&r2=1137962&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Tue Jun 21 11:33:03 2011 @@ -1561,7 +1561,7 @@ public class DeltaManager extends Cluste session.setPrimarySession(false); session.setCreationTime(msg.getTimestamp()); // use container maxInactiveInterval so that session will expire correctly in case of primary transfer - session.setMaxInactiveInterval(getMaxInactiveInterval()); + session.setMaxInactiveInterval(getMaxInactiveInterval(), false); session.access(); session.setId(msg.getSessionID(), notifySessionListenersOnReplication); session.resetDeltaRequest(); Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java?rev=1137962&r1=1137961&r2=1137962&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java Tue Jun 21 11:33:03 2011 @@ -396,7 +396,7 @@ public class DeltaSession extends Standa return; String expiredId = getIdInternal(); - if(expiredId != null && manager != null && + if(notifyCluster && expiredId != null && manager != null && manager instanceof DeltaManager) { DeltaManager dmanager = (DeltaManager)manager; CatalinaCluster cluster = dmanager.getCluster(); Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=1137962&r1=1137961&r2=1137962&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Tue Jun 21 11:33:03 2011 @@ -193,6 +193,12 @@ authenticated session when running with a security manager. (markt) </fix> </changelog> + <changelog> + <fix> + <bug>51306</bug>: Avoid NPE when handleSESSION_EXPIRED is processed + while handleSESSION_CREATED is being processed. (kfujino) + </fix> + </changelog> </subsection> <subsection name="Webapps"> <changelog> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org