From: kkolinko Date: Sun, 23 Jan 2011 12:01:29 +0000 (+0000) Subject: Be consistent with locks on sessionCreationTiming, sessionExpirationTiming in DeltaMa... X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=de88f87923a960be97f7115d8d4c49687232cf29;p=tomcat7.0 Be consistent with locks on sessionCreationTiming, sessionExpirationTiming in DeltaManager.resetStatistics(): use the same lock as elsewhere. Corrected a pair of typos in changelog as well. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1062398 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/java/org/apache/catalina/ha/session/DeltaManager.java b/java/org/apache/catalina/ha/session/DeltaManager.java index 8afea3818..28d7dd9b0 100644 --- a/java/org/apache/catalina/ha/session/DeltaManager.java +++ b/java/org/apache/catalina/ha/session/DeltaManager.java @@ -1120,15 +1120,19 @@ public CatalinaCluster getCluster() { public synchronized void resetStatistics() { processingTime = 0 ; expiredSessions.set(0); - sessionCreationTiming.clear(); - while (sessionCreationTiming.size() < - ManagerBase.TIMING_STATS_CACHE_SIZE) { - sessionCreationTiming.add(null); + synchronized (sessionCreationTiming) { + sessionCreationTiming.clear(); + while (sessionCreationTiming.size() < + ManagerBase.TIMING_STATS_CACHE_SIZE) { + sessionCreationTiming.add(null); + } } - sessionExpirationTiming.clear(); - while (sessionExpirationTiming.size() < - ManagerBase.TIMING_STATS_CACHE_SIZE) { - sessionExpirationTiming.add(null); + synchronized (sessionExpirationTiming) { + sessionExpirationTiming.clear(); + while (sessionExpirationTiming.size() < + ManagerBase.TIMING_STATS_CACHE_SIZE) { + sessionExpirationTiming.add(null); + } } rejectedSessions = 0 ; sessionReplaceCounter = 0 ; diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index fa0d90cd2..423da168e 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -46,7 +46,7 @@ 18462: Don't merge stdout and - stderr internally so users retain the option to treat the + stderr internally so users retain the option to treat them separately. (markt) @@ -96,7 +96,7 @@ - + Prevent possible thread exhaustion if a Comet timeout event takes a @@ -134,6 +134,10 @@ 50600: Prevent a ConcurrentModificationException when removing a WAR file via the FarmWarDeployer. (markt) + + Be consistent with locks on sessionCreationTiming, + sessionExpirationTiming in DeltaManager.resetStatistics(). (kkolinko) +