Project

General

Profile

Actions

Bug #18920

closed

Possible race condition when sync multiple puppet repos at the same time

Added by Justin Sherrill almost 8 years ago. Updated over 6 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Repositories
Target version:
Difficulty:
Triaged:
Fixed in Releases:
Found in Releases:

Description

Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1421594

Description of problem:

Puppet repo sync has the following steps:
1) Unassociate all puppet modules from the repo
2) Sync the Repo
3) Remove all Orphans

Lets say we are syncing 'Repo 1' and 'Repo 2' at the same time. 'Module A' is only associated to 'Repo 1'

Unassociate 'Module A' from 'Repo 1' will make it an orphan, so the 'Repo 1' sync task will assume 'Module A' is still in Pulp and will not try to re-download it again. At the same time, 'Repo 2' sync task reaches the 'Remove all orphans step' and remove 'Module A' from Pulp. This will cause the 'Repo 1' sync to fail with the following error:

IOError: [Errno 2] No such file or directory: u'/var/lib/pulp/content/units/puppet_module/1f/37902b7b8dd30cd2f0a2a99914f703c1b1459bc905504b8c23225cee4b728b/mweetman-hosts-0.1.0.tar.gz'

How reproducible:
This issue is hard to reproduce, because this issue will only be triggered in a very specific timing.


Related issues 2 (0 open2 closed)

Related to Katello - Bug #20540: Duplicate Unit Names in Smart-Proxy Sync after 3.4.4 upgradeClosedJustin Sherrill08/09/2017Actions
Has duplicate Katello - Bug #19284: "Sync Repository on Capsules" regularly fails for Puppet ModulesDuplicateJohn Mitsch04/17/2017Actions
Actions #1

Updated by John Mitsch over 7 years ago

  • Category changed from 91 to Repositories
  • Assignee set to Andrew Kofink
  • Translation missing: en.field_release set to 228
Actions #2

Updated by Andrew Kofink over 7 years ago

  • Target version set to 187
Actions #3

Updated by Brad Buckingham over 7 years ago

  • Target version changed from 187 to 193
Actions #4

Updated by Justin Sherrill over 7 years ago

  • Has duplicate Bug #19284: "Sync Repository on Capsules" regularly fails for Puppet Modules added
Actions #5

Updated by Justin Sherrill over 7 years ago

  • Assignee deleted (Andrew Kofink)
  • Translation missing: en.field_release changed from 228 to 258
Actions #6

Updated by Brad Buckingham over 7 years ago

  • Target version changed from 193 to 196
Actions #7

Updated by Andrew Kofink over 7 years ago

  • Assignee set to Andrew Kofink
Actions #8

Updated by The Foreman Bot over 7 years ago

  • Status changed from New to Ready For Testing
  • Pull request https://github.com/Katello/katello/pull/6829 added
Actions #9

Updated by Eric Helms over 7 years ago

  • Translation missing: en.field_release changed from 258 to 267
Actions #10

Updated by Brad Buckingham over 7 years ago

  • Target version changed from 196 to 202
Actions #11

Updated by Andrew Kofink over 7 years ago

  • Status changed from Ready For Testing to Closed
  • % Done changed from 0 to 100
Actions #12

Updated by Eric Helms over 7 years ago

  • Translation missing: en.field_release changed from 267 to 281
Actions #13

Updated by Andrew Kofink almost 7 years ago

  • Related to Bug #20540: Duplicate Unit Names in Smart-Proxy Sync after 3.4.4 upgrade added
Actions

Also available in: Atom PDF