vp340 opened a new pull request, #3521:
URL: https://github.com/apache/cxf/pull/3521

   DelayedCachedOutputStreamCleaner held in a queue list the reference to 
CachedOutputStream s. The ones never unregistered from the queue are the one 
who has a tmp file not deleted. 
   When the timer thread tries to close() the cos ... if the cos is actually a 
LoggingOutputStream it also calls the onClose() of LoggingCallback. 
   In certain cases so it logs twice (the second without payload because it is 
already consumed) 
   Furthermore, it keeps inMem all the objects that are referenced in the class 
(such as the Message) and that are needed for logging.
   
   I propose to deregister the callback at the end to avoid rewind calls to it. 
   This way even if DelayedCachedOutputStreamCleaner keeps the 
LoggingOutputStream  in the queue, there isn't the reference to the callback 
and so GC can clean those object.  And double logs are not produce in the first 
place


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to