From ff5b9a27b50cd02d77f272d56c388e2c35308cac Mon Sep 17 00:00:00 2001 From: idotalk Date: Wed, 15 Jul 2026 19:13:33 +0300 Subject: [PATCH] remove skiping state validation in parallel executions --- core/block_validator.go | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/core/block_validator.go b/core/block_validator.go index 142bdc2839..4fecfb9a2c 100644 --- a/core/block_validator.go +++ b/core/block_validator.go @@ -130,16 +130,10 @@ func (v *BlockValidator) ValidateState(block *types.Block, statedb *state.StateD header := block.Header() // When ParallelTxGroupingByStorageOverlap is enabled, Process may still differ // from the block builder in edge cases; skip strict gas equality in that mode. - if !ParallelTxGroupingByStorageOverlap { - if block.GasUsed() != res.GasUsed { - return fmt.Errorf("invalid gas used (remote: %d local: %d)", block.GasUsed(), res.GasUsed) - } - } else { - // print warning without returning an error - if block.GasUsed() != res.GasUsed { - fmt.Printf("expected error: invalid gas used (remote: %d local: %d)\n", block.GasUsed(), res.GasUsed) - } + if block.GasUsed() != res.GasUsed { + return fmt.Errorf("invalid gas used (remote: %d local: %d)", block.GasUsed(), res.GasUsed) } + // Validate the received block's bloom with the one derived from the generated receipts. // For valid blocks this should always validate to true. //