Added
BLOCK_HISTORY_ESTIMATOR_EIP1559_FEE_CAP_BUFFER_BLOCKS
- if EIP1559 mode is enabled, this optional env var controls the buffer blocks to add to the current base fee when sending a transaction. By default, the gas bumping threshold + 1 block is used. It is not recommended to change this unless you know what you are doing.EVM_GAS_FEE_CAP_DEFAULT
- if EIP1559 mode is enabled, and FixedPrice gas estimator is used, this env var controls the fixed initial fee cap.
Fixed
Fixed issues with EIP-1559 related to gas bumping. Due to go-ethereum's implementation which introduces additional restrictions on top of the EIP-1559 spec, we must bump the FeeCap at least 10% each time in order for the gas bump to be accepted.
The new EIP-1559 implementation works as follows:
If you are using FixedPriceEstimator:
- With gas bumping disabled, it will submit all transactions with
feecap=ETH_MAX_GAS_PRICE_WEI
andtipcap=EVM_GAS_TIP_CAP_DEFAULT
- With gas bumping enabled, it will submit all transactions initially with
feecap=EVM_GAS_FEE_CAP_DEFAULT
andtipcap=EVM_GAS_TIP_CAP_DEFAULT
.
If you are using BlockHistoryEstimator (default for most chains):
- With gas bumping disabled, it will submit all transactions with
feecap=ETH_MAX_GAS_PRICE_WEI
andtipcap=<calculated using past blocks>
- With gas bumping enabled (default for most chains) it will submit all transactions initially with
feecap=current block base fee * (1.125 ^ N)
where N is configurable by setting BLOCK_HISTORY_ESTIMATOR_EIP1559_FEE_CAP_BUFFER_BLOCKS but defaults togas bump threshold+1
andtipcap=<calculated using past blocks>
Bumping works as follows:
- Increase tipcap by
max(tipcap * (1 + ETH_GAS_BUMP_PERCENT), tipcap + ETH_GAS_BUMP_WEI)
- Increase feecap by
max(feecap * (1 + ETH_GAS_BUMP_PERCENT), feecap + ETH_GAS_BUMP_WEI)