RFR(XS): 8048050: Agent NullPointerException when rmi.port in use
Sergey Gabdurakhmanov
sergey.gabdurakhmanov at oracle.com
Fri Nov 14 13:07:41 UTC 2014
Hi,
Could I please have a review of this small fix.
webrev: http://cr.openjdk.java.net/~sgabdura/8048050/webrev.00/
bug: https://bugs.openjdk.java.net/browse/JDK-8048050
Problem description:
If the com.sun.management.jmxremote.rmi.port option is provided it will
give a NPE if already in use by a different JVM. Its expected to fail
but should provide an appropriate exception.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Run two instances in different JVMs at same time with the following
options:
-Dcom.sun.management.jmxremote.port=2222
-Dcom.sun.management.jmxremote.rmi.port=2223
-Dcom.sun.management.jmxremote.authenticate=false
Root cause:
Then we trying to start JMXConnectorServer (see method exportMBeanServer
of class sun.management.jmxremote.ConnectorBootstrap on already used
port it cause IOException. Call of connServer.getAddress().toString() in
the exception handler cause NullPointerException because
connServer.getAddress() returns null.
Solution:
Provide url.toString() if connServer.getAddress() is null
I'm going to push this fix into JDK9, 8 and 7.
BR,
Sergey
More information about the hotspot-runtime-dev
mailing list