Missing fedora-42 mirror sites for CN

Mirror metalink for fedora-42 sends sites without those in CN, even with country=CN in url queries, update-released-f42 works fine.
Here is what I get using curl -L "https://mirrors.fedoraproject.org/metalink?arch=x86_64&repo=fedora-42&country=CN" in China.

<?xml version="1.0" encoding="utf-8"?>
<metalink version="3.0" xmlns="http://www.metalinker.org/" type="dynamic" pubdate="Thu, 01 May 2025 09:34:36 GMT" generator="mirrormanager" xmlns:mm0="http://fedorahosted.org/mirrormanager">
 <files>
  <file name="repomd.xml">
   <mm0:timestamp>1744348627</mm0:timestamp>
   <size>4418</size>
   <verification>
    <hash type="md5">04d8d22f77d788eb98bc2e59879325e4</hash>
    <hash type="sha1">d7360a4cdd9bceb5108aa6a5e26812e723351c25</hash>
    <hash type="sha256">3b6da485006f02b99f29a97c2d0e908bcecba9cc51a9759981d5c7e86a1d4eda</hash>
    <hash type="sha512">055c3f7ae1572f60d18cdc47ae0af3038dc0643891f1565436bdf28b3a23d528169ecbe264c2d4eb2caf6a46b9b501be3983ac30da10cdf286036c55a7cddd44</hash>
   </verification>
   <resources maxconnections="1">
    <url protocol="rsync" type="rsync" location="TW" preference="100">rsync://mirror.twds.com.tw/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="TW" preference="100">https://mirror.twds.com.tw/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="TW" preference="100">http://mirror.twds.com.tw/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="JP" preference="99">https://repo.jing.rocks/fedora-buffet/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="JP" preference="99">http://repo.jing.rocks/fedora-buffet/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="rsync" type="rsync" location="JP" preference="99">rsync://repo.jing.rocks/fedora-enchilada/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="rsync" type="rsync" location="SG" preference="98">rsync://mirror.freedif.org/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="SG" preference="98">http://mirror.freedif.org/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="SG" preference="98">https://mirror.freedif.org/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="MY" preference="97">http://mirrors.ipserverone.com/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="MY" preference="97">https://mirrors.ipserverone.com/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="JP" preference="96">http://ftp.riken.jp/Linux/fedora/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="rsync" type="rsync" location="JP" preference="96">rsync://ftp.riken.jp/fedora/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="JP" preference="96">https://ftp.riken.jp/Linux/fedora/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="JP" preference="95">https://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora-projects/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="JP" preference="95">http://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora-projects/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="rsync" type="rsync" location="JP" preference="95">rsync://ftp.yz.yamagata-u.ac.jp/pub/linux/fedora-projects/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="rsync" type="rsync" location="TW" preference="94">rsync://free.nchc.org.tw/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="TW" preference="94">https://free.nchc.org.tw/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="TW" preference="94">http://free.nchc.org.tw/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="TW" preference="93">https://fedora.cs.nycu.edu.tw/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="https" type="https" location="KZ" preference="92">https://mirror.hoster.kz/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="rsync" type="rsync" location="KZ" preference="92">rsync://mirror.hoster.kz/fedora-enchilada/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
    <url protocol="http" type="http" location="KZ" preference="92">http://mirror.hoster.kz/fedora/fedora/linux/development/42/Everything/x86_64/os/repodata/repomd.xml</url>
   </resources>
  </file>
 </files>
</metalink>

Well, this happens with country=IT as well.
We need a mirror guru to step in :slight_smile:

I won’t claim to be a guru, but I can provide some explanation of the process from my slightly rusty memories.

Metalink will provide a list of mirrors that should be close to you and can provide the repository you’ve requested (with the right version and architecture).

I believe it will also only return mirrors that are sufficiently up to date - if you look at Propagation - MirrorManager you can see a visualisation of the mirrors catching up as they download the new content from other mirrors. I think that graph is from mirror manager checking the mirrors explicitly, but mirrors also report back in to mirror manager when they update themselves.

If you never see mirrors from your country, then it’s possible that a) there aren’t any, b) they don’t carry the specific content you want (although for x86_64 and supported versions that’s less likely), c) aren’t up to date, or d) metalink thinks that the other options are better, even if geographically they might be further away.

Also thanks to Kevin Fenzi for his explanation here - Fedora 40 mirrors : errors leading from Western Europe to mirrors based in UA & RU? - #24 by kevin - that provides some more detail, although the rest of that thread is on a slightly different topic.

1 Like

Thank you for your reminder. I just realized that fedora-42 repo is still redirected to development/… but not releases/…, which many of CN mirror sites (ALL of them listed on the Mirrormanager) refused to sync them. I’m new to fedora, is this routine for a new released version?

When the new release is ready the packages are hardlinked from development into releases so that mirrors carrying both don’t end up using twice the disk space for that version (or that used to be the case at least - I haven’t managed a mirror for a few years). That shouldn’t affect any mirror that only carries versions in the releases directory - they just need to download the content when it’s ready.

It’s routine for a few weeks after release.

It was supposed to be switched last week, but something didn’t work
right… it’s being looked into.

2 Likes

Metalink redirects to releases/42 now. Mirror sites that only sync releases now work.