You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Chetan Mehrotra (JIRA)" <ji...@apache.org> on 2015/03/15 06:46:38 UTC

[jira] [Updated] (OAK-2569) LuceneIndex#loadDocs can throw IllegalArgumentException

     [ https://issues.apache.org/jira/browse/OAK-2569?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chetan Mehrotra updated OAK-2569:
---------------------------------
    Fix Version/s: 1.4

> LuceneIndex#loadDocs can throw IllegalArgumentException
> -------------------------------------------------------
>
>                 Key: OAK-2569
>                 URL: https://issues.apache.org/jira/browse/OAK-2569
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: oak-lucene
>    Affects Versions: 1.1.6
>            Reporter: Alex Parvulescu
>             Fix For: 1.4
>
>
> It looks like in some cases a IllegalArgumentException will be thrown if the _nextBatchSize_ passed to the _searchAfter_ method call is smaller than the current searcher limit (_lastDoc.doc_).
> Stack trace for the failure:
> {code}
> java.lang.IllegalArgumentException: after.doc exceeds the number of documents in the reader: after.doc=387045 limit=386661
>  at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:442)
>  at org.apache.lucene.search.IndexSearcher.searchAfter(IndexSearcher.java:243)
>  at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndex$1.loadDocs(LuceneIndex.java:352)
>  at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndex$1.computeNext(LuceneIndex.java:292)
>  at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndex$1.computeNext(LuceneIndex.java:283)
>  at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
>  at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
>  at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndex$LucenePathCursor$1.hasNext(LuceneIndex.java:1055)
>  at com.google.common.collect.Iterators$7.computeNext(Iterators.java:645)
>  at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
>  at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
>  at org.apache.jackrabbit.oak.spi.query.Cursors$PathCursor.hasNext(Cursors.java:198)
>  at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndex$LucenePathCursor.hasNext(LuceneIndex.java:1076)
>  at org.apache.jackrabbit.oak.plugins.index.aggregate.AggregationCursor.fetchNext(AggregationCursor.java:88)
>  at org.apache.jackrabbit.oak.plugins.index.aggregate.AggregationCursor.hasNext(AggregationCursor.java:75)
>  at org.apache.jackrabbit.oak.spi.query.Cursors$IntersectionCursor.fetchNext(Cursors.java:389)
>  at org.apache.jackrabbit.oak.spi.query.Cursors$IntersectionCursor.hasNext(Cursors.java:381)
>  at org.apache.jackrabbit.oak.spi.query.Cursors$IntersectionCursor.fetchNext(Cursors.java:389)
>  at org.apache.jackrabbit.oak.spi.query.Cursors$IntersectionCursor.hasNext(Cursors.java:381)
>  at org.apache.jackrabbit.oak.spi.query.Cursors$IntersectionCursor.fetchNext(Cursors.java:389)
>  at org.apache.jackrabbit.oak.spi.query.Cursors$IntersectionCursor.hasNext(Cursors.java:381)
>  at org.apache.jackrabbit.oak.query.ast.SelectorImpl.next(SelectorImpl.java:401)
>  at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.fetchNext(QueryImpl.java:664)
>  at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.hasNext(QueryImpl.java:689)
>  at org.apache.jackrabbit.oak.query.FilterIterators$SortIterator.init(FilterIterators.java:203)
>  at org.apache.jackrabbit.oak.query.FilterIterators$SortIterator.hasNext(FilterIterators.java:237)
>  at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.fetch(QueryResultImpl.java:108)
>  at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.&lt;init&gt;(QueryResultImpl.java:104)
>  at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl.getRows(QueryResultImpl.java:91)
>  at org.apache.jackrabbit.commons.query.GQL.executeJcrQuery(GQL.java:440)
>  at org.apache.jackrabbit.commons.query.GQL.execute(GQL.java:434)
>  at org.apache.jackrabbit.commons.query.GQL.execute(GQL.java:327)
>  at org.apache.jackrabbit.commons.query.GQL.execute(GQL.java:310)
>  at org.apache.jackrabbit.commons.query.GQL.execute(GQL.java:296)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)