Hi all,

   I noticed a possible problem in the class ResilientFileOutputStream,
used in FileAppender to create the output stream.

The class ResilientFileOutputStream has two output stream, a
FileOutputStream and an OutputStream (instantiated with a
BufferedOutputStream). The latter is inherited from the class
ResilientFileOutputStreamBase that ResilientFileOutputStream extends.
Since ResilientFileOutputStream has no close method, when a FileAppender is
stopped the close method of ResilientFileOutputStreamBase gets called, this
method only close the OutputStream.

Hence, when a FileAppender is stopped, the FileOutputStream of
ResilientFileOutputStream is not closed. As a consequence, instances of
FileAppender, ResilientFileOutputStream and FileOutPutStream are kept in
memory even if they are no more used.


Dario
_______________________________________________
Logback-user mailing list
[email protected]
http://mailman.qos.ch/mailman/listinfo/logback-user

Reply via email to