Uploaded image for project: 'Jackrabbit Content Repository'
  1. Jackrabbit Content Repository
  2. JCR-3673

ChildAxisQuery#advance method results in IllegalArgumentException through #indexIsValid method

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 2.6.4, 2.7.2
    • None
    • None

    Description

      When ChildAxisQuery#advance is invoked, then the following while loop:

      while (nextDoc > -1 && !indexIsValid(nextDoc)) {
      nextDoc();
      }

      easily results in stacktrace below. This is because nextDoc returns NO_MORE_DOCS (Integer.MAX_VALUE) in case there are no hits any more, which results in IllegalArgumentException in indexIsValid

      java.lang.IllegalArgumentException: docID must be >= 0 and < maxDoc=3
      (got docID=2147483158)
      at org.apache.lucene.index.SegmentReader.document(SegmentReader.java:490)
      at org.apache.lucene.index.DirectoryReader.document(DirectoryReader.java:568)
      at org.apache.lucene.index.FilterIndexReader.document(FilterIndexReader.java:186)
      at org.apache.jackrabbit.core.query.lucene.CachingIndexReader.document(CachingIndexReader.java:291)
      at org.apache.lucene.index.FilterIndexReader.document(FilterIndexReader.java:186)
      at org.apache.lucene.index.FilterIndexReader.document(FilterIndexReader.java:186)
      at org.apache.lucene.index.MultiReader.document(MultiReader.java:252)
      at org.apache.lucene.index.FilterIndexReader.document(FilterIndexReader.java:186)
      at org.apache.jackrabbit.core.query.lucene.ChildAxisQuery$ChildAxisScorer.indexIsValid(ChildAxisQuery.java:488)
      at org.apache.jackrabbit.core.query.lucene.ChildAxisQuery$ChildAxisScorer.advance(ChildAxisQuery.java:433)

      Attachments

        Activity

          People

            aschrijvers Ard Schrijvers
            aschrijvers Ard Schrijvers
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: