Skip to content

Commit 6512be8

Browse files
committed
Return no match when no dimensions have been set
1 parent 29ca7a8 commit 6512be8

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

server/src/main/java/org/elasticsearch/index/mapper/vectors/DenseVectorFieldMapper.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import org.apache.lucene.search.FieldExistsQuery;
3636
import org.apache.lucene.search.KnnByteVectorQuery;
3737
import org.apache.lucene.search.KnnFloatVectorQuery;
38+
import org.apache.lucene.search.MatchNoDocsQuery;
3839
import org.apache.lucene.search.PatienceKnnVectorQuery;
3940
import org.apache.lucene.search.Query;
4041
import org.apache.lucene.search.join.BitSetProducer;
@@ -2530,6 +2531,9 @@ public Query createKnnQuery(
25302531
"to perform knn search on field [" + name() + "], its mapping must have [index] set to [true]"
25312532
);
25322533
}
2534+
if (dims == null) {
2535+
return new MatchNoDocsQuery("No data has been indexed for field [" + name() + "]");
2536+
}
25332537
KnnSearchStrategy knnSearchStrategy = heuristic.getKnnSearchStrategy();
25342538
return switch (getElementType()) {
25352539
case BYTE -> createKnnByteQuery(

0 commit comments

Comments
 (0)