beacon/engine, eth/catalyst: return UnknownParent error when parent doesn't exist

This commit is contained in:
Jihoon Song 2025-08-15 01:24:45 +09:00
parent 508ba1b8a2
commit 9d17826839
2 changed files with 5 additions and 0 deletions

View file

@ -85,6 +85,7 @@ var (
TooLargeRequest = &EngineAPIError{code: -38004, msg: "Too large request"} TooLargeRequest = &EngineAPIError{code: -38004, msg: "Too large request"}
InvalidParams = &EngineAPIError{code: -32602, msg: "Invalid parameters"} InvalidParams = &EngineAPIError{code: -32602, msg: "Invalid parameters"}
UnsupportedFork = &EngineAPIError{code: -38005, msg: "Unsupported fork"} UnsupportedFork = &EngineAPIError{code: -38005, msg: "Unsupported fork"}
UnknownParent = &EngineAPIError{code: -38006, msg: "Unknown parent"}
STATUS_INVALID = ForkChoiceResponse{PayloadStatus: PayloadStatusV1{Status: INVALID}, PayloadID: nil} STATUS_INVALID = ForkChoiceResponse{PayloadStatus: PayloadStatusV1{Status: INVALID}, PayloadID: nil}
STATUS_SYNCING = ForkChoiceResponse{PayloadStatus: PayloadStatusV1{Status: SYNCING}, PayloadID: nil} STATUS_SYNCING = ForkChoiceResponse{PayloadStatus: PayloadStatusV1{Status: SYNCING}, PayloadID: nil}

View file

@ -655,6 +655,10 @@ func (api *ConsensusAPI) GetInclusionListV1(parentHash common.Hash) (types.Inclu
return inclusionList, nil return inclusionList, nil
} }
if api.eth.BlockChain().GetBlockByHash(parentHash) == nil {
return nil, engine.UnknownParent
}
args := &miner.BuildInclusionListArgs{ args := &miner.BuildInclusionListArgs{
Parent: parentHash, Parent: parentHash,
} }