From 7dca7ef4d0ef8c690118894e80e4be28c6e876b4 Mon Sep 17 00:00:00 2001 From: Zhen Ye Date: Thu, 8 May 2025 14:50:53 +0800 Subject: [PATCH] fix: empty growing segment cannot be recovered by streamingnode (#41666) issue: #41665 Signed-off-by: chyezh --- internal/datacoord/handler.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/datacoord/handler.go b/internal/datacoord/handler.go index 21053cdd67..f27d3b55bc 100644 --- a/internal/datacoord/handler.go +++ b/internal/datacoord/handler.go @@ -79,7 +79,9 @@ func (h *ServerHandler) GetDataVChanPositions(channel RWChannel, partitionID Uni ) for _, s := range segments { if (partitionID > allPartitionID && s.PartitionID != partitionID) || - (s.GetStartPosition() == nil && s.GetDmlPosition() == nil) { + (s.GetState() != commonpb.SegmentState_Growing && s.GetStartPosition() == nil && s.GetDmlPosition() == nil) { + // empty growing segment don't have dml position and start position + // and it should be recovered for streamingnode, so we add the state-filter here. continue } if s.GetIsImporting() {