v.25.12Improvement

Add a keeper-server-side check during handshake

Add a keeper-server-side check during handshake to reject clients when last_zxid_seen (provided by the client) > last_processed_zxid. This prevents stale reads when clients reconnect to lagging replicas. #90016 (Miсhael Stetsyuk).
Add a server-side check in the keeper handshake process to reject clients whose last_zxid_seen is greater than the last_processed_zxid on the server.

Why it matters

This feature prevents stale reads by ensuring that clients connecting to lagging replicas with outdated state information are rejected during the handshake, improving consistency and correctness in replicated environments.

How to use it

The check is performed automatically during the keeper handshake. Clients will be rejected if their last_zxid_seen is higher than the server's last_processed_zxid. No additional configuration is required from the user.