Skip to content

Commit

Permalink
feat(cmd): add OverrideStoryDenomTheogony override option (#68)
Browse files Browse the repository at this point in the history
  • Loading branch information
limengformal authored Dec 4, 2024
1 parent c5402e1 commit f5641aa
Show file tree
Hide file tree
Showing 6 changed files with 24 additions and 2 deletions.
5 changes: 5 additions & 0 deletions cmd/geth/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,11 @@ func makeFullNode(ctx *cli.Context) *node.Node {
cfg.Eth.OverrideStoryTheogony = overrideTheogony
}

if ctx.IsSet(utils.OverrideStoryDenomTheogony.Name) {
overrideDenomTheogony := ctx.Uint64(utils.OverrideStoryDenomTheogony.Name)
cfg.Eth.OverrideStoryDenomTheogony = &overrideDenomTheogony
}

backend, eth := utils.RegisterEthService(stack, &cfg.Eth)

// Create gauge with geth system and build information
Expand Down
1 change: 1 addition & 0 deletions cmd/geth/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ var (
utils.CollectWitnessFlag,
utils.Override4844Flag,
utils.OverrideStoryTheogony,
utils.OverrideStoryDenomTheogony,
}, utils.NetworkFlags, utils.DatabaseFlags)

rpcFlags = []cli.Flag{
Expand Down
6 changes: 6 additions & 0 deletions cmd/utils/flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -986,6 +986,12 @@ Please note that --` + MetricsHTTPFlag.Name + ` must be set to start the server.
Usage: "Manually specify the Theogony fork block height, overriding the bundled setting",
Category: flags.EthCategory,
}

OverrideStoryDenomTheogony = &cli.IntFlag{
Name: "override.denomtheogony",
Usage: "Manually specify the Theogony EIP1559 Denominator, overriding the bundled setting",
Category: flags.EthCategory,
}
)

var (
Expand Down
8 changes: 6 additions & 2 deletions core/genesis.go
Original file line number Diff line number Diff line change
Expand Up @@ -250,8 +250,9 @@ type ChainOverrides struct {
OverrideVerkle *uint64

// For Story
Override4844 bool
OverrideStoryTheogony *big.Int
Override4844 bool
OverrideStoryTheogony *big.Int
OverrideStoryDenomTheogony *uint64
}

// SetupGenesisBlock writes or updates the genesis block in db.
Expand Down Expand Up @@ -289,6 +290,9 @@ func SetupGenesisBlockWithOverride(db ethdb.Database, triedb *triedb.Database, g
if overrides != nil && overrides.OverrideStoryTheogony != nil {
config.TheogonyBlock = overrides.OverrideStoryTheogony
}
if overrides != nil && overrides.OverrideStoryDenomTheogony != nil {
config.EIP1559DenomTheogony = overrides.OverrideStoryDenomTheogony
}
}
}
// Just commit the new block if there is no stored genesis block.
Expand Down
3 changes: 3 additions & 0 deletions eth/backend.go
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,9 @@ func New(stack *node.Node, config *ethconfig.Config) (*Ethereum, error) {
if config.OverrideStoryTheogony != nil {
overrides.OverrideStoryTheogony = config.OverrideStoryTheogony
}
if config.OverrideStoryDenomTheogony != nil {
overrides.OverrideStoryDenomTheogony = config.OverrideStoryDenomTheogony
}
// TODO (MariusVanDerWijden) get rid of shouldPreserve in a follow-up PR
shouldPreserve := func(header *types.Header) bool {
return false
Expand Down
3 changes: 3 additions & 0 deletions eth/ethconfig/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,9 @@ type Config struct {

// Override Theogony fork block height
OverrideStoryTheogony *big.Int `toml:",omitempty"`

// Override EIP1559 Denominator for Theogony hardfork
OverrideStoryDenomTheogony *uint64 `toml:",omitempty"`
}

// CreateConsensusEngine creates a consensus engine for the given chain config.
Expand Down

0 comments on commit f5641aa

Please sign in to comment.