-
Bug
-
Resolution: Done-Errata
-
Normal
-
rhel-8.9.0, rhel-9.3.0
-
libdnf-0.69.0-10.el9
-
None
-
Moderate
-
rhel-sst-cs-software-management
-
ssg_core_services
-
10
-
12
-
2
-
False
-
-
Yes
-
Red Hat Enterprise Linux
-
None
-
-
Pass
-
None
-
Bug Fix
-
-
Done
-
None
What were you trying to do that didn't work?
dnf history rollback <id> is supposed to undo all transactions up to <id> but not <id> itself.
It appears that rollbacking works as expected, but rollbacking to same id again tries to remove the transaction with that id, as shown in the example below:
Initial state
# dnf history ID | Command line | Date and time | Action(s) | Altered ---------------------------------------------------------------------------------------------------------------------- 23 | install mc | 2023-11-28 11:47 | Install | 42 22 | install telnet-0.17-76.el8 | 2023-11-28 11:47 | Upgrade | 1 21 | install telnet-0.17-74.el8_3.1 | 2023-11-28 11:47 | Install | 1 [...]
Rollbacking once (PASS)
# dnf history rollback 21 [...] Removing: mc x86_64 1:4.8.19-9.el8 @app-os 6.8 M [...] Downgrading: telnet x86_64 1:0.17-74.el8_3.1 app-os 72 k [...]
Rollbacking twice (FAIL)
# dnf history rollback 21 [...] Removing: telnet x86_64 1:0.17-74.el8_3.1 @app-os 119 k [...]
Here above it now tries to remove the package, there is the bug.
Please provide the package NVR for which bug is seen:
How reproducible:
Always, see above.
Steps to reproduce:
- Install telnet-0.17-74.el8_3.1
- Install telnet-0.17-76.el8 (which ends up being an update)
- Install mc
- Rollback to telnet-0.17-76.el8 transaction
- Rollback again to telnet-0.17-76.el8 transaction
Expected results
2nd rollback does nothing or reinstalls the package as seen on RHEL7 (that latter behavior looks like a bug to me, but it's RHEL7, so ...).
Actual results
2nd rollback removes the package.
- is cloned by
-
RHEL-33541 "dnf history rollback <id>" operates as if it was a "undo" when <id> is not latest
- Release Pending
- links to
-
RHBA-2024:130723 libdnf bug fix and enhancement update