Skip to content

Commit

Permalink
enhance: [2.5] Skip loading pk index for sorted segment in loader (#3…
Browse files Browse the repository at this point in the history
…9438)

Cherry pick from master
pr: #39437

Related to #39339
Previous PR #39389 only skips append index into segment

Also related to #39428

Signed-off-by: Congqi Xia <[email protected]>
  • Loading branch information
congqixia authored Jan 20, 2025
1 parent 964000f commit 8e2e828
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions internal/querynodev2/segments/segment.go
Original file line number Diff line number Diff line change
Expand Up @@ -1017,6 +1017,19 @@ func (s *LocalSegment) LoadIndex(ctx context.Context, indexInfo *querypb.FieldIn
return err
}

// // if segment is pk sorted, user created indexes bring no performance gain but extra memory usage
if s.IsSorted() && fieldSchema.GetIsPrimaryKey() {
log.Info("skip loading index for pk field in sorted segment")
// set field index, preventing repeated loading index task
s.fieldIndexes.Insert(indexInfo.GetFieldID(), &IndexedFieldInfo{
FieldBinlog: &datapb.FieldBinlog{
FieldID: indexInfo.GetFieldID(),
},
IndexInfo: indexInfo,
IsLoaded: true,
})
}

return s.innerLoadIndex(ctx, fieldSchema, indexInfo, tr, fieldType)
}

Expand Down

0 comments on commit 8e2e828

Please sign in to comment.