[ https://issues.apache.org/jira/browse/LUCENE-1476?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12662097#action_12662097 ]
Michael McCandless commented on LUCENE-1476: -------------------------------------------- {quote} > It would be exposed as a combination reader writer that manages the > transaction status of each update. {quote} I think the transactions layer would also sit on top of this "realtime" layer? EG this "realtime" layer would expose a commit() method, and the transaction layer above it would maintain the transaction log, periodically calling commit() and truncating the transaction log? This "realtime" layer, then, would internally maintain a single IndexWriter and the readers. IndexWriter would flush (not commit) new segments into a RAMDir and yield its in-RAM SegmentInfos to IndexReader.reopen. MergePolicy periodically gets those into the real Directory. When reopening a reader we have the freedom to use old (already merged away) segments if the newly merged segment isn't warm yet. We "just" need to open some things up in IndexWriter: * IndexReader.reopen with the in-RAM SegmentInfos * Willingness to allow an IndexReader to maintain & updated deleted docs even though IndexWriter has the write lock * Access to segments that were already merged away (I think we could make a DeletionPolicy that pays attention to when the newly merged segment is not yet warmed and keeps thue prior segments around). I think this'd require allowing DeletionPolicy to see "flush points" in addition to commit points (it doesn't today). But I'm still hazy on the details on exactly how to open up IndexWriter. > 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 > > 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