RFR of JDK-8029360: java/rmi/transport/dgcDeadLock/DGCDeadLock.java failing intermittently
Hamlin Li
huaming.li at oracle.com
Tue Dec 20 07:10:50 UTC 2016
Would you please review the below patch?
bug: https://bugs.openjdk.java.net/browse/JDK-8029360
webrev: http://cr.openjdk.java.net/~mli/8029360/webrev.00/
* For the "connection refused" and "port in use" issue:
Root Cause: consider reproducing scenario,
1. gets free port A (in main process).
2. interloper occupies port A.
3. starts registry subprocess and try to listen on port A (in
subprocess).
4. registry fails with "port in use" (in subprocess).
5. interloper releases port A.
6. Naming.lookup on port A, it fails with "connection refused"
Solution:
To fix the issue, use REGISTRY to start registry process on
ephemeral port and pass the port back to main process.
* For another issue, log is short, can only guess that wait time is not
long enough on busy machine, so fix the issue by scaling the wait time
and using REGISTRY to synchronize.
Thank you
-Hamlin
More information about the core-libs-dev
mailing list