diff --git a/pkg/vm/engine/tae/mergesort/merger.go b/pkg/vm/engine/tae/mergesort/merger.go index 2b96b0486ec43..8f4a78031bee4 100644 --- a/pkg/vm/engine/tae/mergesort/merger.go +++ b/pkg/vm/engine/tae/mergesort/merger.go @@ -142,6 +142,8 @@ func newMerger[T comparable](host MergeTaskHost, lessFunc sort.LessFunc[T], sort } func (m *merger[T]) merge(ctx context.Context) error { + defer m.release() + for i := 0; i < m.objCnt; i++ { if ok, err := m.loadBlk(ctx, uint32(i)); !ok { if err == nil { @@ -156,7 +158,6 @@ func (m *merger[T]) merge(ctx context.Context) error { src: uint32(i), }) } - defer m.release() var releaseF func() for i := 0; i < m.objCnt; i++ {