gerlowskija commented on a change in pull request #1151: SOLR-13890: Add 
"top-level" DVTQ implementation
URL: https://github.com/apache/lucene-solr/pull/1151#discussion_r365315479
 
 

 ##########
 File path: solr/core/src/java/org/apache/solr/search/TermsQParserPlugin.java
 ##########
 @@ -88,7 +91,20 @@ Query makeFilter(String fname, BytesRef[] byteRefs) {
     docValuesTermsFilter {//on 4x this is FieldCacheTermsFilter but we use the 
5x name any way
       @Override
       Query makeFilter(String fname, BytesRef[] byteRefs) {
-        return new DocValuesTermsQuery(fname, byteRefs);//constant scores
+        // TODO Further tune this heuristic number
+        return (byteRefs.length > 700) ? new 
TopLevelDocValuesTermsQuery(fname, byteRefs) : new DocValuesTermsQuery(fname, 
byteRefs);
+      }
+    },
+    docValuesTermsFilterTopLevel {
+      @Override
+      Query makeFilter(String fname, BytesRef[] byteRefs) {
+        return new TopLevelDocValuesTermsQuery(fname, byteRefs);
 
 Review comment:
   I'd forgotten about this, done.
   
   FWIW I buy Joel's argument that most real-world use-cases are going to 
require `cache=false`.  But I worry that users who want caching will be bitten 
by this.  I guess it depends how hands-on you expect users to be with their 
query tuning.  For hands-off users, this change is best. But for hands-on 
users, we've just created a "gotcha".
   
   I'll make sure to add this to the ref-guide docs at the least.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to