Hide Forgot
Description of problem: While upgrading the satellite clients (to satellite 6.4) using the method mentioned in the following documentation i.e "Upgrade Satellite Clients Using the Bulk Repository Set UI" it is not working as expected. There are some yum transactions which are not completing and it hampers the yum db as well. ~~~ Upgrade Satellite Clients Using the Bulk Repository Set UI ---> https://access.redhat.com/documentation/en-us/red_hat_satellite/6.4/html/upgrading_and_updating_red_hat_satellite/upgrading_red_hat_satellite#upgrading_clients ~~~ ~~~ [root@test01 ~]# yum history info 4 Loaded plugins: enabled_repos_upload, package_upload, product-id, search-disabled-repos, subscription-manager Transaction ID : 4 Begin time : Wed Nov 14 07:27:36 2018 Begin rpmdb : 349:6dfa07d1d0bd9e811a36347d07ca5b79b610e327 User : System <unset> Return-Code : ** Aborted ** Transaction performed with: Installed rpm-4.11.3-32.el7.x86_64 @anaconda/7.5 Installed subscription-manager-1.20.10-1.el7.x86_64 @anaconda/7.5 Installed yum-3.4.3-158.el7.noarch @anaconda/7.5 Installed yum-metadata-parser-1.1.4-10.el7.x86_64 @anaconda/7.5 Packages Altered: Updated gofer-2.7.8-1.el7.noarch @rhel-7-server-satellite-tools-6.3-rpms Update 2.12.1-1.el7sat.noarch installed Updated katello-agent-3.1.0-2.el7sat.noarch @rhel-7-server-satellite-tools-6.3-rpms Obsoleting katello-agent-3.3.5-3.el7sat.noarch installed Obsoleted pulp-rpm-handlers-2.13.4.9-1.el7sat.noarch @rhel-7-server-satellite-tools-6.3-rpms ** Updated python-gofer-2.7.8-1.el7.noarch @rhel-7-server-satellite-tools-6.3-rpms Update 2.12.1-1.el7sat.noarch installed ** Updated python-gofer-proton-2.7.8-1.el7.noarch @rhel-7-server-satellite-tools-6.3-rpms Update 2.12.1-1.el7sat.noarch installed ** Obsoleted python-pulp-agent-lib-2.13.4.16-1.el7sat.noarch @rhel-7-server-satellite-tools-6.3-rpms ** Obsoleted python-pulp-rpm-common-2.13.4.9-1.el7sat.noarch @rhel-7-server-satellite-tools-6.3-rpms Scriptlet output: 1 warning: %postun(gofer-2.7.8-1.el7.noarch) scriptlet failed, signal 15 history info Uploading Enabled Repositories Report Loaded plugins: product-id, subscription-manager ~~~ If we run the yum update it fails with the following error. ~~~ [root@vm249-113 ~]# yum update Loaded plugins: enabled_repos_upload, package_upload, product-id, search-disabled-repos, subscription-manager rhel-7-server-satellite-tools-6.4-rpms | 2.1 kB 00:00:00 Resolving Dependencies There are unfinished transactions remaining. You might consider running yum-complete-transaction, or "yum-complete-transaction --cleanup-only" and "yum history redo last", first to finish them. If those don't work you'll have to try removing/installing packages by hand (maybe package-cleanup can help). The program yum-complete-transaction is found in the yum-utils package. --> Running transaction check ---> Package katello-host-tools.noarch 0:3.1.0-2.el7sat will be updated ---> Package katello-host-tools.noarch 0:3.3.5-3.el7sat will be an update ---> Package katello-host-tools-fact-plugin.noarch 0:3.1.0-2.el7sat will be updated ---> Package katello-host-tools-fact-plugin.noarch 0:3.3.5-3.el7sat will be an update ---> Package python-pulp-common.noarch 0:2.13.4.16-1.el7sat will be updated --> Processing Dependency: python-pulp-common < 2.13.5 for package: python-pulp-rpm-common-2.13.4.9-1.el7sat.noarch --> Processing Dependency: python-pulp-common = 2.13.4.16 for package: python-pulp-agent-lib-2.13.4.16-1.el7sat.noarch ---> Package python-pulp-common.noarch 0:2.16.4.1-1.el7sat will be an update --> Finished Dependency Resolution Error: Package: python-pulp-rpm-common-2.13.4.9-1.el7sat.noarch (@rhel-7-server-satellite-tools-6.3-rpms) Requires: python-pulp-common < 2.13.5 Removing: python-pulp-common-2.13.4.16-1.el7sat.noarch (@rhel-7-server-satellite-tools-6.3-rpms) python-pulp-common = 2.13.4.16-1.el7sat Updated By: python-pulp-common-2.16.4.1-1.el7sat.noarch (rhel-7-server-satellite-tools-6.4-rpms) python-pulp-common = 2.16.4.1-1.el7sat Error: Package: python-pulp-agent-lib-2.13.4.16-1.el7sat.noarch (@rhel-7-server-satellite-tools-6.3-rpms) Requires: python-pulp-common = 2.13.4.16 Removing: python-pulp-common-2.13.4.16-1.el7sat.noarch (@rhel-7-server-satellite-tools-6.3-rpms) python-pulp-common = 2.13.4.16-1.el7sat Updated By: python-pulp-common-2.16.4.1-1.el7sat.noarch (rhel-7-server-satellite-tools-6.4-rpms) python-pulp-common = 2.16.4.1-1.el7sat You could try using --skip-broken to work around the problem ** Found 3 pre-existing rpmdb problem(s), 'yum check' output follows: gofer-2.12.1-1.el7sat.noarch is a duplicate with gofer-2.7.8-1.el7.noarch python-gofer-2.12.1-1.el7sat.noarch is a duplicate with python-gofer-2.7.8-1.el7.noarch python-gofer-proton-2.12.1-1.el7sat.noarch is a duplicate with python-gofer-proton-2.7.8-1.el7.noarch Uploading Enabled Repositories Report Loaded plugins: product-id, subscription-manager [root@test01 ~]# ~~~ ~~~ [root@test01 ~]# yum history list Loaded plugins: enabled_repos_upload, package_upload, product-id, search-disabled-repos, subscription-manager ID | Login user | Date and time | Action(s) | Altered ------------------------------------------------------------------------------- 4 | System <unset> | 2018-11-14 07:27 | O, U | 7 ** 3 | root <root> | 2018-11-14 07:23 | Install | 1 < 2 | root <root> | 2018-11-14 07:22 | Install | 13 >< 1 | System <unset> | 2018-11-14 07:05 | Install | 335 > Warning: RPMDB altered outside of yum. ** Found 3 pre-existing rpmdb problem(s), 'yum check' output follows: gofer-2.12.1-1.el7sat.noarch is a duplicate with gofer-2.7.8-1.el7.noarch python-gofer-2.12.1-1.el7sat.noarch is a duplicate with python-gofer-2.7.8-1.el7.noarch python-gofer-proton-2.12.1-1.el7sat.noarch is a duplicate with python-gofer-proton-2.7.8-1.el7.noarch history list Uploading Enabled Repositories Report Loaded plugins: product-id, subscription-manager ~~~ Version-Release number of selected component (if applicable): Satellite 6.4.x How reproducible: Always Steps to Reproduce: 1. Use the following method to update the "katello-agent" ~~~ Upgrade Satellite Clients Using the Bulk Repository Set UI ---> https://access.redhat.com/documentation/en-us/red_hat_satellite/6.4/html/upgrading_and_updating_red_hat_satellite/upgrading_red_hat_satellite#upgrading_clients ~~~ 2. After that, run # yum update Actual results: It fails with the errors above mentioned. Expected results: Yum db should not be hampered and we should not get the dependency errors while updating the server. Additional info: After this issue, We tried to remove the duplicate packages, once removed everything worked as expected.
Please let us know when will the fix for this bug will be released ?
I also can reproduce the same on Satellite 6.5 as well. 1. Create an RHEL 7.5 host and install katello-agent\gofer\python-gofer\katello-host-tools etc packages from "rhel-7-server-satellite-tools-6.4-rpms" repository. 2. Now, enable "rhel-7-server-rpms" and "rhel-7-server-satellite-tools-6.5-rpms" on this host. 3. Apply all the packages from Satellite server via katello-agent [ which will include updates for base OS packages as well as katello-agent\gofer\python-gofer\katello-host-tools etc packages ]. 4. Check-in satellite GUI the task will be displayed completed but result of the same action in the host is as below, --> "yum history info" about the last transaction says "** Aborted **" and it failed at "1 warning: %postun(gofer-2.12.3-1.el7.noarch) scriptlet failed, signal 15". --> "yum history" also complains about "** Found 43 pre-existing rpmdb problem(s), 'yum check' output follows:" which means the transaction was not completed. --> There will be duplicate packages present on the host. --> Latest kernel installed will only have a vmlinuz file created but not the initramfs file which will create problem during reboot. To fix this situation, 1. yum-complete-transaction 2. yum reinstall <latest-kernel-package> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ A) This doesn't happen if we simply execute "yum update" or use the feature "Package updates via Remote Execution". B) Above behavior also does not happen if we don't enable "rhel-7-server-satellite-tools-6.5-rpms" on this host and perform the patching via katello-agent. The error "1 warning: %postun(gofer-2.12.3-1.el7.noarch) scriptlet failed, signal 15" and fact mentioned in points A and B, led me to believe that, --> Everything goes smooth till package installation or upgradation. --> When cleanup gets started, yum attempts to remove the old gofer package and as a postuninstall script, it attempts to restart the goferd service. I believe that is the point where the transaction gets aborted as with to restart of goferd service, the communication with satellite\capsule server(qdrouterd) gets disturbed. Let me know if the above analysis makes any sense.
Just an FYI, as part of BZ#1767134, I have added docs to provide a workaround for BZ#1653040. Thanks, Melanie
Satellite 6.4 is now End of Life. These bus will not be fixed on the 6.4 stream. Users of Satellite should upgrade to the latest version of Satellite to get access to the most current set of bugfixes and feature improvements.
I'm still seeing this issue in Satellite 6.6, and expect to see it when I migrate to 6.7. Looking at https://bugzilla.redhat.com/show_bug.cgi?id=1653040 I really don't see the workaround in https://bugzilla.redhat.com/show_bug.cgi?id=1767134 as all that helpful if I have more than a handful of hosts. I can push out something via Ansible, but this seems like something that Satellite should be able to fix/deal with as part of its own upgrading, rather that relying on outside intervention?