-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
perf(engine): migrate to AsyncStateRoot #10927
base: main
Are you sure you want to change the base?
Conversation
depends on #10920 |
let's get some numbers in and then we can merge |
090f3f9
to
4361936
Compare
d48d36f
to
0a0b475
Compare
crates/engine/tree/src/tree/mod.rs
Outdated
config: TreeConfig, | ||
) -> Self { | ||
let (incoming_tx, incoming) = std::sync::mpsc::channel(); | ||
let blocking_task_pool = BlockingTaskPool::build().unwrap(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's propagate the error here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hmm not sure, this would mean we can't build a rayon's thread pool, i've turned the unwrap into an expect like here https://github.com/paradigmxyz/reth/blob/main/crates/rpc/rpc/src/eth/core.rs#L101
5602fdd
to
0e37486
Compare
Co-authored-by: Roman Krasiuk <[email protected]>
550465e
to
d59dfdb
Compare
Closes: #10892
Spawns the async calculation in a separate task and blocks waiting for the result, alternatively we could turn
EngineApiTreeHandler::insert_block_inner
and all its callers async.