summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Cahill <michael.cahill@wiredtiger.com>2013-05-15 15:53:52 +1000
committerMichael Cahill <michael.cahill@wiredtiger.com>2013-05-15 15:53:52 +1000
commit4e73800d4f502870ba42bb5887b3b0bcb87f24e0 (patch)
tree39649df07efb7926b4b1160788c8e16a4c246867 /src
parentdc84be5ab9ef9c30d04fd8043f297df5d020cb04 (diff)
downloadmongo-4e73800d4f502870ba42bb5887b3b0bcb87f24e0.tar.gz
Add a comment about tracking the largest transaction ID during reconciliation.
Diffstat (limited to 'src')
-rw-r--r--src/btree/rec_write.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/btree/rec_write.c b/src/btree/rec_write.c
index edbdacde7b7..37af35e79cd 100644
--- a/src/btree/rec_write.c
+++ b/src/btree/rec_write.c
@@ -604,6 +604,13 @@ __rec_txn_read(
*updp = __wt_txn_read_skip(session, upd, &skip);
if (!skip) {
+ /*
+ * Track the largest transaction ID written to disk for this
+ * page. We store this in the page at the end of
+ * reconciliation if no updates are skipped. It is used to
+ * avoid evicting a clean page from memory with changes that
+ * are required to satisfy a snapshot read.
+ */
if (*updp != NULL) {
txnid = (*updp)->txnid;
if (TXNID_LT(r->max_txn, txnid))