[ https://issues.apache.org/jira/browse/OAK-8898?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17056052#comment-17056052 ]
Thomas Mueller commented on OAK-8898: ------------------------------------- [~mkataria] I created a branch here: [https://github.com/oak-indexing/jackrabbit-oak/tree/OAK-8898] This allows to reproduce the issue (it is based on your test case). I also found the root cause, and a possible solution (see LucenePropertyIndex.OLD_FACET_PROVIDER). The problem seems to be that the reader is used after it is closed, by leaking the reference to the searcher to the LuceneFacetProvider in loadDocs(). I created a DelayedLuceneFacetProvider that opens acquires and releases the searcher when needed (acquireIndexNode, release in finally). It would be good if the test can reproduce the issue even without the delays; we can discuss this. > On querying, IndexReader failed with AlreadyClosedException > ----------------------------------------------------------- > > Key: OAK-8898 > URL: https://issues.apache.org/jira/browse/OAK-8898 > Project: Jackrabbit Oak > Issue Type: Bug > Reporter: Mohit Kataria > Priority: Major > > This is an intermittent issue, where on querying the code throws > AlreadyClosedException. > > {code:java} > Caused by: org.apache.lucene.store.AlreadyClosedException: this IndexReader > is closed > at org.apache.lucene.index.IndexReader.ensureOpen(IndexReader.java:262) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.lucene.index.BaseCompositeReader.document(BaseCompositeReader.java:108) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at org.apache.lucene.index.IndexReader.document(IndexReader.java:446) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.jackrabbit.oak.plugins.index.lucene.util.StatisticalSortedSetDocValuesFacetCounts.getAccessibleSampleCount(StatisticalSortedSetDocValuesFacetCounts.java:169) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.jackrabbit.oak.plugins.index.lucene.util.StatisticalSortedSetDocValuesFacetCounts.getTopChildren0(StatisticalSortedSetDocValuesFacetCounts.java:104) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.jackrabbit.oak.plugins.index.lucene.util.StatisticalSortedSetDocValuesFacetCounts.getTopChildren(StatisticalSortedSetDocValuesFacetCounts.java:70) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.lucene.facet.MultiFacets.getTopChildren(MultiFacets.java:52) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LuceneFacetProvider.getFacets(LucenePropertyIndex.java:1547) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.jackrabbit.oak.plugins.index.search.spi.query.FulltextIndex$FulltextResultRow.getFacets(FulltextIndex.java:353) > [org.apache.jackrabbit.oak-lucene:1.10.2] > at > org.apache.jackrabbit.oak.plugins.index.search.spi.query.FulltextIndex$FulltextPathCursor$2.getValue(FulltextIndex.java:472) > [org.apache.jackrabbit.oak-lucene:1.10.2] > ... 237 common frames omitted > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)