Ethereum Improvement Proposal (EIP) 7639, also known as the History Expiry Proposal, introduces a significant step toward optimizing Ethereum's data storage requirements. This proposal primarily focuses on reducing the storage burden for Ethereum nodes by ceasing the serving of historical block data and receipts from before the Ethereum Merge (Paris upgrade).
Quick Links
- Why Is EIP-7639 Important?
- What Changes Does EIP-7639 Propose?
- How Will it Work
- Handling Compatability
- Backwards Compatibility
- Real-Life Analogy
Why Is EIP-7639 Important?
Ethereum nodes are like libraries that store all the history of Ethereum transactions. However, this history is growing too big to handle! As of 2024:
- 500 GB of data is stored by nodes.
- 400 GB of this comes from before the Paris upgrade (when Ethereum switched to PoS).
Ethereum nodes currently store huge amounts of historical data, including block bodies and receipts from before the Merge (the switch to Proof of Stake). This data occupies hundreds of gigabytes, contributing significantly to the total size of a node’s storage—nearing the critical four-terabyte limit for many hard drives.
Without intervention, this growing storage requirement may make it harder for individuals and organizations to run Ethereum nodes, potentially harming decentralization.
Why Is this needed?
Think of Ethereum nodes like people carrying backpacks filled with books (transaction history). The more books they carry, the heavier their backpacks get, making it harder to move forward.
Goals of EIP-7639
- Lighten the Load: By ignoring older data, Ethereum nodes don’t have to store or share as much information.
- Future-Proof Ethereum: Ethereum plans to limit how much data nodes must store to keep them fast and efficient. This EIP is a first step in that direction.
What Changes Does EIP-7639 Propose?
-
Ceasing Support for Pre-Merge Data
Starting May 1, 2025, Ethereum clients will no longer be required to serve historical data (block bodies and receipts) from before the Merge over the DevP2P protocol. -
Introducing Protocol Version 71
A new protocol version (eth/71) will:
- Explicitly prohibit serving pre-Merge data.
- Signal to updated nodes that they are not expected to provide this data.
- Disk Space Optimization
By dropping support for older data, nodes can save several hundred gigabytes of disk space, making it easier to run nodes on more affordable hardware.
How Will It Work?
A new protocol version called eth/71 will be introduced. Nodes using this version will:
- Ignore old data: No requests or responses for block bodies or receipts from before the Paris upgrade (block number 15537393).
- Affect specific messages: Messages like
GetBlockBodies
andGetReceipts
will no longer support pre-PoS data.
Here’s a simple representation to visualize:
Handling Compatability
A key challenge with EIP-7639 is ensuring smooth operation for both updated and outdated clients:
-
Sub-Protocol for Historical Data
Some client teams suggested creating a separate sub-protocol to handle requests for historical data. This would prevent outdated clients from repeatedly asking for unavailable pre-Merge data.- Pros: Cleaner handling of compatibility issues.
- Cons: Risk of splitting the Ethereum protocol into distinct versions, making the network harder to manage.
-
Integrating Changes into Current Protocols
Other teams argued against introducing sub-protocols. Instead, they prefer integrating updates into the main protocol (eth/71) to avoid bifurcation.
Read more discussions from the ACDE 201: All Core Devs Meeting #201
Backwards Compatibility
This EIP does come with a trade-off:
- Full Syncing: New nodes can’t sync all the way back to the Genesis block using the network anymore. They’ll need to get older data from somewhere else, like a snapshot or a trusted archive node.
Think of it like joining a game where you can’t rewind all the way to the start—you’ll have to get the early moves from someone else!
Real-Life Analogy
Imagine Ethereum is a huge library with every book ever published. The librarian decides to stop lending books published before 2015.
- If you want an old book, you’ll need to visit a historical archive.
- For current books, the library works faster and better because it isn’t overwhelmed.
Feel free to share your thoughts or questions here we’d love to hear from you!
Disclaimer: The information contained in this website is for general informational purposes only. The content provided on this website, including articles, blog posts, opinions, and analysis related to blockchain technology and cryptocurrencies, is not intended as financial or investment advice. The website and its content should not be relied upon for making financial decisions. Read full disclaimer and privacy Policy.
For Press Releases, project updates and guest posts publishing with us, email to contact@etherworld.co.
Subscribe to EtherWorld YouTube channel for ELI5 content.
Share if you like the content. Donate at avarch.eth
You've something to share with the blockchain community, join us on Discord!