RFR  sun.rmi.transport.DGCAckHandler leaks memory
ivan.gerasimov at oracle.com
Mon Aug 11 13:41:45 UTC 2014
It has been reported that under some conditions instances of
sun.rmi.transport.DGCAckHandler accumulate and can cause OOM Error.
This is because they are stored in the global DGCAckHandler.idTable map,
and may fail to be removed if a timeout has expired.
The webrev contains a fix proposed by Darryl Mocek back in 2011.
Unfortunately I couldn't come up with a regression test for the fix.
However, the fix looks obviously correct, especially taking into account
the comment to the constructor:
* References added to this DGCAckHandler will be held strongly
* until its "release" method is invoked or (after the
* "startTimer" method has been invoked) the timeout has expired.
Would you please help review the fix?
More information about the core-libs-dev