Author: kfujino
Date: Mon May 10 08:39:48 2010
New Revision: 942683

URL: http://svn.apache.org/viewvc?rev=942683&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49116
If session is already invalid, expire session to prevent memory leak.

Modified:
    tomcat/tc6.0.x/trunk/STATUS.txt
    tomcat/tc6.0.x/trunk/java/org/apache/catalina/session/StandardManager.java
    tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=942683&r1=942682&r2=942683&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Mon May 10 08:39:48 2010
@@ -215,12 +215,6 @@ PATCHES PROPOSED TO BACKPORT:
   +1: markt, kkolinko
   -1: 
 
-* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49116
-  If session is already invalid, expire session to prevent memory leak. 
-  http://svn.apache.org/viewvc?view=revision&revision=933881
-  +1: kfujino, markt, kkolinko
-  -1: 
-
 * sessionCounter and expiredSessions declares as long instead of int.
   http://svn.apache.org/viewvc?view=revision&revision=934337
   +1: kfujino

Modified: 
tomcat/tc6.0.x/trunk/java/org/apache/catalina/session/StandardManager.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/session/StandardManager.java?rev=942683&r1=942682&r2=942683&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/session/StandardManager.java 
(original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/session/StandardManager.java 
Mon May 10 08:39:48 2010
@@ -395,6 +395,12 @@ public class StandardManager
                     session.setManager(this);
                     sessions.put(session.getIdInternal(), session);
                     session.activate();
+                    if (!session.isValidInternal()) {
+                        // If session is already invalid,
+                        // expire session to prevent memory leak.
+                        session.setValid(true);
+                        session.expire();
+                    }
                     sessionCounter++;
                 }
             } catch (ClassNotFoundException e) {

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=942683&r1=942682&r2=942683&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Mon May 10 08:39:48 2010
@@ -92,6 +92,10 @@
         action in the Manager web application. (kkolinko)
       </fix>
       <fix>
+        <bug>49116</bug>: If session is already invalid, expire session to 
+        prevent memory leak. (kfujino)
+      </fix>
+      <fix>
         <bug>49245</bug>: Fix session expiration check in cross-context
         requests. (markt)
       </fix>



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

Reply via email to