summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src/include
diff options
context:
space:
mode:
Diffstat (limited to 'src/third_party/wiredtiger/src/include')
-rw-r--r--src/third_party/wiredtiger/src/include/btree.i7
-rw-r--r--src/third_party/wiredtiger/src/include/connection.h130
-rw-r--r--src/third_party/wiredtiger/src/include/cursor.h45
-rw-r--r--src/third_party/wiredtiger/src/include/extern.h6
-rw-r--r--src/third_party/wiredtiger/src/include/meta.h26
-rw-r--r--src/third_party/wiredtiger/src/include/wiredtiger.in69
-rw-r--r--src/third_party/wiredtiger/src/include/wt_internal.h2
7 files changed, 190 insertions, 95 deletions
diff --git a/src/third_party/wiredtiger/src/include/btree.i b/src/third_party/wiredtiger/src/include/btree.i
index 18199997a19..5099bc4dce9 100644
--- a/src/third_party/wiredtiger/src/include/btree.i
+++ b/src/third_party/wiredtiger/src/include/btree.i
@@ -838,10 +838,6 @@ __wt_row_leaf_key_info(
*ikeyp = NULL;
if (cellp != NULL)
*cellp = WT_PAGE_REF_OFFSET(page, WT_CELL_DECODE_OFFSET(v));
- if (datap != NULL) {
- *(void **)datap = NULL;
- *sizep = 0;
- }
return (false);
case WT_K_FLAG:
/* Encoded key: no instantiated key, no cell. */
@@ -999,6 +995,9 @@ __wt_row_leaf_value_cell(WT_SESSION_IMPL *session, WT_PAGE *page, WT_ROW *rip,
size_t size;
void *copy, *key;
+ size = 0; /* -Werror=maybe-uninitialized */
+ key = NULL; /* -Werror=maybe-uninitialized */
+
/* If we already have an unpacked key cell, use it. */
if (kpack != NULL)
vcell = (WT_CELL *)((uint8_t *)kpack->cell + __wt_cell_total_len(kpack));
diff --git a/src/third_party/wiredtiger/src/include/connection.h b/src/third_party/wiredtiger/src/include/connection.h
index db4b2e9b41e..ab810ee86fb 100644
--- a/src/third_party/wiredtiger/src/include/connection.h
+++ b/src/third_party/wiredtiger/src/include/connection.h
@@ -298,6 +298,10 @@ struct __wt_connection_impl {
uint64_t ckpt_write_bytes;
uint64_t ckpt_write_pages;
+ /* Checkpoint and incremental backup data */
+ uint64_t ckpt_incr_granularity;
+ WT_BLKINCR incr_backups[WT_BLKINCR_MAX];
+
/* Connection's maximum and base write generations. */
uint64_t max_write_gen;
uint64_t base_write_gen;
@@ -441,40 +445,41 @@ struct __wt_connection_impl {
/* AUTOMATIC FLAG VALUE GENERATION START */
#define WT_VERB_API 0x000000001u
-#define WT_VERB_BLOCK 0x000000002u
-#define WT_VERB_CHECKPOINT 0x000000004u
-#define WT_VERB_CHECKPOINT_PROGRESS 0x000000008u
-#define WT_VERB_COMPACT 0x000000010u
-#define WT_VERB_COMPACT_PROGRESS 0x000000020u
-#define WT_VERB_ERROR_RETURNS 0x000000040u
-#define WT_VERB_EVICT 0x000000080u
-#define WT_VERB_EVICTSERVER 0x000000100u
-#define WT_VERB_EVICT_STUCK 0x000000200u
-#define WT_VERB_FILEOPS 0x000000400u
-#define WT_VERB_HANDLEOPS 0x000000800u
-#define WT_VERB_LOG 0x000001000u
-#define WT_VERB_LOOKASIDE 0x000002000u
-#define WT_VERB_LOOKASIDE_ACTIVITY 0x000004000u
-#define WT_VERB_LSM 0x000008000u
-#define WT_VERB_LSM_MANAGER 0x000010000u
-#define WT_VERB_METADATA 0x000020000u
-#define WT_VERB_MUTEX 0x000040000u
-#define WT_VERB_OVERFLOW 0x000080000u
-#define WT_VERB_READ 0x000100000u
-#define WT_VERB_REBALANCE 0x000200000u
-#define WT_VERB_RECONCILE 0x000400000u
-#define WT_VERB_RECOVERY 0x000800000u
-#define WT_VERB_RECOVERY_PROGRESS 0x001000000u
-#define WT_VERB_SALVAGE 0x002000000u
-#define WT_VERB_SHARED_CACHE 0x004000000u
-#define WT_VERB_SPLIT 0x008000000u
-#define WT_VERB_TEMPORARY 0x010000000u
-#define WT_VERB_THREAD_GROUP 0x020000000u
-#define WT_VERB_TIMESTAMP 0x040000000u
-#define WT_VERB_TRANSACTION 0x080000000u
-#define WT_VERB_VERIFY 0x100000000u
-#define WT_VERB_VERSION 0x200000000u
-#define WT_VERB_WRITE 0x400000000u
+#define WT_VERB_BACKUP 0x000000002u
+#define WT_VERB_BLOCK 0x000000004u
+#define WT_VERB_CHECKPOINT 0x000000008u
+#define WT_VERB_CHECKPOINT_PROGRESS 0x000000010u
+#define WT_VERB_COMPACT 0x000000020u
+#define WT_VERB_COMPACT_PROGRESS 0x000000040u
+#define WT_VERB_ERROR_RETURNS 0x000000080u
+#define WT_VERB_EVICT 0x000000100u
+#define WT_VERB_EVICTSERVER 0x000000200u
+#define WT_VERB_EVICT_STUCK 0x000000400u
+#define WT_VERB_FILEOPS 0x000000800u
+#define WT_VERB_HANDLEOPS 0x000001000u
+#define WT_VERB_LOG 0x000002000u
+#define WT_VERB_LOOKASIDE 0x000004000u
+#define WT_VERB_LOOKASIDE_ACTIVITY 0x000008000u
+#define WT_VERB_LSM 0x000010000u
+#define WT_VERB_LSM_MANAGER 0x000020000u
+#define WT_VERB_METADATA 0x000040000u
+#define WT_VERB_MUTEX 0x000080000u
+#define WT_VERB_OVERFLOW 0x000100000u
+#define WT_VERB_READ 0x000200000u
+#define WT_VERB_REBALANCE 0x000400000u
+#define WT_VERB_RECONCILE 0x000800000u
+#define WT_VERB_RECOVERY 0x001000000u
+#define WT_VERB_RECOVERY_PROGRESS 0x002000000u
+#define WT_VERB_SALVAGE 0x004000000u
+#define WT_VERB_SHARED_CACHE 0x008000000u
+#define WT_VERB_SPLIT 0x010000000u
+#define WT_VERB_TEMPORARY 0x020000000u
+#define WT_VERB_THREAD_GROUP 0x040000000u
+#define WT_VERB_TIMESTAMP 0x080000000u
+#define WT_VERB_TRANSACTION 0x100000000u
+#define WT_VERB_VERIFY 0x200000000u
+#define WT_VERB_VERSION 0x400000000u
+#define WT_VERB_WRITE 0x800000000u
/* AUTOMATIC FLAG VALUE GENERATION STOP */
uint64_t verbose;
@@ -506,34 +511,35 @@ struct __wt_connection_impl {
WT_FILE_SYSTEM *file_system;
/* AUTOMATIC FLAG VALUE GENERATION START */
-#define WT_CONN_CACHE_CURSORS 0x0000001u
-#define WT_CONN_CACHE_POOL 0x0000002u
-#define WT_CONN_CKPT_SYNC 0x0000004u
-#define WT_CONN_CLOSING 0x0000008u
-#define WT_CONN_CLOSING_NO_MORE_OPENS 0x0000010u
-#define WT_CONN_CLOSING_TIMESTAMP 0x0000020u
-#define WT_CONN_COMPATIBILITY 0x0000040u
-#define WT_CONN_DATA_CORRUPTION 0x0000080u
-#define WT_CONN_EVICTION_NO_LOOKASIDE 0x0000100u
-#define WT_CONN_EVICTION_RUN 0x0000200u
-#define WT_CONN_IN_MEMORY 0x0000400u
-#define WT_CONN_LEAK_MEMORY 0x0000800u
-#define WT_CONN_LOOKASIDE_OPEN 0x0001000u
-#define WT_CONN_LSM_MERGE 0x0002000u
-#define WT_CONN_OPTRACK 0x0004000u
-#define WT_CONN_PANIC 0x0008000u
-#define WT_CONN_READONLY 0x0010000u
-#define WT_CONN_RECONFIGURING 0x0020000u
-#define WT_CONN_RECOVERING 0x0040000u
-#define WT_CONN_SALVAGE 0x0080000u
-#define WT_CONN_SERVER_ASYNC 0x0100000u
-#define WT_CONN_SERVER_CAPACITY 0x0200000u
-#define WT_CONN_SERVER_CHECKPOINT 0x0400000u
-#define WT_CONN_SERVER_LOG 0x0800000u
-#define WT_CONN_SERVER_LSM 0x1000000u
-#define WT_CONN_SERVER_STATISTICS 0x2000000u
-#define WT_CONN_SERVER_SWEEP 0x4000000u
-#define WT_CONN_WAS_BACKUP 0x8000000u
+#define WT_CONN_CACHE_CURSORS 0x00000001u
+#define WT_CONN_CACHE_POOL 0x00000002u
+#define WT_CONN_CKPT_SYNC 0x00000004u
+#define WT_CONN_CLOSING 0x00000008u
+#define WT_CONN_CLOSING_NO_MORE_OPENS 0x00000010u
+#define WT_CONN_CLOSING_TIMESTAMP 0x00000020u
+#define WT_CONN_COMPATIBILITY 0x00000040u
+#define WT_CONN_DATA_CORRUPTION 0x00000080u
+#define WT_CONN_EVICTION_NO_LOOKASIDE 0x00000100u
+#define WT_CONN_EVICTION_RUN 0x00000200u
+#define WT_CONN_INCR_BACKUP 0x00000400u
+#define WT_CONN_IN_MEMORY 0x00000800u
+#define WT_CONN_LEAK_MEMORY 0x00001000u
+#define WT_CONN_LOOKASIDE_OPEN 0x00002000u
+#define WT_CONN_LSM_MERGE 0x00004000u
+#define WT_CONN_OPTRACK 0x00008000u
+#define WT_CONN_PANIC 0x00010000u
+#define WT_CONN_READONLY 0x00020000u
+#define WT_CONN_RECONFIGURING 0x00040000u
+#define WT_CONN_RECOVERING 0x00080000u
+#define WT_CONN_SALVAGE 0x00100000u
+#define WT_CONN_SERVER_ASYNC 0x00200000u
+#define WT_CONN_SERVER_CAPACITY 0x00400000u
+#define WT_CONN_SERVER_CHECKPOINT 0x00800000u
+#define WT_CONN_SERVER_LOG 0x01000000u
+#define WT_CONN_SERVER_LSM 0x02000000u
+#define WT_CONN_SERVER_STATISTICS 0x04000000u
+#define WT_CONN_SERVER_SWEEP 0x08000000u
+#define WT_CONN_WAS_BACKUP 0x10000000u
/* AUTOMATIC FLAG VALUE GENERATION STOP */
uint32_t flags;
};
diff --git a/src/third_party/wiredtiger/src/include/cursor.h b/src/third_party/wiredtiger/src/include/cursor.h
index b3d32ad8417..39740cc2be4 100644
--- a/src/third_party/wiredtiger/src/include/cursor.h
+++ b/src/third_party/wiredtiger/src/include/cursor.h
@@ -32,6 +32,21 @@
0 /* uint32_t flags */ \
}
+/*
+ * Block based incremental backup structure. These live in the connection.
+ */
+#define WT_BLKINCR_MAX 2
+struct __wt_blkincr {
+ const char *id_str; /* User's name for this backup. */
+ const char *ckpt_name; /* Requires WT-5115. All checkpoints must be this name */
+ void *data;
+/* AUTOMATIC FLAG VALUE GENERATION START */
+#define WT_BLKINCR_INUSE 0x1u /* This entry is active */
+#define WT_BLKINCR_VALID 0x2u /* This entry is valid */
+ /* AUTOMATIC FLAG VALUE GENERATION STOP */
+ uint64_t flags;
+};
+
struct __wt_cursor_backup {
WT_CURSOR iface;
@@ -43,12 +58,36 @@ struct __wt_cursor_backup {
size_t list_allocated;
size_t list_next;
+ /* File offset-based incremental backup. */
+ WT_BLKINCR *incr; /* Incremental backup in use */
+ char *incr_file; /* File name */
+ char *incr_src; /* Source identifier */
+ char *incr_this; /* New base identifier */
+ uint64_t incr_granularity; /* Maximum transfer size */
+
+ WT_CURSOR *incr_cursor; /* File cursor */
+ /* Start/stop checkpoints */
+ char *incr_checkpoint_start;
+ char *incr_checkpoint_stop;
+
+#define WT_BACKUP_INCR_COMPONENTS 3
+ bool incr_init; /* Cursor traversal initialized */
+ uint64_t *incr_list; /* List of file offset/size/type triples */
+ uint64_t incr_list_count; /* Count of file offset/size/type triples */
+ uint64_t incr_list_offset; /* Current offset */
+ uint64_t incr_size; /* Maximum transfer size */
+ WT_ITEM *incr_block; /* Current block of data */
+
/* AUTOMATIC FLAG VALUE GENERATION START */
-#define WT_CURBACKUP_DUP 0x1u /* Duplicated backup cursor */
-#define WT_CURBACKUP_LOCKER 0x2u /* Hot-backup started */
- /* AUTOMATIC FLAG VALUE GENERATION STOP */
+#define WT_CURBACKUP_DUP 0x1u /* Duplicated backup cursor */
+#define WT_CURBACKUP_FORCE_STOP 0x2u /* Force stop incremental backup */
+#define WT_CURBACKUP_INCR 0x4u /* Incremental backup cursor */
+#define WT_CURBACKUP_LOCKER 0x8u /* Hot-backup started */
+ /* AUTOMATIC FLAG VALUE GENERATION STOP */
uint8_t flags;
};
+#define WT_CURSOR_BACKUP_CHECK_STOP(cursor) \
+ WT_RET(F_ISSET(((WT_CURSOR_BACKUP *)(cursor)), WT_CURBACKUP_FORCE_STOP) ? EINVAL : 0);
#define WT_CURSOR_BACKUP_ID(cursor) (((WT_CURSOR_BACKUP *)(cursor))->maxid)
struct __wt_cursor_btree {
diff --git a/src/third_party/wiredtiger/src/include/extern.h b/src/third_party/wiredtiger/src/include/extern.h
index 3eb7583ecc6..5e530b8aaa1 100644
--- a/src/third_party/wiredtiger/src/include/extern.h
+++ b/src/third_party/wiredtiger/src/include/extern.h
@@ -408,8 +408,6 @@ extern int __wt_config_subgetraw(WT_SESSION_IMPL *session, WT_CONFIG_ITEM *cfg,
WT_CONFIG_ITEM *value) WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
extern int __wt_config_subgets(WT_SESSION_IMPL *session, WT_CONFIG_ITEM *cfg, const char *key,
WT_CONFIG_ITEM *value) WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
-extern int __wt_config_upgrade(WT_SESSION_IMPL *session, WT_ITEM *buf)
- WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
extern int __wt_configure_method(WT_SESSION_IMPL *session, const char *method, const char *uri,
const char *config, const char *type, const char *check)
WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
@@ -471,6 +469,9 @@ extern int __wt_copy_and_sync(WT_SESSION *wt_session, const char *from, const ch
extern int __wt_count_birthmarks(WT_UPDATE *upd) WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
extern int __wt_curbackup_open(WT_SESSION_IMPL *session, const char *uri, WT_CURSOR *other,
const char *cfg[], WT_CURSOR **cursorp) WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
+extern int __wt_curbackup_open_incr(WT_SESSION_IMPL *session, const char *uri, WT_CURSOR *other,
+ WT_CURSOR *cursor, const char *cfg[], WT_CURSOR **cursorp)
+ WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
extern int __wt_curbulk_init(WT_SESSION_IMPL *session, WT_CURSOR_BULK *cbulk, bool bitmap,
bool skip_sort_check) WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
extern int __wt_curconfig_open(WT_SESSION_IMPL *session, const char *uri, const char *cfg[],
@@ -1594,6 +1595,7 @@ extern void __wt_conn_config_discard(WT_SESSION_IMPL *session);
extern void __wt_conn_foc_discard(WT_SESSION_IMPL *session);
extern void __wt_conn_stat_init(WT_SESSION_IMPL *session);
extern void __wt_connection_destroy(WT_CONNECTION_IMPL *conn);
+extern void __wt_curbackup_free_incr(WT_SESSION_IMPL *session, WT_CURSOR_BACKUP *cb);
extern void __wt_cursor_close(WT_CURSOR *cursor);
extern void __wt_cursor_key_order_reset(WT_CURSOR_BTREE *cbt);
extern void __wt_cursor_reopen(WT_CURSOR *cursor, WT_DATA_HANDLE *dhandle);
diff --git a/src/third_party/wiredtiger/src/include/meta.h b/src/third_party/wiredtiger/src/include/meta.h
index 574c9400f8f..9845dbd7f7d 100644
--- a/src/third_party/wiredtiger/src/include/meta.h
+++ b/src/third_party/wiredtiger/src/include/meta.h
@@ -14,10 +14,14 @@
#define WT_USERCONFIG "WiredTiger.config" /* User configuration */
-#define WT_BACKUP_TMP "WiredTiger.backup.tmp" /* Backup tmp file */
-#define WT_METADATA_BACKUP "WiredTiger.backup" /* Hot backup file */
-#define WT_INCREMENTAL_BACKUP "WiredTiger.ibackup" /* Incremental backup */
-#define WT_INCREMENTAL_SRC "WiredTiger.isrc" /* Incremental source */
+/*
+ * Backup related WiredTiger files.
+ */
+#define WT_BACKUP_TMP "WiredTiger.backup.tmp" /* Backup tmp file */
+#define WT_BLKINCR_BACKUP "WiredTiger.backup.block" /* Block incremental durable file */
+#define WT_METADATA_BACKUP "WiredTiger.backup" /* Hot backup file */
+#define WT_LOGINCR_BACKUP "WiredTiger.ibackup" /* Log incremental backup */
+#define WT_LOGINCR_SRC "WiredTiger.isrc" /* Log incremental source */
#define WT_METADATA_TURTLE "WiredTiger.turtle" /* Metadata metadata */
#define WT_METADATA_TURTLE_SET "WiredTiger.turtle.set" /* Turtle temp file */
@@ -91,16 +95,20 @@ struct __wt_ckpt {
wt_timestamp_t newest_stop_ts;
uint64_t newest_stop_txn;
+ uint64_t *alloc_list; /* Checkpoint allocation list */
+ uint64_t alloc_list_entries;
+
WT_ITEM addr; /* Checkpoint cookie string */
WT_ITEM raw; /* Checkpoint cookie raw */
void *bpriv; /* Block manager private */
/* AUTOMATIC FLAG VALUE GENERATION START */
-#define WT_CKPT_ADD 0x1u /* Checkpoint to be added */
-#define WT_CKPT_DELETE 0x2u /* Checkpoint to be deleted */
-#define WT_CKPT_FAKE 0x4u /* Checkpoint is a fake */
-#define WT_CKPT_UPDATE 0x8u /* Checkpoint requires update */
- /* AUTOMATIC FLAG VALUE GENERATION STOP */
+#define WT_CKPT_ADD 0x01u /* Checkpoint to be added */
+#define WT_CKPT_BLOCK_MODS 0x02u /* Return list of modified blocks */
+#define WT_CKPT_DELETE 0x04u /* Checkpoint to be deleted */
+#define WT_CKPT_FAKE 0x08u /* Checkpoint is a fake */
+#define WT_CKPT_UPDATE 0x10u /* Checkpoint requires update */
+ /* AUTOMATIC FLAG VALUE GENERATION STOP */
uint32_t flags;
};
diff --git a/src/third_party/wiredtiger/src/include/wiredtiger.in b/src/third_party/wiredtiger/src/include/wiredtiger.in
index aec3014e788..e8a872178dd 100644
--- a/src/third_party/wiredtiger/src/include/wiredtiger.in
+++ b/src/third_party/wiredtiger/src/include/wiredtiger.in
@@ -1064,6 +1064,33 @@ struct __wt_session {
* non-printing characters are hexadecimal encoded. These formats are compatible with the
* @ref util_dump and @ref util_load commands., a string\, chosen from the following
* options: \c "hex"\, \c "json"\, \c "print"; default empty.}
+ * @config{incremental = (, configure the cursor for block incremental backup usage. These
+ * formats are only compatible with the backup data source; see @ref backup., a set of
+ * related configuration options defined below.}
+ * @config{    enabled,
+ * whether to configure this backup as the starting point for a subsequent incremental
+ * backup., a boolean flag; default \c false.}
+ * @config{    file, the
+ * file name when opening a duplicate incremental backup cursor. That duplicate cursor will
+ * return the block modifications relevant to the given file name., a string; default
+ * empty.}
+ * @config{    force_stop, causes all block incremental backup
+ * information to be released. This is on an open_cursor call and the resources will be
+ * released when this cursor is closed. No other operations should be done on this open
+ * cursor., a boolean flag; default \c false.}
+ * @config{    granularity,
+ * this setting manages the granularity of how WiredTiger maintains modification maps
+ * internally. The larger the granularity\, the smaller amount of information WiredTiger
+ * need to maintain., an integer between 1MB and 2GB; default \c 16MB.}
+ * @config{    src_id, a string that identifies a previous checkpoint
+ * backup source as the source of this incremental backup. This identifier must have
+ * already been created by use of the 'this_id' configuration in an earlier backup. A
+ * source id is required to begin an incremental backup., a string; default empty.}
+ * @config{    this_id, a string that identifies the current system
+ * state as a future backup source for an incremental backup via 'src_id'. This identifier
+ * is required when opening an incremental backup cursor and an error will be returned if
+ * one is not provided., a string; default empty.}
+ * @config{ ),,}
* @config{next_random, configure the cursor to return a pseudo-random record from the
* object when the WT_CURSOR::next method is called; valid only for row-store cursors. See
* @ref cursor_random for details., a boolean flag; default \c false.}
@@ -2335,14 +2362,14 @@ struct __wt_connection {
* ),,}
* @config{verbose, enable messages for various events. Options are given as a list\, such
* as <code>"verbose=[evictserver\,read]"</code>., a list\, with values chosen from the
- * following options: \c "api"\, \c "block"\, \c "checkpoint"\, \c "checkpoint_progress"\,
- * \c "compact"\, \c "compact_progress"\, \c "error_returns"\, \c "evict"\, \c
- * "evict_stuck"\, \c "evictserver"\, \c "fileops"\, \c "handleops"\, \c "log"\, \c
- * "lookaside"\, \c "lookaside_activity"\, \c "lsm"\, \c "lsm_manager"\, \c "metadata"\, \c
- * "mutex"\, \c "overflow"\, \c "read"\, \c "rebalance"\, \c "reconcile"\, \c "recovery"\,
- * \c "recovery_progress"\, \c "salvage"\, \c "shared_cache"\, \c "split"\, \c "temporary"\,
- * \c "thread_group"\, \c "timestamp"\, \c "transaction"\, \c "verify"\, \c "version"\, \c
- * "write"; default empty.}
+ * following options: \c "api"\, \c "backup"\, \c "block"\, \c "checkpoint"\, \c
+ * "checkpoint_progress"\, \c "compact"\, \c "compact_progress"\, \c "error_returns"\, \c
+ * "evict"\, \c "evict_stuck"\, \c "evictserver"\, \c "fileops"\, \c "handleops"\, \c
+ * "log"\, \c "lookaside"\, \c "lookaside_activity"\, \c "lsm"\, \c "lsm_manager"\, \c
+ * "metadata"\, \c "mutex"\, \c "overflow"\, \c "read"\, \c "rebalance"\, \c "reconcile"\,
+ * \c "recovery"\, \c "recovery_progress"\, \c "salvage"\, \c "shared_cache"\, \c "split"\,
+ * \c "temporary"\, \c "thread_group"\, \c "timestamp"\, \c "transaction"\, \c "verify"\, \c
+ * "version"\, \c "write"; default empty.}
* @configend
* @errors
*/
@@ -3017,13 +3044,13 @@ struct __wt_connection {
* information., a boolean flag; default \c false.}
* @config{verbose, enable messages for various events. Options are given as a list\, such as
* <code>"verbose=[evictserver\,read]"</code>., a list\, with values chosen from the following
- * options: \c "api"\, \c "block"\, \c "checkpoint"\, \c "checkpoint_progress"\, \c "compact"\, \c
- * "compact_progress"\, \c "error_returns"\, \c "evict"\, \c "evict_stuck"\, \c "evictserver"\, \c
- * "fileops"\, \c "handleops"\, \c "log"\, \c "lookaside"\, \c "lookaside_activity"\, \c "lsm"\, \c
- * "lsm_manager"\, \c "metadata"\, \c "mutex"\, \c "overflow"\, \c "read"\, \c "rebalance"\, \c
- * "reconcile"\, \c "recovery"\, \c "recovery_progress"\, \c "salvage"\, \c "shared_cache"\, \c
- * "split"\, \c "temporary"\, \c "thread_group"\, \c "timestamp"\, \c "transaction"\, \c "verify"\,
- * \c "version"\, \c "write"; default empty.}
+ * options: \c "api"\, \c "backup"\, \c "block"\, \c "checkpoint"\, \c "checkpoint_progress"\, \c
+ * "compact"\, \c "compact_progress"\, \c "error_returns"\, \c "evict"\, \c "evict_stuck"\, \c
+ * "evictserver"\, \c "fileops"\, \c "handleops"\, \c "log"\, \c "lookaside"\, \c
+ * "lookaside_activity"\, \c "lsm"\, \c "lsm_manager"\, \c "metadata"\, \c "mutex"\, \c "overflow"\,
+ * \c "read"\, \c "rebalance"\, \c "reconcile"\, \c "recovery"\, \c "recovery_progress"\, \c
+ * "salvage"\, \c "shared_cache"\, \c "split"\, \c "temporary"\, \c "thread_group"\, \c
+ * "timestamp"\, \c "transaction"\, \c "verify"\, \c "version"\, \c "write"; default empty.}
* @config{write_through, Use \c FILE_FLAG_WRITE_THROUGH on Windows to write to files. Ignored on
* non-Windows systems. Options are given as a list\, such as <code>"write_through=[data]"</code>.
* Configuring \c write_through requires care\, see @ref tuning_system_buffer_cache_direct_io for
@@ -4787,6 +4814,18 @@ extern int wiredtiger_extension_terminate(WT_CONNECTION *connection);
* @addtogroup wt
* @{
*/
+/*!
+ * @name Incremental backup types
+ * @anchor backup_types
+ * @{
+ */
+/*! invalid type */
+#define WT_BACKUP_INVALID 0
+/*! whole file */
+#define WT_BACKUP_FILE 1
+/*! file range */
+#define WT_BACKUP_RANGE 2
+/*! @} */
/*!
* @name Log record and operation types
diff --git a/src/third_party/wiredtiger/src/include/wt_internal.h b/src/third_party/wiredtiger/src/include/wt_internal.h
index 2b281443f21..1cd8753a0ac 100644
--- a/src/third_party/wiredtiger/src/include/wt_internal.h
+++ b/src/third_party/wiredtiger/src/include/wt_internal.h
@@ -77,6 +77,8 @@ struct __wt_async_op_impl;
typedef struct __wt_async_op_impl WT_ASYNC_OP_IMPL;
struct __wt_async_worker_state;
typedef struct __wt_async_worker_state WT_ASYNC_WORKER_STATE;
+struct __wt_blkincr;
+typedef struct __wt_blkincr WT_BLKINCR;
struct __wt_block;
typedef struct __wt_block WT_BLOCK;
struct __wt_block_ckpt;