Author: markt
Date: Fri Jun 12 22:37:50 2009
New Revision: 784299

URL: http://svn.apache.org/viewvc?rev=784299&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=47158
Correct some thread safety issues in AccessLogValve

Modified:
    tomcat/tc6.0.x/trunk/   (props changed)
    tomcat/tc6.0.x/trunk/STATUS.txt
    tomcat/tc6.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java
    tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc6.0.x/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Jun 12 22:37:50 2009
@@ -1 +1 @@
-/tomcat/trunk:601180,606992,612607,630314,640888,652744,653247,673796,673820,683982,684001,684081,684234,684269-684270,685177,687503,687645,689402,690781,691392,691805,692748,693378,694992,695053,695311,696780,696782,698012,698227,698236,698613,699427,699634,701355,709294,709811,709816,710063,710066,710125,710205,711126,711600,712461,712467,718360,719119,719124,719602,719626,719628,720046,720069,721040,721286,721708,721886,723404,723738,726052,727303,728032,728768,728947,729057,729567,729569,729571,729681,729809,729815,729934,730250,730590,731651,732859,732863,734734,740675,740684,742677,742697,742714,744160,744238,746321,746384,746425,747834,747863,748344,750258,750291,750921,751286-751287,751289,751295,753039,757335,757774,758365,758596,758616,758664,759074,761601,762868,762929,762936-762937,763166,763183,763193,763228,763262,763298,763302,763325,763599,763611,763654,763681,763706,764985,764997,765662,768335,769979,770716,770809,770876,776921,776924,776935,776945,777464,77
 7466,777576,777625,778379,781528,782145,782791
+/tomcat/trunk:601180,606992,612607,630314,640888,652744,653247,673796,673820,683982,684001,684081,684234,684269-684270,685177,687503,687645,689402,690781,691392,691805,692748,693378,694992,695053,695311,696780,696782,698012,698227,698236,698613,699427,699634,701355,709294,709811,709816,710063,710066,710125,710205,711126,711600,712461,712467,718360,719119,719124,719602,719626,719628,720046,720069,721040,721286,721708,721886,723404,723738,726052,727303,728032,728768,728947,729057,729567,729569,729571,729681,729809,729815,729934,730250,730590,731651,732859,732863,734734,740675,740684,742677,742697,742714,744160,744238,746321,746384,746425,747834,747863,748344,750258,750291,750921,751286-751287,751289,751295,753039,757335,757774,758365,758596,758616,758664,759074,761601,762868,762929,762936-762937,763166,763183,763193,763228,763262,763298,763302,763325,763599,763611,763654,763681,763706,764985,764997,765662,768335,769979,770716,770809,770876,776921,776924,776935,776945,777464,77
 7466,777576,777625,778379,781528,781779,782145,782791

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=784299&r1=784298&r2=784299&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Jun 12 22:37:50 2009
@@ -111,13 +111,6 @@
   +1: kkolinko, markt, fhanik
   -1:
 
-* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=47158
-  Thread safety issues in AccessLogValve
-  http://svn.apache.org/viewvc?rev=781779&view=rev
-  +1: markt, funkman
-  +1: fhanik - still has thread safety issues during rotation
-  -1: 
-
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=47318
   Process include preludes and codas for directivesOnly as well as full pages
   http://svn.apache.org/viewvc?rev=783316&view=rev

Modified: 
tomcat/tc6.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java?rev=784299&r1=784298&r2=784299&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java 
(original)
+++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java 
Fri Jun 12 22:37:50 2009
@@ -131,7 +131,7 @@
      * The as-of date for the currently open log file, or a zero-length
      * string if there is no open log file.
      */
-    private String dateStamp = "";
+    private volatile String dateStamp = "";
 
 
     /**
@@ -282,7 +282,7 @@
      */
     private Date currentDate = null;
     
-    private long currentMillis = 0;
+    private volatile long currentMillis = 0;
 
 
     /**
@@ -608,8 +608,8 @@
             }
 
             /* Make sure date is correct */
-            currentDate = new Date(System.currentTimeMillis());
-            dateStamp = fileDateFormatter.format(currentDate);
+            dateStamp = fileDateFormatter.format(
+                    new Date(System.currentTimeMillis()));
 
             open();
             return true;
@@ -649,12 +649,10 @@
             long systime = System.currentTimeMillis();
             if ((systime - rotationLastChecked) > 1000) {
 
-                // We need a new currentDate
-                currentDate = new Date(systime);
                 rotationLastChecked = systime;
 
                 // Check for a change of date
-                String tsDate = fileDateFormatter.format(currentDate);
+                String tsDate = fileDateFormatter.format(new Date(systime));
 
                 // If the date has changed, switch log files
                 if (!dateStamp.equals(tsDate)) {
@@ -680,8 +678,8 @@
                     }
 
                     /* Make sure date is correct */
-                    currentDate = new Date(System.currentTimeMillis());
-                    dateStamp = fileDateFormatter.format(currentDate);
+                    dateStamp = fileDateFormatter.format(
+                            new Date(System.currentTimeMillis()));
 
                     open();
                 }

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=784299&r1=784298&r2=784299&view=diff
==============================================================================
--- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Fri Jun 12 22:37:50 2009
@@ -72,6 +72,10 @@
         <bug>47080</bug>: Fix NPE in RealmBase when uri is null. (markt)
       </fix>
       <fix>
+        <bug>47158</bug>: Fix some thread safety issues in the AccessLogValve.
+        (markt) 
+      </fix>
+      <fix>
         <bug>47228</bug>: Correct French translations. Patch provided by sebb.
         (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