You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by Rasik Pandey <ra...@ajlsm.com> on 2002/09/19 12:01:31 UTC

RE : RE : TR : Possible Bug with MultiSearcher?

Otis,
There were two problems with the TestMultiSearcher test case you adapted
from the test program I sent. Please see the attached diff....The test
is sucessful if you make the necessary changes.

Thanks,
Rasik

-----Message d'origine-----
De : Otis Gospodnetic [mailto:otis_gospodnetic@yahoo.com] 
Envoyé : jeudi 19 septembre 2002 07:58
À : Lucene Developers List
Objet : Re: RE : TR : Possible Bug with MultiSearcher?


The TestMultiSearcher tests still fails for me, even after I apply your
changes to MultiSearcher.

Are you running 'ant test-unit' to verify that this is a valid fix?

Otis

--- Rasik Pandey <ra...@ajlsm.com> wrote:
> Developers,
> Attached is the diff for MultiSearcher which seems to correct these 
> bugs. I have not yet found any problems caused by these changes in 
> testing........but we will keep you informed!
> 
> Thanks,
> Rasik Pandey
> 
> -----Message d'origine-----
> De : Rasik Pandey [mailto:rasik.pandey@ajlsm.com]
> Envoyé : jeudi 12 septembre 2002 19:01
> À : lucene-dev@jakarta.apache.org
> Objet : TR : Possible Bug with MultiSearcher?
> 
> 
> Developers,
> Ok this is the latest test program to reproduce the original problem 
> reported. When I submitted the first test program, I was unable to 
> reproduce the original, however this new test program reproduces both 
> the original error and the second error which I reported in my last 
> mail. I believe the problem lies in the second line of the 
> SegmentsReader.readerIndex(int n) method. It doesn't compensate for 
> the fact that if "readers.length" returns an int of value "0", the 
> "hi" variable will be assigned a value of "-1", which is then returned

