This repository was archived by the owner on Jan 22, 2025. It is now read-only.
Eradicate zombie RPC threads#31688
Merged
mergify[bot] merged 3 commits intosolana-labs:masterfrom May 17, 2023
Merged
Conversation
t-nelson
approved these changes
May 17, 2023
Contributor
t-nelson
left a comment
There was a problem hiding this comment.
gotta be at least a step in the right direction 😉
Contributor
Author
@jeffwashington pointed me at a way to repro consistently, so I have a little more confidence this time 😅 |
Codecov Report
@@ Coverage Diff @@
## master #31688 +/- ##
=======================================
Coverage 81.8% 81.8%
=======================================
Files 736 736
Lines 205962 205963 +1
=======================================
+ Hits 168661 168665 +4
+ Misses 37301 37298 -3 |
mergify Bot
pushed a commit
that referenced
this pull request
May 17, 2023
* Ensure jsonrpc server has closed when joining rpc_service thread * Use same exit bool as other services * Remove redundant registered exit line (cherry picked from commit 2cdb43f) # Conflicts: # core/src/validator.rs
CriesofCarrots
pushed a commit
that referenced
this pull request
May 18, 2023
* Eradicate zombie RPC threads (#31688) * Ensure jsonrpc server has closed when joining rpc_service thread * Use same exit bool as other services * Remove redundant registered exit line (cherry picked from commit 2cdb43f) # Conflicts: # core/src/validator.rs * Fix conflict * Remove redundant clone --------- Co-authored-by: Tyera <tyera@solana.com>
wen-coding
pushed a commit
to wen-coding/solana
that referenced
this pull request
May 18, 2023
* Ensure jsonrpc server has closed when joining rpc_service thread * Use same exit bool as other services * Remove redundant registered exit line
bw-solana
pushed a commit
to bw-solana/solana
that referenced
this pull request
Jan 10, 2025
…olana-labs#31689) * Eradicate zombie RPC threads (solana-labs#31688) * Ensure jsonrpc server has closed when joining rpc_service thread * Use same exit bool as other services * Remove redundant registered exit line (cherry picked from commit 2cdb43f) # Conflicts: # core/src/validator.rs * Fix conflict * Remove redundant clone --------- Co-authored-by: Tyera <tyera@solana.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Cluster simulations still exhibit zombie threads in the rpc_service/send_transaction_service area when the recently removed
AccountsHashVerifier::should_halt()is triggered. This is because this change is only exercised when a formal ValidatorExit is triggered, and not when the exit AtomicBool is set to true.Summary of Changes
JsonRpcService::exit()insideJsonRpcService::join(), to ensure the Server actually closes when cleaning up threads