-
Bug
-
Resolution: Done
-
Major
-
None
-
None
Any attempt of running either convert or analysis on Rocky Linux 9.4 fails on transaction validation, where rocky-logos conflicts with file from redhat-logos.
Validating the dnf transaction set, no modifications to the system will happen this time. [2024-06-13T13:10:15+0000] DEBUG - Got the following exception message: Transaction test error: file /usr/share/redhat-logos from install of redhat-logos-90.4-2.el9.x86_64 conflicts with file from package rocky-logos-90.15-2.el9.x86_64 CRITICAL - Failed to validate the dnf transaction. ERROR - (ERROR) VALIDATE_PACKAGE_MANAGER_TRANSACTION::FAILED_TO_VALIDATE_TRANSACTION - Failed to validate dnf transaction. Description: During the dnf transaction execution an error occured and convert2rhel could no longer process the transaction. Diagnosis: Transaction processing failed with error: Transaction test error: file /usr/share/redhat-logos from install of redhat-logos-90.4-2.el9.x86_64 conflicts with file from package rocky-logos-90.15-2.el9.x86_64 Remediations: N/A CRITICAL - The conversion process failed.
Reproducer
- Get a Rocky 9.4 machine
- Run convert2rhel analyze --debug -u username -p password ...
- Observe the error
Minimal reproducer out of convert2rhel
- Get a Rocky 9.4 machine
- run a dnf shell
# dnf -v shell > ts > swap rocky-logos https://<redacted>/content/dist/rhel9/9.4/x86_64/appstream/os/Packages/r/redhat-logos-90.4-2.el9.x86_64.rpm redhat-logos-90.4-2.el9.x86_64.rpm 2.7 MB/s | 234 kB 00:00 > run
- Observe the error
--> Starting dependency resolution --> Finding unneeded leftover dependencies ---> Package redhat-logos.x86_64 90.4-2.el9 will be installed ---> Package rocky-logos.x86_64 90.15-2.el9 will be erased --> Finished dependency resolution ================================================================================================================================================================================ Package Architecture Version Repository Size ================================================================================================================================================================================ Installing: redhat-logos x86_64 90.4-2.el9 @commandline 234 k Removing: rocky-logos x86_64 90.15-2.el9 @appstream 763 k Transaction Summary ================================================================================================================================================================================ Install 1 Package Remove 1 Package Total size: 234 k Is this ok [y/N]: y Downloading Packages: Running transaction check Transaction check succeeded. Running transaction test Error: Transaction test error: file /usr/share/redhat-logos from install of redhat-logos-90.4-2.el9.x86_64 conflicts with file from package rocky-logos-90.15-2.el9.x86_64 repo: using cache for: baseos baseos: using metadata from Thu 13 Jun 2024 03:57:28 AM UTC. repo: using cache for: appstream appstream: using metadata from Wed 12 Jun 2024 10:23:09 PM UTC. repo: using cache for: extras extras: using metadata from Fri 10 May 2024 02:45:43 PM UTC. Last metadata expiration check: 0:37:21 ago on Thu 13 Jun 2024 01:48:01 PM UTC.
The culprit seems to be a file in /usr/share/redhat-logos directory.
It looks like the package was poorly re-built and the directory with the files was left there including the ownership. Interestingly enough, the files in the dir are not owned by the rpm.
### # rpm -q --filesbypkg rocky-logos {output obfuscated} rocky-logos /usr/share/redhat-logos rocky-logos /usr/share/rocky-logos rocky-logos /usr/share/rocky-logos/fedora_logo.svg rocky-logos /usr/share/rocky-logos/fedora_logo_darkbackground.svg rocky-logos /usr/share/rocky-logos/fedora_logo_lightbackground.svg ### # rpm -q --filesbypkg redhat-logos {output obfuscated} redhat-logos /usr/share/redhat-logos redhat-logos /usr/share/redhat-logos/fedora_logo.svg redhat-logos /usr/share/redhat-logos/fedora_logo_darkbackground.svg
Removing the /usr/share/redhat-logos directory prior to the transaction makes the swap possible.
[root@ip-10-31-12-206 ~]# rm -rf /usr/share/redhat-logos [root@ip-10-31-12-206 ~]# dnf -vvv shell Loaded plugins: builddep, changelog, config-manager, copr, debug, debuginfo-install, download, generate_completion_cache, groups-manager, needs-restarting, notify-packagekit, playground, repoclosure, repodiff, repograph, repomanage, reposync, system-upgrade DNF version: 4.14.0 cachedir: /var/cache/dnf User-Agent: constructed: 'libdnf (Rocky Linux 9.4; generic; Linux.x86_64)' repo: using cache for: baseos baseos: using metadata from Thu 13 Jun 2024 03:57:28 AM UTC. repo: using cache for: appstream appstream: using metadata from Wed 12 Jun 2024 10:23:09 PM UTC. repo: using cache for: extras extras: using metadata from Fri 10 May 2024 02:45:43 PM UTC. Last metadata expiration check: 0:39:20 ago on Thu 13 Jun 2024 01:48:01 PM UTC. > ts --> Starting dependency resolution --> Finished dependency resolution > swap rocky-logos https://<redacted>/content/dist/rhel9/9.4/x86_64/appstream/os/Packages/r/redhat-logos-90.4-2.el9.x86_64.rpm redhat-logos-90.4-2.el9.x86_64.rpm 1.6 MB/s | 234 kB 00:00 > run --> Starting dependency resolution --> Finding unneeded leftover dependencies ---> Package redhat-logos.x86_64 90.4-2.el9 will be installed ---> Package rocky-logos.x86_64 90.15-2.el9 will be erased --> Finished dependency resolution ================================================================================================================================================================================ Package Architecture Version Repository Size ================================================================================================================================================================================ Installing: redhat-logos x86_64 90.4-2.el9 @commandline 234 k Removing: rocky-logos x86_64 90.15-2.el9 @appstream 763 k Transaction Summary ================================================================================================================================================================================ Install 1 Package Remove 1 Package Total size: 234 k Is this ok [y/N]: y Downloading Packages: Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : redhat-logos-90.4-2.el9.x86_64 1/2 Running scriptlet: redhat-logos-90.4-2.el9.x86_64 1/2 Erasing : rocky-logos-90.15-2.el9.x86_64 2/2 warning: file /usr/share/rocky-logos/fedora_logo_lightbackground.svg: remove failed: No such file or directory warning: file /usr/share/rocky-logos/fedora_logo_darkbackground.svg: remove failed: No such file or directory warning: file /usr/share/rocky-logos/fedora_logo.svg: remove failed: No such file or directory Running scriptlet: rocky-logos-90.15-2.el9.x86_64 2/2 Running scriptlet: redhat-logos-90.4-2.el9.x86_64 2/2 Running scriptlet: rocky-logos-90.15-2.el9.x86_64 2/2 Verifying : redhat-logos-90.4-2.el9.x86_64 1/2 Verifying : rocky-logos-90.15-2.el9.x86_64 2/2 Completion plugin: Generating completion cache... Installed: redhat-logos-90.4-2.el9.x86_64 Removed: rocky-logos-90.15-2.el9.x86_64 Installed: redhat-logos-90.4-2.el9.x86_64 Removed: rocky-logos-90.15-2.el9.x86_64 Complete!
Note that this conflict works also the other way around. Again, removing the directory helps to resolve the conflict. Just to keep in mind for possible rollback implementation.
# dnf shell Last metadata expiration check: 0:51:22 ago on Thu 13 Jun 2024 01:48:01 PM UTC. > ts > swap redhat-logos rocky-logos > run ============================================================================================================================================================================================================================================================================================================================ Package Architecture Version Repository Size ============================================================================================================================================================================================================================================================================================================================ Installing: rocky-logos x86_64 90.15-2.el9 appstream 715 k Removing: redhat-logos x86_64 90.4-2.el9 @@commandline 254 k Transaction Summary ============================================================================================================================================================================================================================================================================================================================ Install 1 Package Remove 1 Package Total download size: 715 k Is this ok [y/N]: y Downloading Packages: rocky-logos-90.15-2.el9.x86_64.rpm 6.8 MB/s | 715 kB 00:00 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 3.6 MB/s | 715 kB 00:00 Running transaction check Transaction check succeeded. Running transaction test Error: Transaction test error: file /usr/share/redhat-logos from install of rocky-logos-90.15-2.el9.x86_64 conflicts with file from package redhat-logos-90.4-2.el9.x86_64
- links to
-
RHEA-2024:143554 convert2rhel bug fix and enhancement update