What were you trying to do that didn't work?
When using boom to facilitate upgrades with rollback capability two boom managed boot entries are created. The first is the snapshot boot entry that allows booting into the state of the system prior to the upgrade and the second is the rollback boot entry that is used to roll back the update and restore the system to its prior state. Two entries are required since the root device differs between the first and second case (the snapshot device vs. the original root device).
Boom supports backing up the boot images (kernel and initramfs) used by the boom boot entries in case the upgrade process removes the previous kernel, deleting the images from /boot and the Red Hat documentation advises users to use the --backup option to enable this when carrying out upgrades.
If the initramfs image changes between creation of the first and second boom boot entries (for e.g. due to RPM package scripts from kmod packages or the microcode_ctl package) attempting to create the rollback boot entry with --backup will fail:
# boom create --title Rollback --backup --root-lv fedora/root ERROR - Could not cache path /initramfs-6.8.9-300.fc40.x86_64.img: Restore failed: CacheEntry state is not MISSING or RESTORED Restore failed: CacheEntry state is not MISSING or RESTORED
Please provide the package NVR for which bug is seen:
boom-boot-1.6.1-2.el9 and earlier
How reproducible:
100%
Steps to reproduce
On a system with LVM root fs:
- boom profile create --from-host
- boom create --title First --backup --root-lv rhel/root
- dracut -f <image_path> <kernel_version>
- boom create --title Second --backup --root-lv rhel/root
Expected results
Boom creates two boot entries, titled "First" and "Second" using backup copies of the kernel and initramfs.
Actual results
The second "boom create" fails with:
ERROR - Could not cache path /initramfs-6.8.9-300.fc40.x86_64.img: Restore failed: CacheEntry state is not MISSING or RESTORED Restore failed: CacheEntry state is not MISSING or RESTORED