This is one of the differences of consensus from two phase commit - there is no "nack" in consensus. Followers ack every proposal.
On Tue, Jan 6, 2015 at 9:44 PM, bit1...@163.com <bit1...@163.com> wrote: > Hi,Alex, > > I still have following questions. > 1. When the leader asks the followers to ack the proposal, what are the > common cases that the follower would not ack the proposal. If the follower > can't ack the proposal, will the follower explicitly tell the leader that > it can't ack? > 2. If follower A acks, while the others don't. A will wait for the commit > request from the leader? What if the leader never sends out the commit > request? How does A know that the write fail? > 3. If follower A doesn't receive the commit request, then A can't tell the > client that the write has successfully done. what will A tell the client? > > Thanks !! > > > > > bit1...@163.com > > From: Ibrahim > Date: 2015-01-07 08:38 > To: zookeeper-user > Subject: RE: Question about the two-phrase commit > Thank you Alexander. I get it > > Ibrahim > > From: Alexander Shraer-2 [via zookeeper-user] [mailto: > ml-node+s578899n7580745...@n2.nabble.com] > Sent: Wednesday, January 07, 2015 12:29 ص > To: Ibrahim El-sanosi (PGR) > Subject: Re: Question about the two-phrase commit > > Edward is totally right - if the operation hasn't been acked by a quorum > then whether or not it is lost depends on failures (both server failures > and network failures) as well as latencies. > > The leader doesn't have to re-broadcast everything - when a follower > connects to a leader it tells him whats the last operation in its log and > the leader only needs to send the missing log suffix or a snapshot + suffix > if the follower is really behind. > > The leader indeed doesn't know which operations were acked by a quorum. The > operations that weren't acked are always some suffix of the log > (potentially empty). > > On Tue, Jan 6, 2015 at 4:19 PM, Ibrahim <[hidden > email]</user/SendEmail.jtp?type=node&node=7580745&i=0>> > wrote: > > > Thank you Edward for replaying. > > > > In my opinion, your first case can’t happen, because the election > > mechanism will elect the node that has the latest transaction (zxid) > seen. > > In this case, it will be only your second case is correct, unless the > node > > that has latest transaction crashes forever. > > > > Ibrahim > > From: Edward Carter [via zookeeper-user] [mailto: > > [hidden email]</user/SendEmail.jtp?type=node&node=7580745&i=1>] > > Sent: Tuesday, January 06, 2015 11:53 م > > To: Ibrahim El-sanosi (PGR) > > Subject: Re: Question about the two-phrase commit > > > > If an operation is logged to disk on a minority of servers, then what > > happens on restart depends on which server wins the leader election. > Since > > the new operation is on a minority, depending on network conditions, a > > server that did *not* log the operation might win the leader election. > In > > this case, the operation will be discarded. If a server that *did* log > the > > operation wins the leader election (as would be the case in the absence > of > > network or latency issues), then the operation will be propagated to the > > remaining servers in the ensemble. > > > > Edward > > > > On Jan 6, 2015, at 3:42 PM, Ibrahim <[hidden > > email]</user/SendEmail.jtp?type=node&node=7580741&i=0>> wrote: > > > > > Hi Alexander, > > > > > > So, you meant that if there is operation loged to the disk but it > hasn't > > got > > > enough majority, then if the zookeeper servers restart, the new leader > > will > > > re-broadcast the loged operation again to the followers to commit that > > > operation. > > > > > > Does above what you meant by (NEWLEADER message acts as the accept and > > > UPTODATE message acts as commit). > > > > > > Am I right? > > > > > > Thank you > > > > > > Ibrahim > > > > > > > > > > > > -- > > > View this message in context: > > > https://urldefense.proofpoint.com/v1/url?u=http://zookeeper-user.578899.n2.nabble.com/Question-about-the-two-phrase-commit-tp7580725p7580739.html&k=ZVNjlDMF0FElm4dQtryO4A%3D%3D%0A&r=09h%2FR60Z1NzKuJcTv9DkEw%3D%3D%0A&m=T7mEM8unY7tsVTbHXoSOqvwXEZEBCs8%2BRWl0cT03ruo%3D%0A&s=bcce5c88300c51126777473143b3f560542cf1c5699b33283f888e27ed41529f > > > Sent from the zookeeper-user mailing list archive at Nabble.com. > > > > > > ________________________________ > > If you reply to this email, your message will be added to the discussion > > below: > > > > > http://zookeeper-user.578899.n2.nabble.com/Question-about-the-two-phrase-commit-tp7580725p7580741.html > > To unsubscribe from Question about the two-phrase commit, click here< > > >. > > NAML< > > > http://zookeeper-user.578899.n2.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml > > > > > > > > > > > > > -- > > View this message in context: > > > http://zookeeper-user.578899.n2.nabble.com/Question-about-the-two-phrase-commit-tp7580725p7580743.html > > Sent from the zookeeper-user mailing list archive at Nabble.com. > > > > ________________________________ > If you reply to this email, your message will be added to the discussion > below: > > http://zookeeper-user.578899.n2.nabble.com/Question-about-the-two-phrase-commit-tp7580725p7580745.html > To unsubscribe from Question about the two-phrase commit, click here< > http://zookeeper-user.578899.n2.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=7580725&code=aS5zLmVsLXNhbm9zaUBuZXdjYXN0bGUuYWMudWt8NzU4MDcyNXw1NTE4MjI0Njk= > >. > NAML< > http://zookeeper-user.578899.n2.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml > > > > > > > -- > View this message in context: > http://zookeeper-user.578899.n2.nabble.com/Question-about-the-two-phrase-commit-tp7580725p7580746.html > Sent from the zookeeper-user mailing list archive at Nabble.com. >