Return-Path: Delivered-To: apmail-jakarta-lucene-user-archive@www.apache.org Received: (qmail 95891 invoked from network); 21 Apr 2004 18:41:34 -0000 Received: from daedalus.apache.org (HELO mail.apache.org) (208.185.179.12) by minotaur-2.apache.org with SMTP; 21 Apr 2004 18:41:34 -0000 Received: (qmail 19030 invoked by uid 500); 21 Apr 2004 18:41:04 -0000 Delivered-To: apmail-jakarta-lucene-user-archive@jakarta.apache.org Received: (qmail 18992 invoked by uid 500); 21 Apr 2004 18:41:03 -0000 Mailing-List: contact lucene-user-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Lucene Users List" Reply-To: "Lucene Users List" Delivered-To: mailing list lucene-user@jakarta.apache.org Received: (qmail 18923 invoked from network); 21 Apr 2004 18:41:03 -0000 Received: from unknown (HELO smtprelay01.ispgateway.de) (62.67.200.156) by daedalus.apache.org with SMTP; 21 Apr 2004 18:41:03 -0000 Received: (qmail 25637 invoked from network); 21 Apr 2004 18:41:06 -0000 Received: from unknown (HELO tcn.local) ([pbs]652696@[217.93.31.139]) (envelope-sender ) by smtprelay01.ispgateway.de (qmail-ldap-1.03) with AES256-SHA encrypted SMTP for ; 21 Apr 2004 18:41:06 -0000 Received: from localhost (localhost [127.0.0.1]) by tcn.local (Postfix) with ESMTP id D7D46C80 for ; Wed, 21 Apr 2004 20:41:13 +0200 (CEST) From: lucene@nitwit.de To: "Lucene Users List" Subject: Re: Searcher not aware of index changes Date: Wed, 21 Apr 2004 20:41:12 +0200 User-Agent: KMail/1.6.2 References: In-Reply-To: MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200404212041.13242.lucene@nitwit.de> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N On Wednesday 21 April 2004 19:20, Stephane James Vaucher wrote: > This is not normal behaviour. Normally using a new IndexSearcher should > reflect the modified state of your index. Could you post a more > informative bit of code? BTW Why can't Lucene care for it itself? Well, according to my logging it does create a new instance. I use only one instance of SessoinFacade: public class SearchFacade extends Observable { protected class IndexObserver implements Observer { private final Log log = LogFactory.getLog(getClass()); public Searcher indexSearcher; public IndexObserver() { newSearcher(); // init } public void update(Observable o, Object arg) { log.debug("Index has changed, creating new Searcher" ); newSearcher(); } private void newSearcher() { try { indexSearcher = new IndexSearcher(IndexReader.open(Configuration.LuceneIndex.MAIN)); } catch (IOException e) { log.error("Could not instantiate searcher: " + e); } } public Searcher getIndexSearcher() { return indexSearcher; } } private IndexObserver indexObserver; public SearchFacade() { addObserver(indexObserver = new IndexObserver()); } public void createIndex() { ... setChanged(); // index has changed notifyObservers(); } public Hits search(String query) { Searcher searcher = indexObserver.getIndexSearcher(); } } --------------------------------------------------------------------- To unsubscribe, e-mail: lucene-user-unsubscribe@jakarta.apache.org For additional commands, e-mail: lucene-user-help@jakarta.apache.org