miner: avoid unnecessary work after payload resolution

This commit is contained in:
jonny rhea 2026-03-03 09:13:20 -06:00
parent db7d3a4e0e
commit 30dd3dde58

View file

@ -260,6 +260,13 @@ func (miner *Miner) buildPayload(args *BuildPayloadArgs, witness bool) (*Payload
for {
select {
case <-timer.C:
// Select is random, so we need to check if the payload has been stopped
select {
case <-payload.stop:
log.Info("Stopping work on payload", "id", payload.id, "reason", "delivery")
return
default:
}
start := time.Now()
r := miner.generateWork(fullParams, witness)
if r.err == nil {