mirror of
https://gitee.com/milvus-io/milvus.git
synced 2026-01-07 19:31:51 +08:00
Fix false load success for partition load timeout but collection remains (#25379)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
This commit is contained in:
parent
b7b249770c
commit
2bed5bc461
@ -297,7 +297,7 @@ func (m *CollectionManager) CalculateLoadPercentage(collectionID UniqueID) int32
|
||||
}
|
||||
|
||||
func (m *CollectionManager) calculateLoadPercentage(collectionID UniqueID) int32 {
|
||||
collection, ok := m.collections[collectionID]
|
||||
_, ok := m.collections[collectionID]
|
||||
if ok {
|
||||
partitions := m.getPartitionsByCollection(collectionID)
|
||||
if len(partitions) > 0 {
|
||||
@ -305,10 +305,6 @@ func (m *CollectionManager) calculateLoadPercentage(collectionID UniqueID) int32
|
||||
return partition.LoadPercentage
|
||||
}) / int32(len(partitions))
|
||||
}
|
||||
if collection.GetLoadType() == querypb.LoadType_LoadCollection {
|
||||
// no partition exists
|
||||
return 100
|
||||
}
|
||||
}
|
||||
return -1
|
||||
}
|
||||
|
||||
@ -71,7 +71,7 @@ func (suite *CollectionManagerSuite) SetupSuite() {
|
||||
querypb.LoadType_LoadCollection,
|
||||
}
|
||||
suite.replicaNumber = []int32{1, 2, 3, 1}
|
||||
suite.colLoadPercent = []int32{0, 50, 100, 100}
|
||||
suite.colLoadPercent = []int32{0, 50, 100, -1}
|
||||
suite.parLoadPercent = map[int64][]int32{
|
||||
100: {0},
|
||||
101: {0, 100},
|
||||
|
||||
@ -132,7 +132,14 @@ func (ob *CollectionObserver) observeTimeout() {
|
||||
zap.Duration("loadTime", time.Since(partition.CreatedAt)))
|
||||
ob.meta.CollectionManager.RemovePartition(partition.GetPartitionID())
|
||||
ob.targetMgr.RemovePartition(partition.GetCollectionID(), partition.GetPartitionID())
|
||||
break
|
||||
}
|
||||
// all partition timeout, remove collection
|
||||
if len(ob.meta.CollectionManager.GetPartitionsByCollection(collection)) == 0 {
|
||||
log.Info("collection timeout due to all partition removed", zap.Int64("collection", collection))
|
||||
|
||||
ob.meta.CollectionManager.RemoveCollection(collection)
|
||||
ob.meta.ReplicaManager.RemoveCollection(collection)
|
||||
ob.targetMgr.RemoveCollection(collection)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user