[Rpm-maint] [rpm-software-management/rpm] %transfiletriggerpostun is not executed (Issue #3048)
Zbigniew Jędrzejewski-Szmek
notifications at github.com
Thu Apr 18 10:46:13 UTC 2024
I have a package with the a few file triggers:
```console
$ rpm -q --filetriggers filesystem|grep -w using -A1
filetriggerin scriptlet (using <lua>) -- /usr/bin
print('FILETRIGGERIN start')
--
filetriggerpostun scriptlet (using <lua>) -- /usr/bin
print('FILETRIGGERPOSTUN /usr/bin start')
--
filetriggerpostun scriptlet (using <lua>) -- /sbin, /usr/sbin
print('FILETRIGGERPOSTUN /usr/sbin start')
--
transfiletriggerpostun scriptlet (using <lua>) -- /sbin, /usr/sbin
print('TRANSFILETRIGGERPOSTUN start')
```
The two last triggers are for the same paths, so if one fires, the other must too, right?
```console
$ ls -l $(find /usr/sbin/ -type f)
-rwxr-xr-x. 1 root root 45080 Jan 24 01:00 /usr/sbin/kpartx
-rwxr-xr-x. 1 root root 2792336 Feb 27 01:00 /usr/sbin/pdata_tools
$ sudo rpm --reinstall -v device-mapper-persistent-data-1.0.12-1.fc41.x86_64.rpm kpartx-0.9.7-7.fc41.x86_64.rpm
Verifying packages...
Preparing packages...
kpartx-0.9.7-7.fc41.x86_64
FILETRIGGERIN start
filetriggerin /usr/bin/kpartx
/usr/bin/kpartx table: 0x5645ad5fa110 /usr/sbin/kpartx table: 0x5645ad5fa180
FILETRIGGERIN end
device-mapper-persistent-data-1.0.12-1.fc41.x86_64
FILETRIGGERIN start
filetriggerin /usr/bin/cache_check
/usr/bin/cache_check table: 0x5645ad5e8410 /usr/sbin/cache_check table: 0x5645ad5e8500
filetriggerin /usr/bin/cache_dump
/usr/bin/cache_dump table: 0x5645ad5ae380 /usr/sbin/cache_dump table: 0x5645ad885bf0
filetriggerin /usr/bin/cache_metadata_size
/usr/bin/cache_metadata_size table: 0x5645b1132300 /usr/sbin/cache_metadata_size table: 0x5645ad5f7710
filetriggerin /usr/bin/cache_repair
/usr/bin/cache_repair table: 0x5645ad5f9e70 /usr/sbin/cache_repair table: 0x5645ad5f9eb0
filetriggerin /usr/bin/cache_restore
/usr/bin/cache_restore table: 0x5645b11321b0 /usr/sbin/cache_restore table: 0x5645b11321f0
filetriggerin /usr/bin/cache_writeback
/usr/bin/cache_writeback table: 0x5645ad668690 /usr/sbin/cache_writeback table: 0x5645ad6686d0
filetriggerin /usr/bin/era_check
/usr/bin/era_check table: 0x5645ad653d30 /usr/sbin/era_check table: 0x5645ad653d70
filetriggerin /usr/bin/era_dump
/usr/bin/era_dump table: 0x5645ad6541d0 /usr/sbin/era_dump table: 0x5645ad654210
filetriggerin /usr/bin/era_invalidate
/usr/bin/era_invalidate table: 0x5645ad5f5670 /usr/sbin/era_invalidate table: 0x5645ad5f56b0
filetriggerin /usr/bin/era_restore
/usr/bin/era_restore table: 0x5645ad5f5b10 /usr/sbin/era_restore table: 0x5645ad5f5b50
filetriggerin /usr/bin/pdata_tools
/usr/bin/pdata_tools table: 0x5645b10ab510 /usr/sbin/pdata_tools table: 0x5645b10ab550
filetriggerin /usr/bin/thin_check
/usr/bin/thin_check table: 0x5645b10ab9b0 /usr/sbin/thin_check table: 0x5645b10ab9f0
filetriggerin /usr/bin/thin_delta
/usr/bin/thin_delta table: 0x5645b10abe50 /usr/sbin/thin_delta table: 0x5645b10abe90
filetriggerin /usr/bin/thin_dump
/usr/bin/thin_dump table: 0x5645ad658530 /usr/sbin/thin_dump table: 0x5645ad658570
filetriggerin /usr/bin/thin_ls
/usr/bin/thin_ls table: 0x5645ad6589d0 /usr/sbin/thin_ls table: 0x5645ad658a10
filetriggerin /usr/bin/thin_metadata_pack
/usr/bin/thin_metadata_pack table: 0x5645ad658e70 /usr/sbin/thin_metadata_pack table: 0x5645ad658eb0
filetriggerin /usr/bin/thin_metadata_size
/usr/bin/thin_metadata_size table: 0x5645ad8b67c0 /usr/sbin/thin_metadata_size table: 0x5645ad8b6800
filetriggerin /usr/bin/thin_metadata_unpack
/usr/bin/thin_metadata_unpack table: 0x5645ad8b6c60 /usr/sbin/thin_metadata_unpack table: 0x5645ad8b6ca0
filetriggerin /usr/bin/thin_repair
/usr/bin/thin_repair table: 0x5645ad8b7100 /usr/sbin/thin_repair table: 0x5645ad8b7140
filetriggerin /usr/bin/thin_restore
/usr/bin/thin_restore table: 0x5645ad8b75a0 /usr/sbin/thin_restore table: 0x5645ad8b75e0
filetriggerin /usr/bin/thin_rmap
/usr/bin/thin_rmap table: 0x5645ad8b7a40 /usr/sbin/thin_rmap table: 0x5645ad8b7a80
filetriggerin /usr/bin/thin_trim
/usr/bin/thin_trim table: 0x5645ad8b7ee0 /usr/sbin/thin_trim table: 0x5645ad8b7f20
FILETRIGGERIN end
kpartx-0.9.7-7.fc41.x86_64
FILETRIGGERPOSTUN /usr/sbin start
filetriggerpostun /usr/sbin/kpartx
/usr/bin/kpartx table: 0x5645ad654430 /usr/sbin/kpartx nil
Symlinking /usr/sbin/kpartx->/usr/bin/kpartx
FILETRIGGERPOSTUN /usr/sbin stop
device-mapper-persistent-data-1.0.12-1.fc41.x86_64
FILETRIGGERPOSTUN /usr/sbin start
filetriggerpostun /usr/sbin/cache_check
/usr/bin/cache_check table: 0x5645ad83c6b0 /usr/sbin/cache_check nil
Symlinking /usr/sbin/cache_check->/usr/bin/cache_check
filetriggerpostun /usr/sbin/cache_dump
/usr/bin/cache_dump table: 0x5645ad556110 /usr/sbin/cache_dump nil
Symlinking /usr/sbin/cache_dump->/usr/bin/cache_dump
filetriggerpostun /usr/sbin/cache_metadata_size
/usr/bin/cache_metadata_size table: 0x5645ad5ae380 /usr/sbin/cache_metadata_size nil
Symlinking /usr/sbin/cache_metadata_size->/usr/bin/cache_metadata_size
filetriggerpostun /usr/sbin/cache_repair
/usr/bin/cache_repair table: 0x5645ad8b7c50 /usr/sbin/cache_repair nil
Symlinking /usr/sbin/cache_repair->/usr/bin/cache_repair
filetriggerpostun /usr/sbin/cache_restore
/usr/bin/cache_restore table: 0x5645ad652120 /usr/sbin/cache_restore nil
Symlinking /usr/sbin/cache_restore->/usr/bin/cache_restore
filetriggerpostun /usr/sbin/cache_writeback
/usr/bin/cache_writeback table: 0x5645ad885bf0 /usr/sbin/cache_writeback nil
Symlinking /usr/sbin/cache_writeback->/usr/bin/cache_writeback
filetriggerpostun /usr/sbin/era_check
/usr/bin/era_check table: 0x5645ad5fa230 /usr/sbin/era_check nil
Symlinking /usr/sbin/era_check->/usr/bin/era_check
filetriggerpostun /usr/sbin/era_dump
/usr/bin/era_dump table: 0x5645ad5fa0a0 /usr/sbin/era_dump nil
Symlinking /usr/sbin/era_dump->/usr/bin/era_dump
filetriggerpostun /usr/sbin/era_invalidate
/usr/bin/era_invalidate table: 0x5645ad60f8a0 /usr/sbin/era_invalidate nil
Symlinking /usr/sbin/era_invalidate->/usr/bin/era_invalidate
filetriggerpostun /usr/sbin/era_restore
/usr/bin/era_restore table: 0x5645b1132300 /usr/sbin/era_restore nil
Symlinking /usr/sbin/era_restore->/usr/bin/era_restore
filetriggerpostun /usr/sbin/pdata_tools
/usr/bin/pdata_tools table: 0x5645ad8b7ea0 /usr/sbin/pdata_tools nil
Symlinking /usr/sbin/pdata_tools->/usr/bin/pdata_tools
filetriggerpostun /usr/sbin/thin_check
/usr/bin/thin_check table: 0x5645ad5fb1f0 /usr/sbin/thin_check nil
Symlinking /usr/sbin/thin_check->/usr/bin/thin_check
filetriggerpostun /usr/sbin/thin_delta
/usr/bin/thin_delta table: 0x5645ad8b72c0 /usr/sbin/thin_delta nil
Symlinking /usr/sbin/thin_delta->/usr/bin/thin_delta
filetriggerpostun /usr/sbin/thin_dump
/usr/bin/thin_dump table: 0x5645ad8b7460 /usr/sbin/thin_dump nil
Symlinking /usr/sbin/thin_dump->/usr/bin/thin_dump
filetriggerpostun /usr/sbin/thin_ls
/usr/bin/thin_ls table: 0x5645ad8b84a0 /usr/sbin/thin_ls nil
Symlinking /usr/sbin/thin_ls->/usr/bin/thin_ls
filetriggerpostun /usr/sbin/thin_metadata_pack
/usr/bin/thin_metadata_pack table: 0x5645ad8b8730 /usr/sbin/thin_metadata_pack nil
Symlinking /usr/sbin/thin_metadata_pack->/usr/bin/thin_metadata_pack
filetriggerpostun /usr/sbin/thin_metadata_size
/usr/bin/thin_metadata_size table: 0x5645ad8ca500 /usr/sbin/thin_metadata_size nil
Symlinking /usr/sbin/thin_metadata_size->/usr/bin/thin_metadata_size
filetriggerpostun /usr/sbin/thin_metadata_unpack
/usr/bin/thin_metadata_unpack table: 0x5645ad8c1230 /usr/sbin/thin_metadata_unpack nil
Symlinking /usr/sbin/thin_metadata_unpack->/usr/bin/thin_metadata_unpack
filetriggerpostun /usr/sbin/thin_repair
/usr/bin/thin_repair table: 0x5645ad668520 /usr/sbin/thin_repair nil
Symlinking /usr/sbin/thin_repair->/usr/bin/thin_repair
filetriggerpostun /usr/sbin/thin_restore
/usr/bin/thin_restore table: 0x5645ad8ca580 /usr/sbin/thin_restore nil
Symlinking /usr/sbin/thin_restore->/usr/bin/thin_restore
filetriggerpostun /usr/sbin/thin_rmap
/usr/bin/thin_rmap table: 0x5645ad653d90 /usr/sbin/thin_rmap nil
Symlinking /usr/sbin/thin_rmap->/usr/bin/thin_rmap
filetriggerpostun /usr/sbin/thin_trim
/usr/bin/thin_trim table: 0x5645ad6540c0 /usr/sbin/thin_trim nil
Symlinking /usr/sbin/thin_trim->/usr/bin/thin_trim
FILETRIGGERPOSTUN /usr/sbin stop
$ ls -l /usr/sbin/kpartx /usr/sbin/pdata_tools
lrwxrwxrwx. 1 root root 13 Apr 18 12:35 /usr/sbin/kpartx -> ../bin/kpartx
lrwxrwxrwx. 1 root root 18 Apr 18 12:35 /usr/sbin/pdata_tools -> ../bin/pdata_tools
```
As you can see, the TRANSFILETRIGGERPOSTUN is not called, even tough `/usr/sbin/{kpartx,pdata_tools}` have been uninstalled and replaced by symlinks generated by FILETRIGGERPOSTUN.
I don't have a very simple reproducer for this, but I snapshotted the VM before running the commands above, so I can reproduce them fairly easily.
Packages:
https://download.copr.fedorainfracloud.org/results/zbyszek/merged-sbin/fedora-rawhide-x86_64/07286085-rpm/rpm-4.19.1.1-2.fc41.x86_64.rpm
https://download.copr.fedorainfracloud.org/results/zbyszek/merged-sbin/fedora-rawhide-x86_64/07320547-filesystem/filesystem-3.18-10.fc41.x86_64.rpm
https://download.copr.fedorainfracloud.org/results/zbyszek/merged-sbin/fedora-rawhide-x86_64/07324173-device-mapper-persistent-data/device-mapper-persistent-data-1.0.12-1.fc41.x86_64.rpm
https://download.copr.fedorainfracloud.org/results/zbyszek/merged-sbin/fedora-rawhide-x86_64/07322269-device-mapper-multipath/kpartx-0.9.7-7.fc41.x86_64.rpm
The issue also occurs with dnf. I repeated the process with rpm to make sure that dnf is not suppressing scriptlet output or otherwise interfering. rpm is patched to have %_sbindir==/usr/bin, but I hope this doesn't affect scriptlets ;)
--
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/issues/3048
You are receiving this because you are subscribed to this thread.
Message ID: <rpm-software-management/rpm/issues/3048 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20240418/38412cf3/attachment.html>
More information about the Rpm-maint
mailing list