Hi All ZooKeeper clients send ping request(heartbeat) to ZooKeeper server to keep its session alive. These ping requests do nothing but touch its session on the server.
If client is connected to a follower then the ping request is processed in sequence of ServerCnxn --> ZooKeeperServer --> FollowerRequestProcessor --> CommitProcessor --> FinalRequestProcessor. The ping request will wait in CommitProcessor for previous request completion. This wait for ping request is unnecessary. I think it offers no benefit. is ping request doing more than touching its session? I think it is only touching its session, not doing anything else. If this is the case we should process the ping request differently from the other requests. It should be treated as system request and should be processed with higher priority. May be we can process in the sequence of ServerCnxn --> ZooKeeperServer --> PingRequestProcessor Any thought? Thanks -Arshad