[nova] Backporting test refactors to stable/train

Balazs Gibizer balazs.gibizer at est.tech
Wed Sep 15 09:02:16 UTC 2021

On Tue, Sep 14 2021 at 01:55:14 PM -0400, Artom Lifshitz 
<alifshit at redhat.com> wrote:
> Hey Elod and Vlad (and the ML, cc'ed)
> This is continuing the conversation Elod and I had on IRC. The
> immediate context is [1], which is a test refactor backport that in
> turn enables conflict-free backporting of at least two fixes.
> From Red Hat's point of view, we will have to care about stable/train
> for *very* long time, so we'd like to do everything we can to make our
> lives easier, including backportings things are aren't strictly
> necessary (like test refactors) in order to greatly facilitate future
> backports, which tend to be of the "func reproducer test + actual fix"
> variety.
> Elod made the excellent point that while this approach does make
> backports to train much easier to both write and review, it also
> "postpones" all of the manual conflict resolution work onto anyone
> doing stable/stein backports.
> I went and gathered data. I looked at the last 6 months of backports
> in Gerrit. At the time of this writing, stable/train 72 [2] had and
> stable/stein had 24 [3]. Out of the latter, Vlad Gusev was the main
> non-Red Hat contributor.
> So my proposal is simple: I'm willing to help resolve conflicts in
> stable/stein backport for folks like Vlad, if it means making
> backports to stable/train easier. I'm confident that it would still
> mean an overall reduction in man-hours for backports, even if I become
> personally on the hook to deal with the fallout of backporting test
> refactors to stable/train.

In my view there is work and risk attached to resolve a conflict during 
backporting a bugfix, as well as work and risk attached to backporting 
a test refactor instead. If the former is bigger than the latter then I 
would do the latter. As the latter potentially helps avoiding multiple 
instance of the former I can imagine that the latter is a better 
general approach. Based on this I can even accept non-test but 
production code refactors to be backported as we did for example with 
the libvirt device detach series.


> Cheers!
> [1] https://review.opendev.org/c/openstack/nova/+/791481
> [2] 
> https://review.opendev.org/q/project:openstack/nova+branch:stable/train+-age:6month
> [3] 
> https://review.opendev.org/q/project:openstack/nova+branch:stable/stein+-age:6month

More information about the openstack-discuss mailing list