You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pulsar.apache.org by Matteo Merli <ma...@gmail.com> on 2022/02/17 06:47:00 UTC

Re: [VOTE] PIP-118: Do not restart brokers when ZooKeeper session expires

I forgot to close this one.

Closing now with 5 +1s votes;
 * Matteo
 * PengHui
 * Hang
 * Enrico
 * Sijie


--
Matteo Merli
<ma...@gmail.com>

On Mon, Jan 24, 2022 at 11:47 PM Enrico Olivelli <eo...@gmail.com> wrote:
>
> What's the status of this PIP ?
>
> We have a pending PR,
> we can commit it as soon as the VOTE thread is officially closed
> https://github.com/apache/pulsar/pull/13341
>
>
> Il giorno gio 23 dic 2021 alle ore 01:17 Sijie Guo
> <gu...@gmail.com> ha scritto:
> >
> > +1
> >
> > On Tue, Dec 21, 2021 at 3:22 PM Matteo Merli <mm...@apache.org> wrote:
> >
> > > https://github.com/apache/pulsar/issues/13304
> > >
> > > Following the discussion, I have updated the proposal to also include
> > > the deprecation and renaming of the config setting name to
> > > `metadataSessionExpiredPolicy`.
> > >
> > >
> > >
> > > -------
> > > ## Motivation
> > >
> > > After all the work done for PIP-45 that was already included in 2.8 and 2.9
> > > releases, it enabled the concept of re-acquirable resource locks and leader
> > > election.
> > >
> > > Another important change was to avoid doing any deferrable metadata
> > > operation
> > > when we know that we are not currently connected to the metadata service.
> > >
> > > Finally, that enabled to stabilize in 2.9 the configuration setting that
> > > allows
> > > brokers to continue operating in a safe mode when the session with
> > > ZooKeeper
> > > expires.
> > >
> > > The way it works is that, when we lose a ZooKeeper session, the data plane
> > > will
> > > continue to work undisturbed, relying on the BookKeeper fencing to avoid
> > > any
> > > inconsistencies.
> > >
> > > New topics are not able to get started, but existing topics will see no
> > > impact.
> > >
> > > The original intention for shutting down the brokers was to ensure that we
> > > would automatically go back to a consistent state, with respect to which
> > > resources are "owned" in ZooKeeper by a given broker.
> > >
> > > With the re-acquirable resource locks, that problem was solved and
> > > thoroughly
> > > tested to be robust.
> > >
> > > ## Proposed changes
> > >
> > > In 2.10 release, for the setting:
> > >
> > > ```properties
> > > # There are two policies to apply when broker metadata session
> > > expires: session expired happens, "shutdown" or "reconnect".
> > > # With "shutdown", the broker will be restarted.
> > > # With "reconnect", the broker will keep serving the topics, while
> > > attempting to recreate a new session.
> > > zookeeperSessionExpiredPolicy=shutdown
> > > ```
> > >
> > > Deprecate the old setting and rename it to
> > > `metadataSessionExpiredPolicy`, with default value set to `reconnect`.
> > >