Bug 1723126
| Summary: | dnf remove --duplicates does not work after system crash during an update | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Oleg Drokin <green> | ||||||||||
| Component: | dnf | Assignee: | Jaroslav Mracek <jmracek> | ||||||||||
| Status: | CLOSED DUPLICATE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||||||
| Severity: | unspecified | Docs Contact: | |||||||||||
| Priority: | unspecified | ||||||||||||
| Version: | 30 | CC: | dmach, igor.raits, jmracek, jrohel, mblaha, mhatina, mjw, packaging-team-maint, pkratoch, pmatilai, pmoravco, praiskup, rpm-software-management, vmukhame, yaneti | ||||||||||
| Target Milestone: | --- | Keywords: | Triaged | ||||||||||
| Target Release: | --- | ||||||||||||
| Hardware: | Unspecified | ||||||||||||
| OS: | Unspecified | ||||||||||||
| Whiteboard: | |||||||||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||||||||
| Doc Text: | Story Points: | --- | |||||||||||
| Clone Of: | Environment: | ||||||||||||
| Last Closed: | 2019-09-07 14:47:49 UTC | Type: | Bug | ||||||||||
| Regression: | --- | Mount Type: | --- | ||||||||||
| Documentation: | --- | CRM: | |||||||||||
| Verified Versions: | Category: | --- | |||||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||||
| Embargoed: | |||||||||||||
| Bug Depends On: | 1091702 | ||||||||||||
| Bug Blocks: | |||||||||||||
| Attachments: |
|
||||||||||||
|
Description
Oleg Drokin
2019-06-23 04:23:18 UTC
I am sorry but it failed in RPM during the transaction. Probably we can ask RPM team for some suggestion. In general dnf identify duplicates and then reinstall the newer package and remove all older packages. Probaly additional information about duplicates (including their exact versions) will be required. Created attachment 1585292 [details]
full dnf remove --duplicates output
Hm, ok, how can I gather the information?
here's the full output of the dnf remove --duplicates that sohuld list all the packages it wanted to uninstall and the files conflicting.
any idea why dnf history redo/undo did not work too?
`rpm -qa` It provide a list of all packages `sudo dnf repoquery --duplicates` provide a list of all packages You can also try `sudo dnf remove %(sudo dnf repoquery --duplicates --latest-limit=-1)` and then `sudo dnf reinstall "*"` to ensure all dependency is present on the system and sudo dnf upgrade Created attachment 1585312 [details]
rpm -qa output
this is rpm -qa output
Created attachment 1585313 [details]
dnf repoquery --duplicates
this is dnf repoquery --duplicates output
sudo dnf remove $(sudo dnf repoquery --duplicates --latest-limit=-1) removed a lot of stuff! (875 packages, 5.1G space freed) dnf reinstall "*" wants to only install 47 packages (and then proceed to download 1379 packages, huh?), 4.3G space to use. We'll see how it ends. meanwhile I also have lvm snapshot of the system before I performed those steps for the RPM guys to get more data if needed. ok, so it finished. the end result is it wiped a bunch of stuff including my gnome DE, openssh-server and such. going to attach rpm -qa after the above two steps and dnf update. dnf groupinstall "Gnome Desktop Environment" installed another 220+ packages, but attempting to start gdm still does not work with a "Something did not work, please logout" window, so I bet it is missing more stuff. is there a quick way to identify what packages I had that I don't anymore and install just those? Thanks. Created attachment 1585315 [details]
rpm -qa output after the two mentioned dnf steps and dnf update
Gnome, openssh-server and a bunch of stuff is wiped now.
> remove --duplicates at first was complaining like this: > > file /usr/share/man/man1/gapplication.1.gz from install of glib2-2.60.4-1.fc30.i686 conflicts with file from package > glib2-2.60.3-1.fc30.x86_64 Removal does not cause file conflicts, ever. So dnf is trying to install something on duplicate removal. The second thing here is that it's trying to install different versions of i686 vs x86_64 package, that's generally not going to work. That's basically bug 1653683. In the latter part: > file /usr/share/man/man7/nmcli-examples.7.gz from install of NetworkManager-1:1.16.2-1.fc30.x86_64 conflicts with file from package NetworkManager-1:1.16.0-1.fc30.x86_64 I guess dnf is trying to reinstall a different version of a package than what's installed. That's not a reinstall, it's an upgrade/downgrade. Please could you provide files generated by 'dnf remove --duplicates --debugsolver'. Thanks a lot. But according to the latest comments it looks like that your system was restored, therefore no additional information. Am I correct? I made an lvm snapshot specifically for this, so I am able to gather debug info for you. Of course now that some time has passed some packages are no longer available: # dnf remove --duplicates --debugsolver Last metadata expiration check: 0:03:26 ago on Thu 04 Jul 2019 09:03:21 AM EDT. Installed package mesa-libEGL-19.0.6-1.fc30.x86_64 not available. Installed package mesa-libgbm-19.0.6-1.fc30.x86_64 not available. Installed package flatpak-selinux-1.4.1-1.fc30.x86_64 not available. Installed package mesa-libglapi-19.0.6-1.fc30.x86_64 not available. Error: Problem 1: problem with installed package mesa-libOpenCL-19.0.5-2.fc30.x86_64 - package mesa-libOpenCL-19.0.2-3.fc30.x86_64 requires mesa-libgbm(x86-64) = 19.0.2-3.fc30, but none of the providers can be installed - package mesa-libOpenCL-19.0.8-1.fc30.x86_64 requires mesa-libgbm(x86-64) = 19.0.8-1.fc30, but none of the providers can be installed - package mesa-libOpenCL-19.0.5-2.fc30.x86_64 requires mesa-libgbm(x86-64) = 19.0.5-2.fc30, but none of the providers can be installed - conflicting requests Problem 2: package xorg-x11-drv-nvidia-libs-3:430.26-1.fc30.x86_64 requires mesa-libGLES(x86-64) >= 13.0.3-3, but none of the providers can be installed - problem with installed package xorg-x11-drv-nvidia-libs-3:418.74-1.fc30.x86_64 - package mesa-libGLES-19.0.2-3.fc30.x86_64 requires mesa-libglapi(x86-64) = 19.0.2-3.fc30, but none of the providers can be installed - package mesa-libGLES-19.0.8-1.fc30.x86_64 requires mesa-libglapi(x86-64) = 19.0.8-1.fc30, but none of the providers can be installed - package mesa-libGLES-19.0.5-2.fc30.x86_64 requires mesa-libglapi(x86-64) = 19.0.5-2.fc30, but none of the providers can be installed - package xorg-x11-drv-nvidia-libs-3:418.56-1.fc30.x86_64 requires libnvidia-fatbinaryloader.so.418.56()(64bit), but none of the providers can be installed - package xorg-x11-drv-nvidia-libs-3:418.74-1.fc30.x86_64 requires libnvidia-fatbinaryloader.so.418.74()(64bit), but none of the providers can be installed - conflicting requests (try to add '--skip-broken' to skip uninstallable packages) additional annoyance, when I mount my environment readonly, dnf is unhappy: [root@mnt ~]# dnf remove --duplicates Config error: [Errno 30] Read-only file system: '/var/log/dnf.log': '/var/log/dnf.log' I believe that the issue will be fully resolved by adding complete transaction functionality. Probably it can be resolved by "dnf shell" just add: remove --duplicates upgrade *** This bug has been marked as a duplicate of bug 1674296 *** |