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

routing: dial back max concurrent block fetches #5043

Conversation

cfromknecht
Copy link
Contributor

This commit reduces the number of concurrent validation operations the
router will perform when fully validating the channel graph. Reports
from several users indicate that GetInfo would hang for several minutes,
which is believed to be caused by attempting to validate massive amounts
of channels in parallel. This commit returns the limit back to its
original state before adding the batched gossip improvements.

We keep the 1000 concurrent validation request limit for
AssumeChannelValid, since we don't fetch blocks in that case. This
allows us to still keep the performance benefits on mobile/low-resource
devices.

Fixes #4892

This commit reduces the number of concurrent validation operations the
router will perform when fully validating the channel graph. Reports
from several users indicate that GetInfo would hang for several minutes,
which is believed to be caused by attempting to validate massive amounts
of channels in parallel. This commit returns the limit back to its
original state before adding the batched gossip improvements.

We keep the 1000 concurrent validation request limit for
AssumeChannelValid, since we don't fetch blocks in that case. This
allows us to still keep the performance benefits on mobile/low-resource
devices.
Copy link
Member

@Roasbeef Roasbeef left a comment

Choose a reason for hiding this comment

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

LGTM 🍙

gkrizek added a commit to gkrizek/lnd that referenced this pull request Feb 18, 2021
This produces a race condition when reading AssumeChannelValid from a
different goroutine. Instead we isolate the test cases and initial
AssumeChannelValid properly.
@cfromknecht cfromknecht force-pushed the reduce-concurrent-router-validation branch from eef7bbe to 250bc85 Compare February 18, 2021 06:43
@cfromknecht cfromknecht mentioned this pull request Feb 18, 2021
@Roasbeef Roasbeef added this to the 0.13.0 milestone Feb 19, 2021
@Roasbeef Roasbeef merged commit 203a669 into lightningnetwork:master Feb 19, 2021
@cfromknecht cfromknecht deleted the reduce-concurrent-router-validation branch May 21, 2021 03:11
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.

A LND worked very slowly and the endless repetition of log lines
4 participants