fix: the default (or empty) values of genesis fields should be same as normal blocks #1468
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.
What this PR does / why we need it?
This PR closes #1305.
Since no genesis transaction is allowed after #1454 merged:
transactions_root
should always be the default valueRLP_NULL
as a normal block.axon/core/consensus/src/engine.rs
Lines 75 to 83 in 412e52a
signed_txs_hash
should always be the default valueRLP_EMPTY_LIST
as a normal blockaxon/core/consensus/src/engine.rs
Line 115 in 412e52a
axon/core/consensus/src/util.rs
Lines 19 to 25 in 412e52a
receipts_root
should always be the default valueRLP_NULL
as a normal block.axon/core/executor/src/lib.rs
Lines 188 to 196 in 412e52a
log_bloom
should always calculated from an empty logs vector.axon/protocol/src/types/block.rs
Lines 132 to 136 in 412e52a
axon/protocol/src/types/block.rs
Lines 145 to 147 in 412e52a
Default::default()
.The
Default::default()
is all zeros, but for an empty logs vector, it's not.The difference is as following:
gas_used
should always be zero.What is the impact of this PR?
No Breaking Change
CI Settings
CI Usage
Tip: Check the CI you want to run below, and then comment
/run-ci
.CI Switch
CI Description