We currently remove the multilibs in %post, but we could do this earlier, in %pre. This is related to bug 2119304.
With the removal in %post, we have this issue: /lib64/glibc-hwcaps comes before /lib64/ld*, so RPM upgrades to the new version of libc.so.6 before ld.so. This means there is a window during the upgrade where new processes run with new libc.so.6 and old ld.so.
Without multilibs, /lib64/ld* comes before /lib64/lib*, and the possible race/version mismatch involves an old libc.so.6 with a new ld.so. Empirically, it is easier to evolve the GLIBC_PRIVATE ABI to better support this mismatch, so we should align the multilib case to this. This improves the upgrade experience at the expense of the downgrade experiences (but of course updates are more common because there has to be an upgrade before there can be a downgrade).
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (glibc bug fix and enhancement update), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2023:2481