summaryrefslogtreecommitdiff
path: root/src/meta
diff options
context:
space:
mode:
authorMichael Cahill <michael.cahill@wiredtiger.com>2014-07-09 10:01:16 +1000
committerMichael Cahill <michael.cahill@wiredtiger.com>2014-07-09 10:01:16 +1000
commit29f3c0f7999696d4768f8359430b8c33684400f4 (patch)
treebd191b645cc0ba51777a3e80c54b48300411ef70 /src/meta
parent44876cbc7ce74cecbc3f7b8b7e41a67c2a846830 (diff)
downloadmongo-29f3c0f7999696d4768f8359430b8c33684400f4.tar.gz
Don't checkpoint the metadata on every schema operation if we are logging.
Diffstat (limited to 'src/meta')
-rw-r--r--src/meta/meta_track.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/meta/meta_track.c b/src/meta/meta_track.c
index 71c2af4eabd..55e61f8d1bc 100644
--- a/src/meta/meta_track.c
+++ b/src/meta/meta_track.c
@@ -214,8 +214,11 @@ __wt_meta_track_off(WT_SESSION_IMPL *session, int unroll)
while (--trk >= trk_orig)
WT_TRET(__meta_track_apply(session, trk, unroll));
- /* If the operation succeeded, checkpoint the metadata. */
- if (!unroll && ret == 0 && session->metafile != NULL)
+ /*
+ * If the operation succeeded and we aren't relying on the log for
+ * durability, checkpoint the metadata. */
+ if (!unroll && ret == 0 && session->metafile != NULL &&
+ !S2C(session)->logging)
WT_WITH_BTREE(session, session->metafile,
ret = __wt_checkpoint(session, NULL));