@@ -166,10 +166,10 @@ func (api *ConsensusAPI) ForkchoiceUpdatedV1(update beacon.ForkchoiceStateV1, pa
166166 finalBlock := api .eth .BlockChain ().GetBlockByHash (update .FinalizedBlockHash )
167167 if finalBlock == nil {
168168 log .Warn ("Final block not available in database" , "hash" , update .FinalizedBlockHash )
169- return beacon .STATUS_INVALID , & beacon .InvalidForkChoiceState
169+ return beacon .STATUS_INVALID , beacon .InvalidForkChoiceState . With ( errors . New ( "final block not available in database" ))
170170 } else if rawdb .ReadCanonicalHash (api .eth .ChainDb (), finalBlock .NumberU64 ()) != update .FinalizedBlockHash {
171171 log .Warn ("Final block not in canonical chain" , "number" , block .NumberU64 (), "hash" , update .HeadBlockHash )
172- return beacon .STATUS_INVALID , & beacon .InvalidForkChoiceState
172+ return beacon .STATUS_INVALID , beacon .InvalidForkChoiceState . With ( errors . New ( "final block not in canonical chain" ))
173173 }
174174 // Set the finalized block
175175 api .eth .BlockChain ().SetFinalized (finalBlock )
@@ -179,21 +179,19 @@ func (api *ConsensusAPI) ForkchoiceUpdatedV1(update beacon.ForkchoiceStateV1, pa
179179 safeBlock := api .eth .BlockChain ().GetBlockByHash (update .SafeBlockHash )
180180 if safeBlock == nil {
181181 log .Warn ("Safe block not available in database" )
182- return beacon .STATUS_INVALID , & beacon .InvalidForkChoiceState
182+ return beacon .STATUS_INVALID , beacon .InvalidForkChoiceState . With ( errors . New ( "safe block not available in database" ))
183183 }
184184 if rawdb .ReadCanonicalHash (api .eth .ChainDb (), safeBlock .NumberU64 ()) != update .SafeBlockHash {
185185 log .Warn ("Safe block not in canonical chain" )
186- return beacon .STATUS_INVALID , & beacon .InvalidForkChoiceState
186+ return beacon .STATUS_INVALID , beacon .InvalidForkChoiceState . With ( errors . New ( "safe block not in canonical chain" ))
187187 }
188188 }
189-
190189 valid := func (id * beacon.PayloadID ) beacon.ForkChoiceResponse {
191190 return beacon.ForkChoiceResponse {
192191 PayloadStatus : beacon.PayloadStatusV1 {Status : beacon .VALID , LatestValidHash : & update .HeadBlockHash },
193192 PayloadID : id ,
194193 }
195194 }
196-
197195 // If payload generation was requested, create a new block to be potentially
198196 // sealed by the beacon client. The payload will be requested later, and we
199197 // might replace it arbitrarily many times in between.
@@ -202,14 +200,14 @@ func (api *ConsensusAPI) ForkchoiceUpdatedV1(update beacon.ForkchoiceStateV1, pa
202200 empty , err := api .eth .Miner ().GetSealingBlockSync (update .HeadBlockHash , payloadAttributes .Timestamp , payloadAttributes .SuggestedFeeRecipient , payloadAttributes .Random , true )
203201 if err != nil {
204202 log .Error ("Failed to create empty sealing payload" , "err" , err )
205- return valid (nil ), & beacon .InvalidPayloadAttributes
203+ return valid (nil ), beacon .InvalidPayloadAttributes . With ( err )
206204 }
207205 // Send a request to generate a full block in the background.
208206 // The result can be obtained via the returned channel.
209207 resCh , err := api .eth .Miner ().GetSealingBlockAsync (update .HeadBlockHash , payloadAttributes .Timestamp , payloadAttributes .SuggestedFeeRecipient , payloadAttributes .Random , false )
210208 if err != nil {
211209 log .Error ("Failed to create async sealing payload" , "err" , err )
212- return valid (nil ), & beacon .InvalidPayloadAttributes
210+ return valid (nil ), beacon .InvalidPayloadAttributes . With ( err )
213211 }
214212 id := computePayloadId (update .HeadBlockHash , payloadAttributes )
215213 api .localBlocks .put (id , & payload {empty : empty , result : resCh })
@@ -248,7 +246,7 @@ func (api *ConsensusAPI) GetPayloadV1(payloadID beacon.PayloadID) (*beacon.Execu
248246 log .Trace ("Engine API request received" , "method" , "GetPayload" , "id" , payloadID )
249247 data := api .localBlocks .get (payloadID )
250248 if data == nil {
251- return nil , & beacon .UnknownPayload
249+ return nil , beacon .UnknownPayload
252250 }
253251 return data , nil
254252}
0 commit comments