RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1456235 - conflict libvirt3.2 with vdsm v4.19.16 and below
Summary: conflict libvirt3.2 with vdsm v4.19.16 and below
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libvirt
Version: 7.4
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: rc
: ---
Assignee: Jiri Denemark
QA Contact: jiyan
URL:
Whiteboard:
Depends On:
Blocks: 1444426 1458856
TreeView+ depends on / blocked
 
Reported: 2017-05-28 08:00 UTC by Yaniv Bronhaim
Modified: 2017-06-20 07:58 UTC (History)
13 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-06-20 07:58:09 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Yaniv Bronhaim 2017-05-28 08:00:37 UTC
Description of problem:
in libvirt 3.2 /etc/sasl2/libvirt.conf is changed by default, therefore it requires vdsm changes which available only in vdsm v4.19.17. if libvirt 3.2 won't conflict with vdsm, updating libvirt to 3.2 when vdsm v4.19.16 or below is installed will break vdsm run.

Version-Release number of selected component (if applicable):
libvirt.x86_64 0:3.2.0-5.el7.centos

How reproducible:
100%

Steps to Reproduce:
1. upgrade libvirt
2.
3.

Actual results:


Expected results:
update will fail if vdsm is below 4.19.17

Additional info:

Comment 2 Daniel Berrangé 2017-05-30 09:15:25 UTC
If the VDSM fix is already available, then I don't see a compelling reason todo  this in libvirt - updating RPMs will already pull in the newer VDSM & cherry-picking RPM updates from 7.3 -> 7.4 is not a supported scenario. If users do that they'll quickly see the problem & be able to rectify it by fully updating.

Comment 3 Dan Kenigsberg 2017-05-30 09:35:01 UTC
The Vdsm fix is to be available only in RHV-4.1.z. We cannot release it to 4.0.z as that channel no longer exist, nor to 3.6.z which has seen its final release.

If someone upgrades libvirt and not vdsm (which is highly possible, as they are shipped in separate channels) while VMs are running, Vdsm would fail to restart, and his VMs would get stuck on that host, with no control path.

RHV has plenty of customers which might swam our support apparatus with annoying cases. Handling each case is easy, but the cost to Red Hat and its customers would be much higher than a one-liner addition to the downstream libvirt.spec.

I know that rebasing libvirt to 3.2 in the midlife of rhel7 has plenty of advantages to libvirt and RHV. But it has a few costs - and adding

  Conflicts: vdsm <= 4.19.16

is not the greatest of those.

Comment 4 Daniel Berrangé 2017-05-30 09:43:39 UTC
(In reply to Dan Kenigsberg from comment #3)
> The Vdsm fix is to be available only in RHV-4.1.z. We cannot release it to
> 4.0.z as that channel no longer exist, nor to 3.6.z which has seen its final
> release.

This seems rather surprising/broken to me. If we are genuinely still supporting these VDSM versions, there *must* be a way for us to issue updates, otherwise we'd be unable to push out critical security patches which I can't believe.

> If someone upgrades libvirt and not vdsm (which is highly possible, as they
> are shipped in separate channels) while VMs are running, Vdsm would fail to
> restart, and his VMs would get stuck on that host, with no control path.
> 
> RHV has plenty of customers which might swam our support apparatus with
> annoying cases. Handling each case is easy, but the cost to Red Hat and its
> customers would be much higher than a one-liner addition to the downstream
> libvirt.spec.

The problem with adding such conflicts is that it leads to pretty unpleasant user experience when they try to upgrade. If the conflict triggers, because new VDSM is not available, then yum will obviously be unable to install libvirt from 7.4.  It will thus have to hold back the libvirt from 7.3, this in turn will cause a ripple effect preventing upgrade of many other RPMs. The end result is that yum either holds back loads of packages, or worse gives up throwing out largely unintelligible error messages about resolvable dependencies.

Comment 5 Jiri Denemark 2017-05-30 10:56:29 UTC
This request looks related to bug 1445531. Both are really caused by the use of layered product above RHEL. Since they have different schedules, RHEL updates may become available before a new release of the layered product (which was actually tested to work with the new RHEL) is released. And the goal is to prevent updating RHEL without also updating the layered product.

We should solve this fundamental issue in a different way than adding more and more conflicts into libvirt. IMHO either we need to issue a fix (z-stream) for the existing release of the layered product before new RHEL is shipped or we should somehow disable updating RHEL (not just libvirt) until a new layered product is available.

I'm not completely against the conflicts for 7.4 as we don't have a lot of time to deal with this, but I'd really like to see a better solution for the future.

Comment 6 Dan Kenigsberg 2017-05-31 22:24:33 UTC
(In reply to Daniel Berrange from comment #4)
> The problem with adding such conflicts is that it leads to pretty unpleasant
> user experience when they try to upgrade. If the conflict triggers, because
> new VDSM is not available, then yum will obviously be unable to install
> libvirt from 7.4.  It will thus have to hold back the libvirt from 7.3, this
> in turn will cause a ripple effect preventing upgrade of many other RPMs.
> The end result is that yum either holds back loads of packages, or worse
> gives up throwing out largely unintelligible error messages about resolvable
> dependencies.

It's worse, but in the perspective of RHV users, being unable to upgrade libvirt and its dependencies until a fresh vdsm is available on a host is still much better than loosing the hypervisor and its currently-running VMs until that vdsm is available.

Comment 7 Daniel Berrangé 2017-06-01 08:15:22 UTC
Both scenarios provide an awful experience for users - just awful in different ways. To get a good experience for users we should issue an update for effect VDSM versions that we expect to continue supporting on 7.4, so users don't hit the problem in the first place.

Comment 10 Michal Skrivanek 2017-06-15 11:49:02 UTC
(In reply to Dan Kenigsberg from comment #3)
> The Vdsm fix is to be available only in RHV-4.1.z. We cannot release it to
> 4.0.z as that channel no longer exist, nor to 3.6.z which has seen its final
> release.

it is the same -4- channel, so once 4.1.z/async goes live it's automatically available to all 4.0 installations

Comment 11 Jiri Denemark 2017-06-16 08:54:59 UTC
In other words the Conflicts hack is no longer required, is it?


Note You need to log in before you can comment on or make changes to this bug.