The highly anticipated London upgrade is now ready to be deployed on the Ethereum testnets! The upgrade will first go live on Ropsten, at block 10499401, which is expected to happen around June 24, 2021.
This upgrade follows Berlin, which was activated only a few months ago on the Ethereum mainnet. By working on London while Berlin was being rolled out, client teams were able to release this network upgrade at record speed! The upgrade includes the following EIPs:
The Ethereum Cat Herders have published a blog post providing details on these EIPs.
It is important to note that EIP-1559, while compatible with the current transaction format, introduces changes to the block header, adds a new transaction type, includes new JSON RPC endpoints, and modifies client behavior in several areas (mining, transaction pool, etc.). It is highly recommended that projects familiarize themselves with the EIP. Additional resources related to EIP-1559 can be found here.
As of now, only the testnets (Ropsten, Goerli, Rinkeby) have scheduled the London upgrade. Once the upgrade has been successfully activated on these networks, a block will be set for the Ethereum mainnet and announced on this blog and in other channels.
The release schedule is as follows:
NetworkBlock NumberExpected DateRopsten10499401June 24, 2021Goerli5062605June 30, 2021Rinkeby8897988July 7, 2021MainnetTBD once testnets fork successfully.TBD once testnets fork successfully.
Note: the Kovan network will be upgraded at a later date, likely after the Mainnet block has passed.
Ethereum node operators should upgrade their nodes prior to the fork block on the networks they want to participate in. Due to block time variability, it is recommended to update several days before the expected date. See the section below for the appropriate client versions to upgrade to.
To ensure compatibility with the London upgrade, node operators need to upgrade their client version. The versions listed below, for each client, support London across test Ethereum networks. Each client will release another update once the mainnet fork block has been determined.
Note: the OpenEthereum client will be deprecated after the London upgrade. The team is collaborating with Erigon on a seamless transition for users. More information can be found here.
As an Ethereum user or Ether holder, do I need to take any action?
The upgrades mentioned in this post only affect the Ethereum testnets, not the Ethereum mainnet. If you only use the Ethereum mainnet, there is nothing you need to do at this time.
As a Ropsten miner or Goerli/Rinkeby validator, what do I need to do?
First, download the latest version of your Ethereum client listed in the table above. Then, manually adjust your gas limit target to twice its current value. This is because with the launch of London, the block size will double and EIP-1559 will keep blocks around 50% full.
For example, if you were previously a Ropsten miner targeting a block size of 8,000,000 gas, you will now need to target a 16,000,000 gas limit to maintain the same average number of transactions per block. Failure to update your gas limit target will result in a decrease in block size on the network. The table below provides details on the specific parameter to update based on your client.
As a non-validating or mining node operator, what do I need to do?
Download the latest version of your Ethereum client listed in the table above and stay informed about the mainnet upgrade announcement in the coming weeks.
What happens if I am a miner or node operator and I do not participate in the upgrade?
If you use an Ethereum client that is not updated to the latest version (listed above), your client will synchronize with the pre-fork blockchain after the upgrade takes place. You will be stuck on an incompatible chain that follows the old rules, and you will be unable to send Ether or operate on the post-upgrade Ethereum network.
What is a network upgrade in Ethereum-land?
A network upgrade refers to a change made to the underlying Ethereum protocol, implementing new rules to enhance the system. The decentralized nature of blockchain systems makes network upgrades more challenging. Upgrading a blockchain network requires cooperation and communication with the community, as well as the developers of various Ethereum clients, to ensure a smooth transition.
What happens during a network upgrade?
After the community reaches a consensus on the desired changes to be included in the upgrade, the protocol changes are implemented in different Ethereum clients such as geth, Erigon, Besu, and Nethermind. These protocol changes are activated at a specific block number. Nodes that have not upgraded to the new ruleset will remain on the old chain where the previous rules still apply.
After Istanbul, we ran out of names for our planned network upgrades. So, we decided to use Devcon city names for upgrades, and that’s how we ended up with London, following the Berlin Devcon 0.
A huge thank you to everyone involved in the research, planning, implementation, testing, debugging, fixing, re-testing, and deployment of London 😁🇬🇧
Special shoutout to Henry Be for the cover image of this post!
This is a rapidly evolving and highly technical field. If you choose to implement the recommendations mentioned in this post and continue to participate, make sure you fully understand how it affects you. Understand that there are risks involved, including unexpected bugs. By choosing to implement these recommendations, you assume the risks and consequences. This post and recommendations do not constitute any kind of sale and do not provide any warranties related to the Ethereum network or the Ethereum clients mentioned herein.