Issue #7625

Updated by dalley 7 months ago


Migration does not properly populate the filelist metadata on the resulting RPMs, which impacts subsequent usage of the RPM copy APIs, which read this metadata as part of the process to determine dependency relationships.


I am running pulp on RHEL 8 with a rpm-based installation based on packages from the Katello nightly repo.

I have succeeded in migrating my pulp2 content to pulp3 and all repos look complete (i've reran the migration and no new repoversions are generated). 

In an attempt to test the multirepo copy functionality described at 

, I created a couple of new, empty repos and tried to copy errata from my migrated RHEL8-appstream repo to them: 

POST /pulp/api/v3/rpm/copy/
    {"source_repo_version": "<rhel8-appstream-version-href>", "dest_repo": "my-new-repo1", "content": [$ADVISORY_HREF1]},
    {"source_repo_version": "<rhel8-baseos-version-href>", "dest_repo": "my-new-repo2", "content": []},

This works (after applying the patch from (, or at least it executes without any errors.

I'm a bit confused though by the result. I copied 16 advisories from the appstreams repo to my new empty repo and the copy ended up with copying all modulemds and almost all packages (11466 of 12053). That doesnt seem right to me. And my other new repo ('my-new-repo2') is still empty, meaning that of those 11000 packages there were none that had any dependencies from the baseos repo which also strikes me as odd. If i set 'dependency_solving=True' (contrary to the documentation) I end up with the same amount of packages in my 'my-new-repo1' and 2 packages in 'my-new-repo2'. 

Am I misunderstanding something about this functionality?