Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Zookeeper, mail # user - Network partition and ephemeral nodes


Copy link to this message
-
Re: Network partition and ephemeral nodes
Ted Dunning 2012-11-25, 21:30
Any single ZK operation will throw an error if a disconnect from the quorum
is detected during an operation.  The way that you would normally see this
in the middle of a fast sequence of operations is as an exception from one
of the operations you are trying to do.

On Sun, Nov 25, 2012 at 12:14 PM, Narayanan Arunachalam <
[EMAIL PROTECTED]> wrote:

> In that case, a client using the lock recipe for instance, should keep an
> eye on disconnect event and abort the operation it started (the operation
> to be only run in the critical section), since there is no guarantee that
> it has the lock any more.
>
> On Nov 25, 2012, at 11:40 AM, Ted Dunning <[EMAIL PROTECTED]> wrote:
>
> > To expand on this, when a client is disconnected, it receives a
> disconnect
> > event.
> >
> > From that time until the client is reconnected, the client doesn't know
> > what has happened.  The session may have expired or it may have not
> > expired.  Keep in mind that clock changes can make reasoning during this
> > time impossible to do with precision.
> >
> > What the client does during this period of ignorance is up to the
> designer
> > of the application.  There are several potential strategies.  If the
> > application must have at most one master, then the disconnected client
> > should immediately stop behaving as a master.  If the application must
> have
> > at least one master, then the disconnected client should continue as
> > master.  If you have an in between strategy where it is bad but not fatal
> > to have two masters, you can have the disconnected client behave as a
> > master up to the point where it thinks that it likely has been superseded
> > by some other method.
> >
> > Zookeeper cannot decide this issue for you.
> >
> > On Sun, Nov 25, 2012 at 10:49 AM, Camille Fournier <[EMAIL PROTECTED]
> >wrote:
> >
> >> Yes if quorum is intact but the client cannot connect to the zookeeper,
> the
> >> session and the ephemeral nodes will expire. It is up to users of ZK for
> >> locking to correctly assume that a given client is not the lock holder
> if
> >> its connection to the ZooKeeper is lost.
> >>
> >> C
> >>
> >> On Sun, Nov 25, 2012 at 1:32 PM, Narayanan Arunachalam <
> >> [EMAIL PROTECTED]> wrote:
> >>
> >>> Hi,
> >>>
> >>> In case the network between ZK cluster and client is partitioned, once
> >> the
> >>> session expires would it remove the ephemeral nodes? If that's the case
> >> how
> >>> is the correctness of the recipes like locks are archived. Because once
> >> the
> >>> ephemeral nodes are removed next client would be granted the lock isn't
> >> it.
> >>>
> >>> Regards,
> >>> Nara
> >>
>