* Re: RFC: LTS and stable release scheme
2015-10-08 8:05 ` Jan Beulich
@ 2015-10-08 10:39 ` George Dunlap
2015-10-08 11:48 ` Jan Beulich
2015-10-08 10:59 ` Ian Jackson
` (2 subsequent siblings)
3 siblings, 1 reply; 30+ messages in thread
From: George Dunlap @ 2015-10-08 10:39 UTC (permalink / raw)
To: Jan Beulich, George Dunlap
Cc: Juergen Gross, LarsKurth, Wei Liu, Ian Campbell, Andrew Cooper,
Doug Goldstein, xen-devel, Steven Haigh, Ian Jackson
On 08/10/15 09:05, Jan Beulich wrote:
>>>> On 07.10.15 at 19:45, <George.Dunlap@eu.citrix.com> wrote:
>> OK, so we have to decide on a *set* of factors, rather than just one.
>>
>> Let's try to be analytic.
>>
>> So we have so far identified 4 "parameters" that we can tweak:
>>
>> 1. Release frequency. At the moment, this is "9 months".
>> 2. Length of time bug fixes are backported. At the moment this is "18
>> months".
>> 3. Length of time security fixes are backported. At the moment this
>> is "36 months" (i.e., original 18 months of bug fixes + 18 further
>> months of security-only fixes)
>> 4. Subset of releases given treatment for #1 and #2. At the moment
>> this is "all".
>> 5. The release frequency for maintenance release. At the moment this
>> is every 3 months.
>
> We switched this to 4 months not too long ago. This changes some
> of the numbers further down, but not in a way that would significantly
> affect the meat of this analysis.
Oh right -- it's still 3 months on the wiki page Wei pointed to earlier
in this thread [1]. That should probably be updated.
[1] http://wiki.xenproject.org/wiki/Xen_Project_Maintenance_Releases
>
>> The steady state for "R9 S3 {18,36}" is to have 2 releases receiving
>> bug fixes, and 2 releases receiving security fixes at any given time;
>> and this happens every 3 months; total of 8 bug-fix and 8
>> security-only ports per year.
>
> Not sure what the latter 8 stands for - we don't currently do any
> more releases from branches in security maintenance mode, all we
> do is provide respective backports in XSAs and apply those to the
> trees once the issues get published.
Maintenance release every 3 months -> 4 maintenance releases per year, *
2 outstanding bugfix relases = 8 total "bugfix" maintenance releases per
year.
>> It has so far been assumed in this discussion that this would be an
>> undue burden, and therefore not acceptable.
>
> I don't think anyone said "undue". All that was said was that the
> amount of work to be put into this increases.
I think when you objected to the 6-month release cycle on the grounds
that it implies LTS releases, many people (Wei in particular)
interpreted that as saying that changing only that one parameter would
cause undue increase in load. That is the assumption behind Wei's
commend earlier in this thread:
"With unlimited manpower we can use the current model to equally treat
each release LTS. In reality this is not the case, so I see the need for
using LTS model to effectively direct limited resources."
>> But it's worth asking
>> whether that is actually the case. It has been argued, for instance,
>> that the difficulty in backporting a patch scales with the distance in
>> commits that the patch has to be ported over. Porting a patch to a
>> releases 3, 9, and 15 months ago isn't 1.5x as much work as porting it
>> to one 3 and 12 months ago.
>>
>> But I would guess that the porting *is* more work; and the building,
>> testing, and releasing certainly is 1.5x more work.
>>
>> We could also explore other options, like having more automation, or
>> spreading the work of porting patches among more people.
>
> Now that goes slightly astray: People like me having to maintain
> older releases for much longer time need to do certain backports
> anyway (the older the release, the higher the chance that a
> difficult backport may result in a decision being made to ignore
> that fix as not important enough, due to the risk of the backport
> going wrong being higher than that of leaving the bug in place).
> I.e. at least a good part of the _backporting_ overhead can
> probably be discounted. What I consider more of an issue is the
> tedious (because purely mechanical) task of committing the
> patches to the respective stable trees, which (in my way of
> doing it) implies test builds for every commit. This is time I
> consider worthwhile spent as long as it doesn't grow too much,
> but of course this time could be used for less boring and more
> productive things.
>
> Perhaps there's room for further automation here, yet as with
> any automation the question is how quickly getting this in place
> will amortize itself.
Aren't stable branches already tested with OSStest? If they aren't they
certainly could be made to be tested pretty trivially, I think.
Wouldn't an osstest (which includes both build and functional tests)
plus an RC be sufficient?
>> Another thing which has been suggested is to treat releases
>> differently; for instance, every 4 releases (24 months), release an
>> "LTS" release that has longer support requirements. If we chose to
>> have LTS releases, we may then also choose to have normal releases get
>> a shorter support window. It's also been suggested that security
>> fixes are really what downstreams need from an LTS release; once
>> you've been using something for more than 2 years, you've probably
>> already found all the bugs which bother you.
>
> But wouldn't that mean that the current model of 3 years of security
> support is (almost) what people want from an LTS branch?
Is there a specific proposal you are advocating here?
>> So one option would be "R6 S3 {12,12} L24 S3 {24, 48}" (Regular
>> releases every 6 months, maintenance releases every 3 months, fixes
>> backported for 12 months; LTS release every 24 months, bug-fixes
>> backported for 24 months, security fixes backported for 48 months).
>> Steady-state this gives us a max 3 releases receiving bug-fix
>> backports and 1 release receiving security backports at any given
>> time. This gives us 12 bug-fix and 4 security-only ports per year.
>>
>> Any thoughts on this? Anything else to add or discuss?
>
> So using the 4 month stable release cadence I get currently 6
> stable releases a year (two maintained branches, ignoring short
> periods of overlap), compared to 6 ordinary stable releases (two
> ordinary branches) plus 6 LTS releases (two LTS branches) a year,
> i.e. doubling the amount.
>
>> Personally I like the LTS model. I think arguably if we use the
>> numbers I chose above, it shouldn't be any more actual work than it is
>> now (as there are still only 4 releases every 3-month maintenance
>> window), and I don't understand the concern with "treating releases
>> differently".
>
> If what becomes an LTS release is known up front, the pressure to
> get things into such a release may (and, looking at what I got to
> notice on Linux, will) be quite a bit higher. After all the expectation
> and intention is for distros to particularly use those releases when
> caring for long term maintenance. And with that why would
> contributors bother much about getting things into non-LTS
> releases when those won't get used by many / for a reasonable
> time period anyway?
>
> If what becomes an LTS release is to be determined only at the
> end of a branch's ordinary life cycle, the above problem can be
> avoided, but downstream consumers having picked the "wrong"
> release will be penalized. This is what we've been getting
> complaints on by openSUSE users relative to the kernel versions
> (and which keeps coming up the discussion of up-rev-ing the
> kernel version post release, which as you surely can imagine has
> all kinds of up and down sides). Plus depending on who gets to
> maintain the branch from that point on (if not handed to always
> the same person), quality and hence value to the downstreams
> may heavily vary.
OK, so the main argument in favor of 6-month release cycles is the
reduced time between check-in and a feature being in a release. It has
been proposed that this shorter cycle will in part reduce the pressure
to get features in for any particular release.
Here is my summary of your argument above (let me know if it's accurate):
---
We have two options WRT LTS releases: Either we make LTS releases known
ahead of time, or we choose them afterwards.
There is no value to developers to getting features into non-LTS
releases; and therefore, if the LTS releases are known ahead of time,
then the LTS release will have exactly the same pressure as a normal
release to get features in. (And of course, if we move from a 9-month
regular release to a 24-month LTS release, the pressure will be even
greater than it is now.)
[I'm not sure if you're arguing the following or not.] In fact, in the
time after an LTS release, many developers may completely stop
developing until the next LTS release comes around.
We could mitigate this developer pressure by not announcing LTS releases
ahead of time, so that looking forward, developers don't know which
release will be an LTS release. But then we have other undesirable side
effects, namely, distros may end up settling on a version which turns
out not to be an LTS, and are then in a bind as to whether to change
versions post-release (disruptive and risky) or do all the maintenance
themselves (a lot of extra work) or just not have maintenance updates
(poor quality).
---
First of all, I completely agree that not announcing LTSes ahead of time
has unacceptable effects on distributions and other downstreams. I
think LTSes, if we choose them, should happen on a regular, predictable
basis.
However, I don't agree that getting features into non-LTS releases is of
no value to developers. Many users will use non-LTS releases (probably
Fedora, and a lot of our direct users, and probably anyone using
debian-testing most of the time). Furthermore, downstreams that want
particular features are much more likely to cherry-pick them from stable
releases than from unreleased xen-unstable.
Of course there will be more desire to get a feature into an LTS than a
regular release, but I still think that this pressure will be less now,
and less frequent, than what we have now.
Ultimately we're all just making guesses here. There is certainly a
risk that you will be proven correct (or partially correct). I think
it's worth giving it a try.
On the other hand, if we can shorten to a 6-month release cycle while
*not* going to an LTS model (by making the maintenance releases more
automated and/or sharing the maintenance burden), I would be satisfied
with that as well.
I think at some point we may just have to throw out a couple of options
and do a 4-point survey as we've done before (i.e., "argue againts / not
happy but won't argue / happy but won't argue / argue for") and see
where we stand.
-George
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 10:39 ` George Dunlap
@ 2015-10-08 11:48 ` Jan Beulich
0 siblings, 0 replies; 30+ messages in thread
From: Jan Beulich @ 2015-10-08 11:48 UTC (permalink / raw)
To: George Dunlap, George Dunlap
Cc: Juergen Gross, LarsKurth, Wei Liu, Ian Campbell, Andrew Cooper,
Doug Goldstein, xen-devel, StevenHaigh, Ian Jackson
>>> On 08.10.15 at 12:39, <george.dunlap@citrix.com> wrote:
> On 08/10/15 09:05, Jan Beulich wrote:
>>>>> On 07.10.15 at 19:45, <George.Dunlap@eu.citrix.com> wrote:
>>> The steady state for "R9 S3 {18,36}" is to have 2 releases receiving
>>> bug fixes, and 2 releases receiving security fixes at any given time;
>>> and this happens every 3 months; total of 8 bug-fix and 8
>>> security-only ports per year.
>>
>> Not sure what the latter 8 stands for - we don't currently do any
>> more releases from branches in security maintenance mode, all we
>> do is provide respective backports in XSAs and apply those to the
>> trees once the issues get published.
>
> Maintenance release every 3 months -> 4 maintenance releases per year, *
> 2 outstanding bugfix relases = 8 total "bugfix" maintenance releases per
> year.
That explains the first 8, but I tried to point out that afaics there
is no second 8 (which however you had in your description as
"8 security-only ports per year").
>> Perhaps there's room for further automation here, yet as with
>> any automation the question is how quickly getting this in place
>> will amortize itself.
>
> Aren't stable branches already tested with OSStest? If they aren't they
> certainly could be made to be tested pretty trivially, I think.
> Wouldn't an osstest (which includes both build and functional tests)
> plus an RC be sufficient?
Yes, they are getting tested. Yet - as just said in a reply to Ian -
while it's a possible model to simply throw things in and wait for them
to break, I not only feel uneasy about doing so (we don't do that on
unstable after all), but I also dislike the idea of having to turn back
to the branch a day or so later (when the failure report arrives)
instead of (normally) being done once I hit enter on the "git push".
>>> Another thing which has been suggested is to treat releases
>>> differently; for instance, every 4 releases (24 months), release an
>>> "LTS" release that has longer support requirements. If we chose to
>>> have LTS releases, we may then also choose to have normal releases get
>>> a shorter support window. It's also been suggested that security
>>> fixes are really what downstreams need from an LTS release; once
>>> you've been using something for more than 2 years, you've probably
>>> already found all the bugs which bother you.
>>
>> But wouldn't that mean that the current model of 3 years of security
>> support is (almost) what people want from an LTS branch?
>
> Is there a specific proposal you are advocating here?
I'm rather asking whether, if security support is the main concern,
the current model really is that far from what is being wanted. E.g.
consider the option of just extending security support within the
current model.
> Here is my summary of your argument above (let me know if it's accurate):
>
> ---
> We have two options WRT LTS releases: Either we make LTS releases known
> ahead of time, or we choose them afterwards.
>
> There is no value to developers to getting features into non-LTS
> releases; and therefore, if the LTS releases are known ahead of time,
> then the LTS release will have exactly the same pressure as a normal
> release to get features in. (And of course, if we move from a 9-month
> regular release to a 24-month LTS release, the pressure will be even
> greater than it is now.)
Well, not really "no value", but less.
> [I'm not sure if you're arguing the following or not.] In fact, in the
> time after an LTS release, many developers may completely stop
> developing until the next LTS release comes around.
And perhaps again not "completely", but slow down (perhaps
significantly).
> First of all, I completely agree that not announcing LTSes ahead of time
> has unacceptable effects on distributions and other downstreams. I
> think LTSes, if we choose them, should happen on a regular, predictable
> basis.
>
> However, I don't agree that getting features into non-LTS releases is of
> no value to developers. Many users will use non-LTS releases (probably
> Fedora, and a lot of our direct users, and probably anyone using
> debian-testing most of the time). Furthermore, downstreams that want
> particular features are much more likely to cherry-pick them from stable
> releases than from unreleased xen-unstable.
True.
> I think at some point we may just have to throw out a couple of options
> and do a 4-point survey as we've done before (i.e., "argue againts / not
> happy but won't argue / happy but won't argue / argue for") and see
> where we stand.
Agreed.
Jan
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 8:05 ` Jan Beulich
2015-10-08 10:39 ` George Dunlap
@ 2015-10-08 10:59 ` Ian Jackson
2015-10-08 11:34 ` Jan Beulich
[not found] ` <561670CD02000078000A94AA@suse.com>
2015-10-08 11:10 ` Wei Liu
2015-10-08 11:10 ` George Dunlap
3 siblings, 2 replies; 30+ messages in thread
From: Ian Jackson @ 2015-10-08 10:59 UTC (permalink / raw)
To: Jan Beulich
Cc: Juergen Gross, Lars Kurth, Wei Liu, Ian Campbell, George Dunlap,
Andrew Cooper, Doug Goldstein, xen-devel, Steven Haigh
Jan Beulich writes ("Re: [Xen-devel] RFC: LTS and stable release scheme"):
> What I consider more of an issue is the tedious (because purely
> mechanical) task of committing the patches to the respective stable
> trees, which (in my way of doing it) implies test builds for every
> commit. This is time I consider worthwhile spent as long as it
> doesn't grow too much, but of course this time could be used for
> less boring and more productive things.
I do test builds of my stable backports but only to the `oldest' tree.
I also find that the admin effort of backporting etc. is tedious.
> Perhaps there's room for further automation here, yet as with
> any automation the question is how quickly getting this in place
> will amortize itself.
Even with the current situation I think much more automation would be
good. (But then I'm someone who really (a) likes automating things
(b) likes sitting back and watching the automation do its thing and
even (c) likes debugging the automation when it goes wrong.)
I think that maybe as a starting point, Jan and I could agree that
instead of build-testing our backports locally, we will throw them at
osstest and see what sticks.
As for release administrivia and tarball prep: gwd's work on the
release tarball target means that we are now close to the point where
I might think about turning some of the release checklist into a
script - at least, one that can be used for tagging and tarballing a
release on a stable branch. (Full releases involve a lot more faff
and are different each time...)
Ian.
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 10:59 ` Ian Jackson
@ 2015-10-08 11:34 ` Jan Beulich
[not found] ` <561670CD02000078000A94AA@suse.com>
1 sibling, 0 replies; 30+ messages in thread
From: Jan Beulich @ 2015-10-08 11:34 UTC (permalink / raw)
To: Ian Jackson
Cc: Juergen Gross, Lars Kurth, Wei Liu, Ian Campbell, George Dunlap,
Andrew Cooper, Doug Goldstein, xen-devel, Steven Haigh
>>> On 08.10.15 at 12:59, <Ian.Jackson@eu.citrix.com> wrote:
> Jan Beulich writes ("Re: [Xen-devel] RFC: LTS and stable release scheme"):
>> Perhaps there's room for further automation here, yet as with
>> any automation the question is how quickly getting this in place
>> will amortize itself.
>
> Even with the current situation I think much more automation would be
> good. (But then I'm someone who really (a) likes automating things
> (b) likes sitting back and watching the automation do its thing and
> even (c) likes debugging the automation when it goes wrong.)
>
> I think that maybe as a starting point, Jan and I could agree that
> instead of build-testing our backports locally, we will throw them at
> osstest and see what sticks.
Well, yes, we could. Otoh the overhead of fixing something that
didn't build but got committed already means more mechanical
work (revert, or create a fixup patch) compared to fixing it before
pushing to the respective staging tree.
What I would see as possibly useful would be a queue like thing
where backports could be added, and automation would take
care of committing and pushing as much of it as it can validate
to build (more severe problems are pretty rare in stable trees,
and hence relying on the normal osstest there like we do now
would seem reasonable). Yet again this would mean one may
have to turn attention to the respective tree more often (since
right now this is needed just once for each batch of backports,
unless something really odd happens).
Jan
^ permalink raw reply [flat|nested] 30+ messages in thread
[parent not found: <561670CD02000078000A94AA@suse.com>]
* Re: RFC: LTS and stable release scheme
[not found] ` <561670CD02000078000A94AA@suse.com>
@ 2015-10-08 11:49 ` Juergen Gross
2015-10-08 12:22 ` Jan Beulich
[not found] ` <56167C0802000078000A953E@suse.com>
0 siblings, 2 replies; 30+ messages in thread
From: Juergen Gross @ 2015-10-08 11:49 UTC (permalink / raw)
To: Jan Beulich, Ian Jackson
Cc: Lars Kurth, Wei Liu, Ian Campbell, George Dunlap, Andrew Cooper,
Doug Goldstein, xen-devel, Steven Haigh
On 10/08/2015 01:34 PM, Jan Beulich wrote:
>>>> On 08.10.15 at 12:59, <Ian.Jackson@eu.citrix.com> wrote:
>> Jan Beulich writes ("Re: [Xen-devel] RFC: LTS and stable release scheme"):
>>> Perhaps there's room for further automation here, yet as with
>>> any automation the question is how quickly getting this in place
>>> will amortize itself.
>>
>> Even with the current situation I think much more automation would be
>> good. (But then I'm someone who really (a) likes automating things
>> (b) likes sitting back and watching the automation do its thing and
>> even (c) likes debugging the automation when it goes wrong.)
>>
>> I think that maybe as a starting point, Jan and I could agree that
>> instead of build-testing our backports locally, we will throw them at
>> osstest and see what sticks.
>
> Well, yes, we could. Otoh the overhead of fixing something that
> didn't build but got committed already means more mechanical
> work (revert, or create a fixup patch) compared to fixing it before
> pushing to the respective staging tree.
>
> What I would see as possibly useful would be a queue like thing
> where backports could be added, and automation would take
> care of committing and pushing as much of it as it can validate
> to build (more severe problems are pretty rare in stable trees,
> and hence relying on the normal osstest there like we do now
> would seem reasonable). Yet again this would mean one may
> have to turn attention to the respective tree more often (since
> right now this is needed just once for each batch of backports,
> unless something really odd happens).
Couldn't that purely mechanical work be spread to others? I can't
believe this would require exceptional skills and I think your
time is to precious for stuff like that.
In the beginning the workflow could be the same as yours today,
there would be just the queue you mentioned and someone either
doing the builds and committing or just look after the results
of any automatism. It just wouldn't be you.
Just my 0.02€, Juergen
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 11:49 ` Juergen Gross
@ 2015-10-08 12:22 ` Jan Beulich
[not found] ` <56167C0802000078000A953E@suse.com>
1 sibling, 0 replies; 30+ messages in thread
From: Jan Beulich @ 2015-10-08 12:22 UTC (permalink / raw)
To: Juergen Gross
Cc: Lars Kurth, Wei Liu, Ian Campbell, George Dunlap, Andrew Cooper,
Doug Goldstein, xen-devel, Steven Haigh, Ian Jackson
>>> On 08.10.15 at 13:49, <JGross@suse.com> wrote:
> On 10/08/2015 01:34 PM, Jan Beulich wrote:
>>>>> On 08.10.15 at 12:59, <Ian.Jackson@eu.citrix.com> wrote:
>>> Jan Beulich writes ("Re: [Xen-devel] RFC: LTS and stable release scheme"):
>>>> Perhaps there's room for further automation here, yet as with
>>>> any automation the question is how quickly getting this in place
>>>> will amortize itself.
>>>
>>> Even with the current situation I think much more automation would be
>>> good. (But then I'm someone who really (a) likes automating things
>>> (b) likes sitting back and watching the automation do its thing and
>>> even (c) likes debugging the automation when it goes wrong.)
>>>
>>> I think that maybe as a starting point, Jan and I could agree that
>>> instead of build-testing our backports locally, we will throw them at
>>> osstest and see what sticks.
>>
>> Well, yes, we could. Otoh the overhead of fixing something that
>> didn't build but got committed already means more mechanical
>> work (revert, or create a fixup patch) compared to fixing it before
>> pushing to the respective staging tree.
>>
>> What I would see as possibly useful would be a queue like thing
>> where backports could be added, and automation would take
>> care of committing and pushing as much of it as it can validate
>> to build (more severe problems are pretty rare in stable trees,
>> and hence relying on the normal osstest there like we do now
>> would seem reasonable). Yet again this would mean one may
>> have to turn attention to the respective tree more often (since
>> right now this is needed just once for each batch of backports,
>> unless something really odd happens).
>
> Couldn't that purely mechanical work be spread to others? I can't
> believe this would require exceptional skills and I think your
> time is to precious for stuff like that.
>
> In the beginning the workflow could be the same as yours today,
> there would be just the queue you mentioned and someone either
> doing the builds and committing or just look after the results
> of any automatism. It just wouldn't be you.
I really dislike considering my time more precious than that of
other people. Hence I'm rather hesitant to push work onto
others, albeit I've learned that I can't do entirely without (but
then on the basis of them being more knowledgeable about
things or it really being their responsibility, not their time being
less valuable).
Jan
^ permalink raw reply [flat|nested] 30+ messages in thread
[parent not found: <56167C0802000078000A953E@suse.com>]
* Re: RFC: LTS and stable release scheme
[not found] ` <56167C0802000078000A953E@suse.com>
@ 2015-10-08 12:39 ` Juergen Gross
2015-10-08 13:52 ` Wei Liu
0 siblings, 1 reply; 30+ messages in thread
From: Juergen Gross @ 2015-10-08 12:39 UTC (permalink / raw)
To: Jan Beulich
Cc: Lars Kurth, Wei Liu, Ian Campbell, George Dunlap, Andrew Cooper,
Doug Goldstein, xen-devel, Steven Haigh, Ian Jackson
On 10/08/2015 02:22 PM, Jan Beulich wrote:
>>>> On 08.10.15 at 13:49, <JGross@suse.com> wrote:
>> On 10/08/2015 01:34 PM, Jan Beulich wrote:
>>>>>> On 08.10.15 at 12:59, <Ian.Jackson@eu.citrix.com> wrote:
>>>> Jan Beulich writes ("Re: [Xen-devel] RFC: LTS and stable release scheme"):
>>>>> Perhaps there's room for further automation here, yet as with
>>>>> any automation the question is how quickly getting this in place
>>>>> will amortize itself.
>>>>
>>>> Even with the current situation I think much more automation would be
>>>> good. (But then I'm someone who really (a) likes automating things
>>>> (b) likes sitting back and watching the automation do its thing and
>>>> even (c) likes debugging the automation when it goes wrong.)
>>>>
>>>> I think that maybe as a starting point, Jan and I could agree that
>>>> instead of build-testing our backports locally, we will throw them at
>>>> osstest and see what sticks.
>>>
>>> Well, yes, we could. Otoh the overhead of fixing something that
>>> didn't build but got committed already means more mechanical
>>> work (revert, or create a fixup patch) compared to fixing it before
>>> pushing to the respective staging tree.
>>>
>>> What I would see as possibly useful would be a queue like thing
>>> where backports could be added, and automation would take
>>> care of committing and pushing as much of it as it can validate
>>> to build (more severe problems are pretty rare in stable trees,
>>> and hence relying on the normal osstest there like we do now
>>> would seem reasonable). Yet again this would mean one may
>>> have to turn attention to the respective tree more often (since
>>> right now this is needed just once for each batch of backports,
>>> unless something really odd happens).
>>
>> Couldn't that purely mechanical work be spread to others? I can't
>> believe this would require exceptional skills and I think your
>> time is to precious for stuff like that.
>>
>> In the beginning the workflow could be the same as yours today,
>> there would be just the queue you mentioned and someone either
>> doing the builds and committing or just look after the results
>> of any automatism. It just wouldn't be you.
>
> I really dislike considering my time more precious than that of
> other people. Hence I'm rather hesitant to push work onto
> others, albeit I've learned that I can't do entirely without (but
> then on the basis of them being more knowledgeable about
> things or it really being their responsibility, not their time being
> less valuable).
Okay, let me rephrase this:
You are already doing quite a lot for the Xen project (committer, x86
maintainer, a huge amount of reviews) resulting in your time being
available to productive topics seems to be of higher priority than
not spreading more or less mechanical work to others. I can
understand you are feeling a little bit uneasy letting others do this
maybe even dumb work (no offence), but I hope there would be someone
volunteering for that task. If not, this discussion is moot, of course.
You can put it this way: you are seeing a problem with a shorter release
cycle due to the suspected higher workload required doing purely
mechanical work. Maybe the desire for a shorter release cycle is so high
that someone steps up and says: "hey, no problem, let me do that purely
mechanical work, so your problem isn't existing any more."
Juergen
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 12:39 ` Juergen Gross
@ 2015-10-08 13:52 ` Wei Liu
0 siblings, 0 replies; 30+ messages in thread
From: Wei Liu @ 2015-10-08 13:52 UTC (permalink / raw)
To: Juergen Gross
Cc: Lars Kurth, Wei Liu, Ian Campbell, George Dunlap, Andrew Cooper,
Doug Goldstein, Jan Beulich, xen-devel, Steven Haigh, Ian Jackson
On Thu, Oct 08, 2015 at 02:39:40PM +0200, Juergen Gross wrote:
> On 10/08/2015 02:22 PM, Jan Beulich wrote:
> >>>>On 08.10.15 at 13:49, <JGross@suse.com> wrote:
> >>On 10/08/2015 01:34 PM, Jan Beulich wrote:
> >>>>>>On 08.10.15 at 12:59, <Ian.Jackson@eu.citrix.com> wrote:
> >>>>Jan Beulich writes ("Re: [Xen-devel] RFC: LTS and stable release scheme"):
> >>>>>Perhaps there's room for further automation here, yet as with
> >>>>>any automation the question is how quickly getting this in place
> >>>>>will amortize itself.
> >>>>
> >>>>Even with the current situation I think much more automation would be
> >>>>good. (But then I'm someone who really (a) likes automating things
> >>>>(b) likes sitting back and watching the automation do its thing and
> >>>>even (c) likes debugging the automation when it goes wrong.)
> >>>>
> >>>>I think that maybe as a starting point, Jan and I could agree that
> >>>>instead of build-testing our backports locally, we will throw them at
> >>>>osstest and see what sticks.
> >>>
> >>>Well, yes, we could. Otoh the overhead of fixing something that
> >>>didn't build but got committed already means more mechanical
> >>>work (revert, or create a fixup patch) compared to fixing it before
> >>>pushing to the respective staging tree.
> >>>
> >>>What I would see as possibly useful would be a queue like thing
> >>>where backports could be added, and automation would take
> >>>care of committing and pushing as much of it as it can validate
> >>>to build (more severe problems are pretty rare in stable trees,
> >>>and hence relying on the normal osstest there like we do now
> >>>would seem reasonable). Yet again this would mean one may
> >>>have to turn attention to the respective tree more often (since
> >>>right now this is needed just once for each batch of backports,
> >>>unless something really odd happens).
> >>
> >>Couldn't that purely mechanical work be spread to others? I can't
> >>believe this would require exceptional skills and I think your
> >>time is to precious for stuff like that.
> >>
> >>In the beginning the workflow could be the same as yours today,
> >>there would be just the queue you mentioned and someone either
> >>doing the builds and committing or just look after the results
> >>of any automatism. It just wouldn't be you.
> >
> >I really dislike considering my time more precious than that of
> >other people. Hence I'm rather hesitant to push work onto
> >others, albeit I've learned that I can't do entirely without (but
> >then on the basis of them being more knowledgeable about
> >things or it really being their responsibility, not their time being
> >less valuable).
>
> Okay, let me rephrase this:
>
> You are already doing quite a lot for the Xen project (committer, x86
> maintainer, a huge amount of reviews) resulting in your time being
> available to productive topics seems to be of higher priority than
> not spreading more or less mechanical work to others. I can
> understand you are feeling a little bit uneasy letting others do this
> maybe even dumb work (no offence), but I hope there would be someone
> volunteering for that task. If not, this discussion is moot, of course.
>
+1.
I think it's whole community's burden to run a community driven project.
Nobody would think that you push work to others because you think their
time is less valuable than yours.
> You can put it this way: you are seeing a problem with a shorter release
> cycle due to the suspected higher workload required doing purely
> mechanical work. Maybe the desire for a shorter release cycle is so high
> that someone steps up and says: "hey, no problem, let me do that purely
> mechanical work, so your problem isn't existing any more."
>
+1.
That's why various people mean team of stable release maintainers,
automation tools and other technical / procedural solutions.
But until we figure out what the real pain points are item by item,
there is no answers to how to solve them.
In any case, I'm all for spreading the burden.
Wei.
>
> Juergen
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 8:05 ` Jan Beulich
2015-10-08 10:39 ` George Dunlap
2015-10-08 10:59 ` Ian Jackson
@ 2015-10-08 11:10 ` Wei Liu
2015-10-08 12:13 ` Jan Beulich
2015-10-08 11:10 ` George Dunlap
3 siblings, 1 reply; 30+ messages in thread
From: Wei Liu @ 2015-10-08 11:10 UTC (permalink / raw)
To: Jan Beulich
Cc: Juergen Gross, LarsKurth, Wei Liu, Ian Campbell, George Dunlap,
Andrew Cooper, Doug Goldstein, xen-devel, Steven Haigh,
Ian Jackson
On Thu, Oct 08, 2015 at 02:05:51AM -0600, Jan Beulich wrote:
> >>> On 07.10.15 at 19:45, <George.Dunlap@eu.citrix.com> wrote:
[...]
>
> > But it's worth asking
> > whether that is actually the case. It has been argued, for instance,
> > that the difficulty in backporting a patch scales with the distance in
> > commits that the patch has to be ported over. Porting a patch to a
> > releases 3, 9, and 15 months ago isn't 1.5x as much work as porting it
> > to one 3 and 12 months ago.
> >
> > But I would guess that the porting *is* more work; and the building,
> > testing, and releasing certainly is 1.5x more work.
> >
> > We could also explore other options, like having more automation, or
> > spreading the work of porting patches among more people.
>
> Now that goes slightly astray: People like me having to maintain
> older releases for much longer time need to do certain backports
> anyway (the older the release, the higher the chance that a
> difficult backport may result in a decision being made to ignore
> that fix as not important enough, due to the risk of the backport
> going wrong being higher than that of leaving the bug in place).
> I.e. at least a good part of the _backporting_ overhead can
> probably be discounted. What I consider more of an issue is the
> tedious (because purely mechanical) task of committing the
> patches to the respective stable trees, which (in my way of
> doing it) implies test builds for every commit. This is time I
> consider worthwhile spent as long as it doesn't grow too much,
> but of course this time could be used for less boring and more
> productive things.
>
> Perhaps there's room for further automation here, yet as with
> any automation the question is how quickly getting this in place
> will amortize itself.
>
Building every commit can be easily implemented. I don't think it takes
more than a day to write a script. What do you mean by "in place"? Are
there any other considerations?
> > Another thing which has been suggested is to treat releases
> > differently; for instance, every 4 releases (24 months), release an
> > "LTS" release that has longer support requirements. If we chose to
> > have LTS releases, we may then also choose to have normal releases get
> > a shorter support window. It's also been suggested that security
> > fixes are really what downstreams need from an LTS release; once
> > you've been using something for more than 2 years, you've probably
> > already found all the bugs which bother you.
>
> But wouldn't that mean that the current model of 3 years of security
> support is (almost) what people want from an LTS branch?
>
Perhaps. But we're still lacking data points here. The only downstream
that voiced opinion recently was Steven.
But for now, let's say 3 years of security support is good enough. Do
you have proposal that would fit 6 months release cycle? A majority of
developers seem to think 9 months is too long and 6 months is worth
trying.
> > So one option would be "R6 S3 {12,12} L24 S3 {24, 48}" (Regular
> > releases every 6 months, maintenance releases every 3 months, fixes
> > backported for 12 months; LTS release every 24 months, bug-fixes
> > backported for 24 months, security fixes backported for 48 months).
> > Steady-state this gives us a max 3 releases receiving bug-fix
> > backports and 1 release receiving security backports at any given
> > time. This gives us 12 bug-fix and 4 security-only ports per year.
> >
> > Any thoughts on this? Anything else to add or discuss?
>
> So using the 4 month stable release cadence I get currently 6
> stable releases a year (two maintained branches, ignoring short
> periods of overlap), compared to 6 ordinary stable releases (two
> ordinary branches) plus 6 LTS releases (two LTS branches) a year,
> i.e. doubling the amount.
>
So this seems to be your major concern. My interpretation is that you
kept stressing workload because you think it is a major issue.
I fail to get the idea why this would be a problem. Maybe you're seeing
every backport as your sole responsibility? From Xen project's point of
view, this amount can be absorbed by a team of stable release
maintainers. Then this leads to your concern of varying quality of
different branches? But again, I fail to grasp that idea. All stable
trees maintained by Xen project are equally good.
Further more, there is argument such scheme wouldn't increase workload.
Ian mentioned the amount of backport during a set period is the same.
With automation mechanism in place (as simple as a script) there
wouldn't be too much work.
> > Personally I like the LTS model. I think arguably if we use the
> > numbers I chose above, it shouldn't be any more actual work than it is
> > now (as there are still only 4 releases every 3-month maintenance
> > window), and I don't understand the concern with "treating releases
> > differently".
>
> If what becomes an LTS release is known up front, the pressure to
> get things into such a release may (and, looking at what I got to
> notice on Linux, will) be quite a bit higher. After all the expectation
> and intention is for distros to particularly use those releases when
> caring for long term maintenance. And with that why would
> contributors bother much about getting things into non-LTS
> releases when those won't get used by many / for a reasonable
> time period anyway?
>
I disagree. Many developers care about getting their patches upstream
but are not interested in which releases their features are going to be.
> If what becomes an LTS release is to be determined only at the
> end of a branch's ordinary life cycle, the above problem can be
> avoided, but downstream consumers having picked the "wrong"
> release will be penalized. This is what we've been getting
> complaints on by openSUSE users relative to the kernel versions
> (and which keeps coming up the discussion of up-rev-ing the
> kernel version post release, which as you surely can imagine has
> all kinds of up and down sides).
As you mentioned above, there are always upside and downside with *any*
change. We won't know until we try.
But what we do know at hand is that current scheme is not perfect, hence
the whole discussion.
> Plus depending on who gets to
> maintain the branch from that point on (if not handed to always
> the same person), quality and hence value to the downstreams
> may heavily vary.
>
This is really irrelevant to this discussion. If we hand that to
external people, that means it's out of our control and by definition we
don't care that much -- no matter what scheme we use.
Wei.
> Jan
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 11:10 ` Wei Liu
@ 2015-10-08 12:13 ` Jan Beulich
2015-10-08 14:23 ` Wei Liu
0 siblings, 1 reply; 30+ messages in thread
From: Jan Beulich @ 2015-10-08 12:13 UTC (permalink / raw)
To: Wei Liu
Cc: Juergen Gross, LarsKurth, Steven Haigh, Ian Campbell,
George Dunlap, Andrew Cooper, Doug Goldstein, xen-devel,
Ian Jackson
>>> On 08.10.15 at 13:10, <wei.liu2@citrix.com> wrote:
> On Thu, Oct 08, 2015 at 02:05:51AM -0600, Jan Beulich wrote:
>> Perhaps there's room for further automation here, yet as with
>> any automation the question is how quickly getting this in place
>> will amortize itself.
>>
>
> Building every commit can be easily implemented. I don't think it takes
> more than a day to write a script. What do you mean by "in place"? Are
> there any other considerations?
No. "In place" simply means this needs to be written and tested.
And as things stand what will fit Ian may not fit me or vice versa.
I.e. unless this would be a server side thing (see the queue thing
I mentioned in another reply), multiple scripts may end up being
needed. And a day is a day - if it saves, say, 15 minutes per batch,
it would take 32 batches for the work to amortize.
> But for now, let's say 3 years of security support is good enough. Do
> you have proposal that would fit 6 months release cycle? A majority of
> developers seem to think 9 months is too long and 6 months is worth
> trying.
And if there is a majority, I'm sure we will try it. I'm not arguing
because I mean to try to veto any such decision, I'm only trying
to point out that there also are reasons to stick with the current
model.
>> So using the 4 month stable release cadence I get currently 6
>> stable releases a year (two maintained branches, ignoring short
>> periods of overlap), compared to 6 ordinary stable releases (two
>> ordinary branches) plus 6 LTS releases (two LTS branches) a year,
>> i.e. doubling the amount.
>
> So this seems to be your major concern. My interpretation is that you
> kept stressing workload because you think it is a major issue.
Thing is - I'm not of the opinion that it's impossible to do, but I am
of the opinion that any amount of time spent on mechanical things
is worthwhile trying to avoid or at least limit as much as possible. I
don't know about you, but I prefer to do productive things...
> I fail to get the idea why this would be a problem. Maybe you're seeing
> every backport as your sole responsibility? From Xen project's point of
> view, this amount can be absorbed by a team of stable release
> maintainers. Then this leads to your concern of varying quality of
> different branches? But again, I fail to grasp that idea. All stable
> trees maintained by Xen project are equally good.
Because right now they're all being managed by the same people.
The main reason for questioning the quality of some Linux stable
trees was that the criteria based upon which selection of backports
happened appeared to be quite different between individual people.
I'd be much less worried of the quality of the actual backports.
>> > Personally I like the LTS model. I think arguably if we use the
>> > numbers I chose above, it shouldn't be any more actual work than it is
>> > now (as there are still only 4 releases every 3-month maintenance
>> > window), and I don't understand the concern with "treating releases
>> > differently".
>>
>> If what becomes an LTS release is known up front, the pressure to
>> get things into such a release may (and, looking at what I got to
>> notice on Linux, will) be quite a bit higher. After all the expectation
>> and intention is for distros to particularly use those releases when
>> caring for long term maintenance. And with that why would
>> contributors bother much about getting things into non-LTS
>> releases when those won't get used by many / for a reasonable
>> time period anyway?
>
> I disagree. Many developers care about getting their patches upstream
> but are not interested in which releases their features are going to be.
Likely there are both. It's pretty clear to me that developers driven
by product release cycles, and with product releases preferring (and
as was expressed earlier, perhaps even expected to prefer) LTS
releases, focus would be on those releases that end up being used
in products. Of course that's not going to be the exclusive case,
but do you really think a large scale contributor would see much point
in starting work on a feature when they can be sure their code won't
land in any major distro for the next almost 2 years?
>> If what becomes an LTS release is to be determined only at the
>> end of a branch's ordinary life cycle, the above problem can be
>> avoided, but downstream consumers having picked the "wrong"
>> release will be penalized. This is what we've been getting
>> complaints on by openSUSE users relative to the kernel versions
>> (and which keeps coming up the discussion of up-rev-ing the
>> kernel version post release, which as you surely can imagine has
>> all kinds of up and down sides).
>
> As you mentioned above, there are always upside and downside with *any*
> change. We won't know until we try.
>
> But what we do know at hand is that current scheme is not perfect, hence
> the whole discussion.
Sure. My main point really is that it's not just the current model that
isn't perfect, yet I'm getting the impression that staying with it has
been (almost) ruled out from the beginning.
>> Plus depending on who gets to
>> maintain the branch from that point on (if not handed to always
>> the same person), quality and hence value to the downstreams
>> may heavily vary.
>
> This is really irrelevant to this discussion. If we hand that to
> external people, that means it's out of our control and by definition we
> don't care that much -- no matter what scheme we use.
That's a strange reply, considering that there is no strict boundary
between who "represents" XenProject and who does not. Or am I
missing something here?
Jan
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 12:13 ` Jan Beulich
@ 2015-10-08 14:23 ` Wei Liu
2015-10-08 15:01 ` Jan Beulich
0 siblings, 1 reply; 30+ messages in thread
From: Wei Liu @ 2015-10-08 14:23 UTC (permalink / raw)
To: Jan Beulich
Cc: Juergen Gross, LarsKurth, Wei Liu, Ian Campbell, George Dunlap,
Andrew Cooper, Doug Goldstein, xen-devel, Steven Haigh,
Ian Jackson
On Thu, Oct 08, 2015 at 06:13:27AM -0600, Jan Beulich wrote:
> >>> On 08.10.15 at 13:10, <wei.liu2@citrix.com> wrote:
> > On Thu, Oct 08, 2015 at 02:05:51AM -0600, Jan Beulich wrote:
> >> Perhaps there's room for further automation here, yet as with
> >> any automation the question is how quickly getting this in place
> >> will amortize itself.
> >>
> >
> > Building every commit can be easily implemented. I don't think it takes
> > more than a day to write a script. What do you mean by "in place"? Are
> > there any other considerations?
>
> No. "In place" simply means this needs to be written and tested.
> And as things stand what will fit Ian may not fit me or vice versa.
> I.e. unless this would be a server side thing (see the queue thing
> I mentioned in another reply), multiple scripts may end up being
> needed. And a day is a day - if it saves, say, 15 minutes per batch,
> it would take 32 batches for the work to amortize.
>
This is still based on the assumption that only you alone is going to do
the work. If you agree we can solve this by having more helping hand,
I'm sure we can try to call for more people to help -- that's a possible
solution to this issue.
> > But for now, let's say 3 years of security support is good enough. Do
> > you have proposal that would fit 6 months release cycle? A majority of
> > developers seem to think 9 months is too long and 6 months is worth
> > trying.
>
> And if there is a majority, I'm sure we will try it. I'm not arguing
> because I mean to try to veto any such decision, I'm only trying
> to point out that there also are reasons to stick with the current
> model.
>
> >> So using the 4 month stable release cadence I get currently 6
> >> stable releases a year (two maintained branches, ignoring short
> >> periods of overlap), compared to 6 ordinary stable releases (two
> >> ordinary branches) plus 6 LTS releases (two LTS branches) a year,
> >> i.e. doubling the amount.
> >
> > So this seems to be your major concern. My interpretation is that you
> > kept stressing workload because you think it is a major issue.
>
> Thing is - I'm not of the opinion that it's impossible to do, but I am
> of the opinion that any amount of time spent on mechanical things
> is worthwhile trying to avoid or at least limit as much as possible. I
> don't know about you, but I prefer to do productive things...
>
I understand. I, too, prefer productive things over tedious tasks.
> > I fail to get the idea why this would be a problem. Maybe you're seeing
> > every backport as your sole responsibility? From Xen project's point of
> > view, this amount can be absorbed by a team of stable release
> > maintainers. Then this leads to your concern of varying quality of
> > different branches? But again, I fail to grasp that idea. All stable
> > trees maintained by Xen project are equally good.
>
> Because right now they're all being managed by the same people.
> The main reason for questioning the quality of some Linux stable
> trees was that the criteria based upon which selection of backports
> happened appeared to be quite different between individual people.
> I'd be much less worried of the quality of the actual backports.
>
So your point here is that you would like to have all branches manage by
same person so that their quality are all the same because they always
have the same set of backports, or at least all patches are considered
with same standard.
This is understandable but not always applicable. As you noted, when you
backport stuff you also consider the difficulty and risk of backport.
So in the end even if there is only you who manage all the trees they
will still have different sets of backports. I don't think there is
difference in the end result when you have multiple people maintaining
different trees. True, their criteria for deciding if a patch is worth
backporting are different, but we can perhaps write down a guide to
stable tree maintainers to minimise the differences.
> >> > Personally I like the LTS model. I think arguably if we use the
> >> > numbers I chose above, it shouldn't be any more actual work than it is
> >> > now (as there are still only 4 releases every 3-month maintenance
> >> > window), and I don't understand the concern with "treating releases
> >> > differently".
> >>
> >> If what becomes an LTS release is known up front, the pressure to
> >> get things into such a release may (and, looking at what I got to
> >> notice on Linux, will) be quite a bit higher. After all the expectation
> >> and intention is for distros to particularly use those releases when
> >> caring for long term maintenance. And with that why would
> >> contributors bother much about getting things into non-LTS
> >> releases when those won't get used by many / for a reasonable
> >> time period anyway?
> >
> > I disagree. Many developers care about getting their patches upstream
> > but are not interested in which releases their features are going to be.
>
> Likely there are both. It's pretty clear to me that developers driven
> by product release cycles, and with product releases preferring (and
> as was expressed earlier, perhaps even expected to prefer) LTS
> releases, focus would be on those releases that end up being used
> in products. Of course that's not going to be the exclusive case,
> but do you really think a large scale contributor would see much point
> in starting work on a feature when they can be sure their code won't
> land in any major distro for the next almost 2 years?
>
I can't say for sure. There is no scientific survey to determine that.
But then the reverse argument applies to longer release cycle, why would
you develop your feature for a project knowing that it would definitely
not be available at all for 9 months and even longer (if its release is
delayed) -- you would miss precious window to release you hardware /
software platform.
Again, I'm not dismissing your argument. But my empirical observation
suggests that some developers just want their features to in _some_
version.
> >> If what becomes an LTS release is to be determined only at the
> >> end of a branch's ordinary life cycle, the above problem can be
> >> avoided, but downstream consumers having picked the "wrong"
> >> release will be penalized. This is what we've been getting
> >> complaints on by openSUSE users relative to the kernel versions
> >> (and which keeps coming up the discussion of up-rev-ing the
> >> kernel version post release, which as you surely can imagine has
> >> all kinds of up and down sides).
> >
> > As you mentioned above, there are always upside and downside with *any*
> > change. We won't know until we try.
> >
> > But what we do know at hand is that current scheme is not perfect, hence
> > the whole discussion.
>
> Sure. My main point really is that it's not just the current model that
> isn't perfect, yet I'm getting the impression that staying with it has
> been (almost) ruled out from the beginning.
>
No. That was not my intent.
It's just my misinterpretation of constraints. Sorry about that.
> >> Plus depending on who gets to
> >> maintain the branch from that point on (if not handed to always
> >> the same person), quality and hence value to the downstreams
> >> may heavily vary.
> >
> > This is really irrelevant to this discussion. If we hand that to
> > external people, that means it's out of our control and by definition we
> > don't care that much -- no matter what scheme we use.
>
> That's a strange reply, considering that there is no strict boundary
> between who "represents" XenProject and who does not. Or am I
> missing something here?
>
So what do you mean by "from that point on"? I thought it mean "after
retirement of a particular branch" -- retiring a branch means we don't
care that much about it anymore. That happens no matter what scheme we
use.
Wei.
> Jan
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 14:23 ` Wei Liu
@ 2015-10-08 15:01 ` Jan Beulich
0 siblings, 0 replies; 30+ messages in thread
From: Jan Beulich @ 2015-10-08 15:01 UTC (permalink / raw)
To: Wei Liu
Cc: Juergen Gross, LarsKurth, Steven Haigh, Ian Campbell,
George Dunlap, Andrew Cooper, Doug Goldstein, xen-devel,
IanJackson
>>> On 08.10.15 at 16:23, <wei.liu2@citrix.com> wrote:
> On Thu, Oct 08, 2015 at 06:13:27AM -0600, Jan Beulich wrote:
>> >>> On 08.10.15 at 13:10, <wei.liu2@citrix.com> wrote:
>> > I fail to get the idea why this would be a problem. Maybe you're seeing
>> > every backport as your sole responsibility? From Xen project's point of
>> > view, this amount can be absorbed by a team of stable release
>> > maintainers. Then this leads to your concern of varying quality of
>> > different branches? But again, I fail to grasp that idea. All stable
>> > trees maintained by Xen project are equally good.
>>
>> Because right now they're all being managed by the same people.
>> The main reason for questioning the quality of some Linux stable
>> trees was that the criteria based upon which selection of backports
>> happened appeared to be quite different between individual people.
>> I'd be much less worried of the quality of the actual backports.
>>
>
> So your point here is that you would like to have all branches manage by
> same person so that their quality are all the same because they always
> have the same set of backports, or at least all patches are considered
> with same standard.
>
> This is understandable but not always applicable. As you noted, when you
> backport stuff you also consider the difficulty and risk of backport.
> So in the end even if there is only you who manage all the trees they
> will still have different sets of backports.
Yes and no. The main criteria for me is that 4.<n>.x should never have
a fix that 4.<n+1>.y doesn't have. I.e. (quite naturally I would say) if
I decide to drop a patch due to being too difficult to backport, I'll surely
not re-introduce it on an older branch. Maintaining all branches this is
actually easily enforced: When doing backports, I (again quite naturally)
do them in reverse order of releases, and hence once a patch got
dropped it won't re-appear going further backwards.
And yes, to preempt your respective argument, this can be documented
and people can be told to obey to this rule. But there are cases where
I push back certain desirable, but more risky backports, with the plan to
perhaps apply them once they've seen more testing on unstable or even
in a release. This is quite a bit more cumbersome (but not impossible,
agreed) to coordinate.
> I don't think there is
> difference in the end result when you have multiple people maintaining
> different trees. True, their criteria for deciding if a patch is worth
> backporting are different, but we can perhaps write down a guide to
> stable tree maintainers to minimise the differences.
I'm sure Linux has criteria too. But you know what - people tend to
ignore such when they think they know better (and I can't exclude
myself here).
>> >> Plus depending on who gets to
>> >> maintain the branch from that point on (if not handed to always
>> >> the same person), quality and hence value to the downstreams
>> >> may heavily vary.
>> >
>> > This is really irrelevant to this discussion. If we hand that to
>> > external people, that means it's out of our control and by definition we
>> > don't care that much -- no matter what scheme we use.
>>
>> That's a strange reply, considering that there is no strict boundary
>> between who "represents" XenProject and who does not. Or am I
>> missing something here?
>
> So what do you mean by "from that point on"? I thought it mean "after
> retirement of a particular branch" -- retiring a branch means we don't
> care that much about it anymore. That happens no matter what scheme we
> use.
Oh, sorry, "from that point on" was meant to refer to the transition
from ordinary to LTS maintenance (at which point a transfer of
responsibilities seems quite reasonable a possibility).
Jan
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: RFC: LTS and stable release scheme
2015-10-08 8:05 ` Jan Beulich
` (2 preceding siblings ...)
2015-10-08 11:10 ` Wei Liu
@ 2015-10-08 11:10 ` George Dunlap
3 siblings, 0 replies; 30+ messages in thread
From: George Dunlap @ 2015-10-08 11:10 UTC (permalink / raw)
To: Jan Beulich, George Dunlap
Cc: Juergen Gross, LarsKurth, Wei Liu, Ian Campbell, Andrew Cooper,
Doug Goldstein, xen-devel, Steven Haigh, Ian Jackson
On 08/10/15 09:05, Jan Beulich wrote:
>> It has so far been assumed in this discussion that this would be an
>> undue burden, and therefore not acceptable.
>
> I don't think anyone said "undue". All that was said was that the
> amount of work to be put into this increases.
I think it's worth saying that the amount of effort it takes to make
maintenance releases -- in particular, the amount of tedious busy work
for you -- is a first-order consideration in this, particularly as you
don't see any value in the change. It is certainly not reasonable for
everyone who is not directly affected to vote to give you more work, and
it would be perfectly reasonable for you to say that if we went to a
6-month release cycle, others would have to share (or take) the burden
of doing that busy-work.
-George
^ permalink raw reply [flat|nested] 30+ messages in thread