Uploaded image for project: 'River (Retired)'
  1. River (Retired)
  2. RIVER-350

Changing IP underneath Reggie causes changing IP underneath Reggie

Add voteWatch issue
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • com_sun_jini_reggie
    • None

    Description

      Reported by Chris Dolan on the users list

      I have a unusual case where Reggie was running on a machine with a
      DHCP-assigned IP. At some point a DHCP renewal changed the IP. Reggie
      successfully kept sending multicast announcements and clients
      successfully invoked UnicastDiscoverTask. However,
      JoinManager.RegisterTask and
      ServiceDiscoveryManager.LookupCacheImpl.RegisterListenerTask both fail
      with UnknownHostException every 120 seconds (which is the Reggie
      multicast announce interval). When the DNS reverted back, then the
      problem abruptly went away.

      Has anyone seen anything like this before? I suspect it's a client-side
      DNS caching issue, but I'm not certain. I was surprised that
      UnicastDiscoveryTask appeared to work (at least I infer that it worked
      because I would never get a registrar proxy for the JoinManager if it
      hadn't) since that too is a TCP connection back to the Reggie instance
      by hostname.

      That particular Reggie was configured for JRMP with the client running
      on a 1.5 Sun JVM, so example stacktraces are as follows (with redacted
      hostnames):

      java.rmi.UnknownHostException: Unknown host: xxxx.; nested exception is:

      java.net.UnknownHostException: xxxx.
      at sun.rmi.transport.tcp.TCPEndpoint.newSocket(572)
      at sun.rmi.transport.tcp.TCPChannel.createConnection(185)
      at sun.rmi.transport.tcp.TCPChannel.newConnection(171)
      at sun.rmi.server.UnicastRef.invoke(94)
      at com.sun.jini.reggie.RegistrarImpl_Stub.notify(Unknown Source)
      at com.sun.jini.reggie.RegistrarProxy.notify(159)
      at
      net.jini.lookup.ServiceDiscoveryManager.registerListener(3847)
      at net.jini.lookup.ServiceDiscoveryManager.access$600(608)
      at
      net.jini.lookup.ServiceDiscoveryManager$LookupCacheImpl$RegisterListener
      Task.run(904)
      at com.sun.jini.thread.TaskManager$TaskThread.run(393)
      Caused by: java.net.UnknownHostException: xxxx.
      at java.net.PlainSocketImpl.connect(177)
      at java.net.SocksSocketImpl.connect(366)
      at java.net.Socket.connect(519)
      at java.net.Socket.connect(469)
      at java.net.Socket.<init>(366)
      at java.net.Socket.<init>(179)
      at
      sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(22)
      at
      sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(128)
      at sun.rmi.transport.tcp.TCPEndpoint.newSocket(569)
      ... 9 more

      java.rmi.UnknownHostException: Unknown host: xxxx.; nested exception is:

      java.net.UnknownHostException: xxxx.
      at sun.rmi.transport.tcp.TCPEndpoint.newSocket(572)
      at sun.rmi.transport.tcp.TCPChannel.createConnection(185)
      at sun.rmi.transport.tcp.TCPChannel.newConnection(171)
      at sun.rmi.server.UnicastRef.invoke(94)
      at com.sun.jini.reggie.RegistrarImpl_Stub.register(Unknown
      Source)
      at com.sun.jini.reggie.RegistrarProxy.register(120)
      at net.jini.lookup.JoinManager$ProxyReg.register(1271)
      at net.jini.lookup.JoinManager$RegisterTask.run(794)
      at net.jini.lookup.JoinManager$ProxyRegTask.tryOnce(618)
      at com.sun.jini.thread.RetryTask.run(131)
      at com.sun.jini.thread.TaskManager$TaskThread.run(393)
      Caused by: java.net.UnknownHostException: xxxx.
      at java.net.PlainSocketImpl.connect(177)
      at java.net.SocksSocketImpl.connect(366)
      at java.net.Socket.connect(519)
      at java.net.Socket.connect(469)
      at java.net.Socket.<init>(366)
      at java.net.Socket.<init>(179)
      at
      sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(22)
      at
      sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(128)
      at sun.rmi.transport.tcp.TCPEndpoint.newSocket(569)
      ... 10 more

      Chris

      Attachments

        Activity

          People

            Unassigned Unassigned
            tomhobbs Tom Hobbs

            Dates

              Created:
              Updated:

              Slack

                Issue deployment