Hello, this is a reminder. For your convenience: 7079254 Toolkit eventListener leaks memory http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7079254
The fix is available at: http://cr.openjdk.java.net/~serb/petr/7079254/webrev/ With best regards. Petr. On Jan 10, 2013, at 12:49 PM, Petr Pchelko wrote: > Hello. > > Sorry, I've forgot about licenses. I will add them before the push. > > With best regards. Petr. > > On Jan 9, 2013, at 4:30 PM, Petr Pchelko wrote: > >> Hello. >> >> Thank you for the replies. Here is the new version of the fix with a test >> case and improvements suggested by Artem: >> http://cr.openjdk.java.net/~serb/petr/7079254/webrev/ >> >> With best regards, Petr >> >> On Dec 25, 2012, at 1:46 PM, Artem Ananiev wrote: >> >>> >>> A few comments about the test: >>> >>> 1. "-mx10m" should be replaced with "-Xmx10M" >>> >>> 2. assertGC() can be implemented more reliably: >>> >>> List<int[]> l = new LinkedList<>(); >>> while (true) { >>> try { >>> l.add(new int[10000]); >>> } catch (OutOfMemoryError e) { >>> break; >>> } >>> } >>> >>> After such a loop, GC is guaranteed to have collected all the dead objects. >>> >>> Thanks, >>> >>> Artem >>> >>> On 12/25/2012 11:34 AM, Petr Pchelko wrote: >>>> Hello. >>>> >>>> Thank you for your feedback. >>>> >>>> Here is the new version of the fix: >>>> http://cr.openjdk.java.net/~art/pchelko/7079254/webrev.01/ >>>> >>>> Changes from the previous one: >>>> 1. Added a test. >>>> 2. Moved creadLightweightDispatcherOnRemove into a synchronized section. >>>> >>>> Best, Petr. >>>> >>>> On Dec 24, 2012, at 4:03 PM, Artem Ananiev wrote: >>>> >>>>> Hi, Petr, >>>>> >>>>> the fix looks fine. Please, move clearLightweightDispatcherOnRemove() >>>>> into the synchronized section, as lightweight dispatcher is used under >>>>> tree lock. >>>>> >>>>> As Sergey suggested, it would be fine to have a regression test for this >>>>> change. >>>>> >>>>> Thanks, >>>>> >>>>> Artem >>>>> >>>>> On 12/21/2012 4:50 PM, Petr Pchelko wrote: >>>>>> Hello. >>>>>> >>>>>> Could you please review the fix for the issue >>>>>> 7079254 Toolkit eventListener leaks memory >>>>>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7079254 >>>>>> >>>>>> The webrev is available at: >>>>>> http://cr.openjdk.java.net/~art/pchelko/7079254/webrev/ >>>>>> >>>>>> The LightweightDispatcher stored strong references to mouseEventTarget >>>>>> and targetLastEntered which were not cleaned up when the component is >>>>>> removed, which lead to a memory leak. The isCleaned field is added to be >>>>>> able to consume events which would be dispatched to a removed component >>>>>> if we did not clean up a reference to it. >>>>>> >>>>>> The fix testet on Windows and Mac on toy apps and automatic regression >>>>>> tests related to event dispatching, Component, Container, dnd and Mouse >>>>>> >>>>>> Best, Petr. >>>>>> >>>> >> >
