Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

touch() path still has a potential deadlock window. #2157

Closed
ggainey opened this issue Jan 25, 2022 · 1 comment · Fixed by #2159
Closed

touch() path still has a potential deadlock window. #2157

ggainey opened this issue Jan 25, 2022 · 1 comment · Fixed by #2159

Comments

@ggainey
Copy link
Contributor

ggainey commented Jan 25, 2022

https://bugzilla.redhat.com/show_bug.cgi?id=2021406

@ggainey
Copy link
Contributor Author

ggainey commented Jan 25, 2022

You can force the deadlock by:

  • Starting 10 pulpcore-workers
  • Start up 2 instances of "pulpcore-manager shell"
  • In each instance, execute the following script, at the same time:
import _thread
from pulpcore.plugin.models import Content
def update_timestamp(index):
   print(">>>in update_timedstamp index {}".format(index))
   Content.objects.touch()
   print(">>>done {}".format(index))

for i in range(8):
   _thread.start_new_thread(update_timestamp, (i,))

You will see several/manay of the threads throwing deadlock exceptions.

ggainey added a commit to ggainey/pulpcore that referenced this issue Jan 25, 2022
The deadlock is difficult to capture "in the wild"; see pulp#2157 for
details on reproducing and showing that this fixes it.

fixes pulp#2157.
[nocoverage]
ggainey added a commit to ggainey/pulpcore that referenced this issue Jan 26, 2022
The deadlock is difficult to capture "in the wild"; see pulp#2157 for
details on reproducing and showing that this fixes it.

fixes pulp#2157.
[nocoverage]
@fao89 fao89 added the Triaged label Feb 1, 2022
@dralley dralley removed the Triaged label Feb 2, 2022
ggainey added a commit to ggainey/pulpcore that referenced this issue Feb 10, 2022
The deadlock is difficult to capture "in the wild"; see pulp#2157 for
details on reproducing the problem.

fixes pulp#2157.
[nocoverage]
ggainey added a commit to ggainey/pulpcore that referenced this issue Feb 11, 2022
The deadlock is difficult to capture "in the wild"; see pulp#2157 for
details on reproducing the problem.

fixes pulp#2157.
[nocoverage]
ggainey added a commit to ggainey/pulpcore that referenced this issue Feb 11, 2022
The deadlock is difficult to capture "in the wild"; see pulp#2157 for
details on reproducing the problem.

fixes pulp#2157.
[nocoverage]
dkliban pushed a commit that referenced this issue Feb 11, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]
patchback bot pushed a commit that referenced this issue Feb 11, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
dkliban pushed a commit that referenced this issue Feb 11, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
dkliban pushed a commit that referenced this issue Feb 11, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
patchback bot pushed a commit that referenced this issue Feb 14, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
patchback bot pushed a commit that referenced this issue Feb 14, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
mdellweg pushed a commit that referenced this issue Feb 14, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
mdellweg pushed a commit that referenced this issue Feb 14, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
ggainey added a commit that referenced this issue Feb 15, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
ggainey added a commit that referenced this issue Feb 15, 2022
The deadlock is difficult to capture "in the wild"; see #2157 for
details on reproducing the problem.

fixes #2157.
[nocoverage]

(cherry picked from commit cc4d270)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants