Ethereum mainnet “London” upgrade announcement

1. The original announcement was published on July 15th, and there was a consensus accident on the Ropsten testnet on July 21st. Therefore, the client version recommended in this article is out of date, and friends who run nodes should get the latest version of the client they use.

2. Based on an average block production time of 13.5, the “London” upgrade will be activated at 7pm Beijing time on August 5th.

3. The Gas Limit of the Ethereum block is set by the block producer locally by setting the parameters of the game. Setting a value lower/higher than the current size means that it supports reducing/increasing the block, and will be in the zone it has left. Reflected in the block. After the passage of EIP-1559, the adjustment of Base Fee will always target 50% of the block utilization rate. Therefore, if you are a block producer and the appropriate single-block Gas consumption is 100, it should be locally Set the gas limit to 200, and so on. The announcement and the value suggested by the Geth team are only illustrative. No matter what value is set by the node, it will not enter another fork.

Translator’s note: In addition to the announcement of the London mainnet upgrade, ECN also translated the Geth client v1.10.5 regarding the code changes that different actors need to pay attention to for this London upgrade.

Ethereum mainnet "London" upgrade announcement

After the successful deployment of the upgraded testnet in London, it is now ready to be activated on the Ethereum mainnet. It will be activated at a block height of 12 965 000, approximately on August 3-5, 2021.

Client version

In order to be compatible with the London upgrade, node operators will need to upgrade the client version they are running. Each client version listed below supports the London upgrade of the Ethereum mainnet. Note: The following versions are different from the client version listed in the “London Testnet Announcement”. The client version of the testnet does not support the client version of the mainnet London upgrade.

Ethereum mainnet "London" upgrade announcement

Note: The OpenEthereum client will be deprecated after the London upgrade. The OE team is working with Erigon to provide users with a smooth transition path.

Miners, please note: The London upgrade will change how the network handles gas limit targets. Please refer to the section “As a miner, what do I need to do?” below for details.

London EIPs

The following EIPs are part of the London upgrade:

  • EIP-1559: ETH 1.0 fee market changes
  • EIP-3198: BASEFEE opcode
  • EIP-3529: Reduce gas return
  • EIP-3541: Reject new addresses beginning with 0xEF bytes
  • EIP-3554: Difficulty bomb delayed until December 2021

Ethereum Cat Herders published a blog post discussing the details of these EIPs.

It is worth noting that although EIP-1559 is backward compatible with the current transaction format, it introduces changes to the block header, adds new transaction types, provides a new JSON RPC endpoint, and changes in several ways The behavior of the client (mining, trading pool, etc.). It is strongly recommended that all projects be familiar with this EIP.

Bug bounty

In order to make more people pay attention to the upcoming London upgrade, the bonuses for all bugs related to the London upgrade will be doubled until the upgrade begins. Examples of double rewards are the cross-client consensus issues between these clients: Geth, Besu, Nethermind, OpenEthereum, and Erigon. For complete details of bug bounty scope and limitations, please refer to: https://bounty.ethereum.org/#rules.

FAQ

Q: As an Ethereum user or ETH holder, is there anything I can do?

If you use exchanges (such as Coinbase, Kraken, or Binance), web wallet services (such as Metamask, MyCrypto, or MyEtherWallet), mobile wallet services (such as Coinbase Wallet, Status.im, or Trust Wallet), or hardware wallets (such as Ledger, Trezor, or KeepKey), you don’t need to do anything unless your exchange or wallet service provider informs you to take additional steps. If you run your own Ethereum node, you need to upgrade your node. Please see the “As a non-mining node, what do I need to do?” section below.

Q: As a non-mining node, what do I need to do?

Download the latest version of the Ethereum client, which is listed in the table above.

Q: As a miner, what should I do?

First, download the latest version of your Ethereum client. Then, you need to manually set the gas limit target to twice the current value. This is because once the London upgrade is deployed, the block size will be doubled, and EIP-1559 will keep the block capacity about 50% full. This can be achieved through JSON-RPC on all clients that provide mining compatible with the mainnet, without restarting your node.

For example, if you set the block size to 15m gas before the London upgrade, you will need to set the gas limit to 30m to keep the average number of transactions per block consistent. If you do not modify the gas limit target at block 12 965 000, you will start to reduce your block size in the network. The following table provides specific APIs for each client, which you need to update your gas limit target.

Ethereum mainnet "London" upgrade announcement

Note: Nethermind, Erigon and EthereumJS currently do not support mining on the Ethereum mainnet.

Q: What if I am a miner or node operator and do not participate in the upgrade?

If you are using the Ethereum client but do not upgrade to the latest version (listed above), your client will synchronize the blockchain data before the fork after the upgrade. You will be stuck on an incompatible chain that follows the old rules, and you will not be able to send ETH or operate on the upgraded Ethereum network.

Q: What does it mean to upgrade the network on Ethereum?

The network upgrade means a change in the underlying protocol of Ethereum and the creation of new rules to improve the system. The decentralized nature of the blockchain system makes network upgrades more difficult. The smooth progress of the blockchain network upgrade requires collaboration and communication with the community and various Ethereum client developers to make the transition smooth.

