DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=42151>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=42151

           Summary: StackOverFlow in flush() method of LoggingOutputStream
           Product: Log4j
           Version: 1.2
          Platform: Sun
        OS/Version: Solaris
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Appender
        AssignedTo: log4j-dev@logging.apache.org
        ReportedBy: [EMAIL PROTECTED]


I am using Log4j as the logging utility for a J2EE (JDK version 1.4) 
application hosted on Weblogic server 8.1 sp2 running on Solaris 8.

The problem (StackOverFlow) occurs in the production environment when several 
jobs are run in parallel. The jobs start at 3:00 am and the error occurs 
between 9-10:30 am every day, but it is not associated with any job in 
paricular. We are unable to replicate this in dev, as the dev machines cannot 
handle the parallel processing of so many jobs. When we run the jobs one after 
another, there is no error.

The exact setup being used is as follows:
1) Each job is run using an instance of a class called WorkflowBo, which gains 
access to Log4j via its constructor in the following way:
      m_logger = Logger.getLogger(p_loggerName);
      e_logger = Logger.getLogger(p_loggerName + "_err");
2) We are using an appender that we downloaded off the Log4j forums called 
ArchivedDailyRollingFileAppender, as it zips up old log files. The file is 
available from:
http://mail-archives.apache.org/mod_mbox/logging-log4j-user/200405.mbox/%
[EMAIL PROTECTED]

The exact excexption that we see is pasted below. This stack keeps repeating 
several hundreds of times.
java.lang.StackOverflowError
    at java.io.IOException.<init>(IOException.java:40)
    at java.io.FileOutputStream.writeBytes(Native Method)
    at java.io.FileOutputStream.write(FileOutputStream.java:260)
    at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336)
    at sun.nio.cs.StreamEncoder$CharsetSE.implWrite(StreamEncoder.java:395)
    at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:136)
    at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:146)
    at java.io.OutputStreamWriter.write(OutputStreamWriter.java:204)
    at java.io.Writer.write(Writer.java:126)
    at org.apache.log4j.helpers.QuietWriter.write(QuietWriter.java:47)
    at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:301)
    at com.csfb.fao.carat.util.file.ArchivedDailyRollingFileAppender.subAppend
(ArchivedDailyRollingFileAppender.java:375)
    at org.apache.log4j.WriterAppender.append(WriterAppender.java:159)
    at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)
    at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders
(AppenderAttachableImpl.java:65)
    at org.apache.log4j.Category.callAppenders(Category.java:203)
    at org.apache.log4j.Category.forcedLog(Category.java:388)
    at org.apache.log4j.Category.log(Category.java:835)
    at com.csfb.fao.carat.util.file.LoggingOutputStream.flush
(LoggingOutputStream.java:197)
    
    at java.io.PrintStream.write(PrintStream.java:260)
    at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336)
    at sun.nio.cs.StreamEncoder$CharsetSE.implWrite(StreamEncoder.java:395)
    at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:136)
    at java.io.OutputStreamWriter.write(OutputStreamWriter.java:191)
    at java.io.BufferedWriter.flushBuffer(BufferedWriter.java:111)
    at java.io.BufferedWriter.write(BufferedWriter.java:206)
    at java.io.Writer.write(Writer.java:126)
    at java.io.PrintStream.write(PrintStream.java:303)
    at java.io.PrintStream.print(PrintStream.java:448)
    at java.io.PrintStream.println(PrintStream.java:585)
    at org.apache.log4j.helpers.LogLog.error(LogLog.java:142)
    at org.apache.log4j.helpers.OnlyOnceErrorHandler.error
(OnlyOnceErrorHandler.java:77)
    at org.apache.log4j.helpers.OnlyOnceErrorHandler.error
(OnlyOnceErrorHandler.java:67)
    at org.apache.log4j.helpers.QuietWriter.write(QuietWriter.java:49)
    at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:301)
    at com.csfb.fao.carat.util.file.ArchivedDailyRollingFileAppender.subAppend
(ArchivedDailyRollingFileAppender.java:375)
    at org.apache.log4j.WriterAppender.append(WriterAppender.java:159)
    at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)
    at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders
(AppenderAttachableImpl.java:65)
    at org.apache.log4j.Category.callAppenders(Category.java:203)
    at org.apache.log4j.Category.forcedLog(Category.java:388)
    at org.apache.log4j.Category.log(Category.java:835)
    at com.csfb.fao.carat.util.file.LoggingOutputStream.flush
(LoggingOutputStream.java:197)

Thanks for your help.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to