Duplicate :
|
|
Duplicate :
|
|
Duplicate :
|
|
Relates :
|
Failure encounted while running test/jdk/sun/tools/jstatd/TestJstatdPort.java: Start jstat: [/scratch/mesos/jib-master/install/2018-05-11-2230264.kim.barrett.jdk/macosx-x64-debug.jdk/jdk-11/fastdebug/bin/jstat -J-XX:+UsePerfData -J-Duser.language=en -gcutil 52512@sc14ia501.us.oracle.com:61885 250 5] sun.jvmstat.monitor.MonitorException: Could not read data for remote JVM 52512 at jdk.jstatd/sun.jvmstat.perfdata.monitor.protocol.rmi.PerfDataBuffer.<init>(PerfDataBuffer.java:68) at jdk.jstatd/sun.jvmstat.perfdata.monitor.protocol.rmi.RemoteMonitoredVm.<init>(RemoteMonitoredVm.java:71) at jdk.jstatd/sun.jvmstat.perfdata.monitor.protocol.rmi.MonitoredHostProvider.getMonitoredVm(MonitoredHostProvider.java:146) at jdk.jcmd/sun.tools.jstat.Jstat.logSamples(Jstat.java:107) at jdk.jcmd/sun.tools.jstat.Jstat.main(Jstat.java:70) Caused by: java.rmi.NoSuchObjectException: no such object in table at java.rmi/sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:283) at java.rmi/sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:260) at java.rmi/sun.rmi.server.UnicastRef.invoke(UnicastRef.java:161) at java.rmi/java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(RemoteObjectInvocationHandler.java:209) at java.rmi/java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:161) at jdk.proxy1/com.sun.proxy.jdk.proxy1.$Proxy1.getCapacity(Unknown Source) at jdk.jstatd/sun.jvmstat.perfdata.monitor.protocol.rmi.PerfDataBuffer.<init>(PerfDataBuffer.java:63) ... 4 more Looking at where the java.rmi.NoSuchObjectException is being thrown, it may indicate a WeakReference was cleared when the application didn't expect that to happen. It's possible there is a bug in reference processing, but I think it's more likely either the test or the RMI infrastructure isn't properly ensuring the liveness of the referent, allowing it to be reclaimed by GC at a point where that isn't expected.
|