mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-06 17:18:35 +08:00
fix: querynode upgrade from 2.5 get stucked (#42503)
issue: #42492 pr: #42502 - querynode graceful stop can be done if there's only L0 segment exists. Signed-off-by: chyezh <chyezh@outlook.com>
This commit is contained in:
parent
a1927e22a5
commit
a55c371261
@ -140,3 +140,10 @@ func WithLevel(level datapb.SegmentLevel) SegmentFilter {
|
||||
return segment.Level() == level
|
||||
})
|
||||
}
|
||||
|
||||
// WithoutLevel is the segment filter for without segment level.
|
||||
func WithoutLevel(level datapb.SegmentLevel) SegmentFilter {
|
||||
return SegmentFilterFunc(func(segment Segment) bool {
|
||||
return segment.Level() != level
|
||||
})
|
||||
}
|
||||
|
||||
@ -68,6 +68,7 @@ import (
|
||||
"github.com/milvus-io/milvus/pkg/v2/log"
|
||||
"github.com/milvus-io/milvus/pkg/v2/metrics"
|
||||
"github.com/milvus-io/milvus/pkg/v2/mq/msgdispatcher"
|
||||
"github.com/milvus-io/milvus/pkg/v2/proto/datapb"
|
||||
"github.com/milvus-io/milvus/pkg/v2/util/expr"
|
||||
"github.com/milvus-io/milvus/pkg/v2/util/hardware"
|
||||
"github.com/milvus-io/milvus/pkg/v2/util/lifetime"
|
||||
@ -479,12 +480,15 @@ func (node *QueryNode) Stop() error {
|
||||
channelNum = 0
|
||||
)
|
||||
if node.manager != nil {
|
||||
sealedSegments = node.manager.Segment.GetBy(segments.WithType(segments.SegmentTypeSealed))
|
||||
growingSegments = node.manager.Segment.GetBy(segments.WithType(segments.SegmentTypeGrowing))
|
||||
sealedSegments = node.manager.Segment.GetBy(segments.WithType(segments.SegmentTypeSealed), segments.WithoutLevel(datapb.SegmentLevel_L0))
|
||||
growingSegments = node.manager.Segment.GetBy(segments.WithType(segments.SegmentTypeGrowing), segments.WithoutLevel(datapb.SegmentLevel_L0))
|
||||
}
|
||||
if node.pipelineManager != nil {
|
||||
channelNum = node.pipelineManager.Num()
|
||||
}
|
||||
if len(sealedSegments) == 0 && len(growingSegments) == 0 && channelNum == 0 {
|
||||
break
|
||||
}
|
||||
|
||||
select {
|
||||
case <-timeoutCh:
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user