[ 
https://issues.apache.org/jira/browse/LUCENE-600?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12749599#action_12749599
 ] 

Chuck Williams commented on LUCENE-600:
---------------------------------------

The patent isn't on the parallel writer stuff, it's on the update method.  
Using parallel indexes is just the first simple step to an efficient update 
method, far from the complete solution.

Personally I'm not a supporter of software patents and hope Bilski raises the 
bar substantially.  However, we live in the world we live in now and companies, 
including the ones I've worked for who funded this work, want to protect their 
IP, at least for defensive reasons.  I tried to broker a deal to contribute the 
update method and code to lucene instead of protecting it, but there was lack 
of interest in the lucene community at the time and so the deal fell apart.

At this point the patent is filed and published, so if it issues anybody who 
infringes risks a charge of doing so knowingly, which substantially increases 
penalties.

I'm the messenger here, so please don't shoot me.


> ParallelWriter companion to ParallelReader
> ------------------------------------------
>
>                 Key: LUCENE-600
>                 URL: https://issues.apache.org/jira/browse/LUCENE-600
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>    Affects Versions: 2.1
>            Reporter: Chuck Williams
>            Priority: Minor
>         Attachments: ParallelWriter.patch
>
>
> 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.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to