I agree it's a bit of a strange design. It seems that there should be one class that handles all modifications of the index. Usually you'd only have one instance of this so you wouldn't need to open and close it all the time (I'm basically writing one of these classes myself to simplify my code. I'm sure other people have written a similar class). There should be another class that is responsible for searching. You may have multiple instances of this so you can have multiple headends searching the index.
The IndexWriter and IndexReader almost do this separation. It seems that if the IndexWriter had the delete functionality, instead of the IndexReader, things would be a lot simplier (from a synchronization standpoint). Maybe Otis, Erik or Doug could suggest why this may or may not be a good idea. -Reece -----Original Message----- From: Dror Matalon [mailto:[EMAIL PROTECTED] Sent: Wednesday, November 12, 2003 12:06 PM To: Lucene Users List Subject: Re: Reopen IndexWriter after delete? Which begs the question: why do you need to use an IndexReader rather than an IndexWriter to delete an item? On Tue, Nov 11, 2003 at 02:46:37PM -0800, Otis Gospodnetic wrote: > > 1). If I delete a term using an IndexReader, can I use an existing > > IndexWriter to write to the index? Or do I need to close and reopen > > the IndexWriter? > > No. You should close IndexWriter first, then open IndexReader, then > call delete, then close IndexReader, and then open a new IndexWriter. > > > 2). Is it safe to call IndexReader.delete(term) while an IndexWriter > > is > > writing? Or should I be synchronizing these two tasks so only one > > occurs at a time? > > No, it is not safe. You should close the IndexWriter, then delete the > document and close IndexReader, and then get a new IndexWriter and > continue writing. > > Incidentally, I just wrote a section about concurrency issues and about > locking in Lucene for the upcoming Lucene book. > > Otis > > > __________________________________ > Do you Yahoo!? > Protect your identity with Yahoo! Mail AddressGuard > http://antispam.yahoo.com/whatsnewfree > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > -- Dror Matalon Zapatec Inc 1700 MLK Way Berkeley, CA 94709 http://www.fastbuzz.com http://www.zapatec.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]