Actions
Issue #5847
closedPulp error when syncing rhel 8 baseos
Start date:
Due date:
Estimated time:
Severity:
3. High
Version:
Platform Release:
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Katello
Sprint:
Sprint 77
Quarter:
Description
Ping me for the full repo. Found in pulp-rpm 3.0.0rc1 (2019-11-19)
Error: No declared artifact with relative path \"repodata/ff44f60d-80ee-47e8-9932-6522073764f5\" for content \"<RepoMetadataFile: pk=e2740ada-e07f-4a80-a076-160f3f541850>\""}
Traceback:
{"pulp_tasks"=>
[{"pulp_href"=>"/pulp/api/v3/tasks/c58b7d28-453b-4e8a-8060-ea6bcf8395bb/",
"pulp_created"=>"2019-12-06T16:58:26.987+00:00",
"state"=>"failed",
"name"=>"pulp_rpm.app.tasks.synchronizing.synchronize",
"started_at"=>"2019-12-06T16:58:27.234+00:00",
"finished_at"=>"2019-12-06T16:58:29.609+00:00",
"error"=>
{"traceback"=>
" File \"/usr/local/lib/pulp/lib64/python3.6/site-packages/rq/worker.py\", line 822, in perform_job\n" +
" rv = job.perform()\n" +
" File \"/usr/local/lib/pulp/lib64/python3.6/site-packages/rq/job.py\", line 605, in perform\n" +
" self._result = self._execute()\n" +
" File \"/usr/local/lib/pulp/lib64/python3.6/site-packages/rq/job.py\", line 611, in _execute\n" +
" return self.func(*self.args, **self.kwargs)\n" +
" File \"/usr/local/lib/pulp/src/pulp-rpm/pulp_rpm/app/tasks/synchronizing.py\", line 147, in synchronize\n" +
" dv.create()\n" +
" File \"/usr/local/lib/pulp/src/pulpcore/pulpcore/plugin/stages/declarative_version.py\", line 149, in create\n" +
" loop.run_until_complete(pipeline)\n" +
" File \"/usr/lib64/python3.6/asyncio/base_events.py\", line 484, in run_until_complete\n" +
" return future.result()\n" +
" File \"/usr/local/lib/pulp/src/pulpcore/pulpcore/plugin/stages/api.py\", line 209, in create_pipeline\n" +
" await asyncio.gather(*futures)\n" +
" File \"/usr/local/lib/pulp/src/pulpcore/pulpcore/plugin/stages/api.py\", line 43, in __call__\n" +
" await self.run()\n" +
" File \"/usr/local/lib/pulp/src/pulpcore/pulpcore/plugin/stages/artifact_stages.py\", line 219, in run\n" +
" RemoteArtifact.objects.bulk_get_or_create(self._needed_remote_artifacts(batch))\n" +
" File \"/usr/local/lib/pulp/src/pulpcore/pulpcore/plugin/stages/artifact_stages.py\", line 263, in _needed_remote_artifacts\n" +
" c=d_content.content))\n",
"description"=>
"No declared artifact with relative path \"repodata/ff44f60d-80ee-47e8-9932-6522073764f5\" for content \"<RepoMetadataFile: pk=e2740ada-e07f-4a80-a076-160f3f541850>\""},
"worker"=>"/pulp/api/v3/workers/8e8407f4-4840-4f21-b1ef-8084c8a08a5e/",
"spawned_tasks"=>[],
"progress_reports"=>
[{"message"=>"Associating Content",
"code"=>"associating.content",
"state"=>"canceled",
"done"=>0},
{"message"=>"Downloading Artifacts",
"code"=>"downloading.artifacts",
"state"=>"canceled",
"done"=>0},
{"message"=>"Downloading Metadata Files",
"code"=>"downloading.metadata",
"state"=>"canceled",
"done"=>2},
{"message"=>"Parsed Comps",
"code"=>"parsing.comps",
"state"=>"running",
"total"=>42,
"done"=>7},
{"message"=>"Parsed Advisories",
"code"=>"parsing.advisories",
"state"=>"running",
"total"=>87,
"done"=>87},
{"message"=>"Parsed Packages",
"code"=>"parsing.packages",
"state"=>"waiting",
"done"=>0}],
"created_resources"=>[],
"reserved_resources_record"=>
["/pulp/api/v3/repositories/rpm/rpm/674ba43b-2e86-44f7-81aa-78326bccae72/",
"/pulp/api/v3/remotes/rpm/rpm/e6b4fd16-b0f0-4f5d-8db8-7b112bbb8a77/"]}],
"create_version"=>true,
"poll_attempts"=>{"total"=>3, "failed"=>1}}
To reproduce:
- sync rhel 8 baseos repo
- sync rhel 8 appstream repo
Do these in this order, waiting for 1) to complete and then doing 2). You may not have to wait, but i did to reproduce. You can also do 2) before 1. The important part is having one synced before the other.
Actions
Repo metadata relative path
Extend RepoMetaData with relative_path to avoid sync issue repositories contains productid.
[nocoverage]
closes: #5847 https://pulp.plan.io/issues/5847