Bug #18706
Race condition among capsule sync tasks to destroy/create pulp repos
Description
Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1391298
Description of problem:
Bulk capsule syncs failed when they were trying to remove the same pulp repos ('Actions::Katello::CapsuleContent::RemoveUnneededRepos').
Please see the below task information:
'Actions::Katello::Repository::CapsuleGenerateAndSync'
there are 7 Actions::Katello::CapsuleContent::Sync sub tasks in it matches the number of capsules in pnt-sysops org
each one of the capsulecontent::sync have one 'Actions::Katello::CapsuleContent::ConfigureCapsule'
and a lot of 'Actions::Pulp::Repository::Refresh'
under these 'Actions::Pulp::Repository::Refresh', some of them have skipped 'Actions::Pulp::Repository::RefreshDistributor'
under 'Actions::Katello::CapsuleContent::ConfigureCapsule', there is one 'Actions::Katello::CapsuleContent::RemoveUnneededRepos', where lots and lots of 'Actions::Pulp::Repository::Destroy' is in listed
'Actions::Pulp::Repository::Destroy' <-- lots of these are skipped or failed
The tasks paused after a whole bunch of repo::destroy failed. It can not be resumed until the user literally pressed the skip link next to every single errorred repo:destroy. The parent task can be resumed only when all of those errorred ones are skipped. After resuming, user got the Repo::create errors.
More information:
http://paste-platops.itos.redhat.com/pzpwqg41u/yyulhy#line-8
http://paste-platops.itos.redhat.com/p6cfi7rzn/sqiixo#line-15
Associated revisions
History
#1
Updated by Brad Buckingham over 5 years ago
- Subject changed from Race condition among capsule sync tasks to destroy/create pulp repos to Race condition among capsule sync tasks to destroy/create pulp repos
- Target version set to 169
- Legacy Backlogs Release (now unused) set to 114
#2
Updated by Klaas D over 5 years ago
is this the same as my errors in http://projects.theforeman.org/issues/18363 ?
#3
Updated by Andrew Kofink over 5 years ago
- Assignee set to Andrew Kofink
#4
Updated by Brad Buckingham over 5 years ago
- Target version changed from 169 to 178
#5
Updated by The Foreman Bot over 5 years ago
- Status changed from New to Ready For Testing
- Legacy Backlogs Release (now unused) deleted (
114) - Pull request https://github.com/Katello/katello/pull/6675 added
#6
Updated by Andrew Kofink over 5 years ago
- Status changed from Ready For Testing to Closed
- % Done changed from 0 to 100
Applied in changeset katello|271f580840ca34c7f3ea5938323ca2b401661831.
#7
Updated by Justin Sherrill over 5 years ago
- Legacy Backlogs Release (now unused) set to 226
Fixes #18706 - Handle 409 RestClient::Conflict
Handle conflict errors when trying to add repositories to a capsule that
already exist.