From: markt Date: Tue, 9 Nov 2010 15:31:19 +0000 (+0000) Subject: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=50232 X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=c30bebe5e84b8e52a613655929de30cb4dd38a1c;p=tomcat7.0 Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=50232 Remove dependency between StoreBase and PersistentManager and associated code clean-up. Patch provided by Tiago Batista. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1033024 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/java/org/apache/catalina/session/StoreBase.java b/java/org/apache/catalina/session/StoreBase.java index 46f62fc03..178619e18 100644 --- a/java/org/apache/catalina/session/StoreBase.java +++ b/java/org/apache/catalina/session/StoreBase.java @@ -167,7 +167,15 @@ public abstract class StoreBase extends LifecycleBase implements Store { if (manager.getContainer().getLogger().isDebugEnabled()) { manager.getContainer().getLogger().debug(getStoreName()+ ": processExpires expire store session " + keys[i] ); } - if ( ( (PersistentManagerBase) manager).isLoaded( keys[i] )) { + boolean isLoaded = false; + try { + if (manager.findSession(keys[i]) != null) { + isLoaded = true; + } + } catch (IOException ioe) { + // Ignore - session will be expired + } + if (isLoaded) { // recycle old backup session session.recycle(); } else { diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 23316bcef..de041b0e2 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -116,6 +116,11 @@ Correct infinite loop if ServletRequest.startAsync(ServletRequest, ServletResponse) was called. (markt) + + 50232: Remove dependency between StoreBase and + PersistentManager and associated code clean-up. Patch provided by + Tiago Batista. (markt) +