All Questions
Zookeeper hard

A client connected to Follower A (ZXID 100) disconnects and immediately attempts to connect to Follower B (ZXID 90). How does ZooKeeper prevent a 'Time Travel' scenario where the client sees old data?

  1. A The connection is accepted, but the client library automatically buffers reads until Follower B reaches ZXID 100.
  2. B Follower B rejects the connection because the client's 'last seen' ZXID is more advanced than the server's current state.
  3. C Follower B initiates an emergency 'ForceSync' with the Leader before acknowledging the client's session handshake.
  4. D The client's session is invalidated, and all its associated Ephemeral nodes are forcefully purged from the ensemble.

One system design question a day, with spaced repetition so the ones you miss come back.

Get the app

Related questions