summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Chen <luke.chen@mongodb.com>2022-12-21 15:39:24 +1100
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-12-21 05:14:15 +0000
commit838d3648a66bc46f10e6fcad9d0294df5331d090 (patch)
tree1be28cee9b4fb30efb057494a5910753b87fc861
parentb29429ecc5d3ee3907ac7d36c6c125d84c810e52 (diff)
downloadmongo-838d3648a66bc46f10e6fcad9d0294df5331d090.tar.gz
Import wiredtiger: 723f5e15d49dbe2caf944ed270b4f22b4fd282d6 from branch mongodb-master
ref: a7f6fa07f9..723f5e15d4 for: 6.3.0-rc0 WT-10197 Track eviction timeline
-rw-r--r--src/third_party/wiredtiger/dist/stat_data.py5
-rw-r--r--src/third_party/wiredtiger/import.data2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_cache.c4
-rw-r--r--src/third_party/wiredtiger/src/evict/evict_page.c47
-rw-r--r--src/third_party/wiredtiger/src/include/cache.h1
-rw-r--r--src/third_party/wiredtiger/src/include/connection.h5
-rw-r--r--src/third_party/wiredtiger/src/include/session.h19
-rw-r--r--src/third_party/wiredtiger/src/include/stat.h3
-rw-r--r--src/third_party/wiredtiger/src/include/wiredtiger.in838
-rw-r--r--src/third_party/wiredtiger/src/include/wt_internal.h4
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_write.c41
-rw-r--r--src/third_party/wiredtiger/src/support/stat.c12
-rw-r--r--src/third_party/wiredtiger/src/txn/txn_ckpt.c3
13 files changed, 542 insertions, 442 deletions
diff --git a/src/third_party/wiredtiger/dist/stat_data.py b/src/third_party/wiredtiger/dist/stat_data.py
index afedf5bf050..5dc51fb4196 100644
--- a/src/third_party/wiredtiger/dist/stat_data.py
+++ b/src/third_party/wiredtiger/dist/stat_data.py
@@ -265,7 +265,8 @@ conn_stats = [
CacheStat('cache_eviction_internal_pages_already_queued', 'internal pages seen by eviction walk that are already queued'),
CacheStat('cache_eviction_internal_pages_queued', 'internal pages queued for eviction'),
CacheStat('cache_eviction_internal_pages_seen', 'internal pages seen by eviction walk'),
- CacheStat('cache_eviction_maximum_page_size', 'maximum page size at eviction', 'no_clear,no_scale,size'),
+ CacheStat('cache_eviction_maximum_page_size', 'maximum page size seen at eviction', 'no_clear,no_scale,size'),
+ CacheStat('cache_eviction_maximum_seconds', 'maximum seconds spent at a single eviction', 'no_clear,no_scale,size'),
CacheStat('cache_eviction_pages_already_queued', 'pages seen by eviction walk that are already queued'),
CacheStat('cache_eviction_pages_in_parallel_with_checkpoint', 'pages evicted in parallel with checkpoint'),
CacheStat('cache_eviction_pages_queued', 'pages queued for eviction'),
@@ -499,6 +500,8 @@ conn_stats = [
##########################################
# Reconciliation statistics
##########################################
+ RecStat('rec_maximum_hs_wrapup_seconds', 'maximum seconds spent in moving updates to the history store in a reconciliation', 'no_clear,no_scale,size'),
+ RecStat('rec_maximum_image_build_seconds', 'maximum seconds spent in building a disk image in a reconciliation', 'no_clear,no_scale,size'),
RecStat('rec_maximum_seconds', 'maximum seconds spent in a reconciliation call', 'no_clear,no_scale,size'),
RecStat('rec_overflow_key_leaf', 'leaf-page overflow keys'),
RecStat('rec_pages_with_prepare', 'page reconciliation calls that resulted in values with prepared transaction metadata'),
diff --git a/src/third_party/wiredtiger/import.data b/src/third_party/wiredtiger/import.data
index 312642f040d..fcac63d41fe 100644
--- a/src/third_party/wiredtiger/import.data
+++ b/src/third_party/wiredtiger/import.data
@@ -2,5 +2,5 @@
"vendor": "wiredtiger",
"github": "wiredtiger/wiredtiger.git",
"branch": "mongodb-master",
- "commit": "a7f6fa07f90d701b73206a768ae0cc6fb50ff9b4"
+ "commit": "723f5e15d49dbe2caf944ed270b4f22b4fd282d6"
}
diff --git a/src/third_party/wiredtiger/src/conn/conn_cache.c b/src/third_party/wiredtiger/src/conn/conn_cache.c
index bf14fcf4914..e706320c2db 100644
--- a/src/third_party/wiredtiger/src/conn/conn_cache.c
+++ b/src/third_party/wiredtiger/src/conn/conn_cache.c
@@ -320,6 +320,7 @@ __wt_cache_stats_update(WT_SESSION_IMPL *session)
WT_STAT_SET(session, stats, cache_bytes_updates, __wt_cache_bytes_updates(cache));
WT_STAT_SET(session, stats, cache_eviction_maximum_page_size, cache->evict_max_page_size);
+ WT_STAT_SET(session, stats, cache_eviction_maximum_seconds, cache->evict_max_seconds);
WT_STAT_SET(
session, stats, cache_pages_dirty, cache->pages_dirty_intl + cache->pages_dirty_leaf);
@@ -338,6 +339,9 @@ __wt_cache_stats_update(WT_SESSION_IMPL *session)
if (conn->evict_server_running)
WT_STAT_SET(session, stats, cache_eviction_walks_active, cache->walk_session->nhazard);
+ WT_STAT_SET(session, stats, rec_maximum_hs_wrapup_seconds, conn->rec_maximum_hs_wrapup_seconds);
+ WT_STAT_SET(
+ session, stats, rec_maximum_image_build_seconds, conn->rec_maximum_image_build_seconds);
WT_STAT_SET(session, stats, rec_maximum_seconds, conn->rec_maximum_seconds);
}
diff --git a/src/third_party/wiredtiger/src/evict/evict_page.c b/src/third_party/wiredtiger/src/evict/evict_page.c
index 13543a41af5..f9e5b9247f8 100644
--- a/src/third_party/wiredtiger/src/evict/evict_page.c
+++ b/src/third_party/wiredtiger/src/evict/evict_page.c
@@ -104,7 +104,7 @@ __wt_evict(WT_SESSION_IMPL *session, WT_REF *ref, uint8_t previous_state, uint32
WT_CONNECTION_IMPL *conn;
WT_DECL_RET;
WT_PAGE *page;
- uint64_t time_start, time_stop;
+ uint64_t eviction_time, eviction_time_seconds;
bool clean_page, closing, force_evict_hs, inmem_split, local_gen, tree_dead;
conn = S2C(session);
@@ -112,6 +112,7 @@ __wt_evict(WT_SESSION_IMPL *session, WT_REF *ref, uint8_t previous_state, uint32
closing = LF_ISSET(WT_EVICT_CALL_CLOSING);
force_evict_hs = false;
local_gen = false;
+ eviction_time = eviction_time_seconds = 0;
__wt_verbose(
session, WT_VERB_EVICT, "page %p (%s)", (void *)page, __wt_page_type_string(page->type));
@@ -129,13 +130,14 @@ __wt_evict(WT_SESSION_IMPL *session, WT_REF *ref, uint8_t previous_state, uint32
__wt_session_gen_enter(session, WT_GEN_EVICT);
}
+ WT_CLEAR(session->reconcile_timeline);
+ WT_CLEAR(session->evict_timeline);
+ session->evict_timeline.evict_start = __wt_clock(session);
/*
- * Track how long forcible eviction took. Immediately increment the forcible eviction counter,
- * we might do an in-memory split and not an eviction, which skips the other statistics.
+ * Immediately increment the forcible eviction counter, we might do an in-memory split and not
+ * an eviction, which skips the other statistics.
*/
- time_start = 0;
if (LF_ISSET(WT_EVICT_CALL_URGENT)) {
- time_start = __wt_clock(session);
WT_STAT_CONN_INCR(session, cache_eviction_force);
/*
@@ -227,19 +229,18 @@ __wt_evict(WT_SESSION_IMPL *session, WT_REF *ref, uint8_t previous_state, uint32
* We have loaded the new disk image and updated the tree structure. We can no longer fail after
* this point.
*/
-
- if (time_start != 0) {
- time_stop = __wt_clock(session);
+ session->evict_timeline.evict_finish = __wt_clock(session);
+ eviction_time =
+ WT_CLOCKDIFF_US(session->evict_timeline.evict_finish, session->evict_timeline.evict_start);
+ if (LF_ISSET(WT_EVICT_CALL_URGENT)) {
if (force_evict_hs)
WT_STAT_CONN_INCR(session, cache_eviction_force_hs_success);
if (clean_page) {
WT_STAT_CONN_INCR(session, cache_eviction_force_clean);
- WT_STAT_CONN_INCRV(
- session, cache_eviction_force_clean_time, WT_CLOCKDIFF_US(time_stop, time_start));
+ WT_STAT_CONN_INCRV(session, cache_eviction_force_clean_time, eviction_time);
} else {
WT_STAT_CONN_INCR(session, cache_eviction_force_dirty);
- WT_STAT_CONN_INCRV(
- session, cache_eviction_force_dirty_time, WT_CLOCKDIFF_US(time_stop, time_start));
+ WT_STAT_CONN_INCRV(session, cache_eviction_force_dirty_time, eviction_time);
}
}
if (clean_page)
@@ -255,20 +256,32 @@ __wt_evict(WT_SESSION_IMPL *session, WT_REF *ref, uint8_t previous_state, uint32
err:
if (!closing)
__evict_exclusive_clear(session, ref, previous_state);
-
- if (time_start != 0) {
- time_stop = __wt_clock(session);
+ session->evict_timeline.evict_finish = __wt_clock(session);
+ eviction_time = WT_CLOCKDIFF_US(
+ session->evict_timeline.evict_finish, session->evict_timeline.evict_start);
+ if (LF_ISSET(WT_EVICT_CALL_URGENT)) {
if (force_evict_hs)
WT_STAT_CONN_INCR(session, cache_eviction_force_hs_fail);
WT_STAT_CONN_INCR(session, cache_eviction_force_fail);
- WT_STAT_CONN_INCRV(
- session, cache_eviction_force_fail_time, WT_CLOCKDIFF_US(time_stop, time_start));
+ WT_STAT_CONN_INCRV(session, cache_eviction_force_fail_time, eviction_time);
}
WT_STAT_CONN_DATA_INCR(session, cache_eviction_fail);
}
done:
+ eviction_time_seconds = eviction_time / WT_MILLION;
+ if (eviction_time_seconds > conn->cache->evict_max_seconds)
+ conn->cache->evict_max_seconds = eviction_time_seconds;
+ if (eviction_time_seconds > 60)
+ __wt_verbose_warning(session, WT_VERB_EVICT,
+ "Eviction took more than 1 minute (%" PRIu64 "). Building disk image took %" PRIu64
+ "us. History store wrapup took %" PRIu64 "us.",
+ eviction_time,
+ WT_CLOCKDIFF_US(session->reconcile_timeline.image_build_finish,
+ session->reconcile_timeline.image_build_start),
+ WT_CLOCKDIFF_US(session->reconcile_timeline.hs_wrapup_finish,
+ session->reconcile_timeline.hs_wrapup_start));
/* Leave any local eviction generation. */
if (local_gen)
__wt_session_gen_leave(session, WT_GEN_EVICT);
diff --git a/src/third_party/wiredtiger/src/include/cache.h b/src/third_party/wiredtiger/src/include/cache.h
index 03d5c68c9b7..bb834df01c2 100644
--- a/src/third_party/wiredtiger/src/include/cache.h
+++ b/src/third_party/wiredtiger/src/include/cache.h
@@ -98,6 +98,7 @@ struct __wt_cache {
uint64_t app_evicts; /* Pages evicted by user threads */
uint64_t evict_max_page_size; /* Largest page seen at eviction */
+ uint64_t evict_max_seconds; /* Longest seconds spent at a single eviction */
struct timespec stuck_time; /* Stuck time */
/*
diff --git a/src/third_party/wiredtiger/src/include/connection.h b/src/third_party/wiredtiger/src/include/connection.h
index 31a31818589..0d44826fac4 100644
--- a/src/third_party/wiredtiger/src/include/connection.h
+++ b/src/third_party/wiredtiger/src/include/connection.h
@@ -414,7 +414,10 @@ struct __wt_connection_impl {
uint32_t stat_flags; /* Options declared in flags.py */
/* Connection statistics */
- uint64_t rec_maximum_seconds; /* Maximum seconds reconciliation took. */
+ uint64_t
+ rec_maximum_hs_wrapup_seconds; /* Maximum seconds moving updates to history store took. */
+ uint64_t rec_maximum_image_build_seconds; /* Maximum seconds building disk image took. */
+ uint64_t rec_maximum_seconds; /* Maximum seconds reconciliation took. */
WT_CONNECTION_STATS *stats[WT_COUNTER_SLOTS];
WT_CONNECTION_STATS *stat_array;
diff --git a/src/third_party/wiredtiger/src/include/session.h b/src/third_party/wiredtiger/src/include/session.h
index 82de1a05f46..98372c54a7d 100644
--- a/src/third_party/wiredtiger/src/include/session.h
+++ b/src/third_party/wiredtiger/src/include/session.h
@@ -141,6 +141,25 @@ struct __wt_session_impl {
} * scratch_track;
#endif
+ /* Record the important timestamps of each stage in an reconciliation. */
+ struct __wt_reconcile_timeline {
+ uint64_t reconcile_start;
+ uint64_t image_build_start;
+ uint64_t image_build_finish;
+ uint64_t hs_wrapup_start;
+ uint64_t hs_wrapup_finish;
+ uint64_t reconcile_finish;
+ } reconcile_timeline;
+
+ /*
+ * Record the important timestamps of each stage in an eviction. If an eviction takes a long
+ * time and times out, we can trace the time usage of each stage from this information.
+ */
+ struct __wt_evict_timeline {
+ uint64_t evict_start;
+ uint64_t evict_finish;
+ } evict_timeline;
+
WT_ITEM err; /* Error buffer */
WT_TXN_ISOLATION isolation;
diff --git a/src/third_party/wiredtiger/src/include/stat.h b/src/third_party/wiredtiger/src/include/stat.h
index caee082f49f..94f9b073396 100644
--- a/src/third_party/wiredtiger/src/include/stat.h
+++ b/src/third_party/wiredtiger/src/include/stat.h
@@ -487,6 +487,7 @@ struct __wt_connection_stats {
int64_t cache_eviction_split_leaf;
int64_t cache_bytes_max;
int64_t cache_eviction_maximum_page_size;
+ int64_t cache_eviction_maximum_seconds;
int64_t cache_eviction_dirty;
int64_t cache_eviction_app_dirty;
int64_t cache_timed_out_ops;
@@ -743,6 +744,8 @@ struct __wt_connection_stats {
int64_t rec_page_delete_fast;
int64_t rec_overflow_key_leaf;
int64_t rec_maximum_seconds;
+ int64_t rec_maximum_image_build_seconds;
+ int64_t rec_maximum_hs_wrapup_seconds;
int64_t rec_pages;
int64_t rec_pages_eviction;
int64_t rec_pages_with_prepare;
diff --git a/src/third_party/wiredtiger/src/include/wiredtiger.in b/src/third_party/wiredtiger/src/include/wiredtiger.in
index 4f04631150b..be1227c773e 100644
--- a/src/third_party/wiredtiger/src/include/wiredtiger.in
+++ b/src/third_party/wiredtiger/src/include/wiredtiger.in
@@ -5662,979 +5662,991 @@ extern int wiredtiger_extension_terminate(WT_CONNECTION *connection);
#define WT_STAT_CONN_CACHE_EVICTION_SPLIT_LEAF 1145
/*! cache: maximum bytes configured */
#define WT_STAT_CONN_CACHE_BYTES_MAX 1146
-/*! cache: maximum page size at eviction */
+/*! cache: maximum page size seen at eviction */
#define WT_STAT_CONN_CACHE_EVICTION_MAXIMUM_PAGE_SIZE 1147
+/*! cache: maximum seconds spent at a single eviction */
+#define WT_STAT_CONN_CACHE_EVICTION_MAXIMUM_SECONDS 1148
/*! cache: modified pages evicted */
-#define WT_STAT_CONN_CACHE_EVICTION_DIRTY 1148
+#define WT_STAT_CONN_CACHE_EVICTION_DIRTY 1149
/*! cache: modified pages evicted by application threads */
-#define WT_STAT_CONN_CACHE_EVICTION_APP_DIRTY 1149
+#define WT_STAT_CONN_CACHE_EVICTION_APP_DIRTY 1150
/*! cache: operations timed out waiting for space in cache */
-#define WT_STAT_CONN_CACHE_TIMED_OUT_OPS 1150
+#define WT_STAT_CONN_CACHE_TIMED_OUT_OPS 1151
/*! cache: overflow pages read into cache */
-#define WT_STAT_CONN_CACHE_READ_OVERFLOW 1151
+#define WT_STAT_CONN_CACHE_READ_OVERFLOW 1152
/*! cache: page split during eviction deepened the tree */
-#define WT_STAT_CONN_CACHE_EVICTION_DEEPEN 1152
+#define WT_STAT_CONN_CACHE_EVICTION_DEEPEN 1153
/*! cache: page written requiring history store records */
-#define WT_STAT_CONN_CACHE_WRITE_HS 1153
+#define WT_STAT_CONN_CACHE_WRITE_HS 1154
/*! cache: pages currently held in the cache */
-#define WT_STAT_CONN_CACHE_PAGES_INUSE 1154
+#define WT_STAT_CONN_CACHE_PAGES_INUSE 1155
/*! cache: pages evicted by application threads */
-#define WT_STAT_CONN_CACHE_EVICTION_APP 1155
+#define WT_STAT_CONN_CACHE_EVICTION_APP 1156
/*! cache: pages evicted in parallel with checkpoint */
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_IN_PARALLEL_WITH_CHECKPOINT 1156
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_IN_PARALLEL_WITH_CHECKPOINT 1157
/*! cache: pages queued for eviction */
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED 1157
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED 1158
/*! cache: pages queued for eviction post lru sorting */
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_POST_LRU 1158
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_POST_LRU 1159
/*! cache: pages queued for urgent eviction */
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_URGENT 1159
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_URGENT 1160
/*! cache: pages queued for urgent eviction during walk */
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_OLDEST 1160
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_OLDEST 1161
/*!
* cache: pages queued for urgent eviction from history store due to high
* dirty content
*/
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_URGENT_HS_DIRTY 1161
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_QUEUED_URGENT_HS_DIRTY 1162
/*! cache: pages read into cache */
-#define WT_STAT_CONN_CACHE_READ 1162
+#define WT_STAT_CONN_CACHE_READ 1163
/*! cache: pages read into cache after truncate */
-#define WT_STAT_CONN_CACHE_READ_DELETED 1163
+#define WT_STAT_CONN_CACHE_READ_DELETED 1164
/*! cache: pages read into cache after truncate in prepare state */
-#define WT_STAT_CONN_CACHE_READ_DELETED_PREPARED 1164
+#define WT_STAT_CONN_CACHE_READ_DELETED_PREPARED 1165
/*! cache: pages requested from the cache */
-#define WT_STAT_CONN_CACHE_PAGES_REQUESTED 1165
+#define WT_STAT_CONN_CACHE_PAGES_REQUESTED 1166
/*! cache: pages seen by eviction walk */
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_SEEN 1166
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_SEEN 1167
/*! cache: pages seen by eviction walk that are already queued */
-#define WT_STAT_CONN_CACHE_EVICTION_PAGES_ALREADY_QUEUED 1167
+#define WT_STAT_CONN_CACHE_EVICTION_PAGES_ALREADY_QUEUED 1168
/*! cache: pages selected for eviction unable to be evicted */
-#define WT_STAT_CONN_CACHE_EVICTION_FAIL 1168
+#define WT_STAT_CONN_CACHE_EVICTION_FAIL 1169
/*!
* cache: pages selected for eviction unable to be evicted because of
* active children on an internal page
*/
-#define WT_STAT_CONN_CACHE_EVICTION_FAIL_ACTIVE_CHILDREN_ON_AN_INTERNAL_PAGE 1169
+#define WT_STAT_CONN_CACHE_EVICTION_FAIL_ACTIVE_CHILDREN_ON_AN_INTERNAL_PAGE 1170
/*!
* cache: pages selected for eviction unable to be evicted because of
* failure in reconciliation
*/
-#define WT_STAT_CONN_CACHE_EVICTION_FAIL_IN_RECONCILIATION 1170
+#define WT_STAT_CONN_CACHE_EVICTION_FAIL_IN_RECONCILIATION 1171
/*!
* cache: pages selected for eviction unable to be evicted because of
* race between checkpoint and updates without timestamps
*/
-#define WT_STAT_CONN_CACHE_EVICTION_FAIL_CHECKPOINT_NO_TS 1171
+#define WT_STAT_CONN_CACHE_EVICTION_FAIL_CHECKPOINT_NO_TS 1172
/*! cache: pages walked for eviction */
-#define WT_STAT_CONN_CACHE_EVICTION_WALK 1172
+#define WT_STAT_CONN_CACHE_EVICTION_WALK 1173
/*! cache: pages written from cache */
-#define WT_STAT_CONN_CACHE_WRITE 1173
+#define WT_STAT_CONN_CACHE_WRITE 1174
/*! cache: pages written requiring in-memory restoration */
-#define WT_STAT_CONN_CACHE_WRITE_RESTORE 1174
+#define WT_STAT_CONN_CACHE_WRITE_RESTORE 1175
/*! cache: percentage overhead */
-#define WT_STAT_CONN_CACHE_OVERHEAD 1175
+#define WT_STAT_CONN_CACHE_OVERHEAD 1176
/*! cache: reverse splits performed */
-#define WT_STAT_CONN_CACHE_REVERSE_SPLITS 1176
+#define WT_STAT_CONN_CACHE_REVERSE_SPLITS 1177
/*!
* cache: reverse splits skipped because of VLCS namespace gap
* restrictions
*/
-#define WT_STAT_CONN_CACHE_REVERSE_SPLITS_SKIPPED_VLCS 1177
+#define WT_STAT_CONN_CACHE_REVERSE_SPLITS_SKIPPED_VLCS 1178
/*! cache: the number of times full update inserted to history store */
-#define WT_STAT_CONN_CACHE_HS_INSERT_FULL_UPDATE 1178
+#define WT_STAT_CONN_CACHE_HS_INSERT_FULL_UPDATE 1179
/*! cache: the number of times reverse modify inserted to history store */
-#define WT_STAT_CONN_CACHE_HS_INSERT_REVERSE_MODIFY 1179
+#define WT_STAT_CONN_CACHE_HS_INSERT_REVERSE_MODIFY 1180
/*! cache: tracked bytes belonging to internal pages in the cache */
-#define WT_STAT_CONN_CACHE_BYTES_INTERNAL 1180
+#define WT_STAT_CONN_CACHE_BYTES_INTERNAL 1181
/*! cache: tracked bytes belonging to leaf pages in the cache */
-#define WT_STAT_CONN_CACHE_BYTES_LEAF 1181
+#define WT_STAT_CONN_CACHE_BYTES_LEAF 1182
/*! cache: tracked dirty bytes in the cache */
-#define WT_STAT_CONN_CACHE_BYTES_DIRTY 1182
+#define WT_STAT_CONN_CACHE_BYTES_DIRTY 1183
/*! cache: tracked dirty pages in the cache */
-#define WT_STAT_CONN_CACHE_PAGES_DIRTY 1183
+#define WT_STAT_CONN_CACHE_PAGES_DIRTY 1184
/*! cache: unmodified pages evicted */
-#define WT_STAT_CONN_CACHE_EVICTION_CLEAN 1184
+#define WT_STAT_CONN_CACHE_EVICTION_CLEAN 1185
/*! capacity: background fsync file handles considered */
-#define WT_STAT_CONN_FSYNC_ALL_FH_TOTAL 1185
+#define WT_STAT_CONN_FSYNC_ALL_FH_TOTAL 1186
/*! capacity: background fsync file handles synced */
-#define WT_STAT_CONN_FSYNC_ALL_FH 1186
+#define WT_STAT_CONN_FSYNC_ALL_FH 1187
/*! capacity: background fsync time (msecs) */
-#define WT_STAT_CONN_FSYNC_ALL_TIME 1187
+#define WT_STAT_CONN_FSYNC_ALL_TIME 1188
/*! capacity: bytes read */
-#define WT_STAT_CONN_CAPACITY_BYTES_READ 1188
+#define WT_STAT_CONN_CAPACITY_BYTES_READ 1189
/*! capacity: bytes written for checkpoint */
-#define WT_STAT_CONN_CAPACITY_BYTES_CKPT 1189
+#define WT_STAT_CONN_CAPACITY_BYTES_CKPT 1190
/*! capacity: bytes written for eviction */
-#define WT_STAT_CONN_CAPACITY_BYTES_EVICT 1190
+#define WT_STAT_CONN_CAPACITY_BYTES_EVICT 1191
/*! capacity: bytes written for log */
-#define WT_STAT_CONN_CAPACITY_BYTES_LOG 1191
+#define WT_STAT_CONN_CAPACITY_BYTES_LOG 1192
/*! capacity: bytes written total */
-#define WT_STAT_CONN_CAPACITY_BYTES_WRITTEN 1192
+#define WT_STAT_CONN_CAPACITY_BYTES_WRITTEN 1193
/*! capacity: threshold to call fsync */
-#define WT_STAT_CONN_CAPACITY_THRESHOLD 1193
+#define WT_STAT_CONN_CAPACITY_THRESHOLD 1194
/*! capacity: time waiting due to total capacity (usecs) */
-#define WT_STAT_CONN_CAPACITY_TIME_TOTAL 1194
+#define WT_STAT_CONN_CAPACITY_TIME_TOTAL 1195
/*! capacity: time waiting during checkpoint (usecs) */
-#define WT_STAT_CONN_CAPACITY_TIME_CKPT 1195
+#define WT_STAT_CONN_CAPACITY_TIME_CKPT 1196
/*! capacity: time waiting during eviction (usecs) */
-#define WT_STAT_CONN_CAPACITY_TIME_EVICT 1196
+#define WT_STAT_CONN_CAPACITY_TIME_EVICT 1197
/*! capacity: time waiting during logging (usecs) */
-#define WT_STAT_CONN_CAPACITY_TIME_LOG 1197
+#define WT_STAT_CONN_CAPACITY_TIME_LOG 1198
/*! capacity: time waiting during read (usecs) */
-#define WT_STAT_CONN_CAPACITY_TIME_READ 1198
+#define WT_STAT_CONN_CAPACITY_TIME_READ 1199
/*! checkpoint-cleanup: pages added for eviction */
-#define WT_STAT_CONN_CC_PAGES_EVICT 1199
+#define WT_STAT_CONN_CC_PAGES_EVICT 1200
/*! checkpoint-cleanup: pages removed */
-#define WT_STAT_CONN_CC_PAGES_REMOVED 1200
+#define WT_STAT_CONN_CC_PAGES_REMOVED 1201
/*! checkpoint-cleanup: pages skipped during tree walk */
-#define WT_STAT_CONN_CC_PAGES_WALK_SKIPPED 1201
+#define WT_STAT_CONN_CC_PAGES_WALK_SKIPPED 1202
/*! checkpoint-cleanup: pages visited */
-#define WT_STAT_CONN_CC_PAGES_VISITED 1202
+#define WT_STAT_CONN_CC_PAGES_VISITED 1203
/*! connection: auto adjusting condition resets */
-#define WT_STAT_CONN_COND_AUTO_WAIT_RESET 1203
+#define WT_STAT_CONN_COND_AUTO_WAIT_RESET 1204
/*! connection: auto adjusting condition wait calls */
-#define WT_STAT_CONN_COND_AUTO_WAIT 1204
+#define WT_STAT_CONN_COND_AUTO_WAIT 1205
/*!
* connection: auto adjusting condition wait raced to update timeout and
* skipped updating
*/
-#define WT_STAT_CONN_COND_AUTO_WAIT_SKIPPED 1205
+#define WT_STAT_CONN_COND_AUTO_WAIT_SKIPPED 1206
/*! connection: detected system time went backwards */
-#define WT_STAT_CONN_TIME_TRAVEL 1206
+#define WT_STAT_CONN_TIME_TRAVEL 1207
/*! connection: files currently open */
-#define WT_STAT_CONN_FILE_OPEN 1207
+#define WT_STAT_CONN_FILE_OPEN 1208
/*! connection: hash bucket array size for data handles */
-#define WT_STAT_CONN_BUCKETS_DH 1208
+#define WT_STAT_CONN_BUCKETS_DH 1209
/*! connection: hash bucket array size general */
-#define WT_STAT_CONN_BUCKETS 1209
+#define WT_STAT_CONN_BUCKETS 1210
/*! connection: memory allocations */
-#define WT_STAT_CONN_MEMORY_ALLOCATION 1210
+#define WT_STAT_CONN_MEMORY_ALLOCATION 1211
/*! connection: memory frees */
-#define WT_STAT_CONN_MEMORY_FREE 1211
+#define WT_STAT_CONN_MEMORY_FREE 1212
/*! connection: memory re-allocations */
-#define WT_STAT_CONN_MEMORY_GROW 1212
+#define WT_STAT_CONN_MEMORY_GROW 1213
/*! connection: pthread mutex condition wait calls */
-#define WT_STAT_CONN_COND_WAIT 1213
+#define WT_STAT_CONN_COND_WAIT 1214
/*! connection: pthread mutex shared lock read-lock calls */
-#define WT_STAT_CONN_RWLOCK_READ 1214
+#define WT_STAT_CONN_RWLOCK_READ 1215
/*! connection: pthread mutex shared lock write-lock calls */
-#define WT_STAT_CONN_RWLOCK_WRITE 1215
+#define WT_STAT_CONN_RWLOCK_WRITE 1216
/*! connection: total fsync I/Os */
-#define WT_STAT_CONN_FSYNC_IO 1216
+#define WT_STAT_CONN_FSYNC_IO 1217
/*! connection: total read I/Os */
-#define WT_STAT_CONN_READ_IO 1217
+#define WT_STAT_CONN_READ_IO 1218
/*! connection: total write I/Os */
-#define WT_STAT_CONN_WRITE_IO 1218
+#define WT_STAT_CONN_WRITE_IO 1219
/*! cursor: Total number of entries skipped by cursor next calls */
-#define WT_STAT_CONN_CURSOR_NEXT_SKIP_TOTAL 1219
+#define WT_STAT_CONN_CURSOR_NEXT_SKIP_TOTAL 1220
/*! cursor: Total number of entries skipped by cursor prev calls */
-#define WT_STAT_CONN_CURSOR_PREV_SKIP_TOTAL 1220
+#define WT_STAT_CONN_CURSOR_PREV_SKIP_TOTAL 1221
/*!
* cursor: Total number of entries skipped to position the history store
* cursor
*/
-#define WT_STAT_CONN_CURSOR_SKIP_HS_CUR_POSITION 1221
+#define WT_STAT_CONN_CURSOR_SKIP_HS_CUR_POSITION 1222
/*!
* cursor: Total number of times a search near has exited due to prefix
* config
*/
-#define WT_STAT_CONN_CURSOR_SEARCH_NEAR_PREFIX_FAST_PATHS 1222
+#define WT_STAT_CONN_CURSOR_SEARCH_NEAR_PREFIX_FAST_PATHS 1223
/*!
* cursor: Total number of times cursor fails to temporarily release
* pinned page to encourage eviction of hot or large page
*/
-#define WT_STAT_CONN_CURSOR_REPOSITION_FAILED 1223
+#define WT_STAT_CONN_CURSOR_REPOSITION_FAILED 1224
/*!
* cursor: Total number of times cursor temporarily releases pinned page
* to encourage eviction of hot or large page
*/
-#define WT_STAT_CONN_CURSOR_REPOSITION 1224
+#define WT_STAT_CONN_CURSOR_REPOSITION 1225
/*! cursor: cached cursor count */
-#define WT_STAT_CONN_CURSOR_CACHED_COUNT 1225
+#define WT_STAT_CONN_CURSOR_CACHED_COUNT 1226
/*! cursor: cursor bound calls that return an error */
-#define WT_STAT_CONN_CURSOR_BOUND_ERROR 1226
+#define WT_STAT_CONN_CURSOR_BOUND_ERROR 1227
/*! cursor: cursor bounds cleared from reset */
-#define WT_STAT_CONN_CURSOR_BOUNDS_RESET 1227
+#define WT_STAT_CONN_CURSOR_BOUNDS_RESET 1228
/*! cursor: cursor bounds comparisons performed */
-#define WT_STAT_CONN_CURSOR_BOUNDS_COMPARISONS 1228
+#define WT_STAT_CONN_CURSOR_BOUNDS_COMPARISONS 1229
/*! cursor: cursor bounds next called on an unpositioned cursor */
-#define WT_STAT_CONN_CURSOR_BOUNDS_NEXT_UNPOSITIONED 1229
+#define WT_STAT_CONN_CURSOR_BOUNDS_NEXT_UNPOSITIONED 1230
/*! cursor: cursor bounds next early exit */
-#define WT_STAT_CONN_CURSOR_BOUNDS_NEXT_EARLY_EXIT 1230
+#define WT_STAT_CONN_CURSOR_BOUNDS_NEXT_EARLY_EXIT 1231
/*! cursor: cursor bounds prev called on an unpositioned cursor */
-#define WT_STAT_CONN_CURSOR_BOUNDS_PREV_UNPOSITIONED 1231
+#define WT_STAT_CONN_CURSOR_BOUNDS_PREV_UNPOSITIONED 1232
/*! cursor: cursor bounds prev early exit */
-#define WT_STAT_CONN_CURSOR_BOUNDS_PREV_EARLY_EXIT 1232
+#define WT_STAT_CONN_CURSOR_BOUNDS_PREV_EARLY_EXIT 1233
/*! cursor: cursor bounds search early exit */
-#define WT_STAT_CONN_CURSOR_BOUNDS_SEARCH_EARLY_EXIT 1233
+#define WT_STAT_CONN_CURSOR_BOUNDS_SEARCH_EARLY_EXIT 1234
/*! cursor: cursor bounds search near call repositioned cursor */
-#define WT_STAT_CONN_CURSOR_BOUNDS_SEARCH_NEAR_REPOSITIONED_CURSOR 1234
+#define WT_STAT_CONN_CURSOR_BOUNDS_SEARCH_NEAR_REPOSITIONED_CURSOR 1235
/*! cursor: cursor bulk loaded cursor insert calls */
-#define WT_STAT_CONN_CURSOR_INSERT_BULK 1235
+#define WT_STAT_CONN_CURSOR_INSERT_BULK 1236
/*! cursor: cursor cache calls that return an error */
-#define WT_STAT_CONN_CURSOR_CACHE_ERROR 1236
+#define WT_STAT_CONN_CURSOR_CACHE_ERROR 1237
/*! cursor: cursor close calls that result in cache */
-#define WT_STAT_CONN_CURSOR_CACHE 1237
+#define WT_STAT_CONN_CURSOR_CACHE 1238
/*! cursor: cursor close calls that return an error */
-#define WT_STAT_CONN_CURSOR_CLOSE_ERROR 1238
+#define WT_STAT_CONN_CURSOR_CLOSE_ERROR 1239
/*! cursor: cursor compare calls that return an error */
-#define WT_STAT_CONN_CURSOR_COMPARE_ERROR 1239
+#define WT_STAT_CONN_CURSOR_COMPARE_ERROR 1240
/*! cursor: cursor create calls */
-#define WT_STAT_CONN_CURSOR_CREATE 1240
+#define WT_STAT_CONN_CURSOR_CREATE 1241
/*! cursor: cursor equals calls that return an error */
-#define WT_STAT_CONN_CURSOR_EQUALS_ERROR 1241
+#define WT_STAT_CONN_CURSOR_EQUALS_ERROR 1242
/*! cursor: cursor get key calls that return an error */
-#define WT_STAT_CONN_CURSOR_GET_KEY_ERROR 1242
+#define WT_STAT_CONN_CURSOR_GET_KEY_ERROR 1243
/*! cursor: cursor get value calls that return an error */
-#define WT_STAT_CONN_CURSOR_GET_VALUE_ERROR 1243
+#define WT_STAT_CONN_CURSOR_GET_VALUE_ERROR 1244
/*! cursor: cursor insert calls */
-#define WT_STAT_CONN_CURSOR_INSERT 1244
+#define WT_STAT_CONN_CURSOR_INSERT 1245
/*! cursor: cursor insert calls that return an error */
-#define WT_STAT_CONN_CURSOR_INSERT_ERROR 1245
+#define WT_STAT_CONN_CURSOR_INSERT_ERROR 1246
/*! cursor: cursor insert check calls that return an error */
-#define WT_STAT_CONN_CURSOR_INSERT_CHECK_ERROR 1246
+#define WT_STAT_CONN_CURSOR_INSERT_CHECK_ERROR 1247
/*! cursor: cursor insert key and value bytes */
-#define WT_STAT_CONN_CURSOR_INSERT_BYTES 1247
+#define WT_STAT_CONN_CURSOR_INSERT_BYTES 1248
/*! cursor: cursor largest key calls that return an error */
-#define WT_STAT_CONN_CURSOR_LARGEST_KEY_ERROR 1248
+#define WT_STAT_CONN_CURSOR_LARGEST_KEY_ERROR 1249
/*! cursor: cursor modify calls */
-#define WT_STAT_CONN_CURSOR_MODIFY 1249
+#define WT_STAT_CONN_CURSOR_MODIFY 1250
/*! cursor: cursor modify calls that return an error */
-#define WT_STAT_CONN_CURSOR_MODIFY_ERROR 1250
+#define WT_STAT_CONN_CURSOR_MODIFY_ERROR 1251
/*! cursor: cursor modify key and value bytes affected */
-#define WT_STAT_CONN_CURSOR_MODIFY_BYTES 1251
+#define WT_STAT_CONN_CURSOR_MODIFY_BYTES 1252
/*! cursor: cursor modify value bytes modified */
-#define WT_STAT_CONN_CURSOR_MODIFY_BYTES_TOUCH 1252
+#define WT_STAT_CONN_CURSOR_MODIFY_BYTES_TOUCH 1253
/*! cursor: cursor next calls */
-#define WT_STAT_CONN_CURSOR_NEXT 1253
+#define WT_STAT_CONN_CURSOR_NEXT 1254
/*! cursor: cursor next calls that return an error */
-#define WT_STAT_CONN_CURSOR_NEXT_ERROR 1254
+#define WT_STAT_CONN_CURSOR_NEXT_ERROR 1255
/*!
* cursor: cursor next calls that skip due to a globally visible history
* store tombstone
*/
-#define WT_STAT_CONN_CURSOR_NEXT_HS_TOMBSTONE 1255
+#define WT_STAT_CONN_CURSOR_NEXT_HS_TOMBSTONE 1256
/*!
* cursor: cursor next calls that skip greater than 1 and fewer than 100
* entries
*/
-#define WT_STAT_CONN_CURSOR_NEXT_SKIP_LT_100 1256
+#define WT_STAT_CONN_CURSOR_NEXT_SKIP_LT_100 1257
/*!
* cursor: cursor next calls that skip greater than or equal to 100
* entries
*/
-#define WT_STAT_CONN_CURSOR_NEXT_SKIP_GE_100 1257
+#define WT_STAT_CONN_CURSOR_NEXT_SKIP_GE_100 1258
/*! cursor: cursor next random calls that return an error */
-#define WT_STAT_CONN_CURSOR_NEXT_RANDOM_ERROR 1258
+#define WT_STAT_CONN_CURSOR_NEXT_RANDOM_ERROR 1259
/*! cursor: cursor operation restarted */
-#define WT_STAT_CONN_CURSOR_RESTART 1259
+#define WT_STAT_CONN_CURSOR_RESTART 1260
/*! cursor: cursor prev calls */
-#define WT_STAT_CONN_CURSOR_PREV 1260
+#define WT_STAT_CONN_CURSOR_PREV 1261
/*! cursor: cursor prev calls that return an error */
-#define WT_STAT_CONN_CURSOR_PREV_ERROR 1261
+#define WT_STAT_CONN_CURSOR_PREV_ERROR 1262
/*!
* cursor: cursor prev calls that skip due to a globally visible history
* store tombstone
*/
-#define WT_STAT_CONN_CURSOR_PREV_HS_TOMBSTONE 1262
+#define WT_STAT_CONN_CURSOR_PREV_HS_TOMBSTONE 1263
/*!
* cursor: cursor prev calls that skip greater than or equal to 100
* entries
*/
-#define WT_STAT_CONN_CURSOR_PREV_SKIP_GE_100 1263
+#define WT_STAT_CONN_CURSOR_PREV_SKIP_GE_100 1264
/*! cursor: cursor prev calls that skip less than 100 entries */
-#define WT_STAT_CONN_CURSOR_PREV_SKIP_LT_100 1264
+#define WT_STAT_CONN_CURSOR_PREV_SKIP_LT_100 1265
/*! cursor: cursor reconfigure calls that return an error */
-#define WT_STAT_CONN_CURSOR_RECONFIGURE_ERROR 1265
+#define WT_STAT_CONN_CURSOR_RECONFIGURE_ERROR 1266
/*! cursor: cursor remove calls */
-#define WT_STAT_CONN_CURSOR_REMOVE 1266
+#define WT_STAT_CONN_CURSOR_REMOVE 1267
/*! cursor: cursor remove calls that return an error */
-#define WT_STAT_CONN_CURSOR_REMOVE_ERROR 1267
+#define WT_STAT_CONN_CURSOR_REMOVE_ERROR 1268
/*! cursor: cursor remove key bytes removed */
-#define WT_STAT_CONN_CURSOR_REMOVE_BYTES 1268
+#define WT_STAT_CONN_CURSOR_REMOVE_BYTES 1269
/*! cursor: cursor reopen calls that return an error */
-#define WT_STAT_CONN_CURSOR_REOPEN_ERROR 1269
+#define WT_STAT_CONN_CURSOR_REOPEN_ERROR 1270
/*! cursor: cursor reserve calls */
-#define WT_STAT_CONN_CURSOR_RESERVE 1270
+#define WT_STAT_CONN_CURSOR_RESERVE 1271
/*! cursor: cursor reserve calls that return an error */
-#define WT_STAT_CONN_CURSOR_RESERVE_ERROR 1271
+#define WT_STAT_CONN_CURSOR_RESERVE_ERROR 1272
/*! cursor: cursor reset calls */
-#define WT_STAT_CONN_CURSOR_RESET 1272
+#define WT_STAT_CONN_CURSOR_RESET 1273
/*! cursor: cursor reset calls that return an error */
-#define WT_STAT_CONN_CURSOR_RESET_ERROR 1273
+#define WT_STAT_CONN_CURSOR_RESET_ERROR 1274
/*! cursor: cursor search calls */
-#define WT_STAT_CONN_CURSOR_SEARCH 1274
+#define WT_STAT_CONN_CURSOR_SEARCH 1275
/*! cursor: cursor search calls that return an error */
-#define WT_STAT_CONN_CURSOR_SEARCH_ERROR 1275
+#define WT_STAT_CONN_CURSOR_SEARCH_ERROR 1276
/*! cursor: cursor search history store calls */
-#define WT_STAT_CONN_CURSOR_SEARCH_HS 1276
+#define WT_STAT_CONN_CURSOR_SEARCH_HS 1277
/*! cursor: cursor search near calls */
-#define WT_STAT_CONN_CURSOR_SEARCH_NEAR 1277
+#define WT_STAT_CONN_CURSOR_SEARCH_NEAR 1278
/*! cursor: cursor search near calls that return an error */
-#define WT_STAT_CONN_CURSOR_SEARCH_NEAR_ERROR 1278
+#define WT_STAT_CONN_CURSOR_SEARCH_NEAR_ERROR 1279
/*! cursor: cursor sweep buckets */
-#define WT_STAT_CONN_CURSOR_SWEEP_BUCKETS 1279
+#define WT_STAT_CONN_CURSOR_SWEEP_BUCKETS 1280
/*! cursor: cursor sweep cursors closed */
-#define WT_STAT_CONN_CURSOR_SWEEP_CLOSED 1280
+#define WT_STAT_CONN_CURSOR_SWEEP_CLOSED 1281
/*! cursor: cursor sweep cursors examined */
-#define WT_STAT_CONN_CURSOR_SWEEP_EXAMINED 1281
+#define WT_STAT_CONN_CURSOR_SWEEP_EXAMINED 1282
/*! cursor: cursor sweeps */
-#define WT_STAT_CONN_CURSOR_SWEEP 1282
+#define WT_STAT_CONN_CURSOR_SWEEP 1283
/*! cursor: cursor truncate calls */
-#define WT_STAT_CONN_CURSOR_TRUNCATE 1283
+#define WT_STAT_CONN_CURSOR_TRUNCATE 1284
/*! cursor: cursor truncates performed on individual keys */
-#define WT_STAT_CONN_CURSOR_TRUNCATE_KEYS_DELETED 1284
+#define WT_STAT_CONN_CURSOR_TRUNCATE_KEYS_DELETED 1285
/*! cursor: cursor update calls */
-#define WT_STAT_CONN_CURSOR_UPDATE 1285
+#define WT_STAT_CONN_CURSOR_UPDATE 1286
/*! cursor: cursor update calls that return an error */
-#define WT_STAT_CONN_CURSOR_UPDATE_ERROR 1286
+#define WT_STAT_CONN_CURSOR_UPDATE_ERROR 1287
/*! cursor: cursor update key and value bytes */
-#define WT_STAT_CONN_CURSOR_UPDATE_BYTES 1287
+#define WT_STAT_CONN_CURSOR_UPDATE_BYTES 1288
/*! cursor: cursor update value size change */
-#define WT_STAT_CONN_CURSOR_UPDATE_BYTES_CHANGED 1288
+#define WT_STAT_CONN_CURSOR_UPDATE_BYTES_CHANGED 1289
/*! cursor: cursors reused from cache */
-#define WT_STAT_CONN_CURSOR_REOPEN 1289
+#define WT_STAT_CONN_CURSOR_REOPEN 1290
/*! cursor: open cursor count */
-#define WT_STAT_CONN_CURSOR_OPEN_COUNT 1290
+#define WT_STAT_CONN_CURSOR_OPEN_COUNT 1291
/*! data-handle: connection data handle size */
-#define WT_STAT_CONN_DH_CONN_HANDLE_SIZE 1291
+#define WT_STAT_CONN_DH_CONN_HANDLE_SIZE 1292
/*! data-handle: connection data handles currently active */
-#define WT_STAT_CONN_DH_CONN_HANDLE_COUNT 1292
+#define WT_STAT_CONN_DH_CONN_HANDLE_COUNT 1293
/*! data-handle: connection sweep candidate became referenced */
-#define WT_STAT_CONN_DH_SWEEP_REF 1293
+#define WT_STAT_CONN_DH_SWEEP_REF 1294
/*! data-handle: connection sweep dhandles closed */
-#define WT_STAT_CONN_DH_SWEEP_CLOSE 1294
+#define WT_STAT_CONN_DH_SWEEP_CLOSE 1295
/*! data-handle: connection sweep dhandles removed from hash list */
-#define WT_STAT_CONN_DH_SWEEP_REMOVE 1295
+#define WT_STAT_CONN_DH_SWEEP_REMOVE 1296
/*! data-handle: connection sweep time-of-death sets */
-#define WT_STAT_CONN_DH_SWEEP_TOD 1296
+#define WT_STAT_CONN_DH_SWEEP_TOD 1297
/*! data-handle: connection sweeps */
-#define WT_STAT_CONN_DH_SWEEPS 1297
+#define WT_STAT_CONN_DH_SWEEPS 1298
/*!
* data-handle: connection sweeps skipped due to checkpoint gathering
* handles
*/
-#define WT_STAT_CONN_DH_SWEEP_SKIP_CKPT 1298
+#define WT_STAT_CONN_DH_SWEEP_SKIP_CKPT 1299
/*! data-handle: session dhandles swept */
-#define WT_STAT_CONN_DH_SESSION_HANDLES 1299
+#define WT_STAT_CONN_DH_SESSION_HANDLES 1300
/*! data-handle: session sweep attempts */
-#define WT_STAT_CONN_DH_SESSION_SWEEPS 1300
+#define WT_STAT_CONN_DH_SESSION_SWEEPS 1301
/*! lock: checkpoint lock acquisitions */
-#define WT_STAT_CONN_LOCK_CHECKPOINT_COUNT 1301
+#define WT_STAT_CONN_LOCK_CHECKPOINT_COUNT 1302
/*! lock: checkpoint lock application thread wait time (usecs) */
-#define WT_STAT_CONN_LOCK_CHECKPOINT_WAIT_APPLICATION 1302
+#define WT_STAT_CONN_LOCK_CHECKPOINT_WAIT_APPLICATION 1303
/*! lock: checkpoint lock internal thread wait time (usecs) */
-#define WT_STAT_CONN_LOCK_CHECKPOINT_WAIT_INTERNAL 1303
+#define WT_STAT_CONN_LOCK_CHECKPOINT_WAIT_INTERNAL 1304
/*! lock: dhandle lock application thread time waiting (usecs) */
-#define WT_STAT_CONN_LOCK_DHANDLE_WAIT_APPLICATION 1304
+#define WT_STAT_CONN_LOCK_DHANDLE_WAIT_APPLICATION 1305
/*! lock: dhandle lock internal thread time waiting (usecs) */
-#define WT_STAT_CONN_LOCK_DHANDLE_WAIT_INTERNAL 1305
+#define WT_STAT_CONN_LOCK_DHANDLE_WAIT_INTERNAL 1306
/*! lock: dhandle read lock acquisitions */
-#define WT_STAT_CONN_LOCK_DHANDLE_READ_COUNT 1306
+#define WT_STAT_CONN_LOCK_DHANDLE_READ_COUNT 1307
/*! lock: dhandle write lock acquisitions */
-#define WT_STAT_CONN_LOCK_DHANDLE_WRITE_COUNT 1307
+#define WT_STAT_CONN_LOCK_DHANDLE_WRITE_COUNT 1308
/*!
* lock: durable timestamp queue lock application thread time waiting
* (usecs)
*/
-#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_WAIT_APPLICATION 1308
+#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_WAIT_APPLICATION 1309
/*!
* lock: durable timestamp queue lock internal thread time waiting
* (usecs)
*/
-#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_WAIT_INTERNAL 1309
+#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_WAIT_INTERNAL 1310
/*! lock: durable timestamp queue read lock acquisitions */
-#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_READ_COUNT 1310
+#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_READ_COUNT 1311
/*! lock: durable timestamp queue write lock acquisitions */
-#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_WRITE_COUNT 1311
+#define WT_STAT_CONN_LOCK_DURABLE_TIMESTAMP_WRITE_COUNT 1312
/*! lock: metadata lock acquisitions */
-#define WT_STAT_CONN_LOCK_METADATA_COUNT 1312
+#define WT_STAT_CONN_LOCK_METADATA_COUNT 1313
/*! lock: metadata lock application thread wait time (usecs) */
-#define WT_STAT_CONN_LOCK_METADATA_WAIT_APPLICATION 1313
+#define WT_STAT_CONN_LOCK_METADATA_WAIT_APPLICATION 1314
/*! lock: metadata lock internal thread wait time (usecs) */
-#define WT_STAT_CONN_LOCK_METADATA_WAIT_INTERNAL 1314
+#define WT_STAT_CONN_LOCK_METADATA_WAIT_INTERNAL 1315
/*!
* lock: read timestamp queue lock application thread time waiting
* (usecs)
*/
-#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_WAIT_APPLICATION 1315
+#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_WAIT_APPLICATION 1316
/*! lock: read timestamp queue lock internal thread time waiting (usecs) */
-#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_WAIT_INTERNAL 1316
+#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_WAIT_INTERNAL 1317
/*! lock: read timestamp queue read lock acquisitions */
-#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_READ_COUNT 1317
+#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_READ_COUNT 1318
/*! lock: read timestamp queue write lock acquisitions */
-#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_WRITE_COUNT 1318
+#define WT_STAT_CONN_LOCK_READ_TIMESTAMP_WRITE_COUNT 1319
/*! lock: schema lock acquisitions */
-#define WT_STAT_CONN_LOCK_SCHEMA_COUNT 1319
+#define WT_STAT_CONN_LOCK_SCHEMA_COUNT 1320
/*! lock: schema lock application thread wait time (usecs) */
-#define WT_STAT_CONN_LOCK_SCHEMA_WAIT_APPLICATION 1320
+#define WT_STAT_CONN_LOCK_SCHEMA_WAIT_APPLICATION 1321
/*! lock: schema lock internal thread wait time (usecs) */
-#define WT_STAT_CONN_LOCK_SCHEMA_WAIT_INTERNAL 1321
+#define WT_STAT_CONN_LOCK_SCHEMA_WAIT_INTERNAL 1322
/*!
* lock: table lock application thread time waiting for the table lock
* (usecs)
*/
-#define WT_STAT_CONN_LOCK_TABLE_WAIT_APPLICATION 1322
+#define WT_STAT_CONN_LOCK_TABLE_WAIT_APPLICATION 1323
/*!
* lock: table lock internal thread time waiting for the table lock
* (usecs)
*/
-#define WT_STAT_CONN_LOCK_TABLE_WAIT_INTERNAL 1323
+#define WT_STAT_CONN_LOCK_TABLE_WAIT_INTERNAL 1324
/*! lock: table read lock acquisitions */
-#define WT_STAT_CONN_LOCK_TABLE_READ_COUNT 1324
+#define WT_STAT_CONN_LOCK_TABLE_READ_COUNT 1325
/*! lock: table write lock acquisitions */
-#define WT_STAT_CONN_LOCK_TABLE_WRITE_COUNT 1325
+#define WT_STAT_CONN_LOCK_TABLE_WRITE_COUNT 1326
/*! lock: txn global lock application thread time waiting (usecs) */
-#define WT_STAT_CONN_LOCK_TXN_GLOBAL_WAIT_APPLICATION 1326
+#define WT_STAT_CONN_LOCK_TXN_GLOBAL_WAIT_APPLICATION 1327
/*! lock: txn global lock internal thread time waiting (usecs) */
-#define WT_STAT_CONN_LOCK_TXN_GLOBAL_WAIT_INTERNAL 1327
+#define WT_STAT_CONN_LOCK_TXN_GLOBAL_WAIT_INTERNAL 1328
/*! lock: txn global read lock acquisitions */
-#define WT_STAT_CONN_LOCK_TXN_GLOBAL_READ_COUNT 1328
+#define WT_STAT_CONN_LOCK_TXN_GLOBAL_READ_COUNT 1329
/*! lock: txn global write lock acquisitions */
-#define WT_STAT_CONN_LOCK_TXN_GLOBAL_WRITE_COUNT 1329
+#define WT_STAT_CONN_LOCK_TXN_GLOBAL_WRITE_COUNT 1330
/*! log: busy returns attempting to switch slots */
-#define WT_STAT_CONN_LOG_SLOT_SWITCH_BUSY 1330
+#define WT_STAT_CONN_LOG_SLOT_SWITCH_BUSY 1331
/*! log: force log remove time sleeping (usecs) */
-#define WT_STAT_CONN_LOG_FORCE_REMOVE_SLEEP 1331
+#define WT_STAT_CONN_LOG_FORCE_REMOVE_SLEEP 1332
/*! log: log bytes of payload data */
-#define WT_STAT_CONN_LOG_BYTES_PAYLOAD 1332
+#define WT_STAT_CONN_LOG_BYTES_PAYLOAD 1333
/*! log: log bytes written */
-#define WT_STAT_CONN_LOG_BYTES_WRITTEN 1333
+#define WT_STAT_CONN_LOG_BYTES_WRITTEN 1334
/*! log: log files manually zero-filled */
-#define WT_STAT_CONN_LOG_ZERO_FILLS 1334
+#define WT_STAT_CONN_LOG_ZERO_FILLS 1335
/*! log: log flush operations */
-#define WT_STAT_CONN_LOG_FLUSH 1335
+#define WT_STAT_CONN_LOG_FLUSH 1336
/*! log: log force write operations */
-#define WT_STAT_CONN_LOG_FORCE_WRITE 1336
+#define WT_STAT_CONN_LOG_FORCE_WRITE 1337
/*! log: log force write operations skipped */
-#define WT_STAT_CONN_LOG_FORCE_WRITE_SKIP 1337
+#define WT_STAT_CONN_LOG_FORCE_WRITE_SKIP 1338
/*! log: log records compressed */
-#define WT_STAT_CONN_LOG_COMPRESS_WRITES 1338
+#define WT_STAT_CONN_LOG_COMPRESS_WRITES 1339
/*! log: log records not compressed */
-#define WT_STAT_CONN_LOG_COMPRESS_WRITE_FAILS 1339
+#define WT_STAT_CONN_LOG_COMPRESS_WRITE_FAILS 1340
/*! log: log records too small to compress */
-#define WT_STAT_CONN_LOG_COMPRESS_SMALL 1340
+#define WT_STAT_CONN_LOG_COMPRESS_SMALL 1341
/*! log: log release advances write LSN */
-#define WT_STAT_CONN_LOG_RELEASE_WRITE_LSN 1341
+#define WT_STAT_CONN_LOG_RELEASE_WRITE_LSN 1342
/*! log: log scan operations */
-#define WT_STAT_CONN_LOG_SCANS 1342
+#define WT_STAT_CONN_LOG_SCANS 1343
/*! log: log scan records requiring two reads */
-#define WT_STAT_CONN_LOG_SCAN_REREADS 1343
+#define WT_STAT_CONN_LOG_SCAN_REREADS 1344
/*! log: log server thread advances write LSN */
-#define WT_STAT_CONN_LOG_WRITE_LSN 1344
+#define WT_STAT_CONN_LOG_WRITE_LSN 1345
/*! log: log server thread write LSN walk skipped */
-#define WT_STAT_CONN_LOG_WRITE_LSN_SKIP 1345
+#define WT_STAT_CONN_LOG_WRITE_LSN_SKIP 1346
/*! log: log sync operations */
-#define WT_STAT_CONN_LOG_SYNC 1346
+#define WT_STAT_CONN_LOG_SYNC 1347
/*! log: log sync time duration (usecs) */
-#define WT_STAT_CONN_LOG_SYNC_DURATION 1347
+#define WT_STAT_CONN_LOG_SYNC_DURATION 1348
/*! log: log sync_dir operations */
-#define WT_STAT_CONN_LOG_SYNC_DIR 1348
+#define WT_STAT_CONN_LOG_SYNC_DIR 1349
/*! log: log sync_dir time duration (usecs) */
-#define WT_STAT_CONN_LOG_SYNC_DIR_DURATION 1349
+#define WT_STAT_CONN_LOG_SYNC_DIR_DURATION 1350
/*! log: log write operations */
-#define WT_STAT_CONN_LOG_WRITES 1350
+#define WT_STAT_CONN_LOG_WRITES 1351
/*! log: logging bytes consolidated */
-#define WT_STAT_CONN_LOG_SLOT_CONSOLIDATED 1351
+#define WT_STAT_CONN_LOG_SLOT_CONSOLIDATED 1352
/*! log: maximum log file size */
-#define WT_STAT_CONN_LOG_MAX_FILESIZE 1352
+#define WT_STAT_CONN_LOG_MAX_FILESIZE 1353
/*! log: number of pre-allocated log files to create */
-#define WT_STAT_CONN_LOG_PREALLOC_MAX 1353
+#define WT_STAT_CONN_LOG_PREALLOC_MAX 1354
/*! log: pre-allocated log files not ready and missed */
-#define WT_STAT_CONN_LOG_PREALLOC_MISSED 1354
+#define WT_STAT_CONN_LOG_PREALLOC_MISSED 1355
/*! log: pre-allocated log files prepared */
-#define WT_STAT_CONN_LOG_PREALLOC_FILES 1355
+#define WT_STAT_CONN_LOG_PREALLOC_FILES 1356
/*! log: pre-allocated log files used */
-#define WT_STAT_CONN_LOG_PREALLOC_USED 1356
+#define WT_STAT_CONN_LOG_PREALLOC_USED 1357
/*! log: records processed by log scan */
-#define WT_STAT_CONN_LOG_SCAN_RECORDS 1357
+#define WT_STAT_CONN_LOG_SCAN_RECORDS 1358
/*! log: slot close lost race */
-#define WT_STAT_CONN_LOG_SLOT_CLOSE_RACE 1358
+#define WT_STAT_CONN_LOG_SLOT_CLOSE_RACE 1359
/*! log: slot close unbuffered waits */
-#define WT_STAT_CONN_LOG_SLOT_CLOSE_UNBUF 1359
+#define WT_STAT_CONN_LOG_SLOT_CLOSE_UNBUF 1360
/*! log: slot closures */
-#define WT_STAT_CONN_LOG_SLOT_CLOSES 1360
+#define WT_STAT_CONN_LOG_SLOT_CLOSES 1361
/*! log: slot join atomic update races */
-#define WT_STAT_CONN_LOG_SLOT_RACES 1361
+#define WT_STAT_CONN_LOG_SLOT_RACES 1362
/*! log: slot join calls atomic updates raced */
-#define WT_STAT_CONN_LOG_SLOT_YIELD_RACE 1362
+#define WT_STAT_CONN_LOG_SLOT_YIELD_RACE 1363
/*! log: slot join calls did not yield */
-#define WT_STAT_CONN_LOG_SLOT_IMMEDIATE 1363
+#define WT_STAT_CONN_LOG_SLOT_IMMEDIATE 1364
/*! log: slot join calls found active slot closed */
-#define WT_STAT_CONN_LOG_SLOT_YIELD_CLOSE 1364
+#define WT_STAT_CONN_LOG_SLOT_YIELD_CLOSE 1365
/*! log: slot join calls slept */
-#define WT_STAT_CONN_LOG_SLOT_YIELD_SLEEP 1365
+#define WT_STAT_CONN_LOG_SLOT_YIELD_SLEEP 1366
/*! log: slot join calls yielded */
-#define WT_STAT_CONN_LOG_SLOT_YIELD 1366
+#define WT_STAT_CONN_LOG_SLOT_YIELD 1367
/*! log: slot join found active slot closed */
-#define WT_STAT_CONN_LOG_SLOT_ACTIVE_CLOSED 1367
+#define WT_STAT_CONN_LOG_SLOT_ACTIVE_CLOSED 1368
/*! log: slot joins yield time (usecs) */
-#define WT_STAT_CONN_LOG_SLOT_YIELD_DURATION 1368
+#define WT_STAT_CONN_LOG_SLOT_YIELD_DURATION 1369
/*! log: slot transitions unable to find free slot */
-#define WT_STAT_CONN_LOG_SLOT_NO_FREE_SLOTS 1369
+#define WT_STAT_CONN_LOG_SLOT_NO_FREE_SLOTS 1370
/*! log: slot unbuffered writes */
-#define WT_STAT_CONN_LOG_SLOT_UNBUFFERED 1370
+#define WT_STAT_CONN_LOG_SLOT_UNBUFFERED 1371
/*! log: total in-memory size of compressed records */
-#define WT_STAT_CONN_LOG_COMPRESS_MEM 1371
+#define WT_STAT_CONN_LOG_COMPRESS_MEM 1372
/*! log: total log buffer size */
-#define WT_STAT_CONN_LOG_BUFFER_SIZE 1372
+#define WT_STAT_CONN_LOG_BUFFER_SIZE 1373
/*! log: total size of compressed records */
-#define WT_STAT_CONN_LOG_COMPRESS_LEN 1373
+#define WT_STAT_CONN_LOG_COMPRESS_LEN 1374
/*! log: written slots coalesced */
-#define WT_STAT_CONN_LOG_SLOT_COALESCED 1374
+#define WT_STAT_CONN_LOG_SLOT_COALESCED 1375
/*! log: yields waiting for previous log file close */
-#define WT_STAT_CONN_LOG_CLOSE_YIELDS 1375
+#define WT_STAT_CONN_LOG_CLOSE_YIELDS 1376
/*! perf: file system read latency histogram (bucket 1) - 10-49ms */
-#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT50 1376
+#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT50 1377
/*! perf: file system read latency histogram (bucket 2) - 50-99ms */
-#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT100 1377
+#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT100 1378
/*! perf: file system read latency histogram (bucket 3) - 100-249ms */
-#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT250 1378
+#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT250 1379
/*! perf: file system read latency histogram (bucket 4) - 250-499ms */
-#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT500 1379
+#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT500 1380
/*! perf: file system read latency histogram (bucket 5) - 500-999ms */
-#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT1000 1380
+#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_LT1000 1381
/*! perf: file system read latency histogram (bucket 6) - 1000ms+ */
-#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_GT1000 1381
+#define WT_STAT_CONN_PERF_HIST_FSREAD_LATENCY_GT1000 1382
/*! perf: file system write latency histogram (bucket 1) - 10-49ms */
-#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT50 1382
+#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT50 1383
/*! perf: file system write latency histogram (bucket 2) - 50-99ms */
-#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT100 1383
+#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT100 1384
/*! perf: file system write latency histogram (bucket 3) - 100-249ms */
-#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT250 1384
+#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT250 1385
/*! perf: file system write latency histogram (bucket 4) - 250-499ms */
-#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT500 1385
+#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT500 1386
/*! perf: file system write latency histogram (bucket 5) - 500-999ms */
-#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT1000 1386
+#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_LT1000 1387
/*! perf: file system write latency histogram (bucket 6) - 1000ms+ */
-#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_GT1000 1387
+#define WT_STAT_CONN_PERF_HIST_FSWRITE_LATENCY_GT1000 1388
/*! perf: operation read latency histogram (bucket 1) - 100-249us */
-#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT250 1388
+#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT250 1389
/*! perf: operation read latency histogram (bucket 2) - 250-499us */
-#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT500 1389
+#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT500 1390
/*! perf: operation read latency histogram (bucket 3) - 500-999us */
-#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT1000 1390
+#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT1000 1391
/*! perf: operation read latency histogram (bucket 4) - 1000-9999us */
-#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT10000 1391
+#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_LT10000 1392
/*! perf: operation read latency histogram (bucket 5) - 10000us+ */
-#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_GT10000 1392
+#define WT_STAT_CONN_PERF_HIST_OPREAD_LATENCY_GT10000 1393
/*! perf: operation write latency histogram (bucket 1) - 100-249us */
-#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT250 1393
+#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT250 1394
/*! perf: operation write latency histogram (bucket 2) - 250-499us */
-#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT500 1394
+#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT500 1395
/*! perf: operation write latency histogram (bucket 3) - 500-999us */
-#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT1000 1395
+#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT1000 1396
/*! perf: operation write latency histogram (bucket 4) - 1000-9999us */
-#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT10000 1396
+#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_LT10000 1397
/*! perf: operation write latency histogram (bucket 5) - 10000us+ */
-#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_GT10000 1397
+#define WT_STAT_CONN_PERF_HIST_OPWRITE_LATENCY_GT10000 1398
/*! reconciliation: VLCS pages explicitly reconciled as empty */
-#define WT_STAT_CONN_REC_VLCS_EMPTIED_PAGES 1398
+#define WT_STAT_CONN_REC_VLCS_EMPTIED_PAGES 1399
/*! reconciliation: approximate byte size of timestamps in pages written */
-#define WT_STAT_CONN_REC_TIME_WINDOW_BYTES_TS 1399
+#define WT_STAT_CONN_REC_TIME_WINDOW_BYTES_TS 1400
/*!
* reconciliation: approximate byte size of transaction IDs in pages
* written
*/
-#define WT_STAT_CONN_REC_TIME_WINDOW_BYTES_TXN 1400
+#define WT_STAT_CONN_REC_TIME_WINDOW_BYTES_TXN 1401
/*! reconciliation: fast-path pages deleted */
-#define WT_STAT_CONN_REC_PAGE_DELETE_FAST 1401
+#define WT_STAT_CONN_REC_PAGE_DELETE_FAST 1402
/*! reconciliation: leaf-page overflow keys */
-#define WT_STAT_CONN_REC_OVERFLOW_KEY_LEAF 1402
+#define WT_STAT_CONN_REC_OVERFLOW_KEY_LEAF 1403
/*! reconciliation: maximum seconds spent in a reconciliation call */
-#define WT_STAT_CONN_REC_MAXIMUM_SECONDS 1403
+#define WT_STAT_CONN_REC_MAXIMUM_SECONDS 1404
+/*!
+ * reconciliation: maximum seconds spent in building a disk image in a
+ * reconciliation
+ */
+#define WT_STAT_CONN_REC_MAXIMUM_IMAGE_BUILD_SECONDS 1405
+/*!
+ * reconciliation: maximum seconds spent in moving updates to the history
+ * store in a reconciliation
+ */
+#define WT_STAT_CONN_REC_MAXIMUM_HS_WRAPUP_SECONDS 1406
/*! reconciliation: page reconciliation calls */
-#define WT_STAT_CONN_REC_PAGES 1404
+#define WT_STAT_CONN_REC_PAGES 1407
/*! reconciliation: page reconciliation calls for eviction */
-#define WT_STAT_CONN_REC_PAGES_EVICTION 1405
+#define WT_STAT_CONN_REC_PAGES_EVICTION 1408
/*!
* reconciliation: page reconciliation calls that resulted in values with
* prepared transaction metadata
*/
-#define WT_STAT_CONN_REC_PAGES_WITH_PREPARE 1406
+#define WT_STAT_CONN_REC_PAGES_WITH_PREPARE 1409
/*!
* reconciliation: page reconciliation calls that resulted in values with
* timestamps
*/
-#define WT_STAT_CONN_REC_PAGES_WITH_TS 1407
+#define WT_STAT_CONN_REC_PAGES_WITH_TS 1410
/*!
* reconciliation: page reconciliation calls that resulted in values with
* transaction ids
*/
-#define WT_STAT_CONN_REC_PAGES_WITH_TXN 1408
+#define WT_STAT_CONN_REC_PAGES_WITH_TXN 1411
/*! reconciliation: pages deleted */
-#define WT_STAT_CONN_REC_PAGE_DELETE 1409
+#define WT_STAT_CONN_REC_PAGE_DELETE 1412
/*!
* reconciliation: pages written including an aggregated newest start
* durable timestamp
*/
-#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_START_DURABLE_TS 1410
+#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_START_DURABLE_TS 1413
/*!
* reconciliation: pages written including an aggregated newest stop
* durable timestamp
*/
-#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_STOP_DURABLE_TS 1411
+#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_STOP_DURABLE_TS 1414
/*!
* reconciliation: pages written including an aggregated newest stop
* timestamp
*/
-#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_STOP_TS 1412
+#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_STOP_TS 1415
/*!
* reconciliation: pages written including an aggregated newest stop
* transaction ID
*/
-#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_STOP_TXN 1413
+#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_STOP_TXN 1416
/*!
* reconciliation: pages written including an aggregated newest
* transaction ID
*/
-#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_TXN 1414
+#define WT_STAT_CONN_REC_TIME_AGGR_NEWEST_TXN 1417
/*!
* reconciliation: pages written including an aggregated oldest start
* timestamp
*/
-#define WT_STAT_CONN_REC_TIME_AGGR_OLDEST_START_TS 1415
+#define WT_STAT_CONN_REC_TIME_AGGR_OLDEST_START_TS 1418
/*! reconciliation: pages written including an aggregated prepare */
-#define WT_STAT_CONN_REC_TIME_AGGR_PREPARED 1416
+#define WT_STAT_CONN_REC_TIME_AGGR_PREPARED 1419
/*! reconciliation: pages written including at least one prepare state */
-#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_PREPARED 1417
+#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_PREPARED 1420
/*!
* reconciliation: pages written including at least one start durable
* timestamp
*/
-#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_DURABLE_START_TS 1418
+#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_DURABLE_START_TS 1421
/*! reconciliation: pages written including at least one start timestamp */
-#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_START_TS 1419
+#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_START_TS 1422
/*!
* reconciliation: pages written including at least one start transaction
* ID
*/
-#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_START_TXN 1420
+#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_START_TXN 1423
/*!
* reconciliation: pages written including at least one stop durable
* timestamp
*/
-#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_DURABLE_STOP_TS 1421
+#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_DURABLE_STOP_TS 1424
/*! reconciliation: pages written including at least one stop timestamp */
-#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_STOP_TS 1422
+#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_STOP_TS 1425
/*!
* reconciliation: pages written including at least one stop transaction
* ID
*/
-#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_STOP_TXN 1423
+#define WT_STAT_CONN_REC_TIME_WINDOW_PAGES_STOP_TXN 1426
/*! reconciliation: records written including a prepare state */
-#define WT_STAT_CONN_REC_TIME_WINDOW_PREPARED 1424
+#define WT_STAT_CONN_REC_TIME_WINDOW_PREPARED 1427
/*! reconciliation: records written including a start durable timestamp */
-#define WT_STAT_CONN_REC_TIME_WINDOW_DURABLE_START_TS 1425
+#define WT_STAT_CONN_REC_TIME_WINDOW_DURABLE_START_TS 1428
/*! reconciliation: records written including a start timestamp */
-#define WT_STAT_CONN_REC_TIME_WINDOW_START_TS 1426
+#define WT_STAT_CONN_REC_TIME_WINDOW_START_TS 1429
/*! reconciliation: records written including a start transaction ID */
-#define WT_STAT_CONN_REC_TIME_WINDOW_START_TXN 1427
+#define WT_STAT_CONN_REC_TIME_WINDOW_START_TXN 1430
/*! reconciliation: records written including a stop durable timestamp */
-#define WT_STAT_CONN_REC_TIME_WINDOW_DURABLE_STOP_TS 1428
+#define WT_STAT_CONN_REC_TIME_WINDOW_DURABLE_STOP_TS 1431
/*! reconciliation: records written including a stop timestamp */
-#define WT_STAT_CONN_REC_TIME_WINDOW_STOP_TS 1429
+#define WT_STAT_CONN_REC_TIME_WINDOW_STOP_TS 1432
/*! reconciliation: records written including a stop transaction ID */
-#define WT_STAT_CONN_REC_TIME_WINDOW_STOP_TXN 1430
+#define WT_STAT_CONN_REC_TIME_WINDOW_STOP_TXN 1433
/*! reconciliation: split bytes currently awaiting free */
-#define WT_STAT_CONN_REC_SPLIT_STASHED_BYTES 1431
+#define WT_STAT_CONN_REC_SPLIT_STASHED_BYTES 1434
/*! reconciliation: split objects currently awaiting free */
-#define WT_STAT_CONN_REC_SPLIT_STASHED_OBJECTS 1432
+#define WT_STAT_CONN_REC_SPLIT_STASHED_OBJECTS 1435
/*! session: attempts to remove a local object and the object is in use */
-#define WT_STAT_CONN_LOCAL_OBJECTS_INUSE 1433
+#define WT_STAT_CONN_LOCAL_OBJECTS_INUSE 1436
/*! session: flush_tier failed calls */
-#define WT_STAT_CONN_FLUSH_TIER_FAIL 1434
+#define WT_STAT_CONN_FLUSH_TIER_FAIL 1437
/*! session: flush_tier operation calls */
-#define WT_STAT_CONN_FLUSH_TIER 1435
+#define WT_STAT_CONN_FLUSH_TIER 1438
/*! session: flush_tier tables skipped due to no checkpoint */
-#define WT_STAT_CONN_FLUSH_TIER_SKIPPED 1436
+#define WT_STAT_CONN_FLUSH_TIER_SKIPPED 1439
/*! session: flush_tier tables switched */
-#define WT_STAT_CONN_FLUSH_TIER_SWITCHED 1437
+#define WT_STAT_CONN_FLUSH_TIER_SWITCHED 1440
/*! session: local objects removed */
-#define WT_STAT_CONN_LOCAL_OBJECTS_REMOVED 1438
+#define WT_STAT_CONN_LOCAL_OBJECTS_REMOVED 1441
/*! session: open session count */
-#define WT_STAT_CONN_SESSION_OPEN 1439
+#define WT_STAT_CONN_SESSION_OPEN 1442
/*! session: session query timestamp calls */
-#define WT_STAT_CONN_SESSION_QUERY_TS 1440
+#define WT_STAT_CONN_SESSION_QUERY_TS 1443
/*! session: table alter failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_ALTER_FAIL 1441
+#define WT_STAT_CONN_SESSION_TABLE_ALTER_FAIL 1444
/*! session: table alter successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_ALTER_SUCCESS 1442
+#define WT_STAT_CONN_SESSION_TABLE_ALTER_SUCCESS 1445
/*! session: table alter triggering checkpoint calls */
-#define WT_STAT_CONN_SESSION_TABLE_ALTER_TRIGGER_CHECKPOINT 1443
+#define WT_STAT_CONN_SESSION_TABLE_ALTER_TRIGGER_CHECKPOINT 1446
/*! session: table alter unchanged and skipped */
-#define WT_STAT_CONN_SESSION_TABLE_ALTER_SKIP 1444
+#define WT_STAT_CONN_SESSION_TABLE_ALTER_SKIP 1447
/*! session: table compact failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_COMPACT_FAIL 1445
+#define WT_STAT_CONN_SESSION_TABLE_COMPACT_FAIL 1448
/*! session: table compact failed calls due to cache pressure */
-#define WT_STAT_CONN_SESSION_TABLE_COMPACT_FAIL_CACHE_PRESSURE 1446
+#define WT_STAT_CONN_SESSION_TABLE_COMPACT_FAIL_CACHE_PRESSURE 1449
/*! session: table compact running */
-#define WT_STAT_CONN_SESSION_TABLE_COMPACT_RUNNING 1447
+#define WT_STAT_CONN_SESSION_TABLE_COMPACT_RUNNING 1450
/*! session: table compact skipped as process would not reduce file size */
-#define WT_STAT_CONN_SESSION_TABLE_COMPACT_SKIPPED 1448
+#define WT_STAT_CONN_SESSION_TABLE_COMPACT_SKIPPED 1451
/*! session: table compact successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_COMPACT_SUCCESS 1449
+#define WT_STAT_CONN_SESSION_TABLE_COMPACT_SUCCESS 1452
/*! session: table compact timeout */
-#define WT_STAT_CONN_SESSION_TABLE_COMPACT_TIMEOUT 1450
+#define WT_STAT_CONN_SESSION_TABLE_COMPACT_TIMEOUT 1453
/*! session: table create failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_CREATE_FAIL 1451
+#define WT_STAT_CONN_SESSION_TABLE_CREATE_FAIL 1454
/*! session: table create successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_CREATE_SUCCESS 1452
+#define WT_STAT_CONN_SESSION_TABLE_CREATE_SUCCESS 1455
/*! session: table create with import failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_CREATE_IMPORT_FAIL 1453
+#define WT_STAT_CONN_SESSION_TABLE_CREATE_IMPORT_FAIL 1456
/*! session: table create with import successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_CREATE_IMPORT_SUCCESS 1454
+#define WT_STAT_CONN_SESSION_TABLE_CREATE_IMPORT_SUCCESS 1457
/*! session: table drop failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_DROP_FAIL 1455
+#define WT_STAT_CONN_SESSION_TABLE_DROP_FAIL 1458
/*! session: table drop successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_DROP_SUCCESS 1456
+#define WT_STAT_CONN_SESSION_TABLE_DROP_SUCCESS 1459
/*! session: table rename failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_RENAME_FAIL 1457
+#define WT_STAT_CONN_SESSION_TABLE_RENAME_FAIL 1460
/*! session: table rename successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_RENAME_SUCCESS 1458
+#define WT_STAT_CONN_SESSION_TABLE_RENAME_SUCCESS 1461
/*! session: table salvage failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_SALVAGE_FAIL 1459
+#define WT_STAT_CONN_SESSION_TABLE_SALVAGE_FAIL 1462
/*! session: table salvage successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_SALVAGE_SUCCESS 1460
+#define WT_STAT_CONN_SESSION_TABLE_SALVAGE_SUCCESS 1463
/*! session: table truncate failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_TRUNCATE_FAIL 1461
+#define WT_STAT_CONN_SESSION_TABLE_TRUNCATE_FAIL 1464
/*! session: table truncate successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_TRUNCATE_SUCCESS 1462
+#define WT_STAT_CONN_SESSION_TABLE_TRUNCATE_SUCCESS 1465
/*! session: table verify failed calls */
-#define WT_STAT_CONN_SESSION_TABLE_VERIFY_FAIL 1463
+#define WT_STAT_CONN_SESSION_TABLE_VERIFY_FAIL 1466
/*! session: table verify successful calls */
-#define WT_STAT_CONN_SESSION_TABLE_VERIFY_SUCCESS 1464
+#define WT_STAT_CONN_SESSION_TABLE_VERIFY_SUCCESS 1467
/*! session: tiered operations dequeued and processed */
-#define WT_STAT_CONN_TIERED_WORK_UNITS_DEQUEUED 1465
+#define WT_STAT_CONN_TIERED_WORK_UNITS_DEQUEUED 1468
/*! session: tiered operations removed without processing */
-#define WT_STAT_CONN_TIERED_WORK_UNITS_REMOVED 1466
+#define WT_STAT_CONN_TIERED_WORK_UNITS_REMOVED 1469
/*! session: tiered operations scheduled */
-#define WT_STAT_CONN_TIERED_WORK_UNITS_CREATED 1467
+#define WT_STAT_CONN_TIERED_WORK_UNITS_CREATED 1470
/*! session: tiered storage local retention time (secs) */
-#define WT_STAT_CONN_TIERED_RETENTION 1468
+#define WT_STAT_CONN_TIERED_RETENTION 1471
/*! thread-state: active filesystem fsync calls */
-#define WT_STAT_CONN_THREAD_FSYNC_ACTIVE 1469
+#define WT_STAT_CONN_THREAD_FSYNC_ACTIVE 1472
/*! thread-state: active filesystem read calls */
-#define WT_STAT_CONN_THREAD_READ_ACTIVE 1470
+#define WT_STAT_CONN_THREAD_READ_ACTIVE 1473
/*! thread-state: active filesystem write calls */
-#define WT_STAT_CONN_THREAD_WRITE_ACTIVE 1471
+#define WT_STAT_CONN_THREAD_WRITE_ACTIVE 1474
/*! thread-yield: application thread time evicting (usecs) */
-#define WT_STAT_CONN_APPLICATION_EVICT_TIME 1472
+#define WT_STAT_CONN_APPLICATION_EVICT_TIME 1475
/*! thread-yield: application thread time waiting for cache (usecs) */
-#define WT_STAT_CONN_APPLICATION_CACHE_TIME 1473
+#define WT_STAT_CONN_APPLICATION_CACHE_TIME 1476
/*!
* thread-yield: connection close blocked waiting for transaction state
* stabilization
*/
-#define WT_STAT_CONN_TXN_RELEASE_BLOCKED 1474
+#define WT_STAT_CONN_TXN_RELEASE_BLOCKED 1477
/*! thread-yield: connection close yielded for lsm manager shutdown */
-#define WT_STAT_CONN_CONN_CLOSE_BLOCKED_LSM 1475
+#define WT_STAT_CONN_CONN_CLOSE_BLOCKED_LSM 1478
/*! thread-yield: data handle lock yielded */
-#define WT_STAT_CONN_DHANDLE_LOCK_BLOCKED 1476
+#define WT_STAT_CONN_DHANDLE_LOCK_BLOCKED 1479
/*!
* thread-yield: get reference for page index and slot time sleeping
* (usecs)
*/
-#define WT_STAT_CONN_PAGE_INDEX_SLOT_REF_BLOCKED 1477
+#define WT_STAT_CONN_PAGE_INDEX_SLOT_REF_BLOCKED 1480
/*! thread-yield: page access yielded due to prepare state change */
-#define WT_STAT_CONN_PREPARED_TRANSITION_BLOCKED_PAGE 1478
+#define WT_STAT_CONN_PREPARED_TRANSITION_BLOCKED_PAGE 1481
/*! thread-yield: page acquire busy blocked */
-#define WT_STAT_CONN_PAGE_BUSY_BLOCKED 1479
+#define WT_STAT_CONN_PAGE_BUSY_BLOCKED 1482
/*! thread-yield: page acquire eviction blocked */
-#define WT_STAT_CONN_PAGE_FORCIBLE_EVICT_BLOCKED 1480
+#define WT_STAT_CONN_PAGE_FORCIBLE_EVICT_BLOCKED 1483
/*! thread-yield: page acquire locked blocked */
-#define WT_STAT_CONN_PAGE_LOCKED_BLOCKED 1481
+#define WT_STAT_CONN_PAGE_LOCKED_BLOCKED 1484
/*! thread-yield: page acquire read blocked */
-#define WT_STAT_CONN_PAGE_READ_BLOCKED 1482
+#define WT_STAT_CONN_PAGE_READ_BLOCKED 1485
/*! thread-yield: page acquire time sleeping (usecs) */
-#define WT_STAT_CONN_PAGE_SLEEP 1483
+#define WT_STAT_CONN_PAGE_SLEEP 1486
/*!
* thread-yield: page delete rollback time sleeping for state change
* (usecs)
*/
-#define WT_STAT_CONN_PAGE_DEL_ROLLBACK_BLOCKED 1484
+#define WT_STAT_CONN_PAGE_DEL_ROLLBACK_BLOCKED 1487
/*! thread-yield: page reconciliation yielded due to child modification */
-#define WT_STAT_CONN_CHILD_MODIFY_BLOCKED_PAGE 1485
+#define WT_STAT_CONN_CHILD_MODIFY_BLOCKED_PAGE 1488
/*! transaction: Number of prepared updates */
-#define WT_STAT_CONN_TXN_PREPARED_UPDATES 1486
+#define WT_STAT_CONN_TXN_PREPARED_UPDATES 1489
/*! transaction: Number of prepared updates committed */
-#define WT_STAT_CONN_TXN_PREPARED_UPDATES_COMMITTED 1487
+#define WT_STAT_CONN_TXN_PREPARED_UPDATES_COMMITTED 1490
/*! transaction: Number of prepared updates repeated on the same key */
-#define WT_STAT_CONN_TXN_PREPARED_UPDATES_KEY_REPEATED 1488
+#define WT_STAT_CONN_TXN_PREPARED_UPDATES_KEY_REPEATED 1491
/*! transaction: Number of prepared updates rolled back */
-#define WT_STAT_CONN_TXN_PREPARED_UPDATES_ROLLEDBACK 1489
+#define WT_STAT_CONN_TXN_PREPARED_UPDATES_ROLLEDBACK 1492
/*! transaction: number of times overflow removed value is read */
-#define WT_STAT_CONN_TXN_READ_OVERFLOW_REMOVE 1490
+#define WT_STAT_CONN_TXN_READ_OVERFLOW_REMOVE 1493
/*! transaction: prepared transactions */
-#define WT_STAT_CONN_TXN_PREPARE 1491
+#define WT_STAT_CONN_TXN_PREPARE 1494
/*! transaction: prepared transactions committed */
-#define WT_STAT_CONN_TXN_PREPARE_COMMIT 1492
+#define WT_STAT_CONN_TXN_PREPARE_COMMIT 1495
/*! transaction: prepared transactions currently active */
-#define WT_STAT_CONN_TXN_PREPARE_ACTIVE 1493
+#define WT_STAT_CONN_TXN_PREPARE_ACTIVE 1496
/*! transaction: prepared transactions rolled back */
-#define WT_STAT_CONN_TXN_PREPARE_ROLLBACK 1494
+#define WT_STAT_CONN_TXN_PREPARE_ROLLBACK 1497
/*! transaction: query timestamp calls */
-#define WT_STAT_CONN_TXN_QUERY_TS 1495
+#define WT_STAT_CONN_TXN_QUERY_TS 1498
/*! transaction: race to read prepared update retry */
-#define WT_STAT_CONN_TXN_READ_RACE_PREPARE_UPDATE 1496
+#define WT_STAT_CONN_TXN_READ_RACE_PREPARE_UPDATE 1499
/*! transaction: rollback to stable calls */
-#define WT_STAT_CONN_TXN_RTS 1497
+#define WT_STAT_CONN_TXN_RTS 1500
/*!
* transaction: rollback to stable history store records with stop
* timestamps older than newer records
*/
-#define WT_STAT_CONN_TXN_RTS_HS_STOP_OLDER_THAN_NEWER_START 1498
+#define WT_STAT_CONN_TXN_RTS_HS_STOP_OLDER_THAN_NEWER_START 1501
/*! transaction: rollback to stable inconsistent checkpoint */
-#define WT_STAT_CONN_TXN_RTS_INCONSISTENT_CKPT 1499
+#define WT_STAT_CONN_TXN_RTS_INCONSISTENT_CKPT 1502
/*! transaction: rollback to stable keys removed */
-#define WT_STAT_CONN_TXN_RTS_KEYS_REMOVED 1500
+#define WT_STAT_CONN_TXN_RTS_KEYS_REMOVED 1503
/*! transaction: rollback to stable keys restored */
-#define WT_STAT_CONN_TXN_RTS_KEYS_RESTORED 1501
+#define WT_STAT_CONN_TXN_RTS_KEYS_RESTORED 1504
/*! transaction: rollback to stable pages visited */
-#define WT_STAT_CONN_TXN_RTS_PAGES_VISITED 1502
+#define WT_STAT_CONN_TXN_RTS_PAGES_VISITED 1505
/*! transaction: rollback to stable restored tombstones from history store */
-#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_TOMBSTONES 1503
+#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_TOMBSTONES 1506
/*! transaction: rollback to stable restored updates from history store */
-#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_UPDATES 1504
+#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_UPDATES 1507
/*! transaction: rollback to stable skipping delete rle */
-#define WT_STAT_CONN_TXN_RTS_DELETE_RLE_SKIPPED 1505
+#define WT_STAT_CONN_TXN_RTS_DELETE_RLE_SKIPPED 1508
/*! transaction: rollback to stable skipping stable rle */
-#define WT_STAT_CONN_TXN_RTS_STABLE_RLE_SKIPPED 1506
+#define WT_STAT_CONN_TXN_RTS_STABLE_RLE_SKIPPED 1509
/*! transaction: rollback to stable sweeping history store keys */
-#define WT_STAT_CONN_TXN_RTS_SWEEP_HS_KEYS 1507
+#define WT_STAT_CONN_TXN_RTS_SWEEP_HS_KEYS 1510
/*! transaction: rollback to stable tree walk skipping pages */
-#define WT_STAT_CONN_TXN_RTS_TREE_WALK_SKIP_PAGES 1508
+#define WT_STAT_CONN_TXN_RTS_TREE_WALK_SKIP_PAGES 1511
/*! transaction: rollback to stable updates aborted */
-#define WT_STAT_CONN_TXN_RTS_UPD_ABORTED 1509
+#define WT_STAT_CONN_TXN_RTS_UPD_ABORTED 1512
/*! transaction: rollback to stable updates removed from history store */
-#define WT_STAT_CONN_TXN_RTS_HS_REMOVED 1510
+#define WT_STAT_CONN_TXN_RTS_HS_REMOVED 1513
/*! transaction: sessions scanned in each walk of concurrent sessions */
-#define WT_STAT_CONN_TXN_SESSIONS_WALKED 1511
+#define WT_STAT_CONN_TXN_SESSIONS_WALKED 1514
/*! transaction: set timestamp calls */
-#define WT_STAT_CONN_TXN_SET_TS 1512
+#define WT_STAT_CONN_TXN_SET_TS 1515
/*! transaction: set timestamp durable calls */
-#define WT_STAT_CONN_TXN_SET_TS_DURABLE 1513
+#define WT_STAT_CONN_TXN_SET_TS_DURABLE 1516
/*! transaction: set timestamp durable updates */
-#define WT_STAT_CONN_TXN_SET_TS_DURABLE_UPD 1514
+#define WT_STAT_CONN_TXN_SET_TS_DURABLE_UPD 1517
/*! transaction: set timestamp oldest calls */
-#define WT_STAT_CONN_TXN_SET_TS_OLDEST 1515
+#define WT_STAT_CONN_TXN_SET_TS_OLDEST 1518
/*! transaction: set timestamp oldest updates */
-#define WT_STAT_CONN_TXN_SET_TS_OLDEST_UPD 1516
+#define WT_STAT_CONN_TXN_SET_TS_OLDEST_UPD 1519
/*! transaction: set timestamp stable calls */
-#define WT_STAT_CONN_TXN_SET_TS_STABLE 1517
+#define WT_STAT_CONN_TXN_SET_TS_STABLE 1520
/*! transaction: set timestamp stable updates */
-#define WT_STAT_CONN_TXN_SET_TS_STABLE_UPD 1518
+#define WT_STAT_CONN_TXN_SET_TS_STABLE_UPD 1521
/*! transaction: transaction begins */
-#define WT_STAT_CONN_TXN_BEGIN 1519
+#define WT_STAT_CONN_TXN_BEGIN 1522
/*! transaction: transaction checkpoint currently running */
-#define WT_STAT_CONN_TXN_CHECKPOINT_RUNNING 1520
+#define WT_STAT_CONN_TXN_CHECKPOINT_RUNNING 1523
/*!
* transaction: transaction checkpoint currently running for history
* store file
*/
-#define WT_STAT_CONN_TXN_CHECKPOINT_RUNNING_HS 1521
+#define WT_STAT_CONN_TXN_CHECKPOINT_RUNNING_HS 1524
/*! transaction: transaction checkpoint generation */
-#define WT_STAT_CONN_TXN_CHECKPOINT_GENERATION 1522
+#define WT_STAT_CONN_TXN_CHECKPOINT_GENERATION 1525
/*!
* transaction: transaction checkpoint history store file duration
* (usecs)
*/
-#define WT_STAT_CONN_TXN_HS_CKPT_DURATION 1523
+#define WT_STAT_CONN_TXN_HS_CKPT_DURATION 1526
/*! transaction: transaction checkpoint max time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MAX 1524
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MAX 1527
/*! transaction: transaction checkpoint min time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MIN 1525
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MIN 1528
/*!
* transaction: transaction checkpoint most recent duration for gathering
* all handles (usecs)
*/
-#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_DURATION 1526
+#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_DURATION 1529
/*!
* transaction: transaction checkpoint most recent duration for gathering
* applied handles (usecs)
*/
-#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_DURATION_APPLY 1527
+#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_DURATION_APPLY 1530
/*!
* transaction: transaction checkpoint most recent duration for gathering
* skipped handles (usecs)
*/
-#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_DURATION_SKIP 1528
+#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_DURATION_SKIP 1531
/*! transaction: transaction checkpoint most recent handles applied */
-#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_APPLIED 1529
+#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_APPLIED 1532
/*! transaction: transaction checkpoint most recent handles skipped */
-#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_SKIPPED 1530
+#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_SKIPPED 1533
/*! transaction: transaction checkpoint most recent handles walked */
-#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_WALKED 1531
+#define WT_STAT_CONN_TXN_CHECKPOINT_HANDLE_WALKED 1534
/*! transaction: transaction checkpoint most recent time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_RECENT 1532
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_RECENT 1535
/*! transaction: transaction checkpoint prepare currently running */
-#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_RUNNING 1533
+#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_RUNNING 1536
/*! transaction: transaction checkpoint prepare max time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_MAX 1534
+#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_MAX 1537
/*! transaction: transaction checkpoint prepare min time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_MIN 1535
+#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_MIN 1538
/*! transaction: transaction checkpoint prepare most recent time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_RECENT 1536
+#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_RECENT 1539
/*! transaction: transaction checkpoint prepare total time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_TOTAL 1537
+#define WT_STAT_CONN_TXN_CHECKPOINT_PREP_TOTAL 1540
/*! transaction: transaction checkpoint scrub dirty target */
-#define WT_STAT_CONN_TXN_CHECKPOINT_SCRUB_TARGET 1538
+#define WT_STAT_CONN_TXN_CHECKPOINT_SCRUB_TARGET 1541
/*! transaction: transaction checkpoint scrub time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_SCRUB_TIME 1539
+#define WT_STAT_CONN_TXN_CHECKPOINT_SCRUB_TIME 1542
/*! transaction: transaction checkpoint stop timing stress active */
-#define WT_STAT_CONN_TXN_CHECKPOINT_STOP_STRESS_ACTIVE 1540
+#define WT_STAT_CONN_TXN_CHECKPOINT_STOP_STRESS_ACTIVE 1543
/*! transaction: transaction checkpoint total time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_TOTAL 1541
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_TOTAL 1544
/*! transaction: transaction checkpoints */
-#define WT_STAT_CONN_TXN_CHECKPOINT 1542
+#define WT_STAT_CONN_TXN_CHECKPOINT 1545
/*! transaction: transaction checkpoints due to obsolete pages */
-#define WT_STAT_CONN_TXN_CHECKPOINT_OBSOLETE_APPLIED 1543
+#define WT_STAT_CONN_TXN_CHECKPOINT_OBSOLETE_APPLIED 1546
/*!
* transaction: transaction checkpoints skipped because database was
* clean
*/
-#define WT_STAT_CONN_TXN_CHECKPOINT_SKIPPED 1544
+#define WT_STAT_CONN_TXN_CHECKPOINT_SKIPPED 1547
/*! transaction: transaction failures due to history store */
-#define WT_STAT_CONN_TXN_FAIL_CACHE 1545
+#define WT_STAT_CONN_TXN_FAIL_CACHE 1548
/*!
* transaction: transaction fsync calls for checkpoint after allocating
* the transaction ID
*/
-#define WT_STAT_CONN_TXN_CHECKPOINT_FSYNC_POST 1546
+#define WT_STAT_CONN_TXN_CHECKPOINT_FSYNC_POST 1549
/*!
* transaction: transaction fsync duration for checkpoint after
* allocating the transaction ID (usecs)
*/
-#define WT_STAT_CONN_TXN_CHECKPOINT_FSYNC_POST_DURATION 1547
+#define WT_STAT_CONN_TXN_CHECKPOINT_FSYNC_POST_DURATION 1550
/*! transaction: transaction range of IDs currently pinned */
-#define WT_STAT_CONN_TXN_PINNED_RANGE 1548
+#define WT_STAT_CONN_TXN_PINNED_RANGE 1551
/*! transaction: transaction range of IDs currently pinned by a checkpoint */
-#define WT_STAT_CONN_TXN_PINNED_CHECKPOINT_RANGE 1549
+#define WT_STAT_CONN_TXN_PINNED_CHECKPOINT_RANGE 1552
/*! transaction: transaction range of timestamps currently pinned */
-#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP 1550
+#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP 1553
/*! transaction: transaction range of timestamps pinned by a checkpoint */
-#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP_CHECKPOINT 1551
+#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP_CHECKPOINT 1554
/*!
* transaction: transaction range of timestamps pinned by the oldest
* active read timestamp
*/
-#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP_READER 1552
+#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP_READER 1555
/*!
* transaction: transaction range of timestamps pinned by the oldest
* timestamp
*/
-#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP_OLDEST 1553
+#define WT_STAT_CONN_TXN_PINNED_TIMESTAMP_OLDEST 1556
/*! transaction: transaction read timestamp of the oldest active reader */
-#define WT_STAT_CONN_TXN_TIMESTAMP_OLDEST_ACTIVE_READ 1554
+#define WT_STAT_CONN_TXN_TIMESTAMP_OLDEST_ACTIVE_READ 1557
/*! transaction: transaction rollback to stable currently running */
-#define WT_STAT_CONN_TXN_ROLLBACK_TO_STABLE_RUNNING 1555
+#define WT_STAT_CONN_TXN_ROLLBACK_TO_STABLE_RUNNING 1558
/*! transaction: transaction walk of concurrent sessions */
-#define WT_STAT_CONN_TXN_WALK_SESSIONS 1556
+#define WT_STAT_CONN_TXN_WALK_SESSIONS 1559
/*! transaction: transactions committed */
-#define WT_STAT_CONN_TXN_COMMIT 1557
+#define WT_STAT_CONN_TXN_COMMIT 1560
/*! transaction: transactions rolled back */
-#define WT_STAT_CONN_TXN_ROLLBACK 1558
+#define WT_STAT_CONN_TXN_ROLLBACK 1561
/*! transaction: update conflicts */
-#define WT_STAT_CONN_TXN_UPDATE_CONFLICT 1559
+#define WT_STAT_CONN_TXN_UPDATE_CONFLICT 1562
/*!
* @}
diff --git a/src/third_party/wiredtiger/src/include/wt_internal.h b/src/third_party/wiredtiger/src/include/wt_internal.h
index c5e53d12d36..46aa95c4d16 100644
--- a/src/third_party/wiredtiger/src/include/wt_internal.h
+++ b/src/third_party/wiredtiger/src/include/wt_internal.h
@@ -199,6 +199,8 @@ struct __wt_evict_entry;
typedef struct __wt_evict_entry WT_EVICT_ENTRY;
struct __wt_evict_queue;
typedef struct __wt_evict_queue WT_EVICT_QUEUE;
+struct __wt_evict_timeline;
+typedef struct __wt_evict_timeline WT_EVICT_TIMELINE;
struct __wt_ext;
typedef struct __wt_ext WT_EXT;
struct __wt_extlist;
@@ -309,6 +311,8 @@ struct __wt_rec_kv;
typedef struct __wt_rec_kv WT_REC_KV;
struct __wt_reconcile;
typedef struct __wt_reconcile WT_RECONCILE;
+struct __wt_reconcile_timeline;
+typedef struct __wt_reconcile_timeline WT_RECONCILE_TIMELINE;
struct __wt_ref;
typedef struct __wt_ref WT_REF;
struct __wt_ref_hist;
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_write.c b/src/third_party/wiredtiger/src/reconcile/rec_write.c
index 7474dbdc925..02e1cdcda39 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_write.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_write.c
@@ -30,15 +30,16 @@ int
__wt_reconcile(WT_SESSION_IMPL *session, WT_REF *ref, WT_SALVAGE_COOKIE *salvage, uint32_t flags)
{
WT_BTREE *btree;
+ WT_CONNECTION_IMPL *conn;
WT_DECL_RET;
WT_PAGE *page;
- uint64_t start, now;
bool no_reconcile_set, page_locked;
btree = S2BT(session);
+ conn = S2C(session);
page = ref->page;
- __wt_seconds(session, &start);
+ session->reconcile_timeline.reconcile_start = __wt_clock(session);
__wt_verbose(session, WT_VERB_RECONCILE, "%p reconcile %s (%s%s)", (void *)ref,
__wt_page_type_string(page->type), LF_ISSET(WT_REC_EVICT) ? "evict" : "checkpoint",
@@ -106,10 +107,25 @@ err:
if (!no_reconcile_set)
F_CLR(session, WT_SESSION_NO_RECONCILE);
- /* Track the longest reconciliation, ignoring races (it's just a statistic). */
- __wt_seconds(session, &now);
- if (now - start > S2C(session)->rec_maximum_seconds)
- S2C(session)->rec_maximum_seconds = now - start;
+ /*
+ * Track the longest reconciliation and time spent in each reconciliation stage, ignoring races
+ * (it's just a statistic).
+ */
+ session->reconcile_timeline.reconcile_finish = __wt_clock(session);
+ if (WT_CLOCKDIFF_SEC(session->reconcile_timeline.hs_wrapup_finish,
+ session->reconcile_timeline.hs_wrapup_start) > conn->rec_maximum_hs_wrapup_seconds)
+ conn->rec_maximum_hs_wrapup_seconds =
+ WT_CLOCKDIFF_SEC(session->reconcile_timeline.hs_wrapup_finish,
+ session->reconcile_timeline.hs_wrapup_start);
+ if (WT_CLOCKDIFF_SEC(session->reconcile_timeline.image_build_finish,
+ session->reconcile_timeline.image_build_start) > conn->rec_maximum_image_build_seconds)
+ conn->rec_maximum_image_build_seconds =
+ WT_CLOCKDIFF_SEC(session->reconcile_timeline.image_build_finish,
+ session->reconcile_timeline.image_build_start);
+ if (WT_CLOCKDIFF_SEC(session->reconcile_timeline.reconcile_finish,
+ session->reconcile_timeline.reconcile_start) > conn->rec_maximum_seconds)
+ conn->rec_maximum_seconds = WT_CLOCKDIFF_SEC(session->reconcile_timeline.reconcile_finish,
+ session->reconcile_timeline.reconcile_start);
return (ret);
}
@@ -235,6 +251,8 @@ __reconcile(WT_SESSION_IMPL *session, WT_REF *ref, WT_SALVAGE_COOKIE *salvage, u
WT_RET(__rec_init(session, ref, flags, salvage, &session->reconcile));
r = session->reconcile;
+ session->reconcile_timeline.image_build_start = __wt_clock(session);
+
/* Reconcile the page. */
switch (page->type) {
case WT_PAGE_COL_FIX:
@@ -262,6 +280,8 @@ __reconcile(WT_SESSION_IMPL *session, WT_REF *ref, WT_SALVAGE_COOKIE *salvage, u
break;
}
+ session->reconcile_timeline.image_build_finish = __wt_clock(session);
+
/*
* If we failed, don't bail out yet; we still need to update stats and tidy up.
*/
@@ -2407,6 +2427,7 @@ __rec_write_wrapup(WT_SESSION_IMPL *session, WT_RECONCILE *r, WT_PAGE *page)
{
WT_BM *bm;
WT_BTREE *btree;
+ WT_DECL_RET;
WT_MULTI *multi;
WT_PAGE_MODIFY *mod;
WT_REF *ref;
@@ -2426,8 +2447,12 @@ __rec_write_wrapup(WT_SESSION_IMPL *session, WT_RECONCILE *r, WT_PAGE *page)
* visible when reconciling this page, copy them into the database's history store. This can
* fail, so try before clearing the page's previous reconciliation state.
*/
- if (F_ISSET(r, WT_REC_HS))
- WT_RET(__rec_hs_wrapup(session, r));
+ if (F_ISSET(r, WT_REC_HS)) {
+ session->reconcile_timeline.hs_wrapup_start = __wt_clock(session);
+ ret = __rec_hs_wrapup(session, r);
+ session->reconcile_timeline.hs_wrapup_finish = __wt_clock(session);
+ WT_RET(ret);
+ }
/*
* Wrap up overflow tracking. If we are about to create a checkpoint, the system must be
diff --git a/src/third_party/wiredtiger/src/support/stat.c b/src/third_party/wiredtiger/src/support/stat.c
index c12c058499b..2e34d8f971d 100644
--- a/src/third_party/wiredtiger/src/support/stat.c
+++ b/src/third_party/wiredtiger/src/support/stat.c
@@ -1360,7 +1360,8 @@ static const char *const __stats_connection_desc[] = {
"cache: internal pages split during eviction",
"cache: leaf pages split during eviction",
"cache: maximum bytes configured",
- "cache: maximum page size at eviction",
+ "cache: maximum page size seen at eviction",
+ "cache: maximum seconds spent at a single eviction",
"cache: modified pages evicted",
"cache: modified pages evicted by application threads",
"cache: operations timed out waiting for space in cache",
@@ -1621,6 +1622,9 @@ static const char *const __stats_connection_desc[] = {
"reconciliation: fast-path pages deleted",
"reconciliation: leaf-page overflow keys",
"reconciliation: maximum seconds spent in a reconciliation call",
+ "reconciliation: maximum seconds spent in building a disk image in a reconciliation",
+ "reconciliation: maximum seconds spent in moving updates to the history store in a "
+ "reconciliation",
"reconciliation: page reconciliation calls",
"reconciliation: page reconciliation calls for eviction",
"reconciliation: page reconciliation calls that resulted in values with prepared transaction "
@@ -1968,6 +1972,7 @@ __wt_stat_connection_clear_single(WT_CONNECTION_STATS *stats)
stats->cache_eviction_split_leaf = 0;
/* not clearing cache_bytes_max */
/* not clearing cache_eviction_maximum_page_size */
+ /* not clearing cache_eviction_maximum_seconds */
stats->cache_eviction_dirty = 0;
stats->cache_eviction_app_dirty = 0;
stats->cache_timed_out_ops = 0;
@@ -2224,6 +2229,8 @@ __wt_stat_connection_clear_single(WT_CONNECTION_STATS *stats)
stats->rec_page_delete_fast = 0;
stats->rec_overflow_key_leaf = 0;
/* not clearing rec_maximum_seconds */
+ /* not clearing rec_maximum_image_build_seconds */
+ /* not clearing rec_maximum_hs_wrapup_seconds */
stats->rec_pages = 0;
stats->rec_pages_eviction = 0;
stats->rec_pages_with_prepare = 0;
@@ -2566,6 +2573,7 @@ __wt_stat_connection_aggregate(WT_CONNECTION_STATS **from, WT_CONNECTION_STATS *
to->cache_eviction_split_leaf += WT_STAT_READ(from, cache_eviction_split_leaf);
to->cache_bytes_max += WT_STAT_READ(from, cache_bytes_max);
to->cache_eviction_maximum_page_size += WT_STAT_READ(from, cache_eviction_maximum_page_size);
+ to->cache_eviction_maximum_seconds += WT_STAT_READ(from, cache_eviction_maximum_seconds);
to->cache_eviction_dirty += WT_STAT_READ(from, cache_eviction_dirty);
to->cache_eviction_app_dirty += WT_STAT_READ(from, cache_eviction_app_dirty);
to->cache_timed_out_ops += WT_STAT_READ(from, cache_timed_out_ops);
@@ -2837,6 +2845,8 @@ __wt_stat_connection_aggregate(WT_CONNECTION_STATS **from, WT_CONNECTION_STATS *
to->rec_page_delete_fast += WT_STAT_READ(from, rec_page_delete_fast);
to->rec_overflow_key_leaf += WT_STAT_READ(from, rec_overflow_key_leaf);
to->rec_maximum_seconds += WT_STAT_READ(from, rec_maximum_seconds);
+ to->rec_maximum_image_build_seconds += WT_STAT_READ(from, rec_maximum_image_build_seconds);
+ to->rec_maximum_hs_wrapup_seconds += WT_STAT_READ(from, rec_maximum_hs_wrapup_seconds);
to->rec_pages += WT_STAT_READ(from, rec_pages);
to->rec_pages_eviction += WT_STAT_READ(from, rec_pages_eviction);
to->rec_pages_with_prepare += WT_STAT_READ(from, rec_pages_with_prepare);
diff --git a/src/third_party/wiredtiger/src/txn/txn_ckpt.c b/src/third_party/wiredtiger/src/txn/txn_ckpt.c
index fff1c86403a..3e668feb5d9 100644
--- a/src/third_party/wiredtiger/src/txn/txn_ckpt.c
+++ b/src/third_party/wiredtiger/src/txn/txn_ckpt.c
@@ -1025,6 +1025,9 @@ __txn_checkpoint(WT_SESSION_IMPL *session, const char *cfg[])
/* Reset the statistics tracked per checkpoint. */
cache->evict_max_page_size = 0;
+ cache->evict_max_seconds = 0;
+ conn->rec_maximum_hs_wrapup_seconds = 0;
+ conn->rec_maximum_image_build_seconds = 0;
conn->rec_maximum_seconds = 0;
/* Initialize the verbose tracking timer */