Benjamin Reed commented on ZOOKEEPER-261:

i think it is problematic/impossible to detect partial loss of data. that falls 
under the byzantine header. i think the issue of reinitializing a servers data 
and reintegrating into a zookeeper ensemble is very reasonable.  so the task is 
really just determining that the server has been reinitialized. if we look at 
the log and see that there aren't any proposals, we can know that the server 
has been reinitialized. if a reinitialized server then sends a zxid of -1 for 
the leader election vote, the other servers will know to ignore the vote and 
the problem will go away. does that sound reasonable?

> Reinitialized servers should not participate in leader election
> ---------------------------------------------------------------
>                 Key: ZOOKEEPER-261
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-261
>             Project: Zookeeper
>          Issue Type: Improvement
>          Components: leaderElection, quorum
>            Reporter: Benjamin Reed
> A server that has lost its data should not participate in leader election 
> until it has resynced with a leader. Our leader election algorithm and 
> NEW_LEADER commit assumes that the followers voting on a leader have not lost 
> any of their data. We should have a flag in the data directory saying whether 
> or not the data is preserved so that the the flag will be cleared if the data 
> is ever cleared.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

Reply via email to