Q: What will happen during the network upgrade process?

When the community reaches a consensus on which changes need to be included in the upgrade, these changes to the protocol will be written to various Ethereum clients, such as geth, Erigon, Besu, and Nethermind. The protocol change will be initiated at a specific block height. Any node that has not been upgraded to the new rules will be abandoned on the old chain, and the old chain will continue to retain the previous rules.

Q: Why is it “London”?

After the upgrade in Istanbul, we ran out of network upgrade names we decided on. Someone suggested that we name the city where the Devcon was held, so we used it. Berlin is the city hosting Devcon 0, and the next upgrade will be the city hosting Devcon 1-London.

Thanks

Special thanks to everyone who participated in the research, planning, implementation, testing, repair, retesting, deployment, stress testing, and any other form of helping the London deployment in the London upgrade???

There is also Benjamin Davies who provides a cover image!

Disclaimer

This is a new and evolving high-tech field. If readers choose to implement the recommendations in this article and continue to participate, please make sure you fully understand the impact of your choice. Readers should be aware of the risks involved, including but not limited to risks such as unexpected bugs, and readers are requested to bear the risks alone. This article and its recommendations are not any form of sales, nor does it provide any form of guarantee, including but not limited to anything related to the Ethereum network or the Ethereum client mentioned here.

Geth Exodus Cluster (v1.10.5) excerpt

Geth client’s instructions on London upgrade changes:

  • This version contains the block height of the mainnet starting block for the London hard fork. (#23176)
  • As with all previous fork-related versions, we added an overload flag to set the startup block. This flag is temporary and will be deleted after the mainnet fork block is successfully launched. (#22822, #22972)
  • In order to cope with the new fee market created by EIP-1559, the trading pool of the Geth client has been redesigned. Our new transaction pool design is designed to meet the needs of users-package transactions in time-to achieve efficient transaction sorting based on their effective mining rewards. You can learn more about the working logic of the new trading pool in the trading pool design document. (#22898)
  • For miners: The transaction selection algorithm provided by Geth specifically selects the transaction with the highest effective reward. If a minimum price is set with the –miner.gasprice command line flag, then transactions that provide miner tips below the minimum price will not be packaged in the block. (#22896, #22995)

EIP-1559 will also change the gas limit voting system. After the London fork, the amount of block gas available for transactions is adjusted based on demand. The block capacity is called the gas target, and EIP-1559 defines this target as half of the gas limit.

In order to ensure that the gas available for transactions is the same as before the fork, the gas limit of the forked block is doubled. If you are using the –miner.gaslimit flag to participate in voting, you need to double the value of this flag to keep the value of the vote the same as before. You can use miner_setGasLimit RPC API to upgrade the target without going offline, but note that this will not continue to work after restart. The previous –miner.gastarget flag will be deprecated after the London upgrade, and its value will be ignored.

Example: If you are using –miner.gaslimit to vote for a gas limit of 20M, and the actual block gas limit is 20M. When the London upgrade starts, the block gas limit will be adjusted to 40M, but if you continue to use the same –miner.gaslimit setting, you will also vote for 20M. Therefore, at some point after the fork, you need to set your –miner.gaslimit to twice the original value to ensure that the gas limit remains at 40M gas.

  • For wallet providers: EIP-1559’s transaction price default calculation algorithm (eth_maxPriorityFeePerGas) still follows the old mechanism. Set max priority fee to the effective price paid on the network minus the current base fee; set max fee to priority fee + 2x base fee. This ensures that after the London transition period, if the user has no clear objections, the total price paid per gas remains unchanged.

In addition, Geth has released a new eth_feeHistory (blocks, head, percentiles) API terminal, which users can use to inquire about the most recent data about the amount of tips paid to miners and transaction burn fees. It is recommended that the wallet use this terminal to give users multiple fee options (#23033).

  • Note for JSON-RPC users: After the fork starts, eth_sendTransaction and eth_fillTransaction will create EIP-1559-style transactions by default.
  • Note to users bound to Go/Java/ObjC contracts: After the fork starts, accounts/abi/bind will automatically create a 1559-style transaction. To use EIP-1559 in an application written in Go language, please remember to upgrade the go-ethereum module dependency to v1.10.4 in your application’s go.mod file. (#23038)
  • Note to ethclient users: If you use the ethclient package to send transactions and want to use the new fee model brought by EIP-1559, you must modify your code and use types.NewTx(&types.DynamicFeeTx{…}) to create the transaction. In order to know whether the fork has started and whether the new transaction type is available, just check whether the BaseFee field of the latest block header is non-zero.

 

Posted by:CoinYuppie,Reprinted with attribution to:https://coinyuppie.com/ethereum-mainnet-london-upgrade-announcement/
Coinyuppie is an open information publishing platform, all information provided is not related to the views and positions of coinyuppie, and does not constitute any investment and financial advice. Users are expected to carefully screen and prevent risks.

Like (0)
Donate Buy me a coffee Buy me a coffee
Previous 2021-08-01 08:25
Next 2021-08-01 08:33

Related articles