diff --git a/internal/datacoord/import_task.go b/internal/datacoord/import_task.go index b790c11a5a..8a8fef1eee 100644 --- a/internal/datacoord/import_task.go +++ b/internal/datacoord/import_task.go @@ -17,11 +17,11 @@ package datacoord import ( - "github.com/milvus-io/milvus/pkg/util/funcutil" - "github.com/milvus-io/milvus/pkg/util/paramtable" "google.golang.org/protobuf/proto" "github.com/milvus-io/milvus/internal/proto/datapb" + "github.com/milvus-io/milvus/pkg/util/funcutil" + "github.com/milvus-io/milvus/pkg/util/paramtable" "github.com/milvus-io/milvus/pkg/util/timerecord" ) diff --git a/internal/querynodev2/segments/segment_loader.go b/internal/querynodev2/segments/segment_loader.go index a0b6bd2ca9..73e8d980be 100644 --- a/internal/querynodev2/segments/segment_loader.go +++ b/internal/querynodev2/segments/segment_loader.go @@ -1395,8 +1395,9 @@ func (loader *segmentLoader) LoadDeltaLogs(ctx context.Context, segment Segment, return nil, err } blob := &storage.Blob{ - Key: bLog.GetLogPath(), - Value: value, + Key: bLog.GetLogPath(), + Value: value, + RowNum: bLog.EntriesNum, } return blob, nil }) diff --git a/internal/storage/data_codec.go b/internal/storage/data_codec.go index 1932371525..231343d5c5 100644 --- a/internal/storage/data_codec.go +++ b/internal/storage/data_codec.go @@ -23,6 +23,8 @@ import ( "math" "sort" + "github.com/samber/lo" + "github.com/milvus-io/milvus-proto/go-api/v2/schemapb" "github.com/milvus-io/milvus/internal/proto/etcdpb" "github.com/milvus-io/milvus/pkg/common" @@ -868,7 +870,13 @@ func (deleteCodec *DeleteCodec) Deserialize(blobs []*Blob) (partitionID UniqueID } var pid, sid UniqueID - result := &DeleteData{} + rowNums := lo.SumBy(blobs, func(blob *Blob) int64 { + return blob.RowNum + }) + result := &DeleteData{ + Pks: make([]PrimaryKey, 0, rowNums), + Tss: make([]uint64, 0, rowNums), + } deserializeBlob := func(blob *Blob) error { binlogReader, err := NewBinlogReader(blob.Value)