@Test public void testUpdate() throws IOException, ParserConfigurationException, SAXException, ParseException { Analyzer analyzer = getAnalyzer(); QueryParser parser = new QueryParser(Version.LUCENE_32, content, analyzer); Query allQ = parser.parse("*:*");
IndexWriter writer = getWriter(); IndexSearcher searcher = new IndexSearcher(IndexReader.open(writer, true)); TopDocs docs = searcher.search(allQ, 10); * assertEquals(0, docs.totalHits); // empty/no index* Document doc = getDoc(); writer.addDocument(doc); writer.commit(); docs = searcher.search(allQ, 10); * assertEquals(1,docs.totalHits); //it fails here. docs.totalHits equals 0* } What am I doing wrong here? If I initialize searcher with new IndexSearcher(directory) I'm told: org.apache.lucene.index.IndexNotFoundException: no segments* file found in org.apache.lucene.store.RAMDirectory@3caa4blockFactory=org.apache.lucene.store.SingleInstanceLockFactory@ed0220c: files: [] -- Regards, K. Gabriele --- unchanged since 20/9/10 --- P.S. If the subject contains "[LON]" or the addressee acknowledges the receipt within 48 hours then I don't resend the email. subject(this) ∈ L(LON*) ∨ ∃x. (x ∈ MyInbox ∧ Acknowledges(x, this) ∧ time(x) < Now + 48h) ⇒ ¬resend(I, this). If an email is sent by a sender that is not a trusted contact or the email does not contain a valid code then the email is not received. A valid code starts with a hyphen and ends with "X". ∀x. x ∈ MyInbox ⇒ from(x) ∈ MySafeSenderList ∨ (∃y. y ∈ subject(x) ∧ y ∈ L(-[a-z]+[0-9]X)).