diff options
author | jorlow@chromium.org <jorlow@chromium.org@62dab493-f737-651d-591e-8d6aee1b9529> | 2011-03-22 18:32:49 +0000 |
---|---|---|
committer | jorlow@chromium.org <jorlow@chromium.org@62dab493-f737-651d-591e-8d6aee1b9529> | 2011-03-22 18:32:49 +0000 |
commit | 13b72af77b2b7fed156c26107476f84d35e4481d (patch) | |
tree | d21e4ec2ca349fab041bda922f58303f1a2933a7 /doc/impl.html | |
parent | 9df5aa892ecf4f418f6777bcc18651ecd5f0d679 (diff) | |
download | leveldb-13b72af77b2b7fed156c26107476f84d35e4481d.tar.gz |
More changes from upstream.
git-svn-id: https://leveldb.googlecode.com/svn/trunk@12 62dab493-f737-651d-591e-8d6aee1b9529
Diffstat (limited to 'doc/impl.html')
-rw-r--r-- | doc/impl.html | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/doc/impl.html b/doc/impl.html index 2f2c809..b190d2c 100644 --- a/doc/impl.html +++ b/doc/impl.html @@ -123,8 +123,14 @@ one level-0 file in case some of these files overlap each other. A compaction merges the contents of the picked files to produce a sequence of level-(L+1) files. We switch to producing a new level-(L+1) file after the current output file has reached the target -file size (2MB). The old files are discarded and the new files are -added to the serving state. +file size (2MB). We also switch to a new output file when the key +range of the current output file has grown enough to overlap more then +ten level-(L+2) files. This last rule ensures that a later compaction +of a level-(L+1) file will not pick up too much data from level-(L+2). + +<p> +The old files are discarded and the new files are added to the serving +state. <p> Compactions for a particular level rotate through the key space. In |