Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-63

Race condition in client close() operation

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.0.0
    • 3.0.0
    • java client
    • None
    • Reviewed

    Description

      There is a race condition in the java close operation on ZooKeeper.java.

      Client is sending a disconnect request to the server. Server will close any open connections with the client when it receives this. If the client has not yet shutdown it's subthreads (event/send threads for example) these threads may consider the condition an error. We see this alot in the tests where the clients output error logs because they are unaware that a disconnection has been requested by the client.

      Ben mentioned: perhaps we just have to change state to closed (on client) before sending disconnect request.

      Attachments

        1. client-test-fail.diff
          2 kB
          Stu Hood
        2. ZOOKEEPER-63.patch
          41 kB
          Patrick D. Hunt

        Issue Links

          Activity

            People

              phunt Patrick D. Hunt
              phunt Patrick D. Hunt
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: