summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src/include/wiredtiger.in
diff options
context:
space:
mode:
Diffstat (limited to 'src/third_party/wiredtiger/src/include/wiredtiger.in')
-rw-r--r--src/third_party/wiredtiger/src/include/wiredtiger.in435
1 files changed, 264 insertions, 171 deletions
diff --git a/src/third_party/wiredtiger/src/include/wiredtiger.in b/src/third_party/wiredtiger/src/include/wiredtiger.in
index 044611d655e..08f73386090 100644
--- a/src/third_party/wiredtiger/src/include/wiredtiger.in
+++ b/src/third_party/wiredtiger/src/include/wiredtiger.in
@@ -574,11 +574,12 @@ struct __wt_cursor {
#define WT_CURSTD_KEY_EXT 0x0020 /* Key points out of the tree. */
#define WT_CURSTD_KEY_INT 0x0040 /* Key points into the tree. */
#define WT_CURSTD_KEY_SET (WT_CURSTD_KEY_EXT | WT_CURSTD_KEY_INT)
-#define WT_CURSTD_OPEN 0x0080
-#define WT_CURSTD_OVERWRITE 0x0100
-#define WT_CURSTD_RAW 0x0200
-#define WT_CURSTD_VALUE_EXT 0x0400 /* Value points out of the tree. */
-#define WT_CURSTD_VALUE_INT 0x0800 /* Value points into the tree. */
+#define WT_CURSTD_JOINED 0x0080
+#define WT_CURSTD_OPEN 0x0100
+#define WT_CURSTD_OVERWRITE 0x0200
+#define WT_CURSTD_RAW 0x0400
+#define WT_CURSTD_VALUE_EXT 0x0800 /* Value points out of the tree. */
+#define WT_CURSTD_VALUE_INT 0x1000 /* Value points into the tree. */
#define WT_CURSTD_VALUE_SET (WT_CURSTD_VALUE_EXT | WT_CURSTD_VALUE_INT)
uint32_t flags;
#endif
@@ -1236,6 +1237,61 @@ struct __wt_session {
const char *name, const char *config);
/*!
+ * Join a join cursor with a reference cursor.
+ *
+ * @snippet ex_schema.c Join cursors
+ *
+ * @param session the session handle
+ * @param join_cursor a cursor that was opened using a
+ * \c "join:" URI. It may not have been used for any operations
+ * other than other join calls.
+ * @param ref_cursor either an index cursor having the same base table
+ * as the join_cursor, or a table cursor open on the same base table.
+ * The ref_cursor must be positioned.
+ *
+ * The ref_cursor limits the results seen by iterating the
+ * join_cursor to table items referred to by the key in this
+ * index. The set of keys referred to is modified by the compare
+ * config option.
+ *
+ * Multiple join calls builds up a set of ref_cursors, and the
+ * results seen by iteration are the intersection of the cursor
+ * ranges participating in the join.
+ *
+ * After the join call completes, the ref_cursor cursor may not be
+ * used for any purpose other than get_key and get_value. Any other
+ * cursor method (e.g. next, prev,close) will fail. When the
+ * join_cursor is closed, the ref_cursor is made available for
+ * general use again. The application should close ref_cursor when
+ * finished with it, although not before the join_cursor is closed.
+ *
+ * @configstart{WT_SESSION.join, see dist/api_data.py}
+ * @config{bloom_bit_count, the number of bits used per item for the
+ * bloom filter., an integer between 2 and 1000; default \c 16.}
+ * @config{bloom_hash_count, the number of hash values per item for the
+ * bloom filter., an integer between 2 and 100; default \c 8.}
+ * @config{compare, modifies the set of items to be returned so that the
+ * index key satisfies the given comparison relative to the key set in
+ * this cursor., a string\, chosen from the following options: \c "eq"\,
+ * \c "ge"\, \c "gt"\, \c "le"\, \c "lt"; default \c "eq".}
+ * @config{count, set an approximate count of the elements that would be
+ * included in the join. This is used in sizing the bloom filter\, and
+ * also influences evaluation order for cursors in the join. When the
+ * count is equal for multiple bloom filters in a composition of joins\,
+ * the bloom filter may be shared., an integer; default \c .}
+ * @config{strategy, when set to bloom\, a bloom filter is created and
+ * populated for this index. This has an up front cost but may reduce
+ * the number of accesses to the main table when iterating the joined
+ * cursor. The bloom setting requires that count be set., a string\,
+ * chosen from the following options: \c "bloom"\, \c "default"; default
+ * empty.}
+ * @configend
+ * @errors
+ */
+ int __F(join)(WT_SESSION *session, WT_CURSOR *join_cursor,
+ WT_CURSOR *ref_cursor, const char *config);
+
+ /*!
* Flush the log.
*
* @param session the session handle
@@ -2328,10 +2384,13 @@ struct __wt_connection {
* string\, chosen from the following options: \c "dsync"\, \c "fsync"\, \c
* "none"; default \c fsync.}
* @config{ ),,}
+ * @config{use_environment, use the \c WIREDTIGER_CONFIG and \c WIREDTIGER_HOME
+ * environment variables if the process is not running with special privileges.
+ * See @ref home for more information., a boolean flag; default \c true.}
* @config{use_environment_priv, use the \c WIREDTIGER_CONFIG and \c
- * WIREDTIGER_HOME environment variables regardless of whether or not the
- * process is running with special privileges. See @ref home for more
- * information., a boolean flag; default \c false.}
+ * WIREDTIGER_HOME environment variables even if the process is running with
+ * special privileges. See @ref home for more information., a boolean flag;
+ * default \c false.}
* @config{verbose, enable messages for various events. Only available if
* WiredTiger is configured with --enable-verbose. Options are given as a
* list\, such as <code>"verbose=[evictserver\,read]"</code>., a list\, with
@@ -3710,224 +3769,239 @@ extern int wiredtiger_extension_terminate(WT_CONNECTION *connection);
#define WT_STAT_CONN_CACHE_EVICTION_SERVER_NOT_EVICTING 1043
/*! cache: eviction server unable to reach eviction goal */
#define WT_STAT_CONN_CACHE_EVICTION_SLOW 1044
-/*! cache: pages split during eviction */
-#define WT_STAT_CONN_CACHE_EVICTION_SPLIT 1045
+/*! cache: internal pages split during eviction */
+#define WT_STAT_CONN_CACHE_EVICTION_SPLIT_INTERNAL 1045
+/*! cache: leaf pages split during eviction */
+#define WT_STAT_CONN_CACHE_EVICTION_SPLIT_LEAF 1046
/*! cache: pages walked for eviction */
-#define WT_STAT_CONN_CACHE_EVICTION_WALK 1046
+#define WT_STAT_CONN_CACHE_EVICTION_WALK 1047
/*! cache: eviction worker thread evicting pages */
-#define WT_STAT_CONN_CACHE_EVICTION_WORKER_EVICTING 1047
+#define WT_STAT_CONN_CACHE_EVICTION_WORKER_EVICTING 1048
/*! cache: in-memory page splits */
-#define WT_STAT_CONN_CACHE_INMEM_SPLIT 1048
+#define WT_STAT_CONN_CACHE_INMEM_SPLIT 1049
/*! cache: in-memory page passed criteria to be split */
-#define WT_STAT_CONN_CACHE_INMEM_SPLITTABLE 1049
+#define WT_STAT_CONN_CACHE_INMEM_SPLITTABLE 1050
/*! cache: lookaside table insert calls */
-#define WT_STAT_CONN_CACHE_LOOKASIDE_INSERT 1050
+#define WT_STAT_CONN_CACHE_LOOKASIDE_INSERT 1051
/*! cache: lookaside table remove calls */
-#define WT_STAT_CONN_CACHE_LOOKASIDE_REMOVE 1051
+#define WT_STAT_CONN_CACHE_LOOKASIDE_REMOVE 1052
/*! cache: percentage overhead */
-#define WT_STAT_CONN_CACHE_OVERHEAD 1052
+#define WT_STAT_CONN_CACHE_OVERHEAD 1053
/*! cache: tracked dirty pages in the cache */
-#define WT_STAT_CONN_CACHE_PAGES_DIRTY 1053
+#define WT_STAT_CONN_CACHE_PAGES_DIRTY 1054
/*! cache: pages currently held in the cache */
-#define WT_STAT_CONN_CACHE_PAGES_INUSE 1054
+#define WT_STAT_CONN_CACHE_PAGES_INUSE 1055
/*! cache: pages read into cache */
-#define WT_STAT_CONN_CACHE_READ 1055
+#define WT_STAT_CONN_CACHE_READ 1056
/*! cache: pages read into cache requiring lookaside entries */
-#define WT_STAT_CONN_CACHE_READ_LOOKASIDE 1056
+#define WT_STAT_CONN_CACHE_READ_LOOKASIDE 1057
/*! cache: pages written from cache */
-#define WT_STAT_CONN_CACHE_WRITE 1057
+#define WT_STAT_CONN_CACHE_WRITE 1058
/*! cache: page written requiring lookaside records */
-#define WT_STAT_CONN_CACHE_WRITE_LOOKASIDE 1058
+#define WT_STAT_CONN_CACHE_WRITE_LOOKASIDE 1059
/*! cache: pages written requiring in-memory restoration */
-#define WT_STAT_CONN_CACHE_WRITE_RESTORE 1059
+#define WT_STAT_CONN_CACHE_WRITE_RESTORE 1060
/*! connection: pthread mutex condition wait calls */
-#define WT_STAT_CONN_COND_WAIT 1060
+#define WT_STAT_CONN_COND_WAIT 1061
/*! cursor: cursor create calls */
-#define WT_STAT_CONN_CURSOR_CREATE 1061
+#define WT_STAT_CONN_CURSOR_CREATE 1062
/*! cursor: cursor insert calls */
-#define WT_STAT_CONN_CURSOR_INSERT 1062
+#define WT_STAT_CONN_CURSOR_INSERT 1063
/*! cursor: cursor next calls */
-#define WT_STAT_CONN_CURSOR_NEXT 1063
+#define WT_STAT_CONN_CURSOR_NEXT 1064
/*! cursor: cursor prev calls */
-#define WT_STAT_CONN_CURSOR_PREV 1064
+#define WT_STAT_CONN_CURSOR_PREV 1065
/*! cursor: cursor remove calls */
-#define WT_STAT_CONN_CURSOR_REMOVE 1065
+#define WT_STAT_CONN_CURSOR_REMOVE 1066
/*! cursor: cursor reset calls */
-#define WT_STAT_CONN_CURSOR_RESET 1066
+#define WT_STAT_CONN_CURSOR_RESET 1067
/*! cursor: cursor restarted searches */
-#define WT_STAT_CONN_CURSOR_RESTART 1067
+#define WT_STAT_CONN_CURSOR_RESTART 1068
/*! cursor: cursor search calls */
-#define WT_STAT_CONN_CURSOR_SEARCH 1068
+#define WT_STAT_CONN_CURSOR_SEARCH 1069
/*! cursor: cursor search near calls */
-#define WT_STAT_CONN_CURSOR_SEARCH_NEAR 1069
+#define WT_STAT_CONN_CURSOR_SEARCH_NEAR 1070
+/*! cursor: truncate calls */
+#define WT_STAT_CONN_CURSOR_TRUNCATE 1071
/*! cursor: cursor update calls */
-#define WT_STAT_CONN_CURSOR_UPDATE 1070
+#define WT_STAT_CONN_CURSOR_UPDATE 1072
/*! data-handle: connection data handles currently active */
-#define WT_STAT_CONN_DH_CONN_HANDLE_COUNT 1071
+#define WT_STAT_CONN_DH_CONN_HANDLE_COUNT 1073
/*! data-handle: session dhandles swept */
-#define WT_STAT_CONN_DH_SESSION_HANDLES 1072
+#define WT_STAT_CONN_DH_SESSION_HANDLES 1074
/*! data-handle: session sweep attempts */
-#define WT_STAT_CONN_DH_SESSION_SWEEPS 1073
+#define WT_STAT_CONN_DH_SESSION_SWEEPS 1075
/*! data-handle: connection sweep dhandles closed */
-#define WT_STAT_CONN_DH_SWEEP_CLOSE 1074
+#define WT_STAT_CONN_DH_SWEEP_CLOSE 1076
/*! data-handle: connection sweep candidate became referenced */
-#define WT_STAT_CONN_DH_SWEEP_REF 1075
+#define WT_STAT_CONN_DH_SWEEP_REF 1077
/*! data-handle: connection sweep dhandles removed from hash list */
-#define WT_STAT_CONN_DH_SWEEP_REMOVE 1076
+#define WT_STAT_CONN_DH_SWEEP_REMOVE 1078
/*! data-handle: connection sweep time-of-death sets */
-#define WT_STAT_CONN_DH_SWEEP_TOD 1077
+#define WT_STAT_CONN_DH_SWEEP_TOD 1079
/*! data-handle: connection sweeps */
-#define WT_STAT_CONN_DH_SWEEPS 1078
+#define WT_STAT_CONN_DH_SWEEPS 1080
/*! connection: files currently open */
-#define WT_STAT_CONN_FILE_OPEN 1079
+#define WT_STAT_CONN_FILE_OPEN 1081
/*! log: total log buffer size */
-#define WT_STAT_CONN_LOG_BUFFER_SIZE 1080
+#define WT_STAT_CONN_LOG_BUFFER_SIZE 1082
/*! log: log bytes of payload data */
-#define WT_STAT_CONN_LOG_BYTES_PAYLOAD 1081
+#define WT_STAT_CONN_LOG_BYTES_PAYLOAD 1083
/*! log: log bytes written */
-#define WT_STAT_CONN_LOG_BYTES_WRITTEN 1082
+#define WT_STAT_CONN_LOG_BYTES_WRITTEN 1084
/*! log: yields waiting for previous log file close */
-#define WT_STAT_CONN_LOG_CLOSE_YIELDS 1083
+#define WT_STAT_CONN_LOG_CLOSE_YIELDS 1085
/*! log: total size of compressed records */
-#define WT_STAT_CONN_LOG_COMPRESS_LEN 1084
+#define WT_STAT_CONN_LOG_COMPRESS_LEN 1086
/*! log: total in-memory size of compressed records */
-#define WT_STAT_CONN_LOG_COMPRESS_MEM 1085
+#define WT_STAT_CONN_LOG_COMPRESS_MEM 1087
/*! log: log records too small to compress */
-#define WT_STAT_CONN_LOG_COMPRESS_SMALL 1086
+#define WT_STAT_CONN_LOG_COMPRESS_SMALL 1088
/*! log: log records not compressed */
-#define WT_STAT_CONN_LOG_COMPRESS_WRITE_FAILS 1087
+#define WT_STAT_CONN_LOG_COMPRESS_WRITE_FAILS 1089
/*! log: log records compressed */
-#define WT_STAT_CONN_LOG_COMPRESS_WRITES 1088
+#define WT_STAT_CONN_LOG_COMPRESS_WRITES 1090
/*! log: log flush operations */
-#define WT_STAT_CONN_LOG_FLUSH 1089
+#define WT_STAT_CONN_LOG_FLUSH 1091
/*! log: maximum log file size */
-#define WT_STAT_CONN_LOG_MAX_FILESIZE 1090
+#define WT_STAT_CONN_LOG_MAX_FILESIZE 1092
/*! log: pre-allocated log files prepared */
-#define WT_STAT_CONN_LOG_PREALLOC_FILES 1091
+#define WT_STAT_CONN_LOG_PREALLOC_FILES 1093
/*! log: number of pre-allocated log files to create */
-#define WT_STAT_CONN_LOG_PREALLOC_MAX 1092
+#define WT_STAT_CONN_LOG_PREALLOC_MAX 1094
/*! log: pre-allocated log files not ready and missed */
-#define WT_STAT_CONN_LOG_PREALLOC_MISSED 1093
+#define WT_STAT_CONN_LOG_PREALLOC_MISSED 1095
/*! log: pre-allocated log files used */
-#define WT_STAT_CONN_LOG_PREALLOC_USED 1094
+#define WT_STAT_CONN_LOG_PREALLOC_USED 1096
/*! log: log release advances write LSN */
-#define WT_STAT_CONN_LOG_RELEASE_WRITE_LSN 1095
+#define WT_STAT_CONN_LOG_RELEASE_WRITE_LSN 1097
/*! log: records processed by log scan */
-#define WT_STAT_CONN_LOG_SCAN_RECORDS 1096
+#define WT_STAT_CONN_LOG_SCAN_RECORDS 1098
/*! log: log scan records requiring two reads */
-#define WT_STAT_CONN_LOG_SCAN_REREADS 1097
+#define WT_STAT_CONN_LOG_SCAN_REREADS 1099
/*! log: log scan operations */
-#define WT_STAT_CONN_LOG_SCANS 1098
+#define WT_STAT_CONN_LOG_SCANS 1100
/*! log: consolidated slot closures */
-#define WT_STAT_CONN_LOG_SLOT_CLOSES 1099
+#define WT_STAT_CONN_LOG_SLOT_CLOSES 1101
/*! log: written slots coalesced */
-#define WT_STAT_CONN_LOG_SLOT_COALESCED 1100
+#define WT_STAT_CONN_LOG_SLOT_COALESCED 1102
/*! log: logging bytes consolidated */
-#define WT_STAT_CONN_LOG_SLOT_CONSOLIDATED 1101
+#define WT_STAT_CONN_LOG_SLOT_CONSOLIDATED 1103
/*! log: consolidated slot joins */
-#define WT_STAT_CONN_LOG_SLOT_JOINS 1102
+#define WT_STAT_CONN_LOG_SLOT_JOINS 1104
/*! log: consolidated slot join races */
-#define WT_STAT_CONN_LOG_SLOT_RACES 1103
+#define WT_STAT_CONN_LOG_SLOT_RACES 1105
/*! log: busy returns attempting to switch slots */
-#define WT_STAT_CONN_LOG_SLOT_SWITCH_BUSY 1104
+#define WT_STAT_CONN_LOG_SLOT_SWITCH_BUSY 1106
/*! log: consolidated slot join transitions */
-#define WT_STAT_CONN_LOG_SLOT_TRANSITIONS 1105
+#define WT_STAT_CONN_LOG_SLOT_TRANSITIONS 1107
/*! log: consolidated slot unbuffered writes */
-#define WT_STAT_CONN_LOG_SLOT_UNBUFFERED 1106
+#define WT_STAT_CONN_LOG_SLOT_UNBUFFERED 1108
/*! log: log sync operations */
-#define WT_STAT_CONN_LOG_SYNC 1107
+#define WT_STAT_CONN_LOG_SYNC 1109
/*! log: log sync_dir operations */
-#define WT_STAT_CONN_LOG_SYNC_DIR 1108
+#define WT_STAT_CONN_LOG_SYNC_DIR 1110
/*! log: log server thread advances write LSN */
-#define WT_STAT_CONN_LOG_WRITE_LSN 1109
+#define WT_STAT_CONN_LOG_WRITE_LSN 1111
/*! log: log write operations */
-#define WT_STAT_CONN_LOG_WRITES 1110
+#define WT_STAT_CONN_LOG_WRITES 1112
/*! log: log files manually zero-filled */
-#define WT_STAT_CONN_LOG_ZERO_FILLS 1111
+#define WT_STAT_CONN_LOG_ZERO_FILLS 1113
/*! LSM: sleep for LSM checkpoint throttle */
-#define WT_STAT_CONN_LSM_CHECKPOINT_THROTTLE 1112
+#define WT_STAT_CONN_LSM_CHECKPOINT_THROTTLE 1114
/*! LSM: sleep for LSM merge throttle */
-#define WT_STAT_CONN_LSM_MERGE_THROTTLE 1113
+#define WT_STAT_CONN_LSM_MERGE_THROTTLE 1115
/*! LSM: rows merged in an LSM tree */
-#define WT_STAT_CONN_LSM_ROWS_MERGED 1114
+#define WT_STAT_CONN_LSM_ROWS_MERGED 1116
/*! LSM: application work units currently queued */
-#define WT_STAT_CONN_LSM_WORK_QUEUE_APP 1115
+#define WT_STAT_CONN_LSM_WORK_QUEUE_APP 1117
/*! LSM: merge work units currently queued */
-#define WT_STAT_CONN_LSM_WORK_QUEUE_MANAGER 1116
+#define WT_STAT_CONN_LSM_WORK_QUEUE_MANAGER 1118
/*! LSM: tree queue hit maximum */
-#define WT_STAT_CONN_LSM_WORK_QUEUE_MAX 1117
+#define WT_STAT_CONN_LSM_WORK_QUEUE_MAX 1119
/*! LSM: switch work units currently queued */
-#define WT_STAT_CONN_LSM_WORK_QUEUE_SWITCH 1118
+#define WT_STAT_CONN_LSM_WORK_QUEUE_SWITCH 1120
/*! LSM: tree maintenance operations scheduled */
-#define WT_STAT_CONN_LSM_WORK_UNITS_CREATED 1119
+#define WT_STAT_CONN_LSM_WORK_UNITS_CREATED 1121
/*! LSM: tree maintenance operations discarded */
-#define WT_STAT_CONN_LSM_WORK_UNITS_DISCARDED 1120
+#define WT_STAT_CONN_LSM_WORK_UNITS_DISCARDED 1122
/*! LSM: tree maintenance operations executed */
-#define WT_STAT_CONN_LSM_WORK_UNITS_DONE 1121
+#define WT_STAT_CONN_LSM_WORK_UNITS_DONE 1123
/*! connection: memory allocations */
-#define WT_STAT_CONN_MEMORY_ALLOCATION 1122
+#define WT_STAT_CONN_MEMORY_ALLOCATION 1124
/*! connection: memory frees */
-#define WT_STAT_CONN_MEMORY_FREE 1123
+#define WT_STAT_CONN_MEMORY_FREE 1125
/*! connection: memory re-allocations */
-#define WT_STAT_CONN_MEMORY_GROW 1124
+#define WT_STAT_CONN_MEMORY_GROW 1126
/*! thread-yield: page acquire busy blocked */
-#define WT_STAT_CONN_PAGE_BUSY_BLOCKED 1125
+#define WT_STAT_CONN_PAGE_BUSY_BLOCKED 1127
/*! thread-yield: page acquire eviction blocked */
-#define WT_STAT_CONN_PAGE_FORCIBLE_EVICT_BLOCKED 1126
+#define WT_STAT_CONN_PAGE_FORCIBLE_EVICT_BLOCKED 1128
/*! thread-yield: page acquire locked blocked */
-#define WT_STAT_CONN_PAGE_LOCKED_BLOCKED 1127
+#define WT_STAT_CONN_PAGE_LOCKED_BLOCKED 1129
/*! thread-yield: page acquire read blocked */
-#define WT_STAT_CONN_PAGE_READ_BLOCKED 1128
+#define WT_STAT_CONN_PAGE_READ_BLOCKED 1130
/*! thread-yield: page acquire time sleeping (usecs) */
-#define WT_STAT_CONN_PAGE_SLEEP 1129
+#define WT_STAT_CONN_PAGE_SLEEP 1131
/*! connection: total read I/Os */
-#define WT_STAT_CONN_READ_IO 1130
+#define WT_STAT_CONN_READ_IO 1132
+/*! reconciliation: pages deleted */
+#define WT_STAT_CONN_REC_PAGE_DELETE 1133
+/*! reconciliation: fast-path pages deleted */
+#define WT_STAT_CONN_REC_PAGE_DELETE_FAST 1134
/*! reconciliation: page reconciliation calls */
-#define WT_STAT_CONN_REC_PAGES 1131
+#define WT_STAT_CONN_REC_PAGES 1135
/*! reconciliation: page reconciliation calls for eviction */
-#define WT_STAT_CONN_REC_PAGES_EVICTION 1132
+#define WT_STAT_CONN_REC_PAGES_EVICTION 1136
/*! reconciliation: split bytes currently awaiting free */
-#define WT_STAT_CONN_REC_SPLIT_STASHED_BYTES 1133
+#define WT_STAT_CONN_REC_SPLIT_STASHED_BYTES 1137
/*! reconciliation: split objects currently awaiting free */
-#define WT_STAT_CONN_REC_SPLIT_STASHED_OBJECTS 1134
+#define WT_STAT_CONN_REC_SPLIT_STASHED_OBJECTS 1138
/*! connection: pthread mutex shared lock read-lock calls */
-#define WT_STAT_CONN_RWLOCK_READ 1135
+#define WT_STAT_CONN_RWLOCK_READ 1139
/*! connection: pthread mutex shared lock write-lock calls */
-#define WT_STAT_CONN_RWLOCK_WRITE 1136
+#define WT_STAT_CONN_RWLOCK_WRITE 1140
/*! session: open cursor count */
-#define WT_STAT_CONN_SESSION_CURSOR_OPEN 1137
+#define WT_STAT_CONN_SESSION_CURSOR_OPEN 1141
/*! session: open session count */
-#define WT_STAT_CONN_SESSION_OPEN 1138
+#define WT_STAT_CONN_SESSION_OPEN 1142
/*! transaction: transaction begins */
-#define WT_STAT_CONN_TXN_BEGIN 1139
+#define WT_STAT_CONN_TXN_BEGIN 1143
/*! transaction: transaction checkpoints */
-#define WT_STAT_CONN_TXN_CHECKPOINT 1140
+#define WT_STAT_CONN_TXN_CHECKPOINT 1144
/*! transaction: transaction checkpoint generation */
-#define WT_STAT_CONN_TXN_CHECKPOINT_GENERATION 1141
+#define WT_STAT_CONN_TXN_CHECKPOINT_GENERATION 1145
/*! transaction: transaction checkpoint currently running */
-#define WT_STAT_CONN_TXN_CHECKPOINT_RUNNING 1142
+#define WT_STAT_CONN_TXN_CHECKPOINT_RUNNING 1146
/*! transaction: transaction checkpoint max time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MAX 1143
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MAX 1147
/*! transaction: transaction checkpoint min time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MIN 1144
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_MIN 1148
/*! transaction: transaction checkpoint most recent time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_RECENT 1145
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_RECENT 1149
/*! transaction: transaction checkpoint total time (msecs) */
-#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_TOTAL 1146
+#define WT_STAT_CONN_TXN_CHECKPOINT_TIME_TOTAL 1150
/*! transaction: transactions committed */
-#define WT_STAT_CONN_TXN_COMMIT 1147
+#define WT_STAT_CONN_TXN_COMMIT 1151
/*! transaction: transaction failures due to cache overflow */
-#define WT_STAT_CONN_TXN_FAIL_CACHE 1148
+#define WT_STAT_CONN_TXN_FAIL_CACHE 1152
/*! transaction: transaction range of IDs currently pinned by a checkpoint */
-#define WT_STAT_CONN_TXN_PINNED_CHECKPOINT_RANGE 1149
+#define WT_STAT_CONN_TXN_PINNED_CHECKPOINT_RANGE 1153
/*! transaction: transaction range of IDs currently pinned */
-#define WT_STAT_CONN_TXN_PINNED_RANGE 1150
+#define WT_STAT_CONN_TXN_PINNED_RANGE 1154
+/*! transaction: transaction range of IDs currently pinned by named
+ * snapshots */
+#define WT_STAT_CONN_TXN_PINNED_SNAPSHOT_RANGE 1155
/*! transaction: transactions rolled back */
-#define WT_STAT_CONN_TXN_ROLLBACK 1151
+#define WT_STAT_CONN_TXN_ROLLBACK 1156
+/*! transaction: number of named snapshots created */
+#define WT_STAT_CONN_TXN_SNAPSHOTS_CREATED 1157
+/*! transaction: number of named snapshots dropped */
+#define WT_STAT_CONN_TXN_SNAPSHOTS_DROPPED 1158
/*! transaction: transaction sync calls */
-#define WT_STAT_CONN_TXN_SYNC 1152
+#define WT_STAT_CONN_TXN_SYNC 1159
/*! connection: total write I/Os */
-#define WT_STAT_CONN_WRITE_IO 1153
+#define WT_STAT_CONN_WRITE_IO 1160
/*!
* @}
@@ -4023,112 +4097,131 @@ extern int wiredtiger_extension_terminate(WT_CONNECTION *connection);
#define WT_STAT_DSRC_CACHE_EVICTION_HAZARD 2042
/*! cache: internal pages evicted */
#define WT_STAT_DSRC_CACHE_EVICTION_INTERNAL 2043
-/*! cache: pages split during eviction */
-#define WT_STAT_DSRC_CACHE_EVICTION_SPLIT 2044
+/*! cache: internal pages split during eviction */
+#define WT_STAT_DSRC_CACHE_EVICTION_SPLIT_INTERNAL 2044
+/*! cache: leaf pages split during eviction */
+#define WT_STAT_DSRC_CACHE_EVICTION_SPLIT_LEAF 2045
/*! cache: in-memory page splits */
-#define WT_STAT_DSRC_CACHE_INMEM_SPLIT 2045
+#define WT_STAT_DSRC_CACHE_INMEM_SPLIT 2046
/*! cache: in-memory page passed criteria to be split */
-#define WT_STAT_DSRC_CACHE_INMEM_SPLITTABLE 2046
+#define WT_STAT_DSRC_CACHE_INMEM_SPLITTABLE 2047
/*! cache: overflow values cached in memory */
-#define WT_STAT_DSRC_CACHE_OVERFLOW_VALUE 2047
+#define WT_STAT_DSRC_CACHE_OVERFLOW_VALUE 2048
/*! cache: pages read into cache */
-#define WT_STAT_DSRC_CACHE_READ 2048
+#define WT_STAT_DSRC_CACHE_READ 2049
/*! cache: pages read into cache requiring lookaside entries */
-#define WT_STAT_DSRC_CACHE_READ_LOOKASIDE 2049
+#define WT_STAT_DSRC_CACHE_READ_LOOKASIDE 2050
/*! cache: overflow pages read into cache */
-#define WT_STAT_DSRC_CACHE_READ_OVERFLOW 2050
+#define WT_STAT_DSRC_CACHE_READ_OVERFLOW 2051
/*! cache: pages written from cache */
-#define WT_STAT_DSRC_CACHE_WRITE 2051
+#define WT_STAT_DSRC_CACHE_WRITE 2052
/*! cache: page written requiring lookaside records */
-#define WT_STAT_DSRC_CACHE_WRITE_LOOKASIDE 2052
+#define WT_STAT_DSRC_CACHE_WRITE_LOOKASIDE 2053
/*! cache: pages written requiring in-memory restoration */
-#define WT_STAT_DSRC_CACHE_WRITE_RESTORE 2053
+#define WT_STAT_DSRC_CACHE_WRITE_RESTORE 2054
/*! compression: raw compression call failed, no additional data available */
-#define WT_STAT_DSRC_COMPRESS_RAW_FAIL 2054
+#define WT_STAT_DSRC_COMPRESS_RAW_FAIL 2055
/*! compression: raw compression call failed, additional data available */
-#define WT_STAT_DSRC_COMPRESS_RAW_FAIL_TEMPORARY 2055
+#define WT_STAT_DSRC_COMPRESS_RAW_FAIL_TEMPORARY 2056
/*! compression: raw compression call succeeded */
-#define WT_STAT_DSRC_COMPRESS_RAW_OK 2056
+#define WT_STAT_DSRC_COMPRESS_RAW_OK 2057
/*! compression: compressed pages read */
-#define WT_STAT_DSRC_COMPRESS_READ 2057
+#define WT_STAT_DSRC_COMPRESS_READ 2058
/*! compression: compressed pages written */
-#define WT_STAT_DSRC_COMPRESS_WRITE 2058
+#define WT_STAT_DSRC_COMPRESS_WRITE 2059
/*! compression: page written failed to compress */
-#define WT_STAT_DSRC_COMPRESS_WRITE_FAIL 2059
+#define WT_STAT_DSRC_COMPRESS_WRITE_FAIL 2060
/*! compression: page written was too small to compress */
-#define WT_STAT_DSRC_COMPRESS_WRITE_TOO_SMALL 2060
+#define WT_STAT_DSRC_COMPRESS_WRITE_TOO_SMALL 2061
/*! cursor: create calls */
-#define WT_STAT_DSRC_CURSOR_CREATE 2061
+#define WT_STAT_DSRC_CURSOR_CREATE 2062
/*! cursor: insert calls */
-#define WT_STAT_DSRC_CURSOR_INSERT 2062
+#define WT_STAT_DSRC_CURSOR_INSERT 2063
/*! cursor: bulk-loaded cursor-insert calls */
-#define WT_STAT_DSRC_CURSOR_INSERT_BULK 2063
+#define WT_STAT_DSRC_CURSOR_INSERT_BULK 2064
/*! cursor: cursor-insert key and value bytes inserted */
-#define WT_STAT_DSRC_CURSOR_INSERT_BYTES 2064
+#define WT_STAT_DSRC_CURSOR_INSERT_BYTES 2065
/*! cursor: next calls */
-#define WT_STAT_DSRC_CURSOR_NEXT 2065
+#define WT_STAT_DSRC_CURSOR_NEXT 2066
/*! cursor: prev calls */
-#define WT_STAT_DSRC_CURSOR_PREV 2066
+#define WT_STAT_DSRC_CURSOR_PREV 2067
/*! cursor: remove calls */
-#define WT_STAT_DSRC_CURSOR_REMOVE 2067
+#define WT_STAT_DSRC_CURSOR_REMOVE 2068
/*! cursor: cursor-remove key bytes removed */
-#define WT_STAT_DSRC_CURSOR_REMOVE_BYTES 2068
+#define WT_STAT_DSRC_CURSOR_REMOVE_BYTES 2069
/*! cursor: reset calls */
-#define WT_STAT_DSRC_CURSOR_RESET 2069
+#define WT_STAT_DSRC_CURSOR_RESET 2070
/*! cursor: restarted searches */
-#define WT_STAT_DSRC_CURSOR_RESTART 2070
+#define WT_STAT_DSRC_CURSOR_RESTART 2071
/*! cursor: search calls */
-#define WT_STAT_DSRC_CURSOR_SEARCH 2071
+#define WT_STAT_DSRC_CURSOR_SEARCH 2072
/*! cursor: search near calls */
-#define WT_STAT_DSRC_CURSOR_SEARCH_NEAR 2072
+#define WT_STAT_DSRC_CURSOR_SEARCH_NEAR 2073
+/*! cursor: truncate calls */
+#define WT_STAT_DSRC_CURSOR_TRUNCATE 2074
/*! cursor: update calls */
-#define WT_STAT_DSRC_CURSOR_UPDATE 2073
+#define WT_STAT_DSRC_CURSOR_UPDATE 2075
/*! cursor: cursor-update value bytes updated */
-#define WT_STAT_DSRC_CURSOR_UPDATE_BYTES 2074
+#define WT_STAT_DSRC_CURSOR_UPDATE_BYTES 2076
/*! LSM: sleep for LSM checkpoint throttle */
-#define WT_STAT_DSRC_LSM_CHECKPOINT_THROTTLE 2075
+#define WT_STAT_DSRC_LSM_CHECKPOINT_THROTTLE 2077
/*! LSM: chunks in the LSM tree */
-#define WT_STAT_DSRC_LSM_CHUNK_COUNT 2076
+#define WT_STAT_DSRC_LSM_CHUNK_COUNT 2078
/*! LSM: highest merge generation in the LSM tree */
-#define WT_STAT_DSRC_LSM_GENERATION_MAX 2077
+#define WT_STAT_DSRC_LSM_GENERATION_MAX 2079
/*! LSM: queries that could have benefited from a Bloom filter that did
* not exist */
-#define WT_STAT_DSRC_LSM_LOOKUP_NO_BLOOM 2078
+#define WT_STAT_DSRC_LSM_LOOKUP_NO_BLOOM 2080
/*! LSM: sleep for LSM merge throttle */
-#define WT_STAT_DSRC_LSM_MERGE_THROTTLE 2079
+#define WT_STAT_DSRC_LSM_MERGE_THROTTLE 2081
/*! reconciliation: dictionary matches */
-#define WT_STAT_DSRC_REC_DICTIONARY 2080
+#define WT_STAT_DSRC_REC_DICTIONARY 2082
/*! reconciliation: internal page multi-block writes */
-#define WT_STAT_DSRC_REC_MULTIBLOCK_INTERNAL 2081
+#define WT_STAT_DSRC_REC_MULTIBLOCK_INTERNAL 2083
/*! reconciliation: leaf page multi-block writes */
-#define WT_STAT_DSRC_REC_MULTIBLOCK_LEAF 2082
+#define WT_STAT_DSRC_REC_MULTIBLOCK_LEAF 2084
/*! reconciliation: maximum blocks required for a page */
-#define WT_STAT_DSRC_REC_MULTIBLOCK_MAX 2083
+#define WT_STAT_DSRC_REC_MULTIBLOCK_MAX 2085
/*! reconciliation: internal-page overflow keys */
-#define WT_STAT_DSRC_REC_OVERFLOW_KEY_INTERNAL 2084
+#define WT_STAT_DSRC_REC_OVERFLOW_KEY_INTERNAL 2086
/*! reconciliation: leaf-page overflow keys */
-#define WT_STAT_DSRC_REC_OVERFLOW_KEY_LEAF 2085
+#define WT_STAT_DSRC_REC_OVERFLOW_KEY_LEAF 2087
/*! reconciliation: overflow values written */
-#define WT_STAT_DSRC_REC_OVERFLOW_VALUE 2086
+#define WT_STAT_DSRC_REC_OVERFLOW_VALUE 2088
/*! reconciliation: pages deleted */
-#define WT_STAT_DSRC_REC_PAGE_DELETE 2087
+#define WT_STAT_DSRC_REC_PAGE_DELETE 2089
+/*! reconciliation: fast-path pages deleted */
+#define WT_STAT_DSRC_REC_PAGE_DELETE_FAST 2090
/*! reconciliation: page checksum matches */
-#define WT_STAT_DSRC_REC_PAGE_MATCH 2088
+#define WT_STAT_DSRC_REC_PAGE_MATCH 2091
/*! reconciliation: page reconciliation calls */
-#define WT_STAT_DSRC_REC_PAGES 2089
+#define WT_STAT_DSRC_REC_PAGES 2092
/*! reconciliation: page reconciliation calls for eviction */
-#define WT_STAT_DSRC_REC_PAGES_EVICTION 2090
+#define WT_STAT_DSRC_REC_PAGES_EVICTION 2093
/*! reconciliation: leaf page key bytes discarded using prefix compression */
-#define WT_STAT_DSRC_REC_PREFIX_COMPRESSION 2091
+#define WT_STAT_DSRC_REC_PREFIX_COMPRESSION 2094
/*! reconciliation: internal page key bytes discarded using suffix
* compression */
-#define WT_STAT_DSRC_REC_SUFFIX_COMPRESSION 2092
+#define WT_STAT_DSRC_REC_SUFFIX_COMPRESSION 2095
/*! session: object compaction */
-#define WT_STAT_DSRC_SESSION_COMPACT 2093
+#define WT_STAT_DSRC_SESSION_COMPACT 2096
/*! session: open cursor count */
-#define WT_STAT_DSRC_SESSION_CURSOR_OPEN 2094
+#define WT_STAT_DSRC_SESSION_CURSOR_OPEN 2097
/*! transaction: update conflicts */
-#define WT_STAT_DSRC_TXN_UPDATE_CONFLICT 2095
+#define WT_STAT_DSRC_TXN_UPDATE_CONFLICT 2098
+
+/*!
+ * @}
+ * @name Statistics for join cursors
+ * @anchor statistics_join
+ * @{
+ */
+/*! : accesses */
+#define WT_STAT_JOIN_ACCESSES 3000
+/*! : actual count of items */
+#define WT_STAT_JOIN_ACTUAL_COUNT 3001
+/*! : bloom filter false positives */
+#define WT_STAT_JOIN_BLOOM_FALSE_POSITIVE 3002
/*! @} */
/*
* Statistics section: END