ParallelWriter companion to ParallelReader
------------------------------------------
Key: LUCENE-600
URL: http://issues.apache.org/jira/browse/LUCENE-600
Project: Lucene - Java
Type: Improvement
Components: Index
Versions: 2.1
Reporter: Chuck Williams
A new class ParallelWriter is provided that serves as a companion to
ParallelReader. ParallelWriter meets all of the doc-id synchronization
requirements of ParallelReader, subject to:
1. ParallelWriter.addDocument() is synchronized, which might have an
adverse effect on performance. The writes to the sub-indexes are, however,
done in parallel.
2. The application must ensure that the ParallelReader is never reopened
inside ParallelWriter.addDocument(), else it might find the sub-indexes out of
sync.
3. The application must deal with recovery from
ParallelWriter.addDocument() exceptions. Recovery must restore the
synchronization of doc-ids, e.g. by deleting any trailing document(s) in one
sub-index that were not successfully added to all sub-indexes, and then
optimizing all sub-indexes.
A new interface, Writable, is provided to abstract IndexWriter and
ParallelWriter. This is in the same spirit as the existing Searchable and
Fieldable classes.
This implementation uses java 1.5. The patch applies against today's svn head.
All tests pass, including the new TestParallelWriter.
--
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]