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() {