I think the simplest upgrade path is actually “you can upgrade from any
currently ’supported’ version to this new one”.  So for 5.1/6.0 that would
be 4.0/4.1/5.0.  That has always been my preferred support model for
upgrades.

-Jeremiah

On Dec 10, 2024 at 3:45:52 PM, Mick Semb Wever <m...@apache.org> wrote:

>
> I would very much rather keep our upgrade paths simple and intuitive:
> You can only upgrade between adjacent major versions.
>
> This does catch users, and keeping it simple has helped a lot.
> I find it helps internally working on the code too, with a focus on
> stability for online upgrades, which does quickly become messy.
>
> I'm open to the suggestion that TCM changes enough that it warrants it,
> and if we're ok imposing onto the user that this change means they have to
> upgrade from 4.x to 5.0 before 6.0.  Major upgrades are not trivial, we see
> enterprises often need 6 months.
>
> I would much rather use the introduction of Java21 and the removal of
> Java11 as the compatibility change that warrants the bump to 6.0.  I
> haven't thought about Python here, I don't think it applies as it's not a
> server-side change that we recommend the operator avoid making at the same
> time as an upgrade.
>
> On the bikeshedding front: I'm against major version bumps for feature
> marketing reasons.  A leading number is not required to sell features as
> significant as Accord and TCM.  It's a personal opinion, but it just feels
> desperate and lacking in confidence for a technology as established as C*.
> Let the work speak for itself.
>
>
>
> On Wed, 11 Dec 2024 at 07:16, Caleb Rackliffe <calebrackli...@gmail.com>
> wrote:
>
>> I don't care what we call it as long as 4.1 -> 5.1/6.0 upgrades are
>> possible.
>>
>> On Tue, Dec 10, 2024 at 1:28 PM David Capwell <dcapw...@apple.com> wrote:
>>
>>> Given our version support… if we do make this change does this imply
>>> users must do the following to get to 6.0?
>>>
>>> 4.x upgrade to 5.0
>>> 5.0 upgrade to 6.0
>>>
>>> So no 4.x to 6.0?  Given that this is 5.1 atm we are expected to support
>>> 4.x to 5.1 upgrades, but switching to 6.0 that isn’t true based off our
>>> documentation
>>>
>>> On Dec 10, 2024, at 11:00 AM, Josh McKenzie <jmcken...@apache.org>
>>> wrote:
>>>
>>> This is another topic we basically revisit afresh every time :)
>>>
>>> I think it’s fine to bump for marketing or vibe reasons, I would support
>>> it. I don’t think we need to confect some weak semverish justification.
>>>
>>> Vibes ftw.
>>>
>>> Lets see if any strong contradicting opinions pop up on here in the next
>>> few days; if not I'll draft up a revision to the wiki. Taking it on a
>>> case-by-case release basis w/a respect for vibes sounds perfect to me.
>>>
>>> On Tue, Dec 10, 2024, at 1:37 PM, Patrick McFadin wrote:
>>>
>>> I was waiting for this discussion to happen again. :p
>>>
>>> What you call marketing, I call end-user communication. I'll leave
>>> this open question, but what do we want to communicate to the user
>>> base, and how should they approach this new feature set?
>>>
>>> Patrick
>>>
>>> On Tue, Dec 10, 2024 at 10:10 AM Benedict Elliott Smith
>>> <bened...@apache.org> wrote:
>>> >
>>> > This is another topic we basically revisit afresh every time :)
>>> >
>>> > I think it’s fine to bump for marketing or vibe reasons, I would
>>> support it. I don’t think we need to confect some weak semverish
>>> justification.
>>> >
>>> > > On 10 Dec 2024, at 13:01, Brandon Williams <dri...@gmail.com> wrote:
>>> > >
>>> > > Even if TCM is api-compatible, it will change how operators run
>>> > > Cassandra in a significant way (like, different procedures from every
>>> > > previous version.)  I think that justifies a major.
>>> > >
>>> > > Kind Regards,
>>> > > Brandon
>>> > >
>>> > > On Tue, Dec 10, 2024 at 11:51 AM Jeff Jirsa <jji...@gmail.com>
>>> wrote:
>>> > >>
>>> > >> You’ve added a ton of API surface to transaction behavior and
>>> cluster management. The TCM may or may not be strictly breaking, but
>>> they’re fundamentally very very different, so even with semver as the only
>>> standard, I think you can justify a major.
>>> > >>
>>> > >> But also, let’s just acknowledge that marketing is a thing and bump
>>> the major to acknowledge the huge, massive, database-changing features,
>>> even if they’re not meant to be disruptive.
>>> > >>
>>> > >>
>>> > >>
>>> > >> On Dec 10, 2024, at 9:46 AM, Josh McKenzie <jmcken...@apache.org>
>>> wrote:
>>> > >>
>>> > >> Currently we reserve MAJOR in semver changes for API breaking only:
>>> https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=199530302#Patching,versioning,andLTSreleases-Versioningandtargeting
>>> :
>>> > >>
>>> > >> That's consistent w/semver itself: link:
>>> > >>
>>> > >> Given a version number MAJOR.MINOR.PATCH, increment the:
>>> > >>
>>> > >> MAJOR version when you make incompatible API changes
>>> > >> MINOR version when you add functionality in a backward compatible
>>> manner
>>> > >> PATCH version when you make backward compatible bug fixes
>>> > >>
>>> > >>
>>> > >> So absolute literal "correctness" of what we're doing aside, our
>>> version numbers mean something to us as a dev community but also mean
>>> something to Cassandra users. I'm not confident they mean the same thing to
>>> each constituency. I'm also not comfortable with us prioritizing our own
>>> version number needs over that of our users, should they differ in meaning.
>>> > >>
>>> > >> Does anybody have insight into how other well known widely adopted
>>> projects do things we might be able to learn from? I generally only think
>>> about this topic when a discussion like this comes up on our dev list so
>>> don't have much insight to bring to the discussion.
>>> > >>
>>> > >> On Tue, Dec 10, 2024, at 11:52 AM, Jeremiah Jordan wrote:
>>> > >>
>>> > >> The question is if we are signaling compatibility or purely
>>> marketing with the release number.
>>> > >> We dropped compatibility with a few things in 5.0, which was the
>>> reason for the .0 rather than 4.2.  I don’t know if we are breaking any
>>> compatibility with current trunk?  Though maybe some of the TCM stuff could
>>> be considered that.
>>> > >> If we are purely going for marketing value, then yes, I agree
>>> TCM+Accord would be 6.0 worthy.
>>> > >>
>>> > >> -Jeremiah
>>> > >>
>>> > >> On Dec 10, 2024 at 10:48:21 AM, Jon Haddad <j...@rustyrazorblade.com>
>>> wrote:
>>> > >>
>>> > >> Keeping this short.  I'm not sure why we're calling the next
>>> release 5.1.  TCM and Accord are a massive thing.  Other .1 / .2 releases
>>> were the .0 with some smaller things added.  Imo this is a huge step
>>> forward, as big as 5.0 was, so we should call it 6.0.
>>> > >>
>>> > >>
>>> >
>>>
>>>
>>>

Reply via email to