Does zxid = 10 commit because there are  acknowledgments from a quorum of 
pervious epoch, or the prospective leader needs to commit any proposals  in 
transaction logs (regardless of  having quorums of ACKS from pervious epoch or 
not) ? (remember we are taking about proposals that have committed yet and 
located in transaction logs).

Following scenarios apply to above questions:

Assume we have 3-server cluster. Leader (L), follower1 (F1) and follower2 (F2). 
The scenario is as follows:
1.       Leader sends a proposal with Zxid = 10.
2.       F2 crashes before receiving P10. F1 logs, sends an ACK and crashes.

As there is no quorum  supporting L, L moves to Leader election (Fast Leader 
Election, FLE) to find  a quorum and elects new leader. After sometime F2 wakes 
up and form a quorum with L.  In FLE, a process that has the most recent zxid 
becomes a prospective leader, resulting in  L (pervious leader) becomes a 
prospective leader, because of zxid =10.

What happen then? Does zxid = 10 commit eventually before the end of 
synchronization phase or discard?

Regards, 

Ibrahim



-----Original Message-----
From: Flavio P JUNQUEIRA [mailto:[email protected]] 
Sent: Sunday, September 27, 2015 05:21 م
To: [email protected]
Subject: Re: Zab Failure scenario

In 3, it is not exactly a pending proposal, but if the leader has 10 in its 
log, then it will make sure 10 is committed by the end of the synchronisation 
phase and before it becomes established.

I'm not sure why you are assuming 3.4.6,  though. Why is it relevant for this 
question?

-Flavio
On 27 Sep 2015 4:51 pm, "Ibrahim El-sanosi (PGR)" < 
[email protected]> wrote:

> Assume we use ZooKeeper 3.4.6 and we have 3-server cluster. Leader 
> (L),
> follower1 (F1) and follower2 (F2). The scenario is as following:
>
> 1.       Leader sends a proposal with Zxid = 10.
>
> 2.       F2 crashes before receiving P10. F1 logs, sends an ACK and
> crashes.
> As there is no quorum  supporting L, L moves to LOOKING phase to find 
> a quorum and elects new leader. After sometime F1 wakes up and form a 
> quorum with L.  Both F1 and L (pervious leader) have same state (zxid 
> =10 in their log). Therefore the process which has the large myid will 
> be a leader, assume L (pervious leader) has larger myid, So,
>
> 3.       L sends a pending proposal with Zxid =10 to F1.
>
> 4.       F1 logs and sends an ACK.
>
> 5.       Upon receiving ACK, L commits p10 and sends an ACK.
>
>
>
> (1)    Is this true or false?
>
> (2)    Regards,
> Ibrahim
>
>

Reply via email to