diff options
author | Keith Bostic <keith@wiredtiger.com> | 2012-08-18 09:15:37 +0000 |
---|---|---|
committer | Keith Bostic <keith@wiredtiger.com> | 2012-08-18 09:15:37 +0000 |
commit | f6cc208176aee57cb879ba7edc1454c71db9a86d (patch) | |
tree | 65c8f7a0b6d70a8ee04134d455e56b8c933ac65b /src/btree/bt_misc.c | |
parent | 910d4912789ffbc0d1c33481dd32651e8fad4ccc (diff) | |
download | mongo-f6cc208176aee57cb879ba7edc1454c71db9a86d.tar.gz |
Next set of changes for fast-truncate: the ability to delete leaf pages
(that don't have overflow items), without reading them. Ref #247.
Add a new "hidden" type, WT_CELL_ADDR_LNO (leaf no overflow) that marks
a leaf page without overflow items; when we unpack a cell, we set a flag
in the cell structure in this case, the standard unpack type is still
WT_CELL_ADDR.
Add a WT_ADDR.leaf_no_overflow field that flags if the addr references
a leaf page w/o overflow items; reconcilition uses this field to decide
which cell type to use on an internal page.
Add a WT_RECONCILE.ovfl_items flag, and set it when reconciliation finds
an overflow key/value item. Then, when creating the WT_ADDR for the page,
set the leaf_no_overflow field if we've found an overflow item.
Update the debugging, verify and salvage routines to match.
Diffstat (limited to 'src/btree/bt_misc.c')
-rw-r--r-- | src/btree/bt_misc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/btree/bt_misc.c b/src/btree/bt_misc.c index 6952cbc4fb5..3fc76a51018 100644 --- a/src/btree/bt_misc.c +++ b/src/btree/bt_misc.c @@ -47,6 +47,8 @@ __wt_cell_type_string(uint8_t type) switch (type) { case WT_CELL_ADDR: return ("address"); + case WT_CELL_ADDR_LNO: + return ("address/lno"); case WT_CELL_DEL: return ("deleted"); case WT_CELL_KEY: |