From d4175c2eb4ec32a81f0bd89da3c69fdf703cd12b Mon Sep 17 00:00:00 2001 From: Valery Piashchynski Date: Sat, 19 Aug 2023 12:54:58 +0200 Subject: [PATCH] fix: missed first stream frame Signed-off-by: Valery Piashchynski --- pool/static_pool/workers_pool.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pool/static_pool/workers_pool.go b/pool/static_pool/workers_pool.go index 2f6ead5..0811ffd 100644 --- a/pool/static_pool/workers_pool.go +++ b/pool/static_pool/workers_pool.go @@ -230,6 +230,9 @@ begin: sp.ww.Release(w) }() + // send the initial frame + resp <- newPExec(rsp, nil) + // stream iterator for { select { @@ -241,14 +244,15 @@ begin: } runtime.Goexit() default: - pld, next, err := w.StreamIter() - if err != nil { - resp <- newPExec(nil, err) // exit from the goroutine + pld, next, errI := w.StreamIter() + if errI != nil { + resp <- newPExec(nil, errI) // exit from the goroutine runtime.Goexit() } resp <- newPExec(pld, nil) if !next { + // we've got the last frame runtime.Goexit() } }