Skip to content

enable bal parallelization for all blocks#10234

Merged
matkt merged 8 commits intobesu-eth:mainfrom
matkt:unable-bal-for-non-head-block
Apr 16, 2026
Merged

enable bal parallelization for all blocks#10234
matkt merged 8 commits intobesu-eth:mainfrom
matkt:unable-bal-for-non-head-block

Conversation

@matkt
Copy link
Copy Markdown
Contributor

@matkt matkt commented Apr 14, 2026

PR description

This pull request makes a targeted change to the logic for retrieving the world state in ParallelBlockTransactionProcessor. The update ensures that the world state is fetched based on the current blockHeader rather than always using the chain head.

World state retrieval logic:

  • Updated getWorldState to use the provided blockHeader for world state lookup, removing a restrictive check against the chain head and simplifying the retrieval process.

Fixed Issue(s)

Thanks for sending a pull request! Have you done the following?

  • Checked out our contribution guidelines?
  • Considered documentation and added the doc-change-required label to this PR if updates are required.
  • Considered the changelog and included an update if required.
  • For database changes (e.g. KeyValueSegmentIdentifier) considered compatibility and performed forwards and backwards compatibility tests

Locally, you can run these tests to catch failures early:

  • spotless: ./gradlew spotlessApply
  • unit tests: ./gradlew build
  • acceptance tests: ./gradlew acceptanceTest
  • integration tests: ./gradlew integrationTest
  • reference tests: ./gradlew ethereum:referenceTests:referenceTests
  • hive tests: Engine or other RPCs modified?

Signed-off-by: Karim Taam <karim.t2am@gmail.com>
Copilot AI review requested due to automatic review settings April 14, 2026 13:14
@matkt matkt added block-access-lists amsterdam relating to Glamsterdam fork labels Apr 14, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

This PR changes how ParallelBlockTransactionProcessor retrieves the world state so it uses the provided blockHeader instead of always using the chain head header.

Changes:

  • Removed the chain-head parent check in getWorldState.
  • Switched world state lookup from chainHeadHeader to the provided blockHeader.

Signed-off-by: Karim Taam <karim.t2am@gmail.com>
@matkt matkt requested review from daniellehrner and mirgee April 15, 2026 11:05
Copy link
Copy Markdown
Contributor

@daniellehrner daniellehrner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The existing tests have been updated, but no new tests have been added to actually test the new behavior. I think we would need those to avoid regressions

@mirgee
Copy link
Copy Markdown
Contributor

mirgee commented Apr 15, 2026

No strong opinions, but I had use my new power to "Request Changes" :)

Signed-off-by: Karim Taam <karim.t2am@gmail.com>
@matkt
Copy link
Copy Markdown
Contributor Author

matkt commented Apr 15, 2026

Thanks for the review I added more tests and also updated the code

@matkt matkt requested review from daniellehrner and mirgee April 15, 2026 12:34
Signed-off-by: Karim Taam <karim.t2am@gmail.com>
Copy link
Copy Markdown
Contributor

@daniellehrner daniellehrner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

matkt added 2 commits April 15, 2026 17:40
@matkt matkt requested a review from mirgee April 15, 2026 15:47
@matkt matkt enabled auto-merge (squash) April 16, 2026 09:13
@matkt matkt merged commit 226a8f9 into besu-eth:main Apr 16, 2026
39 of 41 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

amsterdam relating to Glamsterdam fork block-access-lists

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants