-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
txpool: streamline initialisation #13202
Merged
Merged
+475
−373
Conversation
This file contains 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
Loading status checks…
taratorio
added
the
do-not-merge
PR that is in a merge-able state but is waiting for something else to take place before merging
label
Dec 20, 2024
Loading status checks…
Loading status checks…
taratorio
removed
the
do-not-merge
PR that is in a merge-able state but is waiting for something else to take place before merging
label
Jan 3, 2025
taratorio
changed the title
[DO-NOT-MERGE] txpool: streamline initialisation
txpool: streamline initialisation
Jan 3, 2025
Loading status checks…
yperbasis
approved these changes
Jan 6, 2025
dvovk
approved these changes
Jan 6, 2025
Loading status checks…
Loading status checks…
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Attempt to simplify how we initialise and run the
TxPool
.Observations:
Fetch
,Sender
,PoolDB
,newTxs chan txpool.Announcements
. I see these all as internal components of theTxPool
thatbackend.go
and other initialisers should not care about. In reality, the only thingsbackend.go
cares about are theTxPool
and theTxPoolGrpcServer
.This PR addresses the above by:
Run(ctx)
pattern that we are using in Astrid and Shutter where each runnable component is responsible for starting its own background goroutines, loops, listeners, etc. and also is responsible for shutting them all down by being ctx-aware (ie when ctx is cancelled all sub components gets disposed of/shutdown)