ETCEngine.verifyHeaderWorker¶
| Source (upstream pre-purge) | Current | |
|---|---|---|
| File | consensus/ethash/consensus.go |
engine.go |
| Symbol | Ethash.verifyHeaderWorker |
ETCEngine.verifyHeaderWorker |
| Ref | dde2da0ef~1 |
etc/v1.17.3-full-node |
Adapted: removed unused unixNow and seals parameters.
3-way merge — purge → getc ← upstream¶
pre-purge≈ adapted (origin inferred by similarity)fork-only
// verifyHeaderWorker is the parallel verification worker, adapted from
// pre-purge ethash.verifyHeaderWorker (dde2da0ef~1).
func (e *ETCEngine) verifyHeaderWorker(chain consensus.ChainHeaderReader, headers []*types.Header, index int, unixNow int64) error {
↗ var parent *types.Header
if index == 0 {
parent = chain.GetHeader(headers[0].ParentHash, headers[0].Number.Uint64()-1)
} else if headers[index-1].Hash() == headers[index].ParentHash {
parent = headers[index-1]
}
if parent == nil {
return consensus.ErrUnknownAncestor
}
≈ return e.verifyHeader(chain, headers[index], parent, true, unixNow)
↗}
core-geth validation — +4 -2
| | | |---|---| | File | [`consensus.go`](https://github.com/etclabscore/core-geth/blob/v1.12.20/consensus/ethash/consensus.go) | | Symbol | `Ethash.verifyHeaderWorker` | | Ref | `v1.12.20` |--- a/core-geth/consensus/ethash/consensus.go
+++ b/etc/consensus/etc/engine.go
@@ -1,4 +1,6 @@
-func (ethash *Ethash) verifyHeaderWorker(chain consensus.ChainHeaderReader, headers []*types.Header, seals []bool, index int, unixNow int64) error {
+// verifyHeaderWorker is the parallel verification worker, adapted from
+// pre-purge ethash.verifyHeaderWorker (dde2da0ef~1).
+func (e *ETCEngine) verifyHeaderWorker(chain consensus.ChainHeaderReader, headers []*types.Header, index int, unixNow int64) error {
var parent *types.Header
if index == 0 {
parent = chain.GetHeader(headers[0].ParentHash, headers[0].Number.Uint64()-1)
@@ -8,5 +10,5 @@
if parent == nil {
return consensus.ErrUnknownAncestor
}
- return ethash.verifyHeader(chain, headers[index], parent, false, seals[index], unixNow)
+ return e.verifyHeader(chain, headers[index], parent, true, unixNow)
}