Hi everyone

In the following piece of code, Query test1 returns result, while Query test2 
does not return result!! Obviously “Toronto” is appearing in the doc. 
Can any one tell me what’s wrong? 

Thanks



private static void testRAMSpam() throws IOException
        {
                 RAMDirectory directory = new RAMDirectory();
                 Analyzer analyzer = new 
StandardAnalyzer(Version.LUCENE_4_10_0);
             IndexWriterConfig iwc = new 
IndexWriterConfig(Version.LUCENE_4_10_0, analyzer);

                 IndexWriter writer = new IndexWriter(directory,  iwc);
                 Document doc = new Document();
                 doc.add(new TextField("f",
                    "Project X took place in Waterloo. It was successful", 
Field.Store.YES));
                 writer.addDocument(doc);
                 
                 
                  doc = new Document();
                 doc.add(new TextField("f",
                "Project Y took place in Toronto. It was also good.", 
Field.Store.YES));
                 writer.addDocument(doc);
                 writer.close();
                 
                 IndexReader   reader = IndexReader.open(directory);
                 IndexSearcher   searcher = new IndexSearcher(reader);
                 
                 SpanTermQuery test1 = new SpanTermQuery(new Term("f", "good"));
                 System.out.println("test span query: " + test1.toString());
                 TopDocs results1  = searcher.search(test1, 100);
                 System.out.println("num result 1 : " + results1.totalHits);
                 
                 
                 SpanTermQuery test2 = new SpanTermQuery(new Term("f", 
"Toronto"));
                 System.out.println("test span query: " + test2.toString());
                 TopDocs results2  = searcher.search(test2, 100);
                 System.out.println("num result 2: " + results2.totalHits);
        }

Reply via email to