5 Replies Latest reply on Jun 9, 2010 1:31 PM by timfox

    clients stop receiving messages when client failure check period = 1 and one client does not exit cleanly

    hantunca

      In my testing of 2.1.0, I ran across a case where I have a server sending messages to multiple clients and one of the clients does not end cleanly, after a certain amount of time the clients that are still running stop receiving messages.  This started showing up when I set the client failure check period to -1.

       

      I've attached a tar file that has the test case, source, etc.  To replicate the problem:

       

      - start the server with server.sh.

      - start a producer with producer.sh.

      - start a client with client.sh.

      - start a second client with client.sh - now with the client.sh, hit ctrl-c to kill the one client.

       

      After a certain amount of time, the server will spit out the following message:

       

      WARNING: Connection failure has been detected: Did not receive ping from /127.0.0.1:58343. It is likely the client has exited or crashed without closing its connection, or the network between the server and client has failed. The connection will now be closed. [code=3]

       

      At this point, all clients stop receiving messages.  I would expect that the server would clean up the resources for the dead client and not stop messages from being sent to other clients.

       

      This is not a big deal for me as I don't use the client failure check period, but happened to run across it during testing.

       

      Han