Skip to content
This repository has been archived by the owner on Oct 18, 2023. It is now read-only.

Commit

Permalink
safeAndFinalizedBlocksAreCanonical -> writeForkChoiceHashes (ledgerwa…
Browse files Browse the repository at this point in the history
…tch#4655)

* safeAndFinalizedBlocksAreCanonical -> writeForkChoiceHashes

* fix
  • Loading branch information
yperbasis committed Jul 6, 2022
1 parent b84867f commit 71525fa
Showing 1 changed file with 14 additions and 13 deletions.
27 changes: 14 additions & 13 deletions eth/stagedsync/stage_headers.go
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ func HeadersPOS(
return nil
}

func safeAndFinalizedBlocksAreCanonical(
func writeForkChoiceHashes(
forkChoice *engineapi.ForkChoiceMessage,
s *StageState,
tx kv.RwTx,
Expand All @@ -229,9 +229,7 @@ func safeAndFinalizedBlocksAreCanonical(
if err != nil {
return false, err
}
if safeIsCanonical {
rawdb.WriteForkchoiceSafe(tx, forkChoice.SafeBlockHash)
} else {
if !safeIsCanonical {
log.Warn(fmt.Sprintf("[%s] Non-canonical SafeBlockHash", s.LogPrefix()), "forkChoice", forkChoice)
return false, nil
}
Expand All @@ -242,14 +240,20 @@ func safeAndFinalizedBlocksAreCanonical(
if err != nil {
return false, err
}
if finalizedIsCanonical {
rawdb.WriteForkchoiceFinalized(tx, forkChoice.FinalizedBlockHash)
} else {
if !finalizedIsCanonical {
log.Warn(fmt.Sprintf("[%s] Non-canonical FinalizedBlockHash", s.LogPrefix()), "forkChoice", forkChoice)
return false, nil
}
}

rawdb.WriteForkchoiceHead(tx, forkChoice.HeadBlockHash)
if forkChoice.SafeBlockHash != (common.Hash{}) {
rawdb.WriteForkchoiceSafe(tx, forkChoice.SafeBlockHash)
}
if forkChoice.FinalizedBlockHash != (common.Hash{}) {
rawdb.WriteForkchoiceFinalized(tx, forkChoice.FinalizedBlockHash)
}

return true, nil
}

Expand All @@ -274,8 +278,7 @@ func startHandlingForkChoice(
if currentHeadHash == headerHash { // no-op
log.Debug(fmt.Sprintf("[%s] Fork choice no-op", s.LogPrefix()))
cfg.hd.BeaconRequestList.Remove(requestId)
rawdb.WriteForkchoiceHead(tx, forkChoice.HeadBlockHash)
canonical, err := safeAndFinalizedBlocksAreCanonical(forkChoice, s, tx, cfg)
canonical, err := writeForkChoiceHashes(forkChoice, s, tx, cfg)
if err != nil {
log.Warn(fmt.Sprintf("[%s] Fork choice err", s.LogPrefix()), "err", err)
return nil, err
Expand Down Expand Up @@ -349,8 +352,7 @@ func startHandlingForkChoice(
return nil, err
}
cfg.hd.BeaconRequestList.Remove(requestId)
rawdb.WriteForkchoiceHead(tx, forkChoice.HeadBlockHash)
canonical, err := safeAndFinalizedBlocksAreCanonical(forkChoice, s, tx, cfg)
canonical, err := writeForkChoiceHashes(forkChoice, s, tx, cfg)
if err != nil {
log.Warn(fmt.Sprintf("[%s] Fork choice err", s.LogPrefix()), "err", err)
return nil, err
Expand Down Expand Up @@ -416,9 +418,8 @@ func finishHandlingForkChoice(
if err := rawdb.WriteHeadHeaderHash(tx, forkChoice.HeadBlockHash); err != nil {
return err
}
rawdb.WriteForkchoiceHead(tx, forkChoice.HeadBlockHash)

canonical, err := safeAndFinalizedBlocksAreCanonical(forkChoice, s, tx, cfg)
canonical, err := writeForkChoiceHashes(forkChoice, s, tx, cfg)
if err != nil {
return err
}
Expand Down

0 comments on commit 71525fa

Please sign in to comment.