From d0577cc8f349ef94f11328b2381082b2c1d211bf Mon Sep 17 00:00:00 2001 From: Congqi Xia Date: Fri, 24 May 2024 14:51:54 +0800 Subject: [PATCH] fix: Allocate new slice for each batch in streaming reader Related to #33268 Signed-off-by: Congqi Xia --- internal/storage/serde.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/internal/storage/serde.go b/internal/storage/serde.go index ba5256c6d13f..c75bf5aabc0b 100644 --- a/internal/storage/serde.go +++ b/internal/storage/serde.go @@ -588,9 +588,8 @@ func (deser *DeserializeReader[T]) Next() error { deser.pos = 0 deser.rec = deser.rr.Record() - if deser.values == nil { - deser.values = make([]T, deser.rec.Len()) - } + // allocate new slice preventing overwrite previous batch + deser.values = make([]T, deser.rec.Len()) if err := deser.deserializer(deser.rec, deser.values); err != nil { return err }