Sonatype Nexus Repository OSS 3.13.0-01
YUM proxy repository. The proxied remote YUM repository was Centos 7 Base (http://mirror.centos.org/centos/7/os/x86_64/), however in order to simplify reproducible scenario attached steps use simple HTTP server as remote YUM repository.
We encountered scenario leading to inconsistent state of metadata files of proxied YUM repository (I mean files stored in repodata directory, like repomd.xml, *primary.xml.gz, *filelists.xml.gz and so on). The inconsistency of YUM metadata files makes YUM to raise an error like:
On the whole, a following situation is possible:
- All metadata yum files are consistent and all of them expired in Nexus proxy.
- YUM client requests to Nexus YUM proxy for only part of metadata files. Then, Nexus will update only part of metadata files. Let's assume that remote server didn't changed any data so metadata files are still consistent.
- All metadata yum files are consistent, however only part of them is update (didn't expired)
- All metadata was changed on YUM remote repository
- YUM client requests for all metadata files, some part of them won't be updated as they are not expired.
- Metadata yum files on YUM proxy repository are not consistent.