lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Uwe Schindler (JIRA)" <>
Subject [jira] [Commented] (LUCENE-3218) Make CFS appendable
Date Fri, 19 Aug 2011 13:58:27 GMT


Uwe Schindler commented on LUCENE-3218:

bq. i think we should prevent the seek if not absolutely necessary.

You have a very small optimization here that only affects opening the CFS.

But because we need to fix the wrong behaviour in FileSwitch (and also NRTCaching dir, which
is in my opinion more serious!!!!), FileSwitch and NRTCachingDir now use the default CompoundFileImpl.
If you wrap MMapDir by FileSwitch or NRTCaching, the whole custom impl of the compound file
in MMap that speeds up even further is obsolete, as not used (you can use the compound file
with really no slowdown at all as we can map parts of the CFS file into memeory and need no
offset calculations and can also save mapping costs).

This is gone now, just because a one-time seek at opening time is prevented.

> Make CFS appendable  
> ---------------------
>                 Key: LUCENE-3218
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: core/index
>    Affects Versions: 4.0
>            Reporter: Simon Willnauer
>            Assignee: Simon Willnauer
>             Fix For: 3.4, 4.0
>         Attachments: LUCENE-3218.patch, LUCENE-3218.patch, LUCENE-3218.patch, LUCENE-3218.patch,
LUCENE-3218_3x.patch, LUCENE-3218_test_fix.patch, LUCENE-3218_tests.patch
> Currently CFS is created once all files are written during a flush / merge. Once on disk
the files are copied into the CFS format which is basically a unnecessary for some of the
files. We can at any time write at least one file directly into the CFS which can save a reasonable
amount of IO. For instance stored fields could be written directly during indexing and during
a Codec Flush one of the written files can be appended directly. This optimization is a nice
sideeffect for lucene indexing itself but more important for DocValues and LUCENE-3216 we
could transparently pack per field files into a single file only for docvalues without changing
any code once LUCENE-3216 is resolved.

This message is automatically generated by JIRA.
For more information on JIRA, see:


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

View raw message