Yum Does Not Recognise New (updated) Packages Due To Underscore In Package Name

Home » CentOS » Yum Does Not Recognise New (updated) Packages Due To Underscore In Package Name
CentOS No Comments

Hi all,

we are currently working on porting software from x86_64 to aarch64. We are working with the altarch aarch64 repos:

http://mirror.CentOS.org/altarch/7/os/aarch64/Packages/
http://mirror.CentOS.org/altarch/7/extras/aarch64/Packages/
http://mirror.CentOS.org/altarch/7/updates/aarch64/Packages/

However, it seems that yum (and eventually rpm) has problems with identifying new packages, if you have packages named as:

.el7_x.y..rpm
.el7.y..rpm

A concrete example is the package selinux-policy-3.13.1-60.el7.3.noarch.rpm in the os repo. It has an updated package
(selinux-policy-3.13.1-60.el7_2.7.noarch.rpm) in the updates repo. However, the underscore seems to be interpreted as a dot and hence leads to the package located in the os repo to be considered as newer. Maybe, this was tried to be addressed by also copying a corresponding version selinux-policy-3.13.1-60.el7_2.3.noarch.rpm into the os repo. However, this of course is also regarded as older (for the same reason) and thus still leads to the initial package to have precedence.

Do I miss out on something here? In addition, it might well be that this is not only an issue to the aarch64 repos, but also to other architectures. Is it a known issue and if yes, are there any attempts to correct this? As from what I can tell so far, it is not a problem of yum or rpm, but some inconsistencies in naming the packages in the CentOS repos.

Other sources of information:
http://superuser.com/questions/427065/what-comes-after-the-underscore-in-an-rpm-version-string http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
https://fedoraproject.org/wiki/Archive:Tools/RPM/VersionComparison

Thanks in advance for your help.

Best regards Felix