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

Adrien Grand commented on LUCENE-9003:
--------------------------------------

That works for me too. And I'd move back to the current approach on Java 8 
which doesn't support the opaque memory mode?

> Should FilterDirectoryReader compute numDocs lazily?
> ----------------------------------------------------
>
>                 Key: LUCENE-9003
>                 URL: https://issues.apache.org/jira/browse/LUCENE-9003
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Adrien Grand
>            Priority: Minor
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> FilterDirectoryReader extends BaseCompositeReader, which computes both maxDoc 
> and numDocs eagerly in its constructor by summing up these values across all 
> sub leaves.
> This is problematic for readers that hide additional documents. Computing 
> numDocs on such leaf readers usually requires iterating over all live 
> documents to count them. This makes creating a FilterDirectoryReader on top 
> run in linear time, which has caused several performance bugs to us over 
> time. This is especially frustrating given that numDocs is a rarely used 
> index statistic.
> I think computing numDocs lazily would be less surprising?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to