Begin block
The base fee is calculated at the beginning of each block.
Base Fee
Disabling base fee
We introduce two parameters : NoBaseFee
and EnableHeight
NoBaseFee
controls the feemarket base fee value. If set to true, no calculation is done and the base fee returned by the keeper is zero.
EnableHeight
controls the height we start the calculation.
If
NoBaseFee = false
andheight < EnableHeight
, the base fee value will be equal tobase_fee
defined in the genesis and theBeginBlock
will return without further computation.If
NoBaseFee = false
andheight >= EnableHeight
, the base fee is dynamically calculated upon each block atBeginBlock
.
Those parameters allow us to introduce a static base fee or activate the base fee at a later stage.
Enabling base fee
To enable EIP1559 with the EVM, the following parameters should be set :
NoBaseFee should be false
EnableHeight should be set to a positive integer >= upgrade height. It defines at which height the chain starts the base fee adjustment
LondonBlock evm's param should be set to a positive integer >= upgrade height. It defines at which height the chain start to accept EIP1559 transactions
Calculation
The base fee is initialized at EnableHeight
to the InitialBaseFee
value defined in the genesis file.
The base fee is after adjusted according to the total gas used in the previous block.