Thanx for the feedback Otis. I did read that section of the book already. But i'm still not clear on something... I know that the only way documents can be deleted from the index is when i close IndexReader, what worries me is that stuff gets cached in the ram directory when i do inserts. What I'm not sure about is if those inserts go into the index at a random time, or only when i try to insert something new or call close on IndexWriter. If the inserted documents can go into the index on the hard drive at any random time then what i'm doing is not safe.
In the TheServerSide case study of the book, page 375, they say that they close the IndexWriter and even point out that they did before openning the IndexReader and deleting. So that kinda makes me wonder if i'm safe having an IndexReader with deletions and and IndexWriter with inserts open at the same time (even though my code never does an index modifying operation at the same time because they share a lock in the my code). thank you On 8/8/05, Otis Gospodnetic <[EMAIL PROTECTED]> wrote: > If you have the Lucene book, look at Chapter 2 (page 59 under section > 2.9 (Concurrency, thread-safety, and locking issues) in chapter 2 > (Indexing)): > > http://www.lucenebook.com/search?query=concurrency+rules > > Also, look at Lucene's Bugzilla, where you'll find a contribution that > helps with concurrent IndexReader/IndexWriter usage. > > Otis > > > --- Greg Love <[EMAIL PROTECTED]> wrote: > > > Hello, > > > > I have an application that gets many delete and write resquests at > > the > > same time. to avoid opening and closing the IndexWriter and > > IndexReader everytime one of them need to do a write operation, i > > keep > > them both open and have a shared lock around them whenever i need to > > use them for writing. everything seems to be working in order, but > > i'm not sure if this is a safe thing to do. please let me know. > > > > thank you, > > lavafish > >