Documentation
¶
Overview ¶
AP4 implements the block gas cost logic activated by the Apricot Phase 4 upgrade.
Index ¶
Constants ¶
View Source
const ( // MinBlockGasCost is the minimum block gas cost. MinBlockGasCost = 0 // MaxBlockGasCost is the maximum block gas cost. If the block gas cost // would exceed this value, the block gas cost is set to this value. MaxBlockGasCost = 1_000_000 // TargetBlockRate is the target amount of time in seconds between blocks. // If blocks are produced faster than this rate, the block gas cost is // increased. If blocks are produced slower than this rate, the block gas // cost is decreased. TargetBlockRate = 2 // BlockGasCostStep is the rate at which the block gas cost changes per // second. // // This value was modified by the Apricot Phase 5 upgrade. BlockGasCostStep = 50_000 // MinBaseFee is the minimum base fee that is allowed after Apricot Phase 3 // upgrade. // // This value modifies the previously used `ap3.MinBaseFee`. // // This value was modified in Etna. MinBaseFee = 25 * utils.GWei // MaxBaseFee is the maximum base fee that is allowed after Apricot Phase 3 // upgrade. // // This value modifies the previously used `ap3.MaxBaseFee`. MaxBaseFee = 1_000 * utils.GWei )
Variables ¶
This section is empty.
Functions ¶
func BlockGasCost ¶
BlockGasCost calculates the required block gas cost.
cost = parentCost + step * (TargetBlockRate - timeElapsed)
The returned cost is clamped to [MinBlockGasCost, MaxBlockGasCost].
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.