diff options
author | Etienne Petrel <etienne.petrel@mongodb.com> | 2021-10-19 06:19:34 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2021-10-19 07:35:46 +0000 |
commit | 69fbb9eccbd73b300dfab89ab0282d2eefbebf03 (patch) | |
tree | c3585863fbf204feed656f37ea919cd2952e9e61 /src/third_party/wiredtiger/src/session/session_compact.c | |
parent | 3529fd75f5bdf8092ccc6fb7ff33609470c2d19b (diff) | |
download | mongo-69fbb9eccbd73b300dfab89ab0282d2eefbebf03.tar.gz |
Import wiredtiger: 4692a642021eff5b40438a8b4ee0bf85be9d9dc8 from branch mongodb-master
ref: 0d11c31127..4692a64202
for: 5.2.0
WT-8189 Add useful information for compact analysis to WT verbose messaging
Diffstat (limited to 'src/third_party/wiredtiger/src/session/session_compact.c')
-rw-r--r-- | src/third_party/wiredtiger/src/session/session_compact.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/third_party/wiredtiger/src/session/session_compact.c b/src/third_party/wiredtiger/src/session/session_compact.c index b57a734b29b..285bacf49f9 100644 --- a/src/third_party/wiredtiger/src/session/session_compact.c +++ b/src/third_party/wiredtiger/src/session/session_compact.c @@ -189,10 +189,17 @@ __wt_session_compact_check_timeout(WT_SESSION_IMPL *session) return (0); __wt_epoch(session, &end); + ret = session->compact->max_time > WT_TIMEDIFF_SEC(end, session->compact->begin) ? 0 : ETIMEDOUT; - if (ret != 0) + if (ret != 0) { WT_STAT_CONN_INCR(session, session_table_compact_timeout); + + __wt_verbose(session, WT_VERB_COMPACT, + "Compact has timed out! The operation has been running for %" PRIu64 + " second(s). Configured timeout is %" PRIu64 " second(s).", + WT_TIMEDIFF_SEC(end, session->compact->begin), session->compact->max_time); + } return (ret); } @@ -279,6 +286,10 @@ __compact_worker(WT_SESSION_IMPL *session) } ret = 0; another_pass = true; + + __wt_verbose(session, WT_VERB_COMPACT, "%s", + "Data handle compaction failed with EBUSY but the cache is not stuck. " + "Will give it another go."); } } if (!another_pass) @@ -329,8 +340,11 @@ __wt_session_compact(WT_SESSION *wt_session, const char *uri, const char *config } /* In-memory ignores compaction operations. */ - if (F_ISSET(S2C(session), WT_CONN_IN_MEMORY)) + if (F_ISSET(S2C(session), WT_CONN_IN_MEMORY)) { + __wt_verbose( + session, WT_VERB_COMPACT, "%s", "Compact does not work for in-memory databases."); goto err; + } /* * Non-LSM object compaction requires checkpoints, which are impossible in transactional |