logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ceki Gülcü <c...@qos.ch>
Subject RE: JDBCAppender memory leak issue
Date Wed, 12 Feb 2003 16:13:28 GMT

Have you missed this?

http://jakarta.apache.org/log4j/docs/api/org/apache/log4j/jdbc/JDBCAppender.html

At 10:21 12.02.2003 -0500, you wrote:

>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:ceki@qos.ch]
>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: bugzilla@apache.org [mailto:bugzilla@apache.org]
> >Sent: Wednesday, February 12, 2003 9:59 AM
> >To: log4j-dev@jakarta.apache.org
> >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: log4j-dev@jakarta.apache.org
> >         ReportedBy: Roland.S.Nygren@Telia.se
> >
> >
> >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: log4j-dev-unsubscribe@jakarta.apache.org
> >For additional commands, e-mail: log4j-dev-help@jakarta.apache.org
> >
> >---------------------------------------------------------------------------
>----
> >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 CSOffice@smed.com.  Thank you
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: log4j-dev-unsubscribe@jakarta.apache.org
> >For additional commands, e-mail: log4j-dev-help@jakarta.apache.org
>
>--
>Ceki
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: log4j-dev-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: log4j-dev-help@jakarta.apache.org
>
>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: log4j-dev-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: log4j-dev-help@jakarta.apache.org

--
Ceki 


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: log4j-dev-help@jakarta.apache.org


Mime
View raw message