diff options
author | Susan LoVerso <sue@wiredtiger.com> | 2015-05-19 14:16:44 -0400 |
---|---|---|
committer | Michael Cahill <michael.cahill@mongodb.com> | 2015-05-25 16:44:44 +1000 |
commit | 05a7babce5eb0f3a42adf11afc36e3b388a24d98 (patch) | |
tree | 541e33a6e9cfc1411fe03192afced5fac2e1b88b | |
parent | 3cf5e4c185f4fe141c506a3a45401daf48018499 (diff) | |
download | mongo-05a7babce5eb0f3a42adf11afc36e3b388a24d98.tar.gz |
Handle ENOENT from log_scan in callers. WT-1936
(cherry picked from commit 1bbe59ae3e244188cbf5a9cf5198ecb0ac2303c0)
-rw-r--r-- | src/log/log.c | 2 | ||||
-rw-r--r-- | src/txn/txn_recover.c | 17 |
2 files changed, 12 insertions, 7 deletions
diff --git a/src/log/log.c b/src/log/log.c index 8c13b177abf..2c36abd8eab 100644 --- a/src/log/log.c +++ b/src/log/log.c @@ -1531,8 +1531,6 @@ err: WT_STAT_FAST_CONN_INCR(session, log_scans); */ if (LF_ISSET(WT_LOGSCAN_ONE) && eol && ret == 0) ret = WT_NOTFOUND; - if (ret == ENOENT) - ret = 0; WT_TRET(__wt_close(session, &log_fh)); return (ret); } diff --git a/src/txn/txn_recover.c b/src/txn/txn_recover.c index f6cd384417f..8c25c1685cf 100644 --- a/src/txn/txn_recover.c +++ b/src/txn/txn_recover.c @@ -463,8 +463,11 @@ __wt_txn_recover(WT_SESSION_IMPL *session) * there. */ r.ckpt_lsn = metafile->ckpt_lsn; - WT_ERR(__wt_log_scan(session, - &metafile->ckpt_lsn, 0, __txn_log_recover, &r)); + ret = __wt_log_scan(session, + &metafile->ckpt_lsn, 0, __txn_log_recover, &r); + if (ret == ENOENT) + ret = 0; + WT_ERR(ret); } } @@ -502,9 +505,13 @@ __wt_txn_recover(WT_SESSION_IMPL *session) WT_ERR(__wt_log_scan(session, NULL, WT_LOGSCAN_FIRST | WT_LOGSCAN_RECOVER, __txn_log_recover, &r)); - else - WT_ERR(__wt_log_scan(session, &r.ckpt_lsn, - WT_LOGSCAN_RECOVER, __txn_log_recover, &r)); + else { + ret = __wt_log_scan(session, &r.ckpt_lsn, + WT_LOGSCAN_RECOVER, __txn_log_recover, &r); + if (ret == ENOENT) + ret = 0; + WT_ERR(ret); + } conn->next_file_id = r.max_fileid; |