#8371 Unable to download source package from fedora-updates
Closed: Fixed 4 years ago by adrian. Opened 4 years ago by goeran.

I'm not able to download the source packages for things in the updates repository. For example, doing

dnf download selinux-policy-3.14.4-39.fc31

works fine, and gives me a file selinux-policy-3.14.4-39.fc31.noarch.rpm, But if I try

dnf download --source selinux-policy-3.14.4-39.fc31

it ends with a message

Error: No package selinux-policy-3.14.4-39.fc31.src available.

I browsed to the first few mirrors in my list (http://ftp.acc.umu.se/mirror/fedora/linux/updates/31/Everything/source/tree/repodata/repomd.xml to begin with). There is metadata at the location pointed to, but it doesn't list any packages, and the …/Everything/source/tree/Packages directory is empty.

If I replace source in the URL with SRPMS, I find another directory tree which seems to be the real place for these source files. It includes both metadata and the actual packages. This is also what the commented out baseurl entry in the fedora-updates.repo file says. Commenting out the metalink entry and commenting in the baseurl entry in the updates-source section is a workaround for the problem.

From what I understand, there is some kind of inconsistency with what the mirror list points to and where the packages are actually distributed.

This seems to be a problem only for updates/updates-source, the base fedora/fedora-source repositories seem to work fine.


I think @adrian already fixed this?

Metadata Update from @kevin:
- Issue priority set to: Waiting on Assignee (was: Needs Review)
- Issue tagged with: mirrorlists

4 years ago

No, this is not fixed. I was not aware. So thanks for the report.

@kevin can we figure out why there is an empty source tree in updates/31 as well as in testing for Everything and Modular. I guess we got lucky that MirrorManager first detected SRPMS in testing for Everything and Modular. This did not work for non-testing updates.

Someone needs to make sure that source is removed for all versions of updates (released/Everything and released/Modular and testing/Everything and testing/Modular). Then MirrorManager can detect it correctly at SRPMS.

Can we also make sure for the next release that we do not push empty unused repositories. This is something MirrorManager can never handle if the correct repository appears with a different name (source vs. SRPMS).

ok, it seems the 'empty' updates repo we point those to after branching had source instead of SRPMS.

I fixed that.

I removed source from 31 testing and updates.

Well, we need to have a empty one after we branch, but before we enable bodhi/populate them no? Or is there a better way to do things?

ok, it seems the 'empty' updates repo we point those to after branching had source instead of SRPMS.
I fixed that.
I removed source from 31 testing and updates.

Perfect. I removed the entries from the database and re-ran umdl. Now everything seems to be pointing to the correct repositories.

Well, we need to have a empty one after we branch, but before we enable bodhi/populate them no?

Yes, having empty repositories it the right thing to do from MM's perspective.

Or is there a better way to do things?

The problem is creating empty repositories and then not using them. For updates we are now using SRPMS (although source was used initially to create empty repositories). For non-updates repositories (fedora-source-31 and fedora-modular-source-31) we are using source.

To prevent problems like this it would be important to not change directory names ones they have been pushed. If something is wrong we can always manually fix it, but this seems to exist since F29 that there is no consistency between SRPMS and source. Even in a single release (F31) we are now using source and SRPMS mixed. It should work now, but it seems unnecessary complicated (from MM's point of view).

Metadata Update from @adrian:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

4 years ago

I should have said earlier, but better late than never: thank you for fixing! It works fine now.

Login to comment on this ticket.

Metadata