@@ -682,11 +682,11 @@ public void testRescoreOversampleQueryOverrides() {
682682 public void testFilterSearchThreshold () {
683683 List <Tuple <DenseVectorFieldMapper .ElementType , Function <Query , KnnSearchStrategy >>> cases = List .of (
684684 Tuple .tuple (FLOAT , q -> q instanceof PatienceKnnVectorQuery patienceKnnVectorQuery ?
685- patienceKnnVectorQuery . getSearchStrategy () : ((ESKnnFloatVectorQuery ) q ).getStrategy ()),
685+ null : ((ESKnnFloatVectorQuery ) q ).getStrategy ()),
686686 Tuple .tuple (BYTE , q -> q instanceof PatienceKnnVectorQuery patienceKnnVectorQuery ?
687- patienceKnnVectorQuery . getSearchStrategy () : ((ESKnnByteVectorQuery ) q ).getStrategy ()),
687+ null : ((ESKnnByteVectorQuery ) q ).getStrategy ()),
688688 Tuple .tuple (BIT , q -> q instanceof PatienceKnnVectorQuery patienceKnnVectorQuery ?
689- patienceKnnVectorQuery . getSearchStrategy () : ((ESKnnByteVectorQuery ) q ).getStrategy ())
689+ null : ((ESKnnByteVectorQuery ) q ).getStrategy ())
690690 );
691691 for (var tuple : cases ) {
692692 DenseVectorFieldType fieldType = new DenseVectorFieldType (
@@ -713,22 +713,24 @@ public void testFilterSearchThreshold() {
713713 DenseVectorFieldMapper .FilterHeuristic .FANOUT
714714 );
715715 KnnSearchStrategy strategy = tuple .v2 ().apply (query );
716- assertTrue (strategy instanceof KnnSearchStrategy .Hnsw );
717- assertThat (((KnnSearchStrategy .Hnsw ) strategy ).filteredSearchThreshold (), equalTo (0 ));
718-
719- query = fieldType .createKnnQuery (
720- VectorData .fromFloats (new float [] { 1 , 4 , 10 }),
721- 10 ,
722- 100 ,
723- 0f ,
724- null ,
725- null ,
726- null ,
727- DenseVectorFieldMapper .FilterHeuristic .ACORN
728- );
729- strategy = tuple .v2 ().apply (query );
730- assertTrue (strategy instanceof KnnSearchStrategy .Hnsw );
731- assertThat (((KnnSearchStrategy .Hnsw ) strategy ).filteredSearchThreshold (), equalTo (60 ));
716+ if (strategy != null ) {
717+ assertTrue (strategy instanceof KnnSearchStrategy .Hnsw );
718+ assertThat (((KnnSearchStrategy .Hnsw ) strategy ).filteredSearchThreshold (), equalTo (0 ));
719+
720+ query = fieldType .createKnnQuery (
721+ VectorData .fromFloats (new float []{1 , 4 , 10 }),
722+ 10 ,
723+ 100 ,
724+ 0f ,
725+ null ,
726+ null ,
727+ null ,
728+ DenseVectorFieldMapper .FilterHeuristic .ACORN
729+ );
730+ strategy = tuple .v2 ().apply (query );
731+ assertTrue (strategy instanceof KnnSearchStrategy .Hnsw );
732+ assertThat (((KnnSearchStrategy .Hnsw ) strategy ).filteredSearchThreshold (), equalTo (60 ));
733+ }
732734 }
733735 }
734736
0 commit comments