ZooKeeper
  1. ZooKeeper
  2. ZOOKEEPER-417

stray message problem when changing servers

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.2.0
    • Component/s: None
    • Labels:
      None

      Description

      There is a possibility for stray messages from a previous connection to violate ordering and generally cause problems. Here is a scenario: we have a client, C, two followers, F1 and F2, and a leader, L. The client is connected to F1, which is a slow follower. C sends setData("/a", "1") to F1 and then loses the connection, so C reconnects to F2 and sends setData("/a", "2"). it is possible, if F1 is slow enough and the setData("/a", "1") got onto the network before the connection break, for F1 to forward the setData("/a", "1") to L after F2 forwards setData("/a", "2").

      to fix this, the leader should keep track of which follower last registered a session for a client and drop any requests from followers for clients for whom they do not have a registration.

      1. ZOOKEEPER-417.patch
        23 kB
        Benjamin Reed
      2. ZOOKEEPER-417.patch
        22 kB
        Benjamin Reed
      3. ZOOKEEPER-417.patch
        22 kB
        Benjamin Reed
      4. ZOOKEEPER-417.patch
        23 kB
        Benjamin Reed

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Benjamin Reed
            Reporter:
            Benjamin Reed
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development