We are already using JDBCAppender
Could you please elaborate more on the plans for JDBCAppender ? When is to
be removed ?
Any replacement ? 

Thanks,
Ema

-----Original Message-----
From: Ceki Gülcü [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, February 12, 2003 10:11 AM
To: Log4J Developers List
Subject: Re: JDBCAppender memory leak issue



JDBCAppender is likely to be removed.

At 10:04 12.02.2003 -0500, you wrote:



>How long does something like this typically take to resolve? ... and does
it
>mean going to a version greater than 1.2.7?
>I apologize for my newness to this process.
>
>We're intended to use the JDBC appender and this could obviously be
>problematic.
>
>Mike
>
>
>
>
>-----Original Message-----
>From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
>Sent: Wednesday, February 12, 2003 9:59 AM
>To: [EMAIL PROTECTED]
>Subject: DO NOT REPLY [Bug 16998] New: - JDBCAppender leaks memory
>
>
>DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
>RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
><http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16998>.
>ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
>INSERTED IN THE BUG DATABASE.
>
>http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16998
>
>JDBCAppender leaks memory
>
>            Summary: JDBCAppender leaks memory
>            Product: Log4j
>            Version: 1.2
>           Platform: Other
>         OS/Version: Other
>             Status: NEW
>           Severity: Normal
>           Priority: Other
>          Component: Appender
>         AssignedTo: [EMAIL PROTECTED]
>         ReportedBy: [EMAIL PROTECTED]
>
>
>The class org.apache.log4j.jdbc.JDBCAppender in Log4j 1.2.7 (and probably
>earlier too) leaks memory. In the method flushBuffer() values are added to
>the
>ArrayList removes (removes.add(logEvent)), but this ArrayList is never
>cleared
>or values removed. After some time this will end up with an
>OutOfMemoryError.
>In my example of flushBuffer() below there will be no memory leak.
>
>Besides this we have some ideas about improving performance for user
threads
>by adding a thread that handles the database writing.
>
>   public void append(LoggingEvent event) {
>     buffer.add(event);
>     if (buffer.size() >= bufferSize)
>       logThread.wakeup();
>   }
>   public synchronized void flushBuffer() {
>     LoggingEvent logEvent = null;
>     while (buffer.size() >0) {
>       try {
>         logEvent = (LoggingEvent)buffer.remove(0);
>       } catch(Exception ignore){
>         break;
>       }
>       try {
>         String sql = getLogStatement(logEvent);
>         execute(sql);
>       } catch (SQLException sqle) {
>         // Unable to store LogEvent i database, put it back in buffer.
>         if (logEvent != null)
>           buffer.add(logEvent); // I'm not sure this is a good idea
>
>         errorHandler.error("Failed to excute sql", sqle,
>ErrorCode.FLUSH_FAILURE);
>       }
>     }
>   }
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>
>---------------------------------------------------------------------------
----
>This message and any included attachments are from Siemens Medical
Solutions
>Health Services Corporation and are intended only for the addressee(s).
>The information contained herein may include trade secrets or privileged or
>otherwise confidential information.  Unauthorized review, forwarding, 
>printing,
>copying, distributing, or using such information is strictly prohibited 
>and may
>be unlawful.  If you received this message in error, or have reason to 
>believe
>you are not authorized to receive it, please promptly delete this message
and
>notify the sender by e-mail with a copy to [EMAIL PROTECTED]  Thank you
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]

--
Ceki 


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

This message may contain privileged and/or confidential information.  If you
have received this e-mail in error or are not the intended recipient, you
may not use, copy, disseminate or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender
promptly by e-mail that you have done so.  Thank you.

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

Reply via email to