[ 
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]

Reply via email to