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

JMXMPConnector does not handle server death correctly.JMXConNot.FAILED not sent

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P4 P4
    • None
    • 1.0.1
    • core-svc
    • None

      JMXMP Connector does not emit the JMXConnectionNotification.FAILED notification
      when the server goes down.

      -------------------------------------------------------------------------------
      Description:
      ============

      * start server (SubAgent)
      * start client (MasterAgent)
      Press <Enter> in the SubAgent window. The subagent exits.
      The MasterAgent prints the following trace:
      Mar 31, 2004 4:30:46 PM GenericConenctor RequestHandler-connectionException
      WARNING: java.io.EOFException
      java.io.EOFException
              at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2435)
              at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1245)
              at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
              at com.sun.jmx.remote.socket.SocketConnection.readMessage(SocketConnection.java:211)
              at com.sun.jmx.remote.generic.ClientSynchroMessageConnectionImpl$MessageReader.run(ClientSynchroMessageConnectionImpl.java:393)
              at com.sun.jmx.remote.opt.util.ThreadService$ThreadServiceJob.run(ThreadService.java:208)
              at com.sun.jmx.remote.opt.util.JobExecutor.run(JobExecutor.java:59)

      but the JMXMPConnector does not send any JMXConnectionNotification.FAILED

      -------------------------------------------------------------------------------
      How to reproduce:
      =================

      Use the .java classes from the attached test.tar

      In a first xterm start the SubAgent:
      $ java -Durl="service:jmx:jmxmp://localhost:9654" SubAgent

      In a second xterm start the MasterAgent:
      $ java MasterAgent "service:jmx:jmxmp://localhost:9654"

      Then go to the subagent window and press <Enter> to stop the subagent.

      -------------------------------------------------------------------------------

      Note: if you use RMI or IIOP instead of JMXMP everything works fine: the
            MasterAgent window displays the following message:

      MSR: Received notification: javax.management.remote.JMXConnectionNotification[source=com.sun.jdmk.remote.cascading.proxy.ProxyCascadingAgent@1d64c37]

      MSR: notification.getType() = jmx.remote.connection.failed

      This is what should happen with JMXMP - but doesn't.




            sjiang Shanliang Jiang (Inactive)
            dfuchs Daniel Fuchs
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: