fix(network-monitor): move local proving off async runtime#2136
Open
Ollie202 wants to merge 5 commits into
Open
fix(network-monitor): move local proving off async runtime#2136Ollie202 wants to merge 5 commits into
Ollie202 wants to merge 5 commits into
Conversation
53b4ea4 to
ce36808
Compare
Contributor
Author
|
@SantiagoPittella following up on your two review comments — both have been addressed in the latest push (the deploy path no longer uses |
ce36808 to
fc75b51
Compare
fc75b51 to
0efd5d4
Compare
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 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.
Partially addresses #1976.
Summary
The network monitor performed local transaction execution and proof generation directly from async code in two places: counter account deployment and periodic counter increment submission. Both paths can run CPU-heavy VM/prover work without yielding and starve Tokio worker threads.
This PR moves both execution/proving paths into
spawn_blocking_in_current_span. For increments, the blocking closure now constructs its ownMonitorDataStorefrom the current block header, wallet account, and counter account. This avoids cloning or maintaining duplicate datastore state inTxBuilder.Testing
cargo +nightly fmt --all --check -- --config-path .config/rustfmt.tomlcargo xtask fmt-comments --check --rustfmt-config .config/rustfmt.tomlgit diff --check upstream/next...HEADA local
cargo check -p miden-network-monitor --lockedis blocked on Windows by the repository's proto build include-path handling; the Linux CI build and test jobs pass.Changelog