[Merge] Optimistic Sync: Stage 1 (#2686)

* Add payload verification status to fork choice

* Pass payload verification status to import_block

* Add valid back-propagation

* Add head safety status latch to API

* Remove ExecutionLayerStatus

* Add execution info to client notifier

* Update notifier logs

* Change use of "hash" to refer to beacon block

* Shutdown on invalid finalized block

* Tidy, add comments

* Fix failing FC tests

* Allow blocks with unsafe head

* Fix forkchoiceUpdate call on startup
This commit is contained in:
Paul Hauner
2021-10-07 22:24:57 +11:00
parent aa1d57aa55
commit 6dde12f311
17 changed files with 395 additions and 156 deletions

View File

@@ -664,7 +664,7 @@ where
// Issue the head to the execution engine on startup. This ensures it can start
// syncing.
if head.is_merge_complete {
if let Some(block_hash) = head.execution_payload_block_hash {
runtime_context.executor.spawn(
async move {
let result = BeaconChain::<
@@ -673,7 +673,7 @@ where
inner_execution_layer,
store,
head.finalized_checkpoint.root,
head.block_root,
block_hash,
)
.await;