[ 
https://issues.apache.org/jira/browse/LUCENE-10382?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17479487#comment-17479487
 ] 

Michael Sokolov commented on LUCENE-10382:
------------------------------------------

If we go with a {{{}Query{}}}-based filter, I guess it would still be possible 
to create a query wrapping a {{BitSetProducer}} (like TPBJQ), so it's not as if 
it's a hard decision preventing a customer providing a precomputed bitset - I 
think?

Also, relying on the cache makes sense to me, but I have some reservations. One 
issue we've found is that because it caches entire Query results, it can often 
miss significant caching opportunities, say when a complex {{BooleanQuery}} has 
a subset of clauses that can profitably be cached. Maybe the Query-writer can 
structure their queries to be more cache-friendly by nesting BQs? But then 
again they get rewritten and may be flattened prior to the cache seeing them.

Anyway maybe we can enhance the cache, but this is a separate issue;  +1 to 
move ahead using Query

> Allow KnnVectorQuery to operate over a subset of liveDocs
> ---------------------------------------------------------
>
>                 Key: LUCENE-10382
>                 URL: https://issues.apache.org/jira/browse/LUCENE-10382
>             Project: Lucene - Core
>          Issue Type: Improvement
>    Affects Versions: 9.0
>            Reporter: Joel Bernstein
>            Priority: Major
>
> Currently the KnnVectorQuery selects the top K vectors from all live docs.  
> This ticket will change the interface to make it possible for the top K 
> vectors to be selected from a subset of the live docs.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

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

Reply via email to