lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Fertig" <>
Subject Search returning documents matching a NOT range
Date Thu, 04 Nov 2010 16:52:05 GMT
I have an active lucene implementation that has been in place for a
couple years and was recently upgraded to the 3.02 branch. We are now
occasionally seeing documents returned from searches that should not be
returned. I have reduced the code and indexes to the smallest set
possible where I can still repeat the issue.


My test cases uses 2 indexes.  These indexes have been rebuilt/optimized
using Luke 1.0.1 to make them the smallest possible.  One index has 1
document, which is being returned by the query but should not.   The
other index has 1000 documents, none of which match the search criteria.
The query should bring back 0 results, but brings back 1.  I can zip and
mail the indexes if it would aid in helping track down this issue.




public class LuceneTest {

    static public void main(String[] args) {

        try {

            QueryParser queryParser = new QueryParser(Version.LUCENE_30,
"author", new KeywordAnalyzer());

            Query query = queryParser.parse("author:bentalcella AND NOT
publish_date:[20100601 TO 20100630]");

            Searchable[] searchables = new Searchable[2];

            searchables[0] = new IndexSearcher(new NIOFSDirectory(new
File("/home/dfertig/testIndexes/b1")), true);

            searchables[1] = new IndexSearcher(new NIOFSDirectory(new
File("/home/dfertig/testIndexes/m1")), true);

            Searcher searcher = new MultiSearcher(searchables);

            System.out.println("Query: " + query.toString());

            TopDocs topDocs =, 10);

            System.out.println("Results: " + topDocs.totalHits);

            for (int in = 0; in < topDocs.totalHits; in++) {

                Document document =

                System.out.println("publish_date: " +



        } catch (Exception e) {









  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message