Pulp replication job fails with ACS
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 598
- Forks
- 168
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 86
Description
Version
{
"rpm": "3.29.0",
"core": "3.74.1",
"file": "3.74.1",
"certguard": "3.74.1"
}
Describe the bug
Pulp replication fails when it tries to delete the remote object which is used by the ACS.
To Reproduce
- Create a remote object for near by alternate secondary pulp server in the replica server.
- Create the ACS object to download the packages from the alternate secondary pulp server.
- Execute a pulp replication task in the replica server to sync from the primary pulp server.
Expected behavior
During the pulp replication task not to destroy the remote objects which are bind with the ACS objects.
Additional context
{
"pulp_href": "/pulp/api/v3/task-groups/0196c943-750a-7a8f-994c-19fd71bf19ac/",
"prn": "prn:core.taskgroup:0196c943-750a-7a8f-994c-19fd71bf19ac",
"description": "Replication of master",
"all_tasks_dispatched": true,
"waiting": 0,
"skipped": 0,
"running": 0,
"completed": 1,
"canceled": 0,
"failed": 2,
"canceling": 0,
"group_progress_reports": [],
"tasks": [
{
"pulp_href": "/pulp/api/v3/tasks/0196c943-89fe-717c-993e-593bfd309aa2/",
"prn": "prn:core.task:0196c943-89fe-717c-993e-593bfd309aa2",
"pulp_created": "2025-05-13T10:49:28.830681Z",
"pulp_last_updated": "2025-05-13T10:49:28.830696Z",
"name": "pulp_rpm.app.tasks.synchronizing.synchronize",
"state": "completed",
"unblocked_at": "2025-05-13T10:49:28.847952Z",
"started_at": "2025-05-13T10:49:29.704367Z",
"finished_at": "2025-05-13T10:49:30.692910Z",
"worker": "/pulp/api/v3/workers/01962362-17ce-793a-a328-a3db5f600926/"
},
{
"pulp_href": "/pulp/api/v3/tasks/0196c943-b3eb-7ed6-abd9-edbd2bddfebe/",
"prn": "prn:core.task:0196c943-b3eb-7ed6-abd9-edbd2bddfebe",
"pulp_created": "2025-05-13T10:49:39.564016Z",
"pulp_last_updated": "2025-05-13T10:49:39.564034Z",
"name": "pulpcore.app.tasks.replica.finalize_replication",
"state": "failed",
"unblocked_at": "2025-05-13T10:49:53.841022Z",
"started_at": "2025-05-13T10:49:53.902413Z",
"finished_at": "2025-05-13T10:49:53.913700Z",
"worker": "/pulp/api/v3/workers/01964735-e482-7cc0-97ef-ab4fb46f0995/"
},
{
"pulp_href": "/pulp/api/v3/tasks/0196c943-a953-7328-a7ef-a4ccaad89f87/",
"prn": "prn:core.task:0196c943-a953-7328-a7ef-a4ccaad89f87",
"pulp_created": "2025-05-13T10:49:36.851794Z",
"pulp_last_updated": "2025-05-13T10:49:36.851812Z",
"name": "pulpcore.app.tasks.base.general_multi_delete",
"state": "failed",
"unblocked_at": "2025-05-13T10:49:36.868081Z",
"started_at": "2025-05-13T10:49:36.943696Z",
"finished_at": "2025-05-13T10:49:53.766859Z",
"worker": "/pulp/api/v3/workers/01964735-ea14-73d0-aa62-0ab33c1acf7c/"
}
]
}
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing pulpcore.app.tasks.replica.finalize_replication and pulpcore.app.tasks.base.general_multi_delete, using the reported replication task sequence as the entry point. Inspect how remote objects associated with ACS objects are selected for deletion. Done means replication completes without deleting remotes bound to ACS objects and the reported reproduction no longer fails.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100