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

[1.0.3] P2P: Schedule a retry of enqueue_sync_block when throttled #899

Merged
merged 3 commits into from
Oct 7, 2024

Conversation

heifner
Copy link
Member

@heifner heifner commented Oct 7, 2024

When a connection is throttled it will not attempt to enqueue another block unless enqueue_sync_block is called. This will happen on any message sent to the connection. However, that can be a long time if the node has to wait for a heart-beat timeout before some message is sent to the peer.

Instead, schedule a try-again call to enqueue_sync_block in 100ms.

This fixes the current issue with p2p_sync_throttle_test which could not make progress because it repeately received a sync wait timeout.

Partially resolves #882, See #897

@heifner heifner linked an issue Oct 7, 2024 that may be closed by this pull request
@heifner heifner added the OCI Work exclusive to OCI team label Oct 7, 2024
@heifner heifner merged commit 9a1d68b into release/1.0 Oct 7, 2024
36 checks passed
@heifner heifner deleted the GH-882-throttle-sync branch October 7, 2024 19:10
@arhag arhag added the bug The product is not working as was intended. label Oct 7, 2024
@ericpassmore
Copy link
Contributor

Note:start
category: System Stability
component: P2P
summary: Schedule a retry of enqueue_sync_block when throttled.
Note:end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug The product is not working as was intended. OCI Work exclusive to OCI team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Test failure: p2p_sync_throttle_test
6 participants