Hi, This is not a bug in Lucene 4.0. This behavior is unchanged since Lucene 2.9/3.0, you just don't read javadocs and you just don't seem to understand the changes since Lucene 2.9.
I just repeat one final time: Collector is a low level search component in Lucene and was introduced in Lucene 2.9 to replace the old "HitCollector". So if you upgrade your code to use Collector instead of HitCollector (like your ancient Lucene from 2.4), you have to respect the new semantics that are *different* to old HitCollector. Collector works with low-level atomic readers (also in Lucene 3.x), the calls to the "collect(int)" method are *not* using global document IDs, so using a IndexReader from outside does not work and will never work - PERIOD: The document IDs are only *relative* to the atomic reader that was passed to the collector by setNextReader() before a sequence of collect() calls. To make global docIds out of it, you may use readerContext.docBase, but this is slower than using the low-level atomic reader. Uwe ----- Uwe Schindler H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de eMail: u...@thetaphi.de > -----Original Message----- > From: saisantoshi [mailto:saisantosh...@gmail.com] > Sent: Thursday, February 28, 2013 10:55 PM > To: java-user@lucene.apache.org > Subject: RE: TopDocCollector vs TopScoreDocCollector (semantics changed in > 4.0, not backward comptabile) > > Thanks a lot. Really appreciate your help here. > > I have read through the document and understand that the IndexReader > uses sub readers (to look into the index files) and AtomicReader does not. > But how does this affect from the search stand point of view. I think search > results should be consistent for both the readers. > > It happened to be my case that the search was behaving weird ( returning > incorrect Documents) until I am using the IndexReader and started to work > fine when I changed it back to "AtomicReader". Not sure if this has solved > the problem by changing it to AtomicReader? This seems to be a bug in the > IndexReader in 4.0 > > // indexReader.document(doc) is giving incorrect result in 4.0 > > // atomicReader.document(doc) is giving the correct result. > > > > -- > View this message in context: > http://lucene.472066.n3.nabble.com/TopDocCollector-vs- > TopScoreDocCollector-semantics-changed-in-4-0-not-backward-comptabile- > tp4035806p4043788.html > Sent from the Lucene - Java Users mailing list archive at Nabble.com. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-user-h...@lucene.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org