dungba88 commented on code in PR #13826:
URL: https://github.com/apache/lucene/pull/13826#discussion_r1776165179


##########
lucene/core/src/java/org/apache/lucene/search/knn/MultiLeafKnnCollector.java:
##########
@@ -58,7 +58,32 @@ public final class MultiLeafKnnCollector implements 
KnnCollector {
    */
   public MultiLeafKnnCollector(
       int k, BlockingFloatHeap globalSimilarityQueue, AbstractKnnCollector 
subCollector) {
-    this.greediness = DEFAULT_GREEDINESS;
+    this(k, DEFAULT_GREEDINESS, DEFAULT_INTERVAL, globalSimilarityQueue, 
subCollector);
+  }
+
+  /**
+   * Create a new MultiLeafKnnCollector.
+   *
+   * @param k the number of neighbors to collect
+   * @param greediness the greediness of the global search
+   * @param interval (by number of collected values) the interval to 
synchronize the local and
+   *     global queues
+   * @param globalSimilarityQueue the global queue of the highest similarities 
collected so far
+   * @param subCollector the local collector
+   */
+  public MultiLeafKnnCollector(
+      int k,
+      float greediness,
+      int interval,
+      BlockingFloatHeap globalSimilarityQueue,
+      AbstractKnnCollector subCollector) {
+    if (greediness <= 0 || greediness > 1) {

Review Comment:
   I'm wondering why greediness cannot be 0. If it's 0, then the 
nonCompetitiveQueue size will have the size of k, which means effectively 
disable the global queue (but someone could want that for maximum recall?). 
Even if we disallow 0, someone can still work around by passing a very small 
positive value (0.0...1), then it will be effectively 0 due to the round?



-- 
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.

To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


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

Reply via email to