zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "bit1129@163.com" <bit1...@163.com>
Subject Re: RE: Question about the two-phrase commit
Date Wed, 07 Jan 2015 05:44:51 GMT
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 !!




bit1129@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+s578899n7580745h19@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.
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message