Re: Roadmap for 4.0
I agree that not releasing semi-regularly is not good for the project. I think our habit of releasing half working software is much worse though. Our testing/stability story is not iron clad. I really think the bar for releasing 4.0 should be that the people in this thread are running the code in production, recommending their customers run it in production, or offering and supporting it as part of their cloud service.
In that context, the argument for waiting for some features is less about trying to do all the things and more about making 4.0 something worth the time and expense of validating for production.
On 4/11/18, 1:06 AM, "Sylvain Lebresne" <lebresne@xxxxxxxxx> wrote:
On Wed, Apr 11, 2018 at 12:35 AM Jeff Jirsa <jjirsa@xxxxxxxxx> wrote:
> Seriously, what's the rush to branch? Do we all love merging so much we
> want to do a few more times just for the sake of merging? If nothing
> diverges, there's nothing gained from the branch, and if it did diverge, we
> add work for no real gain.
Again, to me, the "rush" is that 1) there is tons of changes sitting in
that some user (_not all_, granted), especially new ones, would likely
benefits, and sooner for those is better than later, 2) we want to favor
release stability and we *know* from years of experience (and frankly,
sense) that the bigger the release is, the harder it is to test it/ensuring
overall stability and 3) not having major releases for years is
impacting at least the perceived dynamism/liveness of the project to
actors (prospective new user come in mind here, but not only) and that's
simply bad for the project.
And having listed arguments for a soon freeze/not accumulating much more
before release, I'd like to reverse the question to you: what are the big
downsides of not doing that? Are we really that hung up on our own
comfort that the annoyance of a bit more merging trumps the arguments above?
Anyway, the reasons above make me thing that it's better _for the project_
to freeze 4.0 soon, which doesn't exclude a "short" cycle for the following
major (where my definition of short here is something like 6-8 months), and
I'm happy to decide to make 4.0 a non-mandatory upgrade to whatever
comes next so that folks that prefer upgrading rarely can simply skip it and
go to the next one. Likely nobody will die if we wait more though, and it's
clear it will make a few people here more happy if we do, but I believe the
project as a whole will be a bit worst off, that's all.
: I'll note that I don't deny upgrading is huge deal for some users, but
let's not skew arguments too much based on any one user interest. For many
users, upgrading even every year to get improvements is still considered as
good deal, and that's not counting new users for which it's super
to miss out on improvements because we release major only every 2+ years.
: I'll be clear: I will simply not buy anyone argument that "we'll do
so much better testing this time" on face value. Not anymore. If you want to
use that argument to sell having bigger releases, then prove it first. Let's
do reasonably sized 4.0 and 4.1/5.0 and prove that our testing/stability
is iron clad now, and then for 4.2/6.0 I'll be willing to agree that making
bigger release may not impact stability too much.
: Conservative estimate, if we do care about stable releases as we all
to, even if we were to freeze June 1, we will almost surely not release
October/November, which will be ~1.3 year since the last major release
that's the conservative estimate). If we push a few months to get some big
complex feature in, not only this push the freeze of those few months, but
will also require more testing, so we're looking at 2+ years, with a
> Beyond that, I still don't like June 1. Validating releases is hard. It
> sounds easy to drop a 4.1 and ask people to validate again, but it's a hell
> of a lot harder than it sounds. I'm not saying I'm a hard -1, but I really
> think it's too soon. 50'ish days is too short to draw a line in the sand,
> especially as people balance work obligations with Cassandra feature
> On Tue, Apr 10, 2018 at 3:18 PM, Nate McCall <zznate.m@xxxxxxxxx> wrote:
> > A lot of good points and everyone's input is really appreciated.
> > So it sounds like we are building consensus towards June 1 for 4.0
> > branch point/feature freeze and the goal is stability. (No one has
> > come with a hard NO anyway).
> > I want to reiterate Sylvain's point that we can do whatever we want in
> > terms of dropping a new feature 4.1/5.0 (or whatev.) whenever we want.
> > In thinking about this, what is stopping us from branching 4.0 a lot
> > sooner? Like now-ish? This will let folks start hacking on trunk with
> > new stuff, and things we've gotten close on can still go in 4.0
> > (Virtual tables). I guess I'm asking here if we want to disambiguate
> > "feature freeze" from "branch point?" I feel like this makes sense.
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@xxxxxxxxxxxxxxxxxxxx
> > For additional commands, e-mail: dev-help@xxxxxxxxxxxxxxxxxxxx
To unsubscribe, e-mail: dev-unsubscribe@xxxxxxxxxxxxxxxxxxxx
For additional commands, e-mail: dev-help@xxxxxxxxxxxxxxxxxxxx