-
Notifications
You must be signed in to change notification settings - Fork 3.9k
[consensus] tuning configs related to backpressure #18051
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
Conversation
c4ecd6d to
75c3c22
Compare
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.
This PR is being reviewed by Cursor Bugbot
Details
Your team is on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle for each member of your team.
To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.
| target_block_time_ms: 90, | ||
| }, | ||
| min_calibrated_txns_per_block: 8, | ||
| min_calibrated_txns_per_block: 30, |
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.
Bug: Undersized Blocks Break Batching Guarantees
The min_calibrated_txns_per_block value of 30 is now less than MIN_BLOCK_TXNS_AFTER_FILTERING (100), which is defined as 2 * DEFEAULT_MAX_BATCH_TXNS. This violates the design principle that blocks should contain at least two QS batch sizes. Execution backpressure can now reduce blocks below the minimum required to accommodate two QS batches, potentially causing issues with batch handling and the backpressure system's assumptions.
75c3c22 to
ea57124
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
ea57124 to
15dac76
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
💚 All backports created successfully
Questions ?Please refer to the Backport tool documentation and see the Github Action logs for details |
💚 All backports created successfully
Questions ?Please refer to the Backport tool documentation and see the Github Action logs for details |
1 similar comment
💚 All backports created successfully
Questions ?Please refer to the Backport tool documentation and see the Github Action logs for details |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
✅ Forge suite
|
✅ Forge suite
|
✅ Forge suite
|
Description
How Has This Been Tested?
Key Areas to Review
Type of Change
Which Components or Systems Does This Change Impact?
Checklist
Note
Tightens QS/consensus backpressure and batch sizing defaults, and plumbs an optional block gas limit through OptQuorumStore payloads, observer messages, and payload manager.
ExecutionBackpressureTxnLimitConfig.min_calibrated_txns_per_blockto30inconfig/src/config/consensus_config.rs.DEFEAULT_MAX_BATCH_TXNSto50and reducereceiver_max_batch_txnsto100inconfig/src/config/quorum_store_config.rs.block_gas_limit()accessor inconsensus/consensus-types/src/payload.rsand acceptgas_limitinBlockTransactionPayload::new_opt_quorum_store.new_opt_quorum_store(...)to taketransaction_limitandgas_limit; adjust tests accordingly inconsensus/src/consensus_observer/network/observer_message.rs.block_gas_limit()when constructing transaction payloads inconsensus/src/payload_manager/quorum_store_payload_manager.rs.```Written by Cursor Bugbot for commit 15dac76. This will update automatically on new commits. Configure here.