Merge pull request #907 from gzliudan/fix-genesis

all: fix wrong genesis hash by set EIP-1559 number
This commit is contained in:
Daniel Liu 2025-03-14 07:59:59 +08:00 committed by GitHub
commit 21a430963c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 18 additions and 5 deletions

View file

@ -7,6 +7,7 @@
"eip155Block": 0, "eip155Block": 0,
"eip158Block": 0, "eip158Block": 0,
"byzantiumBlock": 0, "byzantiumBlock": 0,
"eip1559Block": 0,
"XDPoS": { "XDPoS": {
"period": 2, "period": 2,
"epoch": 900, "epoch": 900,
@ -275,4 +276,4 @@
"gasUsed": "0x0", "gasUsed": "0x0",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"baseFeePerGas": null "baseFeePerGas": null
} }

View file

@ -7,6 +7,7 @@
"eip155Block": 3, "eip155Block": 3,
"eip158Block": 3, "eip158Block": 3,
"byzantiumBlock": 4, "byzantiumBlock": 4,
"eip1559Block": 71550000,
"XDPoS": { "XDPoS": {
"period": 2, "period": 2,
"epoch": 900, "epoch": 900,
@ -138,4 +139,4 @@
"number": "0x0", "number": "0x0",
"gasUsed": "0x0", "gasUsed": "0x0",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000" "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
} }

View file

@ -184,6 +184,10 @@ func initGenesis(ctx *cli.Context) error {
utils.Fatalf("invalid genesis json: %v", err) utils.Fatalf("invalid genesis json: %v", err)
} }
if genesis.Config.ChainId != nil {
common.CopyConstans(genesis.Config.ChainId.Uint64())
}
// Open an initialise both full and light databases // Open an initialise both full and light databases
stack, _ := makeFullNode(ctx) stack, _ := makeFullNode(ctx)
defer stack.Close() defer stack.Close()
@ -198,7 +202,7 @@ func initGenesis(ctx *cli.Context) error {
utils.Fatalf("Failed to write genesis block: %v", err) utils.Fatalf("Failed to write genesis block: %v", err)
} }
chaindb.Close() chaindb.Close()
log.Info("Successfully wrote genesis state", "database", name, "hash", hash) log.Info("Successfully wrote genesis state", "database", name, "hash", hash.String())
return nil return nil
} }

View file

@ -213,6 +213,10 @@ func (g *Genesis) ToBlock(db ethdb.Database) *types.Block {
if g.Difficulty == nil { if g.Difficulty == nil {
head.Difficulty = params.GenesisDifficulty head.Difficulty = params.GenesisDifficulty
} }
// Notice: Eip1559Block affects the block hash, we must set:
// 1. g.Config.Eip1559Block
// 2. or common.Eip1559Block
if g.Config != nil && g.Config.IsEIP1559(common.Big0) { if g.Config != nil && g.Config.IsEIP1559(common.Big0) {
if g.BaseFee != nil { if g.BaseFee != nil {
head.BaseFee = g.BaseFee head.BaseFee = g.BaseFee
@ -220,6 +224,7 @@ func (g *Genesis) ToBlock(db ethdb.Database) *types.Block {
head.BaseFee = new(big.Int).SetUint64(params.InitialBaseFee) head.BaseFee = new(big.Int).SetUint64(params.InitialBaseFee)
} }
} }
statedb.Commit(false) statedb.Commit(false)
statedb.Database().TrieDB().Commit(root, true) statedb.Database().TrieDB().Commit(root, true)

View file

@ -7,6 +7,7 @@
"eip155Block": 0, "eip155Block": 0,
"eip158Block": 0, "eip158Block": 0,
"byzantiumBlock": 0, "byzantiumBlock": 0,
"eip1559Block": 0,
"XDPoS": { "XDPoS": {
"period": 2, "period": 2,
"epoch": 900, "epoch": 900,
@ -275,4 +276,4 @@
"gasUsed": "0x0", "gasUsed": "0x0",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"baseFeePerGas": null "baseFeePerGas": null
} }

View file

@ -7,6 +7,7 @@
"eip155Block": 3, "eip155Block": 3,
"eip158Block": 3, "eip158Block": 3,
"byzantiumBlock": 4, "byzantiumBlock": 4,
"eip1559Block": 71550000,
"XDPoS": { "XDPoS": {
"period": 2, "period": 2,
"epoch": 900, "epoch": 900,
@ -138,4 +139,4 @@
"number": "0x0", "number": "0x0",
"gasUsed": "0x0", "gasUsed": "0x0",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000" "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
} }