"Define what EOL means" - whatever we do let's make sure it gets onto the
"releases" page so that folks have official information they can reference
from the project.

I like having a max of 2 versions. Stable and current. I agree that due to
our lack of communication/policy so far we should ensure that people have
opportunity to move/support on the release versions (3.x minors) we current
support.

I like the idea of tying old releases to new ones. I don't think tying
ourselves to a specific, long term is good though. It definitely reduces
flexibility. Same with saying that new minors are going to be released
every Y time. Can't we just say that a stable release will be supported for
a minimum of 6 months (other timeframe?) after moving the stable indicator
from 3.x to 3.x+1. We then have the flexibility to keep it around longer if
there is a reason why folks want to stick for a longer time (eg major
changes in the more recent versions)....

Patrick

On Fri, Feb 11, 2022 at 8:08 AM Christopher <ctubb...@apache.org> wrote:

> Regarding the suggestion: "Maybe we can also communicate that we’re going
> to officially EoL the least recent ZK version every 2 years." If you
> release new versions less frequently than that, the number of maintenance
> versions will go to 0 (though, in practice, you wouldn't EOL your current
> release). If you release more frequently, you'll be stuck maintaining an
> increasing number of versions.
>
> To keep the maintenance burden relatively consistent, I suggest tying your
> EOL schedule to your release schedule, so when you release a new version,
> you drop the oldest one. If you release every 2 years, then it works out
> the same. But if you release more or less often, your maintenance burden
> stays consistent.
>
> I would start by deciding the minimum number of concurrent versions you
> want to maintain. I suggest no more than 2, but ZK currently has 3, and is
> about to be 4 soon. If you're not marking specific versions as long-term
> stable, then the default would be to assume you're maintaining the most
> recent versions.
>
> Then, consider churn. If you release frequently, you may want to set a
> minimum age for maintenance, so users aren't forced to upgrade too often.
> So, if you start with 2 concurrent versions and you have a few versions
> released rapidly, you may temporarily need to support up to 3 or 4 releases
> until the oldest ones reach the minimum age, like 2 years for example, and
> are able to be EOL'd.
>
> Then, consider upgrade overlap. When you release, you could EOL the oldest
> version right away. But, it might be nicer to wait a few months, or maybe
> up to a year, before the oldest one is EOL'd.
>
> I previously mentioned Accumulo's "LTM" strategy. These are the core
> considerations we had in mind. So, for example, we support a minimum of 1
> LTM version, with a 1 year overlap. We don't release frequently enough for
> the minimum age to be of concern. However, we did want to allow for
> intermediate feature preview releases that are immediately EOL as soon as a
> newer version is available. So, at any given time, we are maintaining
> between 1 and 2 LTM releases, and no more than 1 non-LTM release. We also
> use this to provide users with information about supported upgrade paths so
> users can upgrade from LTM to LTM, skipping over non-LTM releases, or they
> can stay on the latest (whether or not it is LTM).
>
> For ZooKeeper, I would suggest:
> * maintain at least 2 versions (currently 3.6 and 3.7)
> * maintain for at least 3 years before EOL
>
>
> On Fri, Feb 11, 2022 at 9:10 AM Andor Molnar <an...@apache.org> wrote:
>
> > Thanks for the pointers. It was good to help refreshing my memory.
> >
> > We definitely missed the communication when stable and current links were
> > flipped from one version to another. Things will get more interesting
> when
> > Enrico finally releases 3.8.0. We’ll end up having 3 different “stable"
> > branches and 3.8 will become the “current”.
> >
> > What can we do with this?
> >
> > Announcing 3.5 EoL
> > ~~~~~~~~~~~~~~~~~~
> >
> > This should have been done before flipping the stable pointer, but
> anyway,
> > here’re the points that we considered when doing the same for 3.4:
> > - Discussion happened in March/April 2020, EoL was announced for 1st of
> > June, 2020 (3 months ahead).
> >
> > - Define what EOL means - This is already discussed, text can be
> > copy-pasted from 3.4 EoL message,
> >
> > - Provide guidelines for upgrading paths,
> >
> > - State interoperability guarantees
> >    - Previous version of ZooKeeper client is able to connect to server as
> > long
> > as there’s no new feature enforced on server side,
> >    - Previous version of ZooKeeper server is able to accept connections
> > from
> > clients as long as they don’t want to use new features.
> >
> > - Curator already supports later versions - Is it true for 3.6, 3.7?
> >
> > It’s February now, so if we nail down the above points, I don’t see any
> > objections against announcing 3.5 EoL for 1st of June, 2022 (2 years
> after
> > 3.4 EoL, providing 4 months to upgrade). Maybe we can also communicate
> that
> > we’re going to officially EoL the least recent ZK version every 2 years.
> >
> > Andor
> >
> >
> >
> >
> > > On 2022. Feb 9., at 20:28, Patrick Hunt <ph...@apache.org> wrote:
> > >
> > > On Wed, Feb 9, 2022 at 3:07 AM Andor Molnar <an...@apache.org> wrote:
> > >
> > >> Hi Pat,
> > >>
> > >> Yeah, I asked for a more specific suggestion from you. If we avoid
> using
> > >> the LTS in ZooKeeper releases and stay with the stable/latest labels,
> > how
> > >> would you label the current maintained versions?
> > >>
> > >
> > > Ah, ok. No worries Andor, I misunderstood. My 0.02:
> > >
> > > We have "stable" and "current" already identified.
> > > https://dlcdn.apache.org/zookeeper/
> > > Stable was last updated in April of 2021. My recommendation is that we
> > > should change the process to notify EOL prior to updating e.g. "stable"
> > > reference. Stable is our indication w/o using the LTS label. As long as
> > we
> > > have a public policy & associated announcements, I think that's fine.
> > >
> > > I also bring your attention to this conversation thread from March 2020
> > for
> > > the previous EOL'd (3.4) release line:
> > > https://markmail.org/message/b2pqcztlb2ixoyjp
> > > Some good ideas in there from many folks, I think we settled on a
> > timeframe
> > > we felt comfortable with, at least at the time. Unfortunately we did
> not
> > > follow through with a plan for future releases. Perhaps we can do that
> > now.
> > >
> > > Regards,
> > >
> > > Patrick
> > >
> > >
> > >>
> > >> Enrico is about to release 3.8.0 soon, so we’ll end up having four
> > >> versions in maintenance. What should we do with it to reduce the
> > >> maintenance cost?
> > >>
> > >> Andor
> > >>
> > >>
> > >>
> > >>
> > >>> On 2022. Feb 4., at 17:58, Patrick Hunt <ph...@apache.org> wrote:
> > >>>
> > >>> On Fri, Feb 4, 2022 at 8:19 AM Andor Molnar <an...@apache.org>
> wrote:
> > >>>
> > >>>> More specifically?
> > >>>>
> > >>>
> > >>> Are you asking me? :-)  "LTS" literally has a definition in
> wikipedia:
> > >>> https://en.wikipedia.org/wiki/Long-term_support
> > >>>
> > >>>
> > >>>>
> > >>>> Stable 3.5, 3.6, 3.7, 3.8 and EoL 3.5 at the end of the year (1st of
> > >> Jan,
> > >>>> 2023)?
> > >>>>
> > >>>> Andor
> > >>>>
> > >>>>
> > >>>>
> > >>>>> On 2022. Feb 1., at 16:41, Patrick Hunt <ph...@apache.org> wrote:
> > >>>>>
> > >>>>> "LTS" typically has meaning for folks beyond just what the words
> say.
> > >> JDK
> > >>>>> LTS. Ubuntu LTS. etc... I think it would be less confusing to stay
> > with
> > >>>> the
> > >>>>> stable/latest labels we have had in the past and plan ahead a bit
> in
> > >>>> terms
> > >>>>> of giving notice when releases will be removed from support.
> > >>>>>
> > >>>>> Patrick
> > >>>>>
> > >>>>> On Tue, Feb 1, 2022 at 3:12 AM Andor Molnar <an...@apache.org>
> > wrote:
> > >>>>>
> > >>>>>> Hi Andrew,
> > >>>>>>
> > >>>>>> I think that wasn’t a general plan from the community at that
> time,
> > >> just
> > >>>>>> my opinion based on how long 3.4 was the stable release of
> ZooKeeper
> > >> (4
> > >>>>>> years). Since then the release schedule has become much faster and
> > to
> > >> be
> > >>>>>> honest I’m not participating in it.
> > >>>>>>
> > >>>>>> As mentioned 3.6 and 3.7 releases are not much different. 3.6 is
> the
> > >>>>>> “Facebook” version which is well tested and contains lots of
> patches
> > >>>> that
> > >>>>>> improves robustness. Both versions are good candidates for
> upgrade,
> > so
> > >>>>>> announcing 3.5 EoL (at least half year from now) is not
> necessarily
> > >> bad.
> > >>>>>>
> > >>>>>> As an alternative, staying with the LT(S|M) / non-LT(S|M) terms, I
> > >> think
> > >>>>>> the following could also be considered for the community:
> > >>>>>>
> > >>>>>> Now:
> > >>>>>>
> > >>>>>> master
> > >>>>>> ----------
> > >>>>>> 3.7
> > >>>>>> 3.6
> > >>>>>> 3.5 LTS
> > >>>>>> ----------
> > >>>>>> 3.4 EoL
> > >>>>>>
> > >>>>>> Can become:
> > >>>>>>
> > >>>>>> master
> > >>>>>> ----------
> > >>>>>> 3.8 LTS
> > >>>>>> 3.7
> > >>>>>> 3.5 LTS
> > >>>>>> ----------
> > >>>>>> 3.6 EoL
> > >>>>>> 3.4 EoL
> > >>>>>>
> > >>>>>> In order to keep the number of maintained branches low.
> > >>>>>>
> > >>>>>> What do you think?
> > >>>>>>
> > >>>>>> Andor
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>>> On 2022. Jan 31., at 19:41, Andrew Purtell <apurt...@apache.org>
> > >>>> wrote:
> > >>>>>>>
> > >>>>>>> Just to be clear I meant 'you' as the ZooKeeper project as a
> whole,
> > >> but
> > >>>>>>> maybe I have misunderstood this response:
> > >>>>>>>
> > >>>>>>
> > >>>>
> > >>
> >
> https://issues.apache.org/jira/browse/HADOOP-17612?focusedCommentId=17311792&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17311792
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> On Sun, Jan 30, 2022 at 10:29 AM Enrico Olivelli <
> > >> eolive...@gmail.com>
> > >>>>>>> wrote:
> > >>>>>>>
> > >>>>>>>> Il Dom 30 Gen 2022, 17:51 Andrew Purtell <
> > andrew.purt...@gmail.com>
> > >>>> ha
> > >>>>>>>> scritto:
> > >>>>>>>>
> > >>>>>>>>> Previously in various contexts - specifically, I am thinking
> of a
> > >>>>>> Hadoop
> > >>>>>>>>> JIRA where we once had a conversation on this topic, but I
> > believe
> > >>>>>> there
> > >>>>>>>>> have been others - you have declared 3.5 a long term stable
> (LTS)
> > >>>>>>>> release.
> > >>>>>>>>>
> > >>>>>>>>> A sudden EOL of an LTS is jarring and makes future promise of
> LTS
> > >>>>>>>>> untrustworthy. What I would recommend for what it’s worth is a
> > >>>>>> timetable
> > >>>>>>>> to
> > >>>>>>>>> EOL of 3.5 that is reasonably long, like one or two years,
> should
> > >> you
> > >>>>>>>>> decide to EOL it.
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>> I am sorry,
> > >>>>>>>> I forgot about such conversation.
> > >>>>>>>>
> > >>>>>>>> Can you share some pointers ?
> > >>>>>>>>
> > >>>>>>>> No problem from my side as soon as there is someone who needs
> 3.5
> > >> and
> > >>>>>> that
> > >>>>>>>> is willing to help.
> > >>>>>>>>
> > >>>>>>>> Our codebase is pretty stable and we usually pay much attention
> > to
> > >>>>>>>> compatibility. So I am sure that 3.5 clients will be able to
> > connect
> > >>>> to
> > >>>>>> new
> > >>>>>>>> servers (and vice versa)
> > >>>>>>>>
> > >>>>>>>> I opened up this discussion to see how much interest is in the
> > >>>>>> community,
> > >>>>>>>> so from your response I understand that there is such interest.
> > >>>>>>>>
> > >>>>>>>> Thanks for answering
> > >>>>>>>>
> > >>>>>>>> Enrico
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>> On Jan 30, 2022, at 5:00 AM, Enrico Olivelli <
> > eolive...@gmail.com
> > >>>
> > >>>>>>>>> wrote:
> > >>>>>>>>>>
> > >>>>>>>>>> Hello,
> > >>>>>>>>>> We are going to release 3.8.0.
> > >>>>>>>>>> It is time to think about moving 3.5 to EOL.
> > >>>>>>>>>>
> > >>>>>>>>>> Key points:
> > >>>>>>>>>> - we already have a few other "active" branches, 3.6 and 3.7
> > >>>>>>>>>> - 3.5 still has "ant" files, and cherry picking libraries
> > upgrade
> > >> is
> > >>>>>>>>>> awkward  (you always have to create a separate patch)
> > >>>>>>>>>> - moving to 3.6 is quite easy, so people should not be stuck
> if
> > >>>>>>>>>> requested to upgrade to 3.6
> > >>>>>>>>>>
> > >>>>>>>>>> Thoughts ?
> > >>>>>>>>>>
> > >>>>>>>>>>
> > >>>>>>>>>> Enrico
> > >>>>>>>>>
> > >>>>>>>>
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> --
> > >>>>>>> Best regards,
> > >>>>>>> Andrew
> > >>>>>>>
> > >>>>>>> Unrest, ignorance distilled, nihilistic imbeciles -
> > >>>>>>> It's what we’ve earned
> > >>>>>>> Welcome, apocalypse, what’s taken you so long?
> > >>>>>>> Bring us the fitting end that we’ve been counting on
> > >>>>>>> - A23, Welcome, Apocalypse
> > >>>>>>
> > >>>>>>
> > >>>>
> > >>>>
> > >>
> > >>
> >
> >
>

Reply via email to