Be consistent with locks on sessionCreationTiming, sessionExpirationTiming in DeltaMa...
authorkkolinko <kkolinko@13f79535-47bb-0310-9956-ffa450edef68>
Sun, 23 Jan 2011 12:01:29 +0000 (12:01 +0000)
committerkkolinko <kkolinko@13f79535-47bb-0310-9956-ffa450edef68>
Sun, 23 Jan 2011 12:01:29 +0000 (12:01 +0000)
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

java/org/apache/catalina/ha/session/DeltaManager.java
webapps/docs/changelog.xml

index 8afea38..28d7dd9 100644 (file)
@@ -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 ;
index fa0d90c..423da16 100644 (file)
@@ -46,7 +46,7 @@
     <changelog>
       <fix>
         <bug>18462</bug>: Don&apos;t merge <code>stdout</code> and
-        <code>stderr</code> internally so users retain the option to treat the
+        <code>stderr</code> internally so users retain the option to treat them
         separately. (markt)
       </fix>
       <add>
@@ -96,7 +96,7 @@
       </fix>
     </changelog>
   </subsection>
-  <subsection>
+  <subsection name="Coyote">
     <changelog>
       <fix>
         Prevent possible thread exhaustion if a Comet timeout event takes a
         <bug>50600</bug>: Prevent a <code>ConcurrentModificationException</code>
         when removing a WAR file via the FarmWarDeployer. (markt)
       </fix>
+      <fix>
+        Be consistent with locks on sessionCreationTiming,
+        sessionExpirationTiming in DeltaManager.resetStatistics(). (kkolinko)
+      </fix>
     </changelog>
   </subsection>
   <subsection name="Web applications">