summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/btree/bt_slvg.c27
1 files changed, 15 insertions, 12 deletions
diff --git a/src/btree/bt_slvg.c b/src/btree/bt_slvg.c
index 0ba5d13a459..75be2b93bd7 100644
--- a/src/btree/bt_slvg.c
+++ b/src/btree/bt_slvg.c
@@ -1164,19 +1164,20 @@ __slvg_col_build_internal(
/*
* If the page's key range is unmodified from when we read it
* (in other words, we didn't merge part of this page with
- * another page), we can use the page without change. If we
- * did merge with another page, we must build a page reflecting
- * the updated key range, and that requires an additional pass
- * to free its backing blocks.
+ * another page), we can use the page without change, and the
+ * only thing we need to do is mark all overflow records the
+ * page references as in-use.
+ *
+ * If we did merge with another page, we have to build a page
+ * reflecting the updated key range. Note, that requires an
+ * additional pass to free the merge page's backing blocks.
*/
if (F_ISSET(trk, WT_TRACK_MERGE)) {
ss->merge_free = 1;
WT_ERR(__slvg_col_build_leaf(session, trk, ref));
- } else {
- /* All overflow items referenced by this page used. */
+ } else
WT_ERR(__slvg_ovfl_ref_all(session, trk));
- }
++ref;
}
@@ -1775,10 +1776,13 @@ __slvg_row_build_internal(
/*
* If the page's key range is unmodified from when we read it
* (in other words, we didn't merge part of this page with
- * another page), we can use the page without change. If we
- * did merge with another page, we must build a page reflecting
- * the updated key range, and that requires an additional pass
- * to free its backing blocks.
+ * another page), we can use the page without change, and the
+ * only thing we need to do is mark all overflow records the
+ * page references as in-use.
+ *
+ * If we did merge with another page, we have to build a page
+ * reflecting the updated key range. Note, that requires an
+ * additional pass to free the merge page's backing blocks.
*/
if (F_ISSET(trk, WT_TRACK_MERGE)) {
ss->merge_free = 1;
@@ -1789,7 +1793,6 @@ __slvg_row_build_internal(
trk->row_start.data, trk->row_start.size,
&ref->key.ikey));
- /* All overflow items referenced by this page used. */
WT_ERR(__slvg_ovfl_ref_all(session, trk));
}
++ref;