FULL + BONSAI -> all trie logs but can't rollback or serve history over RPC (512 limit)
only useful if you don't trust fast sync block verification
does these users exist?
~ 1 month sync time - kind of infeasible?
FULL + BONSAI_ARCHIVE -> all trie logs and snapshots for performant rollback
works for everything other than eth_getProof
~ 1 month sync time - kind of infeasible?
FULL + FOREST is infeasible, months to sync and >> TB
May 1st - 4444s MVP
What is impact of some/most/all the network dropping pre-merge block bodies and receipts?
At the interop, Geth, Nethermind and Besu said they will drop the data after May 1st.
If we do nothing, we risk not having access to devp2p data in order to complete a sync. Just moving the checkpoint to the merge block (and enabling "post merge genesis" config) would technically work for dropping the whole block pre-merge, but wouldn't be spec compliant, similar to CHECKPOINT.
MVP solution…
Staking use case
CHECKPOINT @ [merge block] and back fill headers
Other options:
era1 but only store the headers
"geth init"-sub-command-style bootstrap of pre-merge headers using some as yet undefined data format we make available
do nothing and risk SNAP sync not working
MVP for May 1st
- move checkpoint and backfill headers
- assume current archive mode is already infeasible for mainnet
Next
What are the blockers for dropping headers by May 1st?
era1 for bonsai archive full sync?
semi automatic MVP
instruct user to download era1 from somewhere
subcommand to import era1 -> db
start client and should continue full sync
develop alternative archive sync (iterate on bonsai archive)
validator sync - as previously specfied, e.g. backfill blocks/receipts after starting to attest
Notes
EIP-7801
advantage: not needing to test a new stack since it's over devp2p
era1
Desirable to have canonical era1 distribution location (not github)