mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-07 09:38:39 +08:00
issue: #39937 Before PR #39552, whenever a segment was missing in either the `current target` or the `next target`, we would trigger `load segment` to recover the delegator. However, restoring only the missing segments in the `next target` is sufficient to advance the target and complete the recovery process. In PR #39552, we removed the scheduling of L0 segments along with this unnecessary `load segment` logic. However, this exposed a new issue: if the `current target` still has missing segments and there is a flaw in the `checkDelegatorDataReady` logic, it could block the recovery of a delegator that contains `offline segments`. Since `offline segments` are cleaned up asynchronously in this scenario, this PR removes their blocking effect on delegator recovery, ensuring a smoother failure recovery process. Signed-off-by: Wei Liu <wei.liu@zilliz.com>