df (DuplicateFilter) is the second parameter in the searcher.search metod. >> ScoreDoc[] hits = searcher.search(q, df, 1000).scoreDocs;
This varians doesn't hit too: ScoreDoc[] hits = searcher.search(new FilteredQuery(tq, df), new QueryWrapperFilter(new TermQuery(new Term("text", "now"))), 1000).scoreDocs; Or: ScoreDoc[] hits = searcher.search(new FilteredQuery(tq, new QueryWrapperFilter(new TermQuery(new Term("text", "now")))), df, 1000).scoreDocs; 2010/5/31, Uwe Schindler <u...@thetaphi.de>: > Where is df (the DuplicateFilter) used in your code? > > ----- > Uwe Schindler > H.-H.-Meier-Allee 63, D-28213 Bremen > http://www.thetaphi.de > eMail: u...@thetaphi.de > >> -----Original Message----- >> From: Паша Минченков [mailto:char...@gmail.com] >> Sent: Monday, May 31, 2010 8:27 AM >> To: java-user@lucene.apache.org >> Subject: DuplicateFilter question >> >> Hi, >> >> Why DuplicateFilter doesn't work together with other filters? For example, > if >> a little remake of the test DuplicateFilterTest, then the impression that > the >> filter is not applied to other filters and first trims results: >> >> public void testKeepsLastFilter() >> throws Throwable { >> DuplicateFilter df = new DuplicateFilter(KEY_FIELD); >> df.setKeepMode(DuplicateFilter.KM_USE_LAST_OCCURRENCE); >> >> Query q = new ConstantScoreQuery(new ChainedFilter(new Filter[]{ >> new QueryWrapperFilter(tq), >> // new QueryWrapperFilter(new TermQuery(new Term("text", >> "out"))), // works right, it is the last document. >> new QueryWrapperFilter(new TermQuery(new Term("text", >> "now"))) // why it doesn't work? It is the third document. >> >> }, ChainedFilter.AND)); >> >> ScoreDoc[] hits = searcher.search(q, df, 1000).scoreDocs; >> >> assertTrue("Filtered searching should have found some matches", >> hits.length > 0); >> for (int i = 0; i < hits.length; i++) { >> Document d = searcher.doc(hits[i].doc); >> String url = d.get(KEY_FIELD); >> TermDocs td = reader.termDocs(new Term(KEY_FIELD, url)); >> int lastDoc = 0; >> while (td.next()) { >> lastDoc = td.doc(); >> } >> assertEquals("Duplicate urls should return last doc", lastDoc, >> hits[i].doc); >> } >> } >> >> -- >> С уважением, >> Минченков Павел >> >> --------------------------------------------------------------------- >> 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 > > -- С уважением, Минченков Павел --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org