* Dan Čermák: > Hi Florian, > > Florian Weimer <fwei...@redhat.com> writes: > >> * Dan Čermák: >> >>> it has been recently proposed to switch openSUSE to run ldconfig via a >>> %transfiletriggerin/-un scriptlet instead of manually in %post & %postun >>> the same way as Fedora does it at the moment. >>> >>> However, an interesting issue has been raised: what happens if package A >>> gets upgraded in the same transaction as package B, but B needs A during >>> the upgrade. A will install a new shared library, but ldconfig will run >>> after B has already tried to upgrade. >> >> Fedora ships the soname links in the package, addressing this issue. >> For example, openssl-libs contains: >> >> /usr/lib64/libcrypto.so.1.1 >> /usr/lib64/libcrypto.so.1.1.1k >> /usr/lib64/libssl.so.1.1 >> /usr/lib64/libssl.so.1.1.1k >> >> As a result, running ldconfig is purely an optimization. > > Would that still be the case when the SONAME is bumped? I would assume > that the old symlink is no longer valid. Or is that also not an issue > because we rebuild the dependency on a SONAME bump?
The symbolic link will be updated once the package is unpacked, along with the real file. For /usr/lib64, the glibc dynamic loader will use files there even if they are not in the cache, as long the soname is available there. Once symbolic links are involved, soname changes are more problematic with ldconfig, actually. RPM does not delete old files immediately. If ldconfig runs with the old files still around, it may adjust the soname symbolic links to point to the wrong version of the library. That is why we eliminated the symbolic link indirection in glibc 2.34. Thanks, Florian _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure