lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael McCandless <luc...@mikemccandless.com>
Subject Re: ArrayIndexOutOfBoundsException from TermInfosReader.get (2.3.2)
Date Tue, 28 Apr 2009 08:22:15 GMT
This doesn't ring a bell (ie sounds like something new).

It's quite spooky.  Any hints on what led to this?  It looks like,
somehow, enumOffset is that massive negative number (-1030685), in
this code from TermInfosReader.java:

    // optimize sequential access: first try scanning cached enum w/o seeking
    SegmentTermEnum enumerator = getEnum();
    if (enumerator.term() != null                 // term is at or past current
	&& ((enumerator.prev() != null && term.compareTo(enumerator.prev())> 0)
	    || term.compareTo(enumerator.term()) >= 0)) {
      int enumOffset = (int)(enumerator.position/totalIndexInterval)+1;
      if (indexTerms.length == enumOffset	  // but before end of block
	  || term.compareTo(indexTerms[enumOffset]) < 0)
	return scanEnum(term);			  // no need to seek
    }

The only way I can see enumOffset becoming negative is if the
indexInterval stored in the tis file was negative, which is weird.

Can your user run CheckIndex on this index?  Can they also separately
run their app with assertions enabled for org.apache.lucene.*?  (This
turns on more interesting checks).

Is this easily repeated?

Mike

On Mon, Apr 27, 2009 at 7:35 PM, Daniel Noll <daniel@nuix.com> wrote:
> Hi all.
>
> One of our users has seen an error like this:
>
>> java.lang.ArrayIndexOutOfBoundsException: -1030685
>>        at
>> org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:210)
>>        at
>> org.apache.lucene.index.SegmentTermDocs.seek(SegmentTermDocs.java:54)
>>        at
>> org.apache.lucene.index.IndexReader.termDocs(IndexReader.java:668)
>>        at
>> org.apache.lucene.search.TermQuery$TermWeight.scorer(TermQuery.java:64)
>>        at
>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:143)
>>        at
>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:113)
>>        at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:100)
>>        at org.apache.lucene.search.Hits.<init>(Hits.java:67)
>
> I believe this was from Lucene 2.3.2.
>
> I can't see any records on JIRA related to this being fixed, and the problem
> hasn't been reproduced locally so it isn't easy to try 2.4.1 and see if it
> has been fixed, but was there a bug along these lines in 2.3.2?
>
> Daniel
>
>
> --
> Daniel Noll                            Forensic and eDiscovery Software
> Senior Developer                              The world's most advanced
> Nuix                                                email data
analysis
> http://nuix.com/                                and eDiscovery software
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message