summaryrefslogtreecommitdiff
path: root/src/btree/rec_write.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/btree/rec_write.c')
-rw-r--r--src/btree/rec_write.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/btree/rec_write.c b/src/btree/rec_write.c
index 30281e93b22..8c4926386ca 100644
--- a/src/btree/rec_write.c
+++ b/src/btree/rec_write.c
@@ -296,7 +296,7 @@ __wt_rec_write(
break;
}
WT_RET(__wt_page_modify_init(session, page));
- __wt_page_modify_set(session, page);
+ __wt_page_modify_set(page);
return (0);
}
@@ -344,7 +344,7 @@ __wt_rec_write(
WT_VERBOSE_RET(session, reconcile,
"root page split %p -> %p", page, page->modify->u.split);
page = page->modify->u.split;
- __wt_page_modify_set(session, page);
+ __wt_page_modify_set(page);
F_CLR(page->modify, WT_PM_REC_SPLIT_MERGE);
WT_RET(__wt_rec_write(session, page, NULL));
@@ -1167,7 +1167,7 @@ __wt_rec_bulk_wrapup(WT_CURSOR_BULK *cbulk)
/* Mark the page's parent dirty. */
WT_RET(__wt_page_modify_init(session, page->parent));
- __wt_page_modify_set(session, page->parent);
+ __wt_page_modify_set(page->parent);
return (0);
}
@@ -3062,15 +3062,17 @@ err: __wt_scr_free(&tkey);
}
/*
- * Success: if modifications were skipped, the tree cannot be clean. As
- * the checkpoint initiation code might have cleared the tree's modified
- * flag, explicitly dirty the page, which includes setting the tree's
- * modified flag. If modifications were not skipped, the page might be
- * clean, update the disk generation to the write generation as of when
- * reconciliation started.
+ * Success.
+ * If modifications were skipped, the tree isn't clean. The checkpoint
+ * call cleared the tree's modified value before it called the eviction
+ * thread, so we must explicitly reset the tree's modified flag.
+ *
+ * If modifications were not skipped, the page might be clean; update
+ * the disk generation to the write generation as of when reconciliation
+ * started.
*/
if (r->upd_skipped)
- __wt_page_modify_set(session, page);
+ __wt_tree_modify_set(btree);
else
mod->disk_gen = r->orig_write_gen;