lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <>
Subject [jira] [Commented] (LUCENE-4462) Publishing flushed segments is single threaded and too costly
Date Mon, 08 Oct 2012 16:56:02 GMT


Michael McCandless commented on LUCENE-4462:

Patch looks good, thanks Simon!

I think we should keep the safety in there (the fallback to forcePurge if too many segments
are backlogged)...?  Hopefully it never needs to run... but just in case.
> Publishing flushed segments is single threaded and too costly
> -------------------------------------------------------------
>                 Key: LUCENE-4462
>                 URL:
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Michael McCandless
>            Assignee: Simon Willnauer
>         Attachments: LUCENE-4462.patch
> Spinoff from
> The new TestBagOfPostings failed the build because it timed out after 2 hours ... but
in digging I found that it was a starvation issue: the 4 threads were flushing segments much
faster than the 1 thread could publish them.
> I think this is because publishing segments (DocumentsWriter.publishFlushedSegment) is
actually rather costly (creates CFS file if necessary, writes .si, etc.).
> I committed a workaround for now, to prevent starvation (see svn diff -c 1394704,
but we really should address the root cause by moving these costly ops into flush() so that
publishing is a low cost operation.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message