Author: jfclere
Date: Sat Apr 27 10:05:58 2013
New Revision: 1476547

URL: http://svn.apache.org/r1476547
Log:
commit accepted patch for BZ 54044

Modified:
    tomcat/tc6.0.x/trunk/STATUS.txt
    tomcat/tc6.0.x/trunk/java/org/apache/juli/DateFormatCache.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=1476547&r1=1476546&r2=1476547&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Sat Apr 27 10:05:58 2013
@@ -58,14 +58,6 @@ PATCHES PROPOSED TO BACKPORT:
   +1: markt, kkolinko, jfclere
   -1:
 
-* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54044
-  Correct bug in timestamp cache used by org.apache.juli.OneLineFormatter
-  that meant entries could be made with an earlier timestamp than the true 
timestamp.
-  (The test was added to tomcat6-testing branch in r1408453)
-  http://svn.apache.org/viewvc?view=revision&revision=1408459
-  +1: kkolinko, markt, rjung
-  -1:
-
 * Improve method cache handling in SecurityUtil class.
   Add caching for Comet methods and simplify cache lookup code.
   It is backport of r728776 (BZ 46304) and r1429360

Modified: tomcat/tc6.0.x/trunk/java/org/apache/juli/DateFormatCache.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/juli/DateFormatCache.java?rev=1476547&r1=1476546&r2=1476547&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/juli/DateFormatCache.java (original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/juli/DateFormatCache.java Sat Apr 27 
10:05:58 2013
@@ -101,14 +101,14 @@ public class DateFormatCache {
     private class Cache {
 
         /* Second formatted in most recent invocation */
-        private long previousSeconds = 0L;
+        private long previousSeconds = Long.MIN_VALUE;
         /* Formatted timestamp generated in most recent invocation */
         private String previousFormat = "";
 
         /* First second contained in cache */
-        private long first = 0L;
+        private long first = Long.MIN_VALUE;
         /* Last second contained in cache */
-        private long last = 0L;
+        private long last = Long.MIN_VALUE;
         /* Index of "first" in the cyclic cache */
         private int offset = 0;
         /* Helper object to be able to call SimpleDateFormat.format(). */
@@ -165,14 +165,16 @@ public class DateFormatCache {
                 for (int i = 1; i < seconds - last; i++) {
                     cache[(index + cacheSize - i) % cacheSize] = null;
                 }
-                first = seconds - cacheSize;
+                first = seconds - (cacheSize - 1);
                 last = seconds;
+                offset = (index + 1) % cacheSize;
             } else if (seconds < first) {
                 for (int i = 1; i < first - seconds; i++) {
                     cache[(index + i) % cacheSize] = null;
                 }
                 first = seconds;
-                last = seconds + cacheSize;
+                last = seconds + (cacheSize - 1);
+                offset = index;
             }
 
             /* Last step: format new timestamp either using

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=1476547&r1=1476546&r2=1476547&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Sat Apr 27 10:05:58 2013
@@ -47,6 +47,11 @@
   <subsection name="Catalina">
     <changelog>
       <fix>
+        <bug>54044</bug>: Correct bug in timestamp cache used by logging
+        (including the access log valve) that meant entries could be made with
+        an earlier timestamp than the true timestamp. (markt) 
+      </fix>
+      <fix>
          <bug>54382</bug>: Fix NPE when SSI processing is enabled and an empty
          SSI directive is present. (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