diff --git a/internal/masterservice/task.go b/internal/masterservice/task.go index 269397618981ecc011c086a86e626d10f7c613e2..475b35cbc1726f681bfdb40ca4dd54bb55553550 100644 --- a/internal/masterservice/task.go +++ b/internal/masterservice/task.go @@ -565,13 +565,21 @@ func (t *ShowSegmentReqTask) Execute() error { if err != nil { return err } + exist := false for _, partID := range coll.PartitionIDs { - partMeta, err := t.core.MetaTable.GetPartitionByID(partID) - if err != nil { - return err + if partID == t.Req.PartitionID { + exist = true + break } - t.Rsp.SegmentIDs = append(t.Rsp.SegmentIDs, partMeta.SegmentIDs...) } + if !exist { + return errors.Errorf("partition id = %d not belong to collection id = %d", t.Req.PartitionID, t.Req.CollectionID) + } + partMeta, err := t.core.MetaTable.GetPartitionByID(t.Req.PartitionID) + if err != nil { + return err + } + t.Rsp.SegmentIDs = append(t.Rsp.SegmentIDs, partMeta.SegmentIDs...) return nil }