You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@solr.apache.org by ho...@apache.org on 2024/01/30 21:00:37 UTC

(solr) 04/05: demonstrate post-filters are excluded from fq slurping

This is an automated email from the ASF dual-hosted git repository.

hossman pushed a commit to branch jira/SOLR-16858
in repository https://gitbox.apache.org/repos/asf/solr.git

commit 0cbddc971e49cf4e60bc1252374409fff6afe9e9
Author: Chris Hostetter <ho...@apache.org>
AuthorDate: Mon Jan 29 16:19:30 2024 -0700

    demonstrate post-filters are excluded from fq slurping
---
 .../test/org/apache/solr/search/QueryEqualityTest.java   | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java b/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java
index 034da7f92ec..8eb1c3da71f 100644
--- a/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java
+++ b/solr/core/src/test/org/apache/solr/search/QueryEqualityTest.java
@@ -1350,8 +1350,10 @@ public class QueryEqualityTest extends SolrTestCaseJ4 {
     assertU(adoc(doc));
     assertU(commit());
 
+    final String qvec = "[1.0,2.0,3.0,4.0]";
+
     try (SolrQueryRequest req0 = req()) {
-      final String qvec = "[1.0,2.0,3.0,4.0]";
+
       // no filters
       final Query fqNull =
           assertQueryEqualsAndReturn(
@@ -1395,6 +1397,18 @@ public class QueryEqualityTest extends SolrTestCaseJ4 {
           QueryUtils.checkEqual(fqNull, fqNullOverride);
         }
       }
+
+      try (SolrQueryRequest reqPostFilter = req("fq", "{!tag=post frange cache=false l=0}9.9")) {
+        // global post-filter fq should always be ignored
+        final Query fqPostFilter =
+            assertQueryEqualsAndReturn(
+                "knn",
+                reqPostFilter,
+                "{!knn f=vector}" + qvec,
+                "{!knn f=vector includeTags=post}" + qvec);
+        QueryUtils.checkEqual(fqNull, fqPostFilter);
+      }
+
     } finally {
       delQ("id:0");
       assertU(commit());