if a lot of log messages are being written to a file by a lot of threads using 
org.apache.catalina.logger.FileLogger, the output can get messed up so that you get 
things like this:

[timestamp-1] [timestamp-2] [message-1]
[message-2]

instead of this:

[timestamp-1] [message-1]
[timestamp-2] [message-2]

i ran into this while trying to debug bug 5735, which requires a decent load (i.e. 
lots of threads).

attached is a patch with one possible solution  - i could commit this, but i generally 
don't commit on tomcat4, so i'd like some +1's before committing :)

-kevin.
Index: catalina/src/share/org/apache/catalina/logger/FileLogger.java
===================================================================
RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/logger/FileLogger.java,v

retrieving revision 1.3.2.1
diff -u -b -r1.3.2.1 FileLogger.java
--- catalina/src/share/org/apache/catalina/logger/FileLogger.java       25 Oct 2001 
20:07:44 -0000      1.3.2.1
+++ catalina/src/share/org/apache/catalina/logger/FileLogger.java       19 Feb 2002 
+19:44:33 -0000
@@ -289,13 +289,14 @@
 
         // Log this message, timestamped if necessary
         if (writer != null) {
+            synchronized (writer) {
             if (timestamp) {
                 writer.print(tsString);
                 writer.print(" ");
             }
             writer.println(msg);
         }
-
+        }
     }
 
 
--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to