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

Fix AssertionError during node startup #6067

Merged
merged 1 commit into from Apr 15, 2020

Conversation

ulope
Copy link
Collaborator

@ulope ulope commented Apr 15, 2020

Description

The healthcheck uses (via NotifyingQueue) an gevent Event to wait for items to be available in the Queue.
If a node already has open channels items will be put into thehealthcheck queue during startup leading to the internal event to already be set before the first run of the worker.

This triggers gevent/gevent#1540 leading to AssertionErrors to be printed on stderr.

For now switch the healthcheck worker to a busy loop until the gevent bug is fixed.

@auto-assign auto-assign bot requested a review from fredo April 15, 2020 11:28
# this seemed to have no other negative effects. However to make sure we changed the code
# to it's current form.
#
# FIXME: Once the linked gevent bug has been fixed remove the busy look and switch back to
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
# FIXME: Once the linked gevent bug has been fixed remove the busy look and switch back to
# FIXME: Once the linked gevent bug has been fixed remove the busy loop and switch back to

Copy link
Collaborator

@konradkonrad konradkonrad left a comment

Choose a reason for hiding this comment

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

LGTM! (tiny typo though)

The healthcheck uses (via `NotifyingQueue`) an gevent `Event` to wait
for items to be available in the Queue.
If a node already has open channels items will be put into the
healthcheck queue during startup leading to the internal event to
already be set before the first run of the worker.

This triggers gevent/gevent#1540 leading to AssertionErrors to be
printed on stderr.

For now switch the healthcheck worker to a busy loop until the gevent
bug is fixed.
@ulope ulope force-pushed the fix/gevent-wait-on-set-event branch from f89ea33 to a310eff Compare April 15, 2020 12:22
@ulope ulope merged commit 0d346f3 into raiden-network:develop Apr 15, 2020
@ulope ulope deleted the fix/gevent-wait-on-set-event branch April 15, 2020 12:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants