Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8203026

java.rmi.NoSuchObjectException: no such object in table

    Details

    • Subcomponent:
    • Resolved In Build:
      b14
    • CPU:
      generic
    • OS:
      generic

      Description

      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.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                gadams Gary Adams (Inactive)
                Reporter:
                kbarrett Kim Barrett
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: