nimbus-eth2/beacon_chain
Jacek Sieka 68247f81b3
Trusted node sync (#3209)
* Trusted node sync

Trusted node sync, aka checkpoint sync, allows syncing tyhe chain from a
trusted node instead of relying on a full sync from genesis.

Features include:

* sync from any slot, including the latest finalized slot
* backfill blocks either from the REST api (default) or p2p (#3263)

Future improvements:

* top up blocks between head in database and some other node - this
makes for an efficient backup tool
* recreate historical state to enable historical queries

* fixes

* load genesis from network metadata
* check checkpoint block root against state
* fix invalid block root in rest json decoding
* odds and ends

* retry looking for epoch-boundary checkpoint blocks
2022-01-17 10:27:08 +01:00
..
consensus_object_pools update sync committee gossip validation comments; spec URL updates (#3280) 2022-01-13 13:46:08 +00:00
eth1 Re-enable the HTTP support in Eth1Monitor 2022-01-16 18:26:21 +02:00
fork_choice time: spring cleaning (#3262) 2022-01-11 11:01:54 +01:00
gossip_processing update sync committee gossip validation comments; spec URL updates (#3280) 2022-01-13 13:46:08 +00:00
networking update 10 modules from using merge to bellatrix (#3272) 2022-01-12 15:50:30 +01:00
rpc state_sim: clean up attestation production (#3274) 2022-01-12 21:42:03 +01:00
spec Trusted node sync (#3209) 2022-01-17 10:27:08 +01:00
sync Trusted node sync (#3209) 2022-01-17 10:27:08 +01:00
validator_client time: spring cleaning (#3262) 2022-01-11 11:01:54 +01:00
validators time: spring cleaning (#3262) 2022-01-11 11:01:54 +01:00
.editorconfig Add .editorconfig file and remove trailing newlines 2021-09-14 12:12:49 +03:00
.gitignore Rename binaries; Mimic the original repo layout in the distribution 2020-11-09 11:38:52 +02:00
beacon_chain_db.nim Don't use GC memory for the initial beacon block summaries loading 2022-01-15 10:15:17 +02:00
beacon_chain_db_immutable.nim update sync committee gossip validation comments; spec URL updates (#3280) 2022-01-13 13:46:08 +00:00
beacon_clock.nim time: spring cleaning (#3262) 2022-01-11 11:01:54 +01:00
beacon_node.nim Implement #3129 (Optimized history traversals in the REST API) (#3219) 2022-01-05 15:49:10 +01:00
beacon_node_status.nim EH cleanup (#2455) 2021-03-26 07:52:01 +01:00
conf.nim Trusted node sync (#3209) 2022-01-17 10:27:08 +01:00
extras.nim use ForkedHashedBeaconState in StateData (#2634) 2021-06-11 20:51:46 +03:00
filepath.nim EH cleanup (#2455) 2021-03-26 07:52:01 +01:00
interop.nim bump `nim-stint` (#2969) 2021-10-14 14:13:51 +03:00
nim.cfg Revert writing backfill root to database (#3215) 2021-12-21 11:40:14 +01:00
nimbus_beacon_node.nim Trusted node sync (#3209) 2022-01-17 10:27:08 +01:00
nimbus_beacon_node.nim.cfg Revert writing backfill root to database (#3215) 2021-12-21 11:40:14 +01:00
nimbus_binary_common.nim time: spring cleaning (#3262) 2022-01-11 11:01:54 +01:00
nimbus_signing_node.nim Implementation of the Keymanager API (BETA) 2022-01-04 18:51:45 +02:00
nimbus_signing_node.nim.cfg Revert writing backfill root to database (#3215) 2021-12-21 11:40:14 +01:00
nimbus_validator_client.nim time: spring cleaning (#3262) 2022-01-11 11:01:54 +01:00
nimbus_validator_client.nim.cfg Revert writing backfill root to database (#3215) 2021-12-21 11:40:14 +01:00
sszdump.nim ncli_db: add putState, putBlock (#3096) 2021-11-18 13:02:43 +01:00
statediff.nim time: spring cleaning (#3262) 2022-01-11 11:01:54 +01:00
statusbar.nim switch result = foo to expression return; unexport rest of logtrace symbols (#2788) 2021-08-17 09:51:39 +00:00
trusted_node_sync.nim Trusted node sync (#3209) 2022-01-17 10:27:08 +01:00
version.nim Version 1.6.0 2022-01-14 13:52:06 +02:00