Skip to content
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

Fix BFT creating invalid blocks on London when zero base fee is used #5276

Merged
merged 6 commits into from
Mar 30, 2023

Conversation

jframe
Copy link
Contributor

@jframe jframe commented Mar 29, 2023

PR description

This fixes an issue where on IBFT and QBFT invalid blocks are created by the proposer when using London with a zeroBaseFee.

The cause of this is that the ZeroBaseFeeMarket was returning true for the implementsDataFee check which meant that the excessDataGas field was added to the block header. This is only valid after Shanghai.

Fixed Issue(s)

fixes #5270

Signed-off-by: Jason Frame <jason.frame@consensys.net>
@github-actions
Copy link

github-actions bot commented Mar 29, 2023

  • I thought about documentation and added the doc-change-required label to this PR if updates are required.
  • I have considered running ./gradlew acceptanceTestNonMainnet locally if my PR affects non-mainnet modules.
  • I thought about the changelog and included a changelog update if required.

Signed-off-by: Jason Frame <jason.frame@consensys.net>
Copy link
Contributor

@fab-10 fab-10 left a comment

Choose a reason for hiding this comment

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

LGTM

@jframe jframe changed the title Fix including excessDataGas when using a zero base fee Fix BFT creating invalid blocks on London when zero base fee is used Mar 30, 2023
Signed-off-by: Jason Frame <jason.frame@consensys.net>
@jframe
Copy link
Contributor Author

jframe commented Mar 30, 2023

I have considered running ./gradlew acceptanceTestNonMainnet locally if my PR affects non-mainnet modules.

I wasn't able to run the full suite of tests. A lot failed due to docker issues. Was able to run the BFT ATs though except the PKI ones which are failing due to lib issue (probably mac related)

@jframe jframe marked this pull request as ready for review March 30, 2023 02:59
Copy link
Contributor

@siladu siladu left a comment

Choose a reason for hiding this comment

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

LGTM

…can't run them locally"

This reverts commit ef4c4a7.

Signed-off-by: Jason Frame <jason.frame@consensys.net>
@jframe jframe enabled auto-merge (squash) March 30, 2023 04:07
@jframe jframe merged commit d3be9c8 into hyperledger:main Mar 30, 2023
@jframe jframe deleted the 5270_london_zero_base_fee branch March 30, 2023 04:40
@siladu siladu mentioned this pull request Jul 4, 2023
elenduuche pushed a commit to elenduuche/besu that referenced this pull request Aug 16, 2023
eum602 pushed a commit to lacchain/besu that referenced this pull request Nov 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Node is unable to sync
3 participants