Uploaded image for project: 'JGroups'
  1. JGroups
  2. JGRP-2766

FD_SOCK2 blocks closing of socket

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 5.3.4, 5.2.23
    • None
    • None
    • False
    • None
    • False

      FD_SOCK2 uses an NioConnection. When a peer crashes, the connection is closed. However, the handling of the close prevents reading from the NIO socket, and thus, the response is received after the waitFor() timeout:

      "NioServer.Selector [/[0:0:0:0:0:0:0:0]:7900]-4,chat,X@3160" tid=0x25 nid=NA runnable
        java.lang.Thread.State: RUNNABLE
      	  at org.jgroups.protocols.FD_SOCK2.connectTo(FD_SOCK2.java:430)
      	  at org.jgroups.protocols.FD_SOCK2.connectTo(FD_SOCK2.java:401)
      	  at org.jgroups.protocols.FD_SOCK2.connectToNextPingDest(FD_SOCK2.java:377)
      	  at org.jgroups.protocols.FD_SOCK2.handle(FD_SOCK2.java:348)
      	  at org.jgroups.protocols.FD_SOCK2.handle(FD_SOCK2.java:32)
      	  at org.jgroups.util.ProcessingQueue.process(ProcessingQueue.java:55)
      	  at org.jgroups.util.ProcessingQueue.add(ProcessingQueue.java:35)
      	  at org.jgroups.protocols.FD_SOCK2.connectionClosed(FD_SOCK2.java:293)
      	  at org.jgroups.blocks.cs.BaseServer.notifyConnectionClosed(BaseServer.java:470)
      	  at org.jgroups.blocks.cs.BaseServer.closeConnection(BaseServer.java:362)
      	  at org.jgroups.blocks.cs.BaseServer.closeConnection(BaseServer.java:356)
      	  at org.jgroups.blocks.cs.NioConnection.read(NioConnection.java:208)
      	  at org.jgroups.blocks.cs.NioBaseServer$Acceptor.run(NioBaseServer.java:145)
      	  at java.lang.Thread.runWith(Thread.java:1596)
      	  at java.lang.Thread.run(Thread.java:1583)
      

            rhn-engineering-bban Bela Ban
            rhn-engineering-bban Bela Ban
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: