Skip to content

Conversation

@steinybot
Copy link
Contributor

If parallelize is false then a hook will consume all the slots. Other threads may be processing other hooks but will wait for the slots to be released. Therefore a signal must be sent whenever slots are released.

Fixes #650

steinybot added 2 commits July 9, 2019 09:48
If a hook is running while another hook tries to start and there are
not enough slots left then it will wait for the first hook to stop and
release its slots. This first hook will not signal the second if there
are no more hooks left. This results in a deadlock.

This situation is far more likely to occur when parallelize is false
since the hook will consume all the available slots.
@steinybot steinybot force-pushed the bug/650-traceback-when-setting-parallelize-to-false branch from c14a818 to ce2ca4b Compare July 8, 2019 23:59
Copy link
Owner

@sds sds left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fix! Really appreciate you coming up with a test that can sometimes reproduce.

@sds sds merged commit ae69744 into sds:master Jul 9, 2019
@sds sds added the bug label Jul 9, 2019
@steinybot steinybot deleted the bug/650-traceback-when-setting-parallelize-to-false branch September 1, 2019 07:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Traceback when setting parallelize to false

2 participants