From fdc32a53ad9db441dd9be3fe51d6202b26015cf4 Mon Sep 17 00:00:00 2001 From: Felix Lange Date: Fri, 19 Sep 2025 15:22:51 +0200 Subject: [PATCH] core/txpool/blobpool: fix data race in conversionQueue --- core/txpool/blobpool/conversion.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/txpool/blobpool/conversion.go b/core/txpool/blobpool/conversion.go index d759c8ba4f..8046158711 100644 --- a/core/txpool/blobpool/conversion.go +++ b/core/txpool/blobpool/conversion.go @@ -18,6 +18,7 @@ package blobpool import ( "errors" + "slices" "sync/atomic" "time" @@ -130,10 +131,11 @@ func (q *conversionQueue) loop() { if done == nil { done, interrupt = make(chan struct{}), new(atomic.Int32) - tasks := cTasks + tasks := slices.Clone(cTasks) cTasks = cTasks[:0] go q.run(tasks, done, interrupt) } + case <-done: done, interrupt = nil, nil @@ -142,7 +144,7 @@ func (q *conversionQueue) loop() { return } interrupt.Store(1) - log.Info("Waiting background converter to exit") + log.Debug("Waiting for blob proof conversion to exit") <-done return }