[ http://issues.apache.org/jira/browse/LUCENE-485?page=comments#action_12370714 ]
Luc Vanlerberghe commented on LUCENE-485: ----------------------------------------- Creating a TestCase that would show this is a valid patch is pretty difficult, but I'm 100% sure it is valid and I applied it to a production system a couple of months ago without any problem. Even if the lucene index is on a local harddisk, writing the updated segments file takes less than 10ms, while deleting the obsolete segments takes anywhere between 30 and 170ms... (on a Windows system that is...) > IndexWriter.mergeSegments should not hold the commit lock while cleaning up. > ---------------------------------------------------------------------------- > > Key: LUCENE-485 > URL: http://issues.apache.org/jira/browse/LUCENE-485 > Project: Lucene - Java > Type: Improvement > Components: Index > Versions: CVS Nightly - Specify date in submission > Environment: checked in revision 367361 > Reporter: Luc Vanlerberghe > Attachments: LUCENE-485.patch > > Same happens in IndexWriter.addIndexes(IndexReader[] readers). > The commit lock should be obtained whenever the Index structure/version is > read or written. It should be kept for as short a period as possible. > The write lock is needed to make sure only one IndexWriter or IndexReader > instance can update the index (multiple IndexReaders can of course use the > index for searching). > The list of files that can be deleted is stored in the file "deletable". It > is only read or written by the IndexWriter instance that holds the write > lock, so there's no need to have the commit lock to to update it. > On my production system deleting the obsolete segment files after a > mergeSegments() happens can occasionally take several seconds(!) and the > commit lock blocks the searcher machines from updating their IndexReader > instance. > Even on a standalone machine, the time to update the segments file is about > 3ms, the time to delete the obsolete segments about 30ms. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]