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

Michael McCandless commented on LUCENE-3092:
--------------------------------------------

{quote}
just an idea: with issues like this that work (but hackishly) and are self 
contained, I'm
not sure we should block them on some huge refactoring like IOContext if they 
are actually usable
{quote}

+1, progress not perfection.

I'll clean up the patch -- add an example code fragment of how you use it, a 
test case (aside: it'd be nice if, somehow, we could randomly swap this into 
our tests... we'd need a newMergeScheduler() method that would tap into this 
Dir impl if it had been picked, but also, we'd have to get this contrib module 
on core's classpath...), and a comment saying "this class does spooking stuff 
tracking merges and threads".

> NRTCachingDirectory, to buffer small segments in a RAMDir
> ---------------------------------------------------------
>
>                 Key: LUCENE-3092
>                 URL: https://issues.apache.org/jira/browse/LUCENE-3092
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Store
>            Reporter: Michael McCandless
>            Priority: Minor
>             Fix For: 3.2, 4.0
>
>         Attachments: LUCENE-3092-listener.patch, LUCENE-3092.patch
>
>
> I created this simply Directory impl, whose goal is reduce IO
> contention in a frequent reopen NRT use case.
> The idea is, when reopening quickly, but not indexing that much
> content, you wind up with many small files created with time, that can
> possibly stress the IO system eg if merges, searching are also
> fighting for IO.
> So, NRTCachingDirectory puts these newly created files into a RAMDir,
> and only when they are merged into a too-large segment, does it then
> write-through to the real (delegate) directory.
> This lets you spend some RAM to reduce I0.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

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

Reply via email to