Skip to content

Commit d2b4378

Browse files
MB-65473: Adapt to change in bleve_index_api interface for VectorReader
Aligns with: - blevesearch/bleve_index_api#63 - blevesearch/bleve#2169
1 parent fa08ef7 commit d2b4378

File tree

3 files changed

+11
-16
lines changed

3 files changed

+11
-16
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ module github.com/blevesearch/sear
33
go 1.21
44

55
require (
6-
github.com/blevesearch/bleve_index_api v1.2.4
6+
github.com/blevesearch/bleve_index_api v1.2.5
77
github.com/blevesearch/vellum v1.1.0
88
)
99

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
github.com/bits-and-blooms/bitset v1.2.0 h1:Kn4yilvwNtMACtf1eYDlG8H77R07mZSPbMjLyS07ChA=
22
github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA=
3-
github.com/blevesearch/bleve_index_api v1.2.4 h1:XRk+wWtbNZSxKvW2bNg4fUpoc3XQDD63krBzB45fJDY=
4-
github.com/blevesearch/bleve_index_api v1.2.4/go.mod h1:rKQDl4u51uwafZxFrPD1R7xFOwKnzZW7s/LSeK4lgo0=
3+
github.com/blevesearch/bleve_index_api v1.2.5 h1:SNKUygu1GV7jTRoQtoASerWHRugrv1IUTEO4ai9uJ6Q=
4+
github.com/blevesearch/bleve_index_api v1.2.5/go.mod h1:rKQDl4u51uwafZxFrPD1R7xFOwKnzZW7s/LSeK4lgo0=
55
github.com/blevesearch/mmap-go v1.0.4 h1:OVhDhT5B/M1HNPpYPBKIEJaD0F3Si+CrEKULGCDPWmc=
66
github.com/blevesearch/mmap-go v1.0.4/go.mod h1:EWmEAOmdAS9z/pi/+Toxu99DnsbhG1TIxUoRmJw/pSs=
77
github.com/blevesearch/vellum v1.1.0 h1:CinkGyIsgVlYf8Y2LUQHvdelgXr6PYuvoDIajq6yR9w=

vector.go

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,14 @@ func (d *Document) interpretVectorIfApplicable(field index.Field) int {
3434
}
3535

3636
func (r *Reader) VectorReader(ctx context.Context, vector []float32,
37-
field string, k int64, searchParams json.RawMessage) (index.VectorReader, error) {
37+
field string, k int64, searchParams json.RawMessage,
38+
selector index.EligibleDocumentSelector) (index.VectorReader, error) {
39+
if selector != nil && len(selector.SegmentEligibleDocs(0)) == 0 {
40+
// if selector/filter is applicable but no eligible docs,
41+
// then current document does not qualify
42+
return NewVectorFieldReaderEmpty(), nil
43+
}
44+
3845
if r.s.doc == nil {
3946
return NewVectorFieldReaderEmpty(), nil
4047
}
@@ -55,18 +62,6 @@ func (r *Reader) VectorReader(ctx context.Context, vector []float32,
5562
return NewVectorFieldReaderMatch(dims), nil
5663
}
5764

58-
func (r *Reader) VectorReaderWithFilter(ctx context.Context, vector []float32,
59-
field string, k int64, searchParams json.RawMessage,
60-
filterIDs []index.IndexInternalID) (index.VectorReader, error) {
61-
// if no filterIDs, current document does not qualify (in the
62-
// single document index scenario)
63-
if len(filterIDs) == 0 {
64-
return NewVectorFieldReaderEmpty(), nil
65-
}
66-
67-
return r.VectorReader(ctx, vector, field, k, searchParams)
68-
}
69-
7065
// -----------------------------------------------------------------------------
7166

7267
type VectorFieldReader struct {

0 commit comments

Comments
 (0)