> to any
> calling methods!
> 
> 
> Hope this is helpful,
> Rasik Pandey
> 
> -----Message d'origine-----
> De : Rasik Pandey [mailto:rasik.pandey@ajlsm.com]
> Envoyé : lundi 9 septembre 2002 18:46
> À : 'Lucene Developers List'
> Objet : RE : Possible Bug with MultiSearcher?
> 
> 
> Lucene Developers,
> A test program is attached. I reiterate that the searcher for the 
> empty index must be added first. The exception thrown at the end of 
> the program is an ArrayIndexOutOfBoundsException. I will continue 
> trying to
> recreate the orginal exception which I reported, but I think this one
> may be related. I was unable to recreate the exception using
> RAMDirectory stores, but only two FSDirectory stores. It maybe
> necessary
> to delete these directories from time to time???? Please let me know
> if
> I can provide any more information.
> 
> Rasik Pandey
> 
> 
> -----Message d'origine-----
> De : Doug Cutting [mailto:cutting@lucene.com]
> Envoyé : jeudi 5 septembre 2002 23:22
> À : Lucene Developers List
> Objet : Re: Possible Bug with MultiSearcher?
> 
> 
> Can you please submit a complete, self-contained test program that
> demonstrates the problem?  That will make it much easier for someone
> to 
> debug and fix it.
> 
> Thanks,
> 
> Doug
> 
> Rasik Pandey wrote:
> > Hello,
> > I am getting the following exception when searching using a
> > MultiSearcher and the first Searchable added is an empty
> IndexSearcher
> 
> > with a segments file, the second is a normal IndexSearcher from a 
> > populated Index . I am able to reproduce this without fail. The 
> > exception is thrown when trying to retrieve a document from the
> Hits.
> > Is the exception really waranted, given there are hits in the
> second
> > index, I don't think the search should fail completely? When
> searching
> 
> > an individual index, adding it to a Multisearcher, and performing
> the
> > search causes no problems. Any help or suggestions would be
> > appreciated.
> > 
> > 
> > Please see org.apache.lucene.store.InputStream.java 192:46 for the
> > location where the Exception is generated.
> > 
> > 
> > Rasik Pandey
> > 
> > 
> > java.io.IOException: read past EOF
> > at org.apache.lucene.store.InputStream.refill(Unknown Source) at
> > org.apache.lucene.store.InputStream.readByte(Unknown Source) at 
> > org.apache.lucene.store.InputStream.readInt(Unknown Source) at 
> > org.apache.lucene.store.InputStream.readLong(Unknown Source) at 
> > org.apache.lucene.index.FieldsReader.doc(Unknown Source) at 
> > org.apache.lucene.index.SegmentReader.document(Unknown Source) at 
> > org.apache.lucene.search.IndexSearcher.doc(Unknown Source) at 
> > org.apache.lucene.search.MultiSearcher.doc(Unknown Source) at 
> > org.apache.lucene.search.Hits.doc(Unknown Source)
> > 
> > 
> > 
> > 
> > 
> > --
> > To unsubscribe, e-mail:
> <ma...@jakarta.apache.org>
> > For additional commands, e-mail:
> > <ma...@jakarta.apache.org>
> > 
> 
> 
> --
> To unsubscribe, e-mail: 
> <ma...@jakarta.apache.org>
> For additional commands, e-mail: 
> <ma...@jakarta.apache.org>
> > C:\Program Files\GNU\WinCvs 1.2\cvs.exe diff -r 1.4 -w
> MultiSearcher.java
> Index: MultiSearcher.java 
> ===================================================================
> RCS file:
>
/home/cvspublic/jakarta-lucene/src/java/org/apache/lucene/search/MultiSe
archer.java,v
> retrieving revision 1.4
> diff -w -r1.4 MultiSearcher.java
> 96,98c100,105
> <   public final Document doc(int n) throws IOException {
> <     int i = searcherIndex(n);			  // find
searcher index
> <     return searchers[i].doc(n - starts[i]);	  // dispatch to
> searcher
> ---
> >   public Document doc(int n) throws IOException {
> >     int i = searcherIndex(n);
> >     if (i < 0 || i > searchables.length)  //added this to ensure we
> have a valid index-rbp
> >         return null;    //added this to ensure we have a valid
> index-rbp  // find searcher index
> >     else
> >       return searchables[i].doc(n - starts[i]);	  // dispatch to
> searcher
> 113c120
> <       else if (n > midValue)
> ---
> >       else if (n >= midValue) //made this a ">=", to ensure that a
> valid index is found
> 
> CVS command finished execution
> 
> > --
> To unsubscribe, e-mail:
> <ma...@jakarta.apache.org>
> For additional commands, e-mail:
<ma...@jakarta.apache.org>


__________________________________________________
Do you Yahoo!?
New DSL Internet Access from SBC & Yahoo!
http://sbc.yahoo.com

--
To unsubscribe, e-mail:
<ma...@jakarta.apache.org>
For additional commands, e-mail:
<ma...@jakarta.apache.org>

Re: RE : RE : TR : Possible Bug with MultiSearcher?

Posted by Otis Gospodnetic <ot...@yahoo.com>.
Ah, yes, mea culpa, thanks.

Otis

--- Rasik Pandey <ra...@ajlsm.com> wrote:
> Otis,
> There were two problems with the TestMultiSearcher test case you
> adapted
> from the test program I sent. Please see the attached diff....The
> test
> is sucessful if you make the necessary changes.
> 
> Thanks,
> Rasik
> 
> -----Message d'origine-----
> De : Otis Gospodnetic [mailto:otis_gospodnetic@yahoo.com] 
> Envoy� : jeudi 19 septembre 2002 07:58
> � : Lucene Developers List
> Objet : Re: RE : TR : Possible Bug with MultiSearcher?
> 
> 
> The TestMultiSearcher tests still fails for me, even after I apply
> your
> changes to MultiSearcher.
> 
> Are you running 'ant test-unit' to verify that this is a valid fix?
> 
> Otis
> 
> --- Rasik Pandey <ra...@ajlsm.com> wrote:
> > Developers,
> > Attached is the diff for MultiSearcher which seems to correct these
> 
> > bugs. I have not yet found any problems caused by these changes in 
> > testing........but we will keep you informed!
> > 
> > Thanks,
> > Rasik Pandey
> > 
> > -----Message d'origine-----
> > De : Rasik Pandey [mailto:rasik.pandey@ajlsm.com]
> > Envoy� : jeudi 12 septembre 2002 19:01
> > � : lucene-dev@jakarta.apache.org
> > Objet : TR : Possible Bug with MultiSearcher?
> > 
> > 
> > Developers,
> > Ok this is the latest test program to reproduce the original
> problem 
> > reported. When I submitted the first test program, I was unable to 
> > reproduce the original, however this new test program reproduces
> both 
> > the original error and the second error which I reported in my last
> 
> > mail. I believe the problem lies in the second line of the 
> > SegmentsReader.readerIndex(int n) method. It doesn't compensate for
> 
> > the fact that if "readers.length" returns an int of value "0", the 
> > "hi" variable will be assigned a value of "-1", which is then
> returned
> 
> > to any
> > calling methods!
> > 
> > 
> > Hope this is helpful,
> > Rasik Pandey
> > 
> > -----Message d'origine-----
> > De : Rasik Pandey [mailto:rasik.pandey@ajlsm.com]
> > Envoy� : lundi 9 septembre 2002 18:46
> > � : 'Lucene Developers List'
> > Objet : RE : Possible Bug with MultiSearcher?
> > 
> > 
> > Lucene Developers,
> > A test program is attached. I reiterate that the searcher for the 
> > empty index must be added first. The exception thrown at the end of
> 
> > the program is an ArrayIndexOutOfBoundsException. I will continue 
> > trying to
> > recreate the orginal exception which I reported, but I think this
> one
> > may be related. I was unable to recreate the exception using
> > RAMDirectory stores, but only two FSDirectory stores. It maybe
> > necessary
> > to delete these directories from time to time???? Please let me
> know
> > if
> > I can provide any more information.
> > 
> > Rasik Pandey
> > 
> > 
> > -----Message d'origine-----
> > De : Doug Cutting [mailto:cutting@lucene.com]
> > Envoy� : jeudi 5 septembre 2002 23:22
> > � : Lucene Developers List
> > Objet : Re: Possible Bug with MultiSearcher?
> > 
> > 
> > Can you please submit a complete, self-contained test program that
> > demonstrates the problem?  That will make it much easier for
> someone
> > to 
> > debug and fix it.
> > 
> > Thanks,
> > 
> > Doug
> > 
> > Rasik Pandey wrote:
> > > Hello,
> > > I am getting the following exception when searching using a
> > > MultiSearcher and the first Searchable added is an empty
> > IndexSearcher
> > 
> > > with a segments file, the second is a normal IndexSearcher from a
> 
> > > populated Index . I am able to reproduce this without fail. The 
> > > exception is thrown when trying to retrieve a document from the
> > Hits.
> > > Is the exception really waranted, given there are hits in the
> > second
> > > index, I don't think the search should fail completely? When
> > searching
> > 
> > > an individual index, adding it to a Multisearcher, and performing
> > the
> > > search causes no problems. Any help or suggestions would be
> > > appreciated.
> > > 
> > > 
> > > Please see org.apache.lucene.store.InputStream.java 192:46 for
> the
> > > location where the Exception is generated.
> > > 
> > > 
> > > Rasik Pandey
> > > 
> > > 
> > > java.io.IOException: read past EOF
> > > at org.apache.lucene.store.InputStream.refill(Unknown Source) at
> > > org.apache.lucene.store.InputStream.readByte(Unknown Source) at 
> > > org.apache.lucene.store.InputStream.readInt(Unknown Source) at 
> > > org.apache.lucene.store.InputStream.readLong(Unknown Source) at 
> > > org.apache.lucene.index.FieldsReader.doc(Unknown Source) at 
> > > org.apache.lucene.index.SegmentReader.document(Unknown Source) at
> 
> > > org.apache.lucene.search.IndexSearcher.doc(Unknown Source) at 
> > > org.apache.lucene.search.MultiSearcher.doc(Unknown Source) at 
> > > org.apache.lucene.search.Hits.doc(Unknown Source)
> > > 
> > > 
> > > 
> > > 
> > > 
> > > --
> > > To unsubscribe, e-mail:
> > <ma...@jakarta.apache.org>
> > > For additional commands, e-mail:
> > > <ma...@jakarta.apache.org>
> > > 
> > 
> > 
> > --
> > To unsubscribe, e-mail: 
> > <ma...@jakarta.apache.org>
> > For additional commands, e-mail: 
> > <ma...@jakarta.apache.org>
> > > C:\Program Files\GNU\WinCvs 1.2\cvs.exe diff -r 1.4 -w
> > MultiSearcher.java
> > Index: MultiSearcher.java 
> > ===================================================================
> > RCS file:
> >
>
/home/cvspublic/jakarta-lucene/src/java/org/apache/lucene/search/MultiSe
> archer.java,v
> > retrieving revision 1.4
> > diff -w -r1.4 MultiSearcher.java
> > 96,98c100,105
> > <   public final Document doc(int n) throws IOException {
> > <     int i = searcherIndex(n);			  // find
> searcher index
> > <     return searchers[i].doc(n - starts[i]);	  // dispatch to
> > searcher
> > ---
> > >   public Document doc(int n) throws IOException {
> > >     int i = searcherIndex(n);
> > >     if (i < 0 || i > searchables.length)  //added this to ensure
> we
> > have a valid index-rbp
> > >         return null;    //added this to ensure we have a valid
> > index-rbp  // find searcher index
> > >     else
> > >       return searchables[i].doc(n - starts[i]);	  // dispatch to
> > searcher
> > 113c120
> > <       else if (n > midValue)
> > ---
> > >       else if (n >= midValue) //made this a ">=", to ensure that
> a
> > valid index is found
> > 
> > CVS command finished execution
> > 
> > > --
> > To unsubscribe, e-mail:
> > <ma...@jakarta.apache.org>
> > For additional commands, e-mail:
> <ma...@jakarta.apache.org>
> 
> 
> __________________________________________________
> Do you Yahoo!?
> New DSL Internet Access from SBC & Yahoo!
> http://sbc.yahoo.com
> 
> --
> To unsubscribe, e-mail:
> <ma...@jakarta.apache.org>
> For additional commands, e-mail:
> <ma...@jakarta.apache.org>
> > C:\Program Files\GNU\WinCvs 1.2\cvs.exe diff -r 1.2 -w
> TestMultiSearcher.java
> Index: TestMultiSearcher.java
> ===================================================================
> RCS file:
>
/home/cvspublic/jakarta-lucene/src/test/org/apache/lucene/search/TestMultiSearcher.java,v
> retrieving revision 1.2
> diff -w -r1.2 TestMultiSearcher.java
> 182c182
> <         assertEquals(4, hits.length());
> ---
> >         assertEquals(4, hits2.length());
> 224c224
> <         assertEquals(3, hits.length());
> ---
> >         assertEquals(3, hits3.length());
> 
> CVS command finished execution
> 
> > --
> To unsubscribe, e-mail:  
> <ma...@jakarta.apache.org>
> For additional commands, e-mail:
<ma...@jakarta.apache.org>


__________________________________________________
Do you Yahoo!?
New DSL Internet Access from SBC & Yahoo!
http://sbc.yahoo.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>