lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <j...@apache.org>
Subject [jira] Commented: (LUCENE-1313) Realtime Search
Date Fri, 01 May 2009 13:59:30 GMT

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

Michael McCandless commented on LUCENE-1313:
--------------------------------------------

Patch looks good!  Some comments:

  * I don't think the caller should provide the RAMDir... and we
    should have a getter to get it. I think this should be
    under-the-hood.  This is simply a nice way for IW to use RAM as
    buffer in the presence of frequent NRT readers being opened.

  * If NRT is never used, the behavior of IW should be unchanged
    (which is not the case w/ this patch I think).  RAMDir should be
    created the first time a flush is done due to NRT creation.

  * StoredFieldsWriter & TermVectorsTermsWriter now writes to
    IndexWriter.getFlushDirectory(), which is confusing because that
    method returns the RAMDir if set?  Shouldn't this be the opposite?
    (Ie it should flush to IndexWriter.getDirectory()?  Or we should
    change getFlushDiretory to NOT return the ramdir?)

  * Why did you need to add synchronized to some of the SegmentInfo
    files methods?  (What breaks if you undo that?).  The contract
    here is IW protects access to SegmentInfo/s.

  * The MergePolicy needs some smarts when it's dealing w/ RAM.  EG it
    should not do a merge of more than XXX% of total RAM usage (should
    flush to the real directory instead).

  * Nothing is calling the new ramOverLimit?

  * Still some noise (MockRAMDir, DocFieldProcessorPerThread, some
    changes in LogMergePolicy)


> Realtime Search
> ---------------
>
>                 Key: LUCENE-1313
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1313
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: Index
>    Affects Versions: 2.4.1
>            Reporter: Jason Rutherglen
>            Priority: Minor
>             Fix For: 2.9
>
>         Attachments: LUCENE-1313.jar, LUCENE-1313.patch, LUCENE-1313.patch, LUCENE-1313.patch,
LUCENE-1313.patch, LUCENE-1313.patch, LUCENE-1313.patch, LUCENE-1313.patch, lucene-1313.patch,
lucene-1313.patch, lucene-1313.patch, lucene-1313.patch
>
>
> Realtime search with transactional semantics.  
> Possible future directions:
>   * Optimistic concurrency
>   * Replication
> Encoding each transaction into a set of bytes by writing to a RAMDirectory enables replication.
 It is difficult to replicate using other methods because while the document may easily be
serialized, the analyzer cannot.
> I think this issue can hold realtime benchmarks which include indexing and searching
concurrently.

-- 
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-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org


Mime
View raw message