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

Michael McCandless commented on LUCENE-1476:
--------------------------------------------


{quote}
> One way to think of the realtime problem is in terms of segments rather than 
> FSDirs and RAMDirs. Some segments are on disk, some in RAM.
{quote}

I think that's a good approach.  IndexWriter could care less which dir
each segment resides in.

For starters let's flush all new segments into a single Directory (and
swap in RAMDir, single-file-Dir, etc., if/when necessary for better
performance).

Thinking out loud.... what if we added IndexWriter.getReader(), which
returns an IndexReader for the current index?

It would read segments that are not "visible" to a newly opened
IndexReader on that directory (ie, the SegmentInfos inside IndexWriter
was used to do the open, not the latest segments_N in the Directory).

That IndexReader is free to do deletions / set norms (shares write
lock under the hood w/ IndexWriter), and when reopen is called it
grabs the current SegmentInfos from IndexWriter and re-opens that.

We would un-deprecate flush().  The, the transaction layer would make
changes, call flush(), call reopen(), and return the reopened reader.


> BitVector implement DocIdSet
> ----------------------------
>
>                 Key: LUCENE-1476
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1476
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Index
>    Affects Versions: 2.4
>            Reporter: Jason Rutherglen
>            Priority: Trivial
>         Attachments: LUCENE-1476.patch, quasi_iterator_deletions.diff
>
>   Original Estimate: 12h
>  Remaining Estimate: 12h
>
> BitVector can implement DocIdSet.  This is for making 
> SegmentReader.deletedDocs pluggable.

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