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

Make the quic server connection table use an async lock, reducing thrashing #293

Merged
merged 1 commit into from
Mar 18, 2024

Conversation

ryleung-solana
Copy link

Problem

Usage of sync locks on the quic server can cause thrashing when under lock contention

Summary of Changes

Use async lock

Fixes #

Copy link

@lijunwangs lijunwangs left a comment

Choose a reason for hiding this comment

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

LGTM, good catch!

@ryleung-solana ryleung-solana changed the title Make the quic server connection table use an async lock, reducing lock contention Make the quic server connection table use an async lock, reducing thrashing Mar 18, 2024
Copy link

mergify bot commented Mar 18, 2024

Backports to the stable branch are to be avoided unless absolutely necessary for fixing bugs, security issues, and perf regressions. Changes intended for backport should be structured such that a minimum effective diff can be committed separately from any refactoring, plumbing, cleanup, etc that are not strictly necessary to achieve the goal. Any of the latter should go only into master and ride the normal stabilization schedule.

Copy link

mergify bot commented Mar 18, 2024

Backports to the beta branch are to be avoided unless absolutely necessary for fixing bugs, security issues, and perf regressions. Changes intended for backport should be structured such that a minimum effective diff can be committed separately from any refactoring, plumbing, cleanup, etc that are not strictly necessary to achieve the goal. Any of the latter should go only into master and ride the normal stabilization schedule. Exceptions include CI/metrics changes, CLI improvements and documentation updates on a case by case basis.

@lijunwangs lijunwangs merged commit 36e9765 into anza-xyz:master Mar 18, 2024
33 of 35 checks passed
mergify bot pushed a commit that referenced this pull request Mar 18, 2024
…ashing (#293)

Make the quic server connection table use an async lock, reducing lock contention

(cherry picked from commit 36e9765)
mergify bot pushed a commit that referenced this pull request Mar 18, 2024
…ashing (#293)

Make the quic server connection table use an async lock, reducing lock contention

(cherry picked from commit 36e9765)

# Conflicts:
#	streamer/src/nonblocking/quic.rs
pgarg66 pushed a commit that referenced this pull request Mar 18, 2024
…ashing (#293)

Make the quic server connection table use an async lock, reducing lock contention

(cherry picked from commit 36e9765)
lijunwangs pushed a commit that referenced this pull request Mar 18, 2024
…ing thrashing (backport of #293) (#299)

Make the quic server connection table use an async lock
lijunwangs pushed a commit that referenced this pull request Mar 22, 2024
…ing thrashing (backport of #293) (#300)

Make the quic server connection table use an async lock, reducing thrashing (#293)
@HaoranYi HaoranYi mentioned this pull request Apr 8, 2024
anwayde pushed a commit to firedancer-io/agave that referenced this pull request Jul 23, 2024
…ing thrashing (backport of anza-xyz#293) (anza-xyz#300)

Make the quic server connection table use an async lock, reducing thrashing (anza-xyz#293)
codebender828 pushed a commit to codebender828/agave that referenced this pull request Oct 3, 2024
…ashing (anza-xyz#293)

Make the quic server connection table use an async lock, reducing lock contention
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.

3 participants