summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src
diff options
context:
space:
mode:
authorLuke Chen <luke.chen@mongodb.com>2021-03-03 14:20:24 +1100
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-03-03 03:32:40 +0000
commit34b5c11859be0af4a784d5fa1f9288c4a1b95114 (patch)
tree6b1df8a0e82b3923027b424dd16569e9a3237bb3 /src/third_party/wiredtiger/src
parent55805f12273876d05fe1ced4190f2fd22e955e9f (diff)
downloadmongo-34b5c11859be0af4a784d5fa1f9288c4a1b95114.tar.gz
Import wiredtiger: 3f4a0f60178bc7336f3af1f8de9c5e3161205ac5 from branch mongodb-4.4
ref: e320231c1b..3f4a0f6017 for: 4.4.5 WT-6673 RTS fix inconsistent checkpoint by removing updates outside of the checkpoint snapshot WT-6851 Add a thread management library to the cpp test framework WT-6853 Add workload operation tracking WT-6912 Write "logging" subpage for Architecture Guide WT-6926 Update WiredTiger source code to include 2021 copyright notices WT-7047 Use stable timestamp as required in test_prepare_hs04 WT-7208 Leave table cursor in a valid state when subordinate index fails to open WT-7224 Moved test_config.c to src/config WT-7238 Use of constructor initialization list to avoid seg fault WT-7242 Fix example to correctly use API for system and no encryption WT-7243 Fix unexpected output failure in test_bug025 WT-7252 Remove redundant code which was pushed by WT-6673
Diffstat (limited to 'src/third_party/wiredtiger/src')
-rw-r--r--src/third_party/wiredtiger/src/block/block_addr.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_ckpt.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_ckpt_scan.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_compact.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_ext.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_map.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_mgr.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_open.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_read.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_session.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_slvg.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_vrfy.c2
-rw-r--r--src/third_party/wiredtiger/src/block/block_write.c2
-rw-r--r--src/third_party/wiredtiger/src/bloom/bloom.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_compact.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_curnext.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_curprev.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_cursor.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_debug.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_delete.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_discard.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_handle.c19
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_huffman.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_import.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_io.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_misc.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_ovfl.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_page.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_random.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_read.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_ret.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_slvg.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_split.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_stat.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_sync.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_upgrade.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_vrfy.c6
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_vrfy_dsk.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_walk.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/col_modify.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/col_srch.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/row_key.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/row_modify.c2
-rw-r--r--src/third_party/wiredtiger/src/btree/row_srch.c2
-rw-r--r--src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c2
-rw-r--r--src/third_party/wiredtiger/src/checksum/software/checksum.c2
-rw-r--r--src/third_party/wiredtiger/src/checksum/x86/crc32-x86-alt.c2
-rw-r--r--src/third_party/wiredtiger/src/checksum/x86/crc32-x86.c2
-rw-r--r--src/third_party/wiredtiger/src/config/config.c2
-rw-r--r--src/third_party/wiredtiger/src/config/config_api.c2
-rw-r--r--src/third_party/wiredtiger/src/config/config_check.c2
-rw-r--r--src/third_party/wiredtiger/src/config/config_collapse.c2
-rw-r--r--src/third_party/wiredtiger/src/config/config_ext.c2
-rw-r--r--src/third_party/wiredtiger/src/config/test_config.c38
-rw-r--r--src/third_party/wiredtiger/src/conn/api_calc_modify.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/api_version.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_api.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_cache.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_cache_pool.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_capacity.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_ckpt.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_dhandle.c33
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_handle.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_log.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_open.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_reconfig.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_stat.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_sweep.c2
-rw-r--r--src/third_party/wiredtiger/src/conn/conn_tiered.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_backup.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_backup_incr.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_bulk.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_config.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_ds.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_dump.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_file.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_hs.c3
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_index.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_join.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_json.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_log.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_metadata.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_stat.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_std.c2
-rw-r--r--src/third_party/wiredtiger/src/cursor/cur_table.c26
-rw-r--r--src/third_party/wiredtiger/src/docs/arch-logging.dox182
-rw-r--r--src/third_party/wiredtiger/src/docs/spell.ok6
-rw-r--r--src/third_party/wiredtiger/src/docs/style/footer.html4
-rwxr-xr-xsrc/third_party/wiredtiger/src/docs/tools/doxfilter.py2
-rwxr-xr-xsrc/third_party/wiredtiger/src/docs/tools/fixlinks.py2
-rw-r--r--src/third_party/wiredtiger/src/evict/evict_file.c2
-rw-r--r--src/third_party/wiredtiger/src/evict/evict_lru.c2
-rw-r--r--src/third_party/wiredtiger/src/evict/evict_page.c2
-rw-r--r--src/third_party/wiredtiger/src/evict/evict_stat.c2
-rw-r--r--src/third_party/wiredtiger/src/history/hs_conn.c2
-rw-r--r--src/third_party/wiredtiger/src/history/hs_cursor.c2
-rw-r--r--src/third_party/wiredtiger/src/history/hs_rec.c2
-rw-r--r--src/third_party/wiredtiger/src/history/hs_verify.c2
-rw-r--r--src/third_party/wiredtiger/src/include/api.h2
-rw-r--r--src/third_party/wiredtiger/src/include/bitstring_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/block.h2
-rw-r--r--src/third_party/wiredtiger/src/include/block_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/bloom.h2
-rw-r--r--src/third_party/wiredtiger/src/include/btmem.h2
-rw-r--r--src/third_party/wiredtiger/src/include/btree.h2
-rw-r--r--src/third_party/wiredtiger/src/include/btree_cmp_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/btree_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/buf_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/cache.h2
-rw-r--r--src/third_party/wiredtiger/src/include/cache_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/capacity.h2
-rw-r--r--src/third_party/wiredtiger/src/include/cell.h2
-rw-r--r--src/third_party/wiredtiger/src/include/cell_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/column_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/compact.h2
-rw-r--r--src/third_party/wiredtiger/src/include/config.h2
-rw-r--r--src/third_party/wiredtiger/src/include/connection.h2
-rw-r--r--src/third_party/wiredtiger/src/include/ctype_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/cursor.h2
-rw-r--r--src/third_party/wiredtiger/src/include/cursor_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/dhandle.h2
-rw-r--r--src/third_party/wiredtiger/src/include/dlh.h2
-rw-r--r--src/third_party/wiredtiger/src/include/error.h2
-rw-r--r--src/third_party/wiredtiger/src/include/extern.h1
-rw-r--r--src/third_party/wiredtiger/src/include/gcc.h2
-rw-r--r--src/third_party/wiredtiger/src/include/hardware.h2
-rw-r--r--src/third_party/wiredtiger/src/include/intpack_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/lint.h2
-rw-r--r--src/third_party/wiredtiger/src/include/log.h2
-rw-r--r--src/third_party/wiredtiger/src/include/log_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/lsm.h2
-rw-r--r--src/third_party/wiredtiger/src/include/meta.h2
-rw-r--r--src/third_party/wiredtiger/src/include/misc.h2
-rw-r--r--src/third_party/wiredtiger/src/include/misc_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/msvc.h2
-rw-r--r--src/third_party/wiredtiger/src/include/mutex.h2
-rw-r--r--src/third_party/wiredtiger/src/include/mutex_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/optrack.h2
-rw-r--r--src/third_party/wiredtiger/src/include/os.h2
-rw-r--r--src/third_party/wiredtiger/src/include/os_fhandle_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/os_fs_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/os_fstream_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/os_windows.h2
-rw-r--r--src/third_party/wiredtiger/src/include/packing_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/posix.h2
-rw-r--r--src/third_party/wiredtiger/src/include/reconcile.h2
-rw-r--r--src/third_party/wiredtiger/src/include/reconcile_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/schema.h2
-rw-r--r--src/third_party/wiredtiger/src/include/serial_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/session.h2
-rw-r--r--src/third_party/wiredtiger/src/include/stat.h4
-rw-r--r--src/third_party/wiredtiger/src/include/swap.h2
-rw-r--r--src/third_party/wiredtiger/src/include/thread_group.h2
-rw-r--r--src/third_party/wiredtiger/src/include/tiered.h2
-rw-r--r--src/third_party/wiredtiger/src/include/time_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/timestamp.h2
-rw-r--r--src/third_party/wiredtiger/src/include/timestamp_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/txn.h2
-rw-r--r--src/third_party/wiredtiger/src/include/txn_inline.h2
-rw-r--r--src/third_party/wiredtiger/src/include/verify_build.h2
-rw-r--r--src/third_party/wiredtiger/src/include/wiredtiger.in38
-rw-r--r--src/third_party/wiredtiger/src/include/wiredtiger_ext.h2
-rw-r--r--src/third_party/wiredtiger/src/include/wt_internal.h2
-rw-r--r--src/third_party/wiredtiger/src/log/log.c2
-rw-r--r--src/third_party/wiredtiger/src/log/log_slot.c2
-rw-r--r--src/third_party/wiredtiger/src/log/log_sys.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_cursor.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_cursor_bulk.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_manager.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_merge.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_meta.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_stat.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_tree.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_work_unit.c2
-rw-r--r--src/third_party/wiredtiger/src/lsm/lsm_worker.c2
-rw-r--r--src/third_party/wiredtiger/src/meta/meta_apply.c2
-rw-r--r--src/third_party/wiredtiger/src/meta/meta_ckpt.c24
-rw-r--r--src/third_party/wiredtiger/src/meta/meta_ext.c2
-rw-r--r--src/third_party/wiredtiger/src/meta/meta_table.c2
-rw-r--r--src/third_party/wiredtiger/src/meta/meta_track.c2
-rw-r--r--src/third_party/wiredtiger/src/meta/meta_turtle.c2
-rw-r--r--src/third_party/wiredtiger/src/optrack/optrack.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/filename.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_abort.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_alloc.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_errno.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_fhandle.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_fs_inmemory.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_fstream.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_fstream_stdio.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_getopt.c2
-rw-r--r--src/third_party/wiredtiger/src/os_common/os_strtouq.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_dir.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_dlopen.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_fallocate.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_fs.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_getenv.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_map.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_mtx_cond.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_once.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_pagesize.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_path.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_priv.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_setvbuf.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_sleep.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_snprintf.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_thread.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_time.c2
-rw-r--r--src/third_party/wiredtiger/src/os_posix/os_yield.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_dir.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_dlopen.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_fs.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_getenv.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_map.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_mtx_cond.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_once.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_pagesize.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_path.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_priv.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_setvbuf.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_sleep.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_snprintf.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_thread.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_time.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_utf8.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_winerr.c2
-rw-r--r--src/third_party/wiredtiger/src/os_win/os_yield.c2
-rw-r--r--src/third_party/wiredtiger/src/packing/pack_api.c2
-rw-r--r--src/third_party/wiredtiger/src/packing/pack_impl.c2
-rw-r--r--src/third_party/wiredtiger/src/packing/pack_stream.c2
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_child.c2
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_col.c2
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_dictionary.c2
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_row.c2
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_track.c2
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_visibility.c2
-rw-r--r--src/third_party/wiredtiger/src/reconcile/rec_write.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_alter.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_create.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_drop.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_list.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_open.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_plan.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_project.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_rename.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_stat.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_truncate.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_util.c2
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_worker.c2
-rw-r--r--src/third_party/wiredtiger/src/session/session_api.c2
-rw-r--r--src/third_party/wiredtiger/src/session/session_compact.c2
-rw-r--r--src/third_party/wiredtiger/src/session/session_dhandle.c2
-rw-r--r--src/third_party/wiredtiger/src/support/cond_auto.c2
-rw-r--r--src/third_party/wiredtiger/src/support/crypto.c2
-rw-r--r--src/third_party/wiredtiger/src/support/err.c2
-rw-r--r--src/third_party/wiredtiger/src/support/generation.c2
-rw-r--r--src/third_party/wiredtiger/src/support/global.c2
-rw-r--r--src/third_party/wiredtiger/src/support/hash_city.c2
-rw-r--r--src/third_party/wiredtiger/src/support/hash_fnv.c2
-rw-r--r--src/third_party/wiredtiger/src/support/hazard.c2
-rw-r--r--src/third_party/wiredtiger/src/support/hex.c2
-rw-r--r--src/third_party/wiredtiger/src/support/huffman.c2
-rw-r--r--src/third_party/wiredtiger/src/support/modify.c2
-rw-r--r--src/third_party/wiredtiger/src/support/mtx_rw.c2
-rw-r--r--src/third_party/wiredtiger/src/support/pow.c2
-rw-r--r--src/third_party/wiredtiger/src/support/rand.c2
-rw-r--r--src/third_party/wiredtiger/src/support/scratch.c2
-rw-r--r--src/third_party/wiredtiger/src/support/stat.c7
-rw-r--r--src/third_party/wiredtiger/src/support/thread_group.c2
-rw-r--r--src/third_party/wiredtiger/src/support/timestamp.c2
-rw-r--r--src/third_party/wiredtiger/src/tiered/tiered_cursor.c2
-rw-r--r--src/third_party/wiredtiger/src/tiered/tiered_schema.c2
-rw-r--r--src/third_party/wiredtiger/src/txn/txn.c4
-rw-r--r--src/third_party/wiredtiger/src/txn/txn_ckpt.c2
-rw-r--r--src/third_party/wiredtiger/src/txn/txn_ext.c2
-rw-r--r--src/third_party/wiredtiger/src/txn/txn_log.c2
-rw-r--r--src/third_party/wiredtiger/src/txn/txn_recover.c36
-rw-r--r--src/third_party/wiredtiger/src/txn/txn_rollback_to_stable.c230
-rw-r--r--src/third_party/wiredtiger/src/txn/txn_timestamp.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util.h2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_alter.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_backup.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_compact.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_cpyright.c4
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_create.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_downgrade.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_drop.c2
-rwxr-xr-xsrc/third_party/wiredtiger/src/utilities/util_dump.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_dump.h2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_list.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_load.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_load.h2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_load_json.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_loadtext.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_main.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_misc.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_printlog.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_read.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_rename.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_salvage.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_stat.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_truncate.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_upgrade.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_verbose.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_verify.c2
-rw-r--r--src/third_party/wiredtiger/src/utilities/util_write.c2
306 files changed, 843 insertions, 398 deletions
diff --git a/src/third_party/wiredtiger/src/block/block_addr.c b/src/third_party/wiredtiger/src/block/block_addr.c
index 312db74a24c..cc8a46a196a 100644
--- a/src/third_party/wiredtiger/src/block/block_addr.c
+++ b/src/third_party/wiredtiger/src/block/block_addr.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_ckpt.c b/src/third_party/wiredtiger/src/block/block_ckpt.c
index ceb9cf39262..176d6570ff3 100644
--- a/src/third_party/wiredtiger/src/block/block_ckpt.c
+++ b/src/third_party/wiredtiger/src/block/block_ckpt.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_ckpt_scan.c b/src/third_party/wiredtiger/src/block/block_ckpt_scan.c
index 2320076752a..0b2629cce83 100644
--- a/src/third_party/wiredtiger/src/block/block_ckpt_scan.c
+++ b/src/third_party/wiredtiger/src/block/block_ckpt_scan.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_compact.c b/src/third_party/wiredtiger/src/block/block_compact.c
index 6615d4e192d..740abcf6141 100644
--- a/src/third_party/wiredtiger/src/block/block_compact.c
+++ b/src/third_party/wiredtiger/src/block/block_compact.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_ext.c b/src/third_party/wiredtiger/src/block/block_ext.c
index d0dbfa97646..0deaef04654 100644
--- a/src/third_party/wiredtiger/src/block/block_ext.c
+++ b/src/third_party/wiredtiger/src/block/block_ext.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_map.c b/src/third_party/wiredtiger/src/block/block_map.c
index b3c071242c6..9a95005dec5 100644
--- a/src/third_party/wiredtiger/src/block/block_map.c
+++ b/src/third_party/wiredtiger/src/block/block_map.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_mgr.c b/src/third_party/wiredtiger/src/block/block_mgr.c
index 07a368b0350..00db82934dd 100644
--- a/src/third_party/wiredtiger/src/block/block_mgr.c
+++ b/src/third_party/wiredtiger/src/block/block_mgr.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_open.c b/src/third_party/wiredtiger/src/block/block_open.c
index 5eba665ea8d..169c1cd5d87 100644
--- a/src/third_party/wiredtiger/src/block/block_open.c
+++ b/src/third_party/wiredtiger/src/block/block_open.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_read.c b/src/third_party/wiredtiger/src/block/block_read.c
index c5e3a1c193c..08069728c8c 100644
--- a/src/third_party/wiredtiger/src/block/block_read.c
+++ b/src/third_party/wiredtiger/src/block/block_read.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_session.c b/src/third_party/wiredtiger/src/block/block_session.c
index 56e3c7aeb73..ee5139bfb96 100644
--- a/src/third_party/wiredtiger/src/block/block_session.c
+++ b/src/third_party/wiredtiger/src/block/block_session.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_slvg.c b/src/third_party/wiredtiger/src/block/block_slvg.c
index 857f15d7848..7e09d8ab147 100644
--- a/src/third_party/wiredtiger/src/block/block_slvg.c
+++ b/src/third_party/wiredtiger/src/block/block_slvg.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_vrfy.c b/src/third_party/wiredtiger/src/block/block_vrfy.c
index 0a434aebfce..9785be9d12d 100644
--- a/src/third_party/wiredtiger/src/block/block_vrfy.c
+++ b/src/third_party/wiredtiger/src/block/block_vrfy.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/block/block_write.c b/src/third_party/wiredtiger/src/block/block_write.c
index bafee786c5b..283b2f2a12d 100644
--- a/src/third_party/wiredtiger/src/block/block_write.c
+++ b/src/third_party/wiredtiger/src/block/block_write.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/bloom/bloom.c b/src/third_party/wiredtiger/src/bloom/bloom.c
index ff48eb2db54..789427274f2 100644
--- a/src/third_party/wiredtiger/src/bloom/bloom.c
+++ b/src/third_party/wiredtiger/src/bloom/bloom.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_compact.c b/src/third_party/wiredtiger/src/btree/bt_compact.c
index c205710684b..edbb2b35cc8 100644
--- a/src/third_party/wiredtiger/src/btree/bt_compact.c
+++ b/src/third_party/wiredtiger/src/btree/bt_compact.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_curnext.c b/src/third_party/wiredtiger/src/btree/bt_curnext.c
index 63d187b7442..18fdef73315 100644
--- a/src/third_party/wiredtiger/src/btree/bt_curnext.c
+++ b/src/third_party/wiredtiger/src/btree/bt_curnext.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_curprev.c b/src/third_party/wiredtiger/src/btree/bt_curprev.c
index 7fe24232317..7517eac77d8 100644
--- a/src/third_party/wiredtiger/src/btree/bt_curprev.c
+++ b/src/third_party/wiredtiger/src/btree/bt_curprev.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_cursor.c b/src/third_party/wiredtiger/src/btree/bt_cursor.c
index e4f538d80df..e50327ea193 100644
--- a/src/third_party/wiredtiger/src/btree/bt_cursor.c
+++ b/src/third_party/wiredtiger/src/btree/bt_cursor.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_debug.c b/src/third_party/wiredtiger/src/btree/bt_debug.c
index 2f93982a461..00e29bbbee5 100644
--- a/src/third_party/wiredtiger/src/btree/bt_debug.c
+++ b/src/third_party/wiredtiger/src/btree/bt_debug.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_delete.c b/src/third_party/wiredtiger/src/btree/bt_delete.c
index fd4bc669f1e..3faf1c84aa3 100644
--- a/src/third_party/wiredtiger/src/btree/bt_delete.c
+++ b/src/third_party/wiredtiger/src/btree/bt_delete.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_discard.c b/src/third_party/wiredtiger/src/btree/bt_discard.c
index b8f980e99b9..03f789868db 100644
--- a/src/third_party/wiredtiger/src/btree/bt_discard.c
+++ b/src/third_party/wiredtiger/src/btree/bt_discard.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_handle.c b/src/third_party/wiredtiger/src/btree/bt_handle.c
index 2d26a1bf573..2eb8df8af1f 100644
--- a/src/third_party/wiredtiger/src/btree/bt_handle.c
+++ b/src/third_party/wiredtiger/src/btree/bt_handle.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -524,9 +524,22 @@ __btree_conf(WT_SESSION_IMPL *session, WT_CKPT *ckpt)
/* If this is the first time opening the tree this run. */
if (F_ISSET(session, WT_SESSION_IMPORT) || ckpt->run_write_gen < conn->base_write_gen)
- btree->base_write_gen = btree->run_write_gen = btree->write_gen;
+ btree->run_write_gen = btree->write_gen;
else
- btree->base_write_gen = btree->run_write_gen = ckpt->run_write_gen;
+ btree->run_write_gen = ckpt->run_write_gen;
+
+ /*
+ * In recovery use the last checkpointed run write generation number as base write generation
+ * number to reset the transaction ids of the pages that were modified before the restart. The
+ * transaction ids are retained only on the pages that are written after the restart.
+ *
+ * Rollback to stable does not operate on logged tables and metadata, so it is skipped.
+ */
+ if (!F_ISSET(conn, WT_CONN_RECOVERING) || WT_IS_METADATA(btree->dhandle) ||
+ __wt_btree_immediately_durable(session))
+ btree->base_write_gen = btree->run_write_gen;
+ else
+ btree->base_write_gen = ckpt->run_write_gen;
/*
* We've just overwritten the runtime write generation based off the fact that know that we're
diff --git a/src/third_party/wiredtiger/src/btree/bt_huffman.c b/src/third_party/wiredtiger/src/btree/bt_huffman.c
index 13e4952ce33..f3270440913 100644
--- a/src/third_party/wiredtiger/src/btree/bt_huffman.c
+++ b/src/third_party/wiredtiger/src/btree/bt_huffman.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_import.c b/src/third_party/wiredtiger/src/btree/bt_import.c
index e779d90fc66..4e207d7aa8f 100644
--- a/src/third_party/wiredtiger/src/btree/bt_import.c
+++ b/src/third_party/wiredtiger/src/btree/bt_import.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_io.c b/src/third_party/wiredtiger/src/btree/bt_io.c
index 95e299fce7c..611b4d3dc64 100644
--- a/src/third_party/wiredtiger/src/btree/bt_io.c
+++ b/src/third_party/wiredtiger/src/btree/bt_io.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_misc.c b/src/third_party/wiredtiger/src/btree/bt_misc.c
index 536ac075b46..6488ac7148a 100644
--- a/src/third_party/wiredtiger/src/btree/bt_misc.c
+++ b/src/third_party/wiredtiger/src/btree/bt_misc.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_ovfl.c b/src/third_party/wiredtiger/src/btree/bt_ovfl.c
index 138ce4d657d..b2c3fd0ad52 100644
--- a/src/third_party/wiredtiger/src/btree/bt_ovfl.c
+++ b/src/third_party/wiredtiger/src/btree/bt_ovfl.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_page.c b/src/third_party/wiredtiger/src/btree/bt_page.c
index 75855d8a465..5a6f36b160c 100644
--- a/src/third_party/wiredtiger/src/btree/bt_page.c
+++ b/src/third_party/wiredtiger/src/btree/bt_page.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_random.c b/src/third_party/wiredtiger/src/btree/bt_random.c
index a9c89c91491..1f552db8525 100644
--- a/src/third_party/wiredtiger/src/btree/bt_random.c
+++ b/src/third_party/wiredtiger/src/btree/bt_random.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_read.c b/src/third_party/wiredtiger/src/btree/bt_read.c
index f44bc11cbb2..ab91af5b21a 100644
--- a/src/third_party/wiredtiger/src/btree/bt_read.c
+++ b/src/third_party/wiredtiger/src/btree/bt_read.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_ret.c b/src/third_party/wiredtiger/src/btree/bt_ret.c
index 7ef66f2d572..4ea7884d4b7 100644
--- a/src/third_party/wiredtiger/src/btree/bt_ret.c
+++ b/src/third_party/wiredtiger/src/btree/bt_ret.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_slvg.c b/src/third_party/wiredtiger/src/btree/bt_slvg.c
index c3d6c25b18c..0fccaa8c801 100644
--- a/src/third_party/wiredtiger/src/btree/bt_slvg.c
+++ b/src/third_party/wiredtiger/src/btree/bt_slvg.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_split.c b/src/third_party/wiredtiger/src/btree/bt_split.c
index 2565194db28..765d9240657 100644
--- a/src/third_party/wiredtiger/src/btree/bt_split.c
+++ b/src/third_party/wiredtiger/src/btree/bt_split.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_stat.c b/src/third_party/wiredtiger/src/btree/bt_stat.c
index 83143b60682..cc1d83e3335 100644
--- a/src/third_party/wiredtiger/src/btree/bt_stat.c
+++ b/src/third_party/wiredtiger/src/btree/bt_stat.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_sync.c b/src/third_party/wiredtiger/src/btree/bt_sync.c
index fe737b902c4..d6a02ca1a30 100644
--- a/src/third_party/wiredtiger/src/btree/bt_sync.c
+++ b/src/third_party/wiredtiger/src/btree/bt_sync.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_upgrade.c b/src/third_party/wiredtiger/src/btree/bt_upgrade.c
index 5a07f864851..de9a6bf7574 100644
--- a/src/third_party/wiredtiger/src/btree/bt_upgrade.c
+++ b/src/third_party/wiredtiger/src/btree/bt_upgrade.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_vrfy.c b/src/third_party/wiredtiger/src/btree/bt_vrfy.c
index 13abe891dd8..0bf0fb8672a 100644
--- a/src/third_party/wiredtiger/src/btree/bt_vrfy.c
+++ b/src/third_party/wiredtiger/src/btree/bt_vrfy.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -259,10 +259,6 @@ __wt_verify(WT_SESSION_IMPL *session, const char *cfg[])
*/
memset(&addr_unpack, 0, sizeof(addr_unpack));
WT_TIME_AGGREGATE_COPY(&addr_unpack.ta, &ckpt->ta);
- if (ckpt->write_gen <= btree->base_write_gen) {
- addr_unpack.ta.newest_txn = WT_TXN_NONE;
- addr_unpack.ta.newest_stop_txn = WT_TXN_MAX;
- }
if (ckpt->ta.prepare)
addr_unpack.ta.prepare = 1;
addr_unpack.raw = WT_CELL_ADDR_INT;
diff --git a/src/third_party/wiredtiger/src/btree/bt_vrfy_dsk.c b/src/third_party/wiredtiger/src/btree/bt_vrfy_dsk.c
index 22782c35041..1ae069a4f19 100644
--- a/src/third_party/wiredtiger/src/btree/bt_vrfy_dsk.c
+++ b/src/third_party/wiredtiger/src/btree/bt_vrfy_dsk.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/bt_walk.c b/src/third_party/wiredtiger/src/btree/bt_walk.c
index 8e2f2173bbe..69ece30ac04 100644
--- a/src/third_party/wiredtiger/src/btree/bt_walk.c
+++ b/src/third_party/wiredtiger/src/btree/bt_walk.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/col_modify.c b/src/third_party/wiredtiger/src/btree/col_modify.c
index 6be6ea9589c..d0f9ff4670a 100644
--- a/src/third_party/wiredtiger/src/btree/col_modify.c
+++ b/src/third_party/wiredtiger/src/btree/col_modify.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/col_srch.c b/src/third_party/wiredtiger/src/btree/col_srch.c
index 88a7b48ba88..ce569f36825 100644
--- a/src/third_party/wiredtiger/src/btree/col_srch.c
+++ b/src/third_party/wiredtiger/src/btree/col_srch.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/row_key.c b/src/third_party/wiredtiger/src/btree/row_key.c
index 132059c28cb..12558339f97 100644
--- a/src/third_party/wiredtiger/src/btree/row_key.c
+++ b/src/third_party/wiredtiger/src/btree/row_key.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/row_modify.c b/src/third_party/wiredtiger/src/btree/row_modify.c
index 459be313ae3..958c15951aa 100644
--- a/src/third_party/wiredtiger/src/btree/row_modify.c
+++ b/src/third_party/wiredtiger/src/btree/row_modify.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/btree/row_srch.c b/src/third_party/wiredtiger/src/btree/row_srch.c
index c19323c7e30..310659bb197 100644
--- a/src/third_party/wiredtiger/src/btree/row_srch.c
+++ b/src/third_party/wiredtiger/src/btree/row_srch.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c b/src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c
index 91d59615fdd..3c191235020 100644
--- a/src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c
+++ b/src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/checksum/software/checksum.c b/src/third_party/wiredtiger/src/checksum/software/checksum.c
index 2c33fda1911..9ddfb11ea9e 100644
--- a/src/third_party/wiredtiger/src/checksum/software/checksum.c
+++ b/src/third_party/wiredtiger/src/checksum/software/checksum.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/checksum/x86/crc32-x86-alt.c b/src/third_party/wiredtiger/src/checksum/x86/crc32-x86-alt.c
index 7abc12b286e..2a4faa33099 100644
--- a/src/third_party/wiredtiger/src/checksum/x86/crc32-x86-alt.c
+++ b/src/third_party/wiredtiger/src/checksum/x86/crc32-x86-alt.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/checksum/x86/crc32-x86.c b/src/third_party/wiredtiger/src/checksum/x86/crc32-x86.c
index 2b224f075df..9ab7e143431 100644
--- a/src/third_party/wiredtiger/src/checksum/x86/crc32-x86.c
+++ b/src/third_party/wiredtiger/src/checksum/x86/crc32-x86.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/config/config.c b/src/third_party/wiredtiger/src/config/config.c
index ec7fa076150..3c004d06d0a 100644
--- a/src/third_party/wiredtiger/src/config/config.c
+++ b/src/third_party/wiredtiger/src/config/config.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/config/config_api.c b/src/third_party/wiredtiger/src/config/config_api.c
index d5c343e422c..2f9aeca023e 100644
--- a/src/third_party/wiredtiger/src/config/config_api.c
+++ b/src/third_party/wiredtiger/src/config/config_api.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/config/config_check.c b/src/third_party/wiredtiger/src/config/config_check.c
index 6925eeb41fc..d07eabcec77 100644
--- a/src/third_party/wiredtiger/src/config/config_check.c
+++ b/src/third_party/wiredtiger/src/config/config_check.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/config/config_collapse.c b/src/third_party/wiredtiger/src/config/config_collapse.c
index 4e30c1a1832..bd1d172cbaa 100644
--- a/src/third_party/wiredtiger/src/config/config_collapse.c
+++ b/src/third_party/wiredtiger/src/config/config_collapse.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/config/config_ext.c b/src/third_party/wiredtiger/src/config/config_ext.c
index 87d2655daa7..a4c94409587 100644
--- a/src/third_party/wiredtiger/src/config/config_ext.c
+++ b/src/third_party/wiredtiger/src/config/config_ext.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/config/test_config.c b/src/third_party/wiredtiger/src/config/test_config.c
new file mode 100644
index 00000000000..524f61e24e1
--- /dev/null
+++ b/src/third_party/wiredtiger/src/config/test_config.c
@@ -0,0 +1,38 @@
+/* DO NOT EDIT: automatically built by dist/api_config.py. */
+
+#include "wt_internal.h"
+
+static const WT_CONFIG_CHECK confchk_poc_test[] = {
+ {"collection_count", "int", NULL, "min=0,max=200000", NULL, 0},
+ {"duration_seconds", "int", NULL, "min=0,max=1000000", NULL, 0},
+ {"insert_config", "string", NULL, NULL, NULL, 0},
+ {"insert_threads", "int", NULL, "min=0,max=20", NULL, 0},
+ {"key_count", "int", NULL, "min=0,max=1000000", NULL, 0},
+ {"key_size", "int", NULL, "min=0,max=10000", NULL, 0},
+ {"read_threads", "int", NULL, "min=0,max=100", NULL, 0},
+ {"update_config", "string", NULL, NULL, NULL, 0},
+ {"update_threads", "int", NULL, "min=0,max=20", NULL, 0},
+ {"value_size", "int", NULL, "min=0,max=10000", NULL, 0}, {NULL, NULL, NULL, NULL, NULL, 0}};
+
+static const WT_CONFIG_ENTRY config_entries[] = {
+ {"poc_test",
+ "collection_count=1,duration_seconds=0,insert_config=,"
+ "insert_threads=0,key_count=0,key_size=0,read_threads=0,"
+ "update_config=,update_threads=0,value_size=0",
+ confchk_poc_test, 10},
+ {NULL, NULL, NULL, 0}};
+
+/*
+ * __wt_test_config_match --
+ * Return the static configuration entry for a test.
+ */
+const WT_CONFIG_ENTRY *
+__wt_test_config_match(const char *test_name)
+{
+ const WT_CONFIG_ENTRY *ep;
+
+ for (ep = config_entries; ep->method != NULL; ++ep)
+ if (strcmp(test_name, ep->method) == 0)
+ return (ep);
+ return (NULL);
+}
diff --git a/src/third_party/wiredtiger/src/conn/api_calc_modify.c b/src/third_party/wiredtiger/src/conn/api_calc_modify.c
index 56391910c89..74fb10191ff 100644
--- a/src/third_party/wiredtiger/src/conn/api_calc_modify.c
+++ b/src/third_party/wiredtiger/src/conn/api_calc_modify.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/api_version.c b/src/third_party/wiredtiger/src/conn/api_version.c
index 2b49d4e6f68..3aba47c65c5 100644
--- a/src/third_party/wiredtiger/src/conn/api_version.c
+++ b/src/third_party/wiredtiger/src/conn/api_version.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_api.c b/src/third_party/wiredtiger/src/conn/conn_api.c
index 4687d85e309..82c8ee42966 100644
--- a/src/third_party/wiredtiger/src/conn/conn_api.c
+++ b/src/third_party/wiredtiger/src/conn/conn_api.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_cache.c b/src/third_party/wiredtiger/src/conn/conn_cache.c
index 59cc7426599..2634be7105e 100644
--- a/src/third_party/wiredtiger/src/conn/conn_cache.c
+++ b/src/third_party/wiredtiger/src/conn/conn_cache.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_cache_pool.c b/src/third_party/wiredtiger/src/conn/conn_cache_pool.c
index 1b9742a5b62..149d2eac2d6 100644
--- a/src/third_party/wiredtiger/src/conn/conn_cache_pool.c
+++ b/src/third_party/wiredtiger/src/conn/conn_cache_pool.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_capacity.c b/src/third_party/wiredtiger/src/conn/conn_capacity.c
index 2d0085dfb7b..3c453a79ede 100644
--- a/src/third_party/wiredtiger/src/conn/conn_capacity.c
+++ b/src/third_party/wiredtiger/src/conn/conn_capacity.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_ckpt.c b/src/third_party/wiredtiger/src/conn/conn_ckpt.c
index 27a5121ab2e..8a1f599a18d 100644
--- a/src/third_party/wiredtiger/src/conn/conn_ckpt.c
+++ b/src/third_party/wiredtiger/src/conn/conn_ckpt.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_dhandle.c b/src/third_party/wiredtiger/src/conn/conn_dhandle.c
index 11379c1f419..73180a119f5 100644
--- a/src/third_party/wiredtiger/src/conn/conn_dhandle.c
+++ b/src/third_party/wiredtiger/src/conn/conn_dhandle.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -920,6 +920,37 @@ restart:
}
/*
+ * __wt_dhandle_update_write_gens --
+ * Update the open dhandles write generation, run write generation and base write generation
+ * number.
+ */
+void
+__wt_dhandle_update_write_gens(WT_SESSION_IMPL *session)
+{
+ WT_BTREE *btree;
+ WT_CONNECTION_IMPL *conn;
+ WT_DATA_HANDLE *dhandle;
+
+ conn = S2C(session);
+
+ for (dhandle = NULL;;) {
+ WT_WITH_HANDLE_LIST_WRITE_LOCK(session, WT_DHANDLE_NEXT(session, dhandle, &conn->dhqh, q));
+ if (dhandle == NULL)
+ break;
+ btree = (WT_BTREE *)dhandle->handle;
+
+ WT_ASSERT(session, btree != NULL);
+
+ /*
+ * Initialize the btree write generation numbers after rollback to stable so that the
+ * transaction ids of the pages will be reset when loaded from disk to memory.
+ */
+ btree->write_gen = btree->base_write_gen = btree->run_write_gen =
+ WT_MAX(btree->write_gen, conn->base_write_gen);
+ }
+}
+
+/*
* __wt_verbose_dump_handles --
* Dump information about all data handles.
*/
diff --git a/src/third_party/wiredtiger/src/conn/conn_handle.c b/src/third_party/wiredtiger/src/conn/conn_handle.c
index d208f200ce1..cca65c4667c 100644
--- a/src/third_party/wiredtiger/src/conn/conn_handle.c
+++ b/src/third_party/wiredtiger/src/conn/conn_handle.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_log.c b/src/third_party/wiredtiger/src/conn/conn_log.c
index 0cb718d92f0..d913b251050 100644
--- a/src/third_party/wiredtiger/src/conn/conn_log.c
+++ b/src/third_party/wiredtiger/src/conn/conn_log.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_open.c b/src/third_party/wiredtiger/src/conn/conn_open.c
index 1b5880d1d40..97ac7c62e35 100644
--- a/src/third_party/wiredtiger/src/conn/conn_open.c
+++ b/src/third_party/wiredtiger/src/conn/conn_open.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_reconfig.c b/src/third_party/wiredtiger/src/conn/conn_reconfig.c
index 84c590944d2..eacbafea70f 100644
--- a/src/third_party/wiredtiger/src/conn/conn_reconfig.c
+++ b/src/third_party/wiredtiger/src/conn/conn_reconfig.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_stat.c b/src/third_party/wiredtiger/src/conn/conn_stat.c
index 06ae5b14350..64e67b1acf1 100644
--- a/src/third_party/wiredtiger/src/conn/conn_stat.c
+++ b/src/third_party/wiredtiger/src/conn/conn_stat.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_sweep.c b/src/third_party/wiredtiger/src/conn/conn_sweep.c
index dc215980d1f..c0da1093e00 100644
--- a/src/third_party/wiredtiger/src/conn/conn_sweep.c
+++ b/src/third_party/wiredtiger/src/conn/conn_sweep.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/conn/conn_tiered.c b/src/third_party/wiredtiger/src/conn/conn_tiered.c
index 40329b030d9..b34ab355326 100644
--- a/src/third_party/wiredtiger/src/conn/conn_tiered.c
+++ b/src/third_party/wiredtiger/src/conn/conn_tiered.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_backup.c b/src/third_party/wiredtiger/src/cursor/cur_backup.c
index f576a3ffa12..28ffa72c6c8 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_backup.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_backup.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_backup_incr.c b/src/third_party/wiredtiger/src/cursor/cur_backup_incr.c
index 63ee8c0eb2c..1a1db66520e 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_backup_incr.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_backup_incr.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_bulk.c b/src/third_party/wiredtiger/src/cursor/cur_bulk.c
index c4122219d84..c23c1940cd6 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_bulk.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_bulk.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_config.c b/src/third_party/wiredtiger/src/cursor/cur_config.c
index 67f3d2d9452..ade673bba41 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_config.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_config.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_ds.c b/src/third_party/wiredtiger/src/cursor/cur_ds.c
index 9d5852abf76..7139f1a8b08 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_ds.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_ds.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_dump.c b/src/third_party/wiredtiger/src/cursor/cur_dump.c
index a2c0d1873e5..734acdbe70a 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_dump.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_dump.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_file.c b/src/third_party/wiredtiger/src/cursor/cur_file.c
index 0416dc78d56..bc9057a47d5 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_file.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_file.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_hs.c b/src/third_party/wiredtiger/src/cursor/cur_hs.c
index 01d46849862..f5574b3c1ce 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_hs.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_hs.c
@@ -1,6 +1,5 @@
-
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_index.c b/src/third_party/wiredtiger/src/cursor/cur_index.c
index b286f6f9e43..ea57c060196 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_index.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_index.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_join.c b/src/third_party/wiredtiger/src/cursor/cur_join.c
index dfb65b0f2bc..29398aedb2b 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_join.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_join.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_json.c b/src/third_party/wiredtiger/src/cursor/cur_json.c
index ef24017b02d..cc3e4c61206 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_json.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_json.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_log.c b/src/third_party/wiredtiger/src/cursor/cur_log.c
index 03956a1fc36..f40ef6b7d1a 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_log.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_log.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_metadata.c b/src/third_party/wiredtiger/src/cursor/cur_metadata.c
index 66e2ec5b77b..cfd0191a782 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_metadata.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_metadata.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_stat.c b/src/third_party/wiredtiger/src/cursor/cur_stat.c
index a02f5e5f28d..cafa0c49b35 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_stat.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_stat.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_std.c b/src/third_party/wiredtiger/src/cursor/cur_std.c
index f9bcd9ca4d8..1e5d2a5dec7 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_std.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_std.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/cursor/cur_table.c b/src/third_party/wiredtiger/src/cursor/cur_table.c
index b5edf359059..e4505544544 100644
--- a/src/third_party/wiredtiger/src/cursor/cur_table.c
+++ b/src/third_party/wiredtiger/src/cursor/cur_table.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -900,6 +900,7 @@ static int
__curtable_open_indices(WT_CURSOR_TABLE *ctable)
{
WT_CURSOR **cp, *primary;
+ WT_DECL_RET;
WT_SESSION_IMPL *session;
WT_TABLE *table;
u_int i;
@@ -918,9 +919,28 @@ __curtable_open_indices(WT_CURSOR_TABLE *ctable)
WT_RET(__wt_calloc_def(session, table->nindices, &ctable->idx_cursors));
for (i = 0, cp = ctable->idx_cursors; i < table->nindices; i++, cp++)
- WT_RET(
+ WT_ERR(
__wt_open_cursor(session, table->indices[i]->source, &ctable->iface, ctable->cfg, cp));
- return (0);
+
+ if (0) {
+err:
+ /*
+ * On failure, we can't leave a subset of the indices open, since the table cursor is
+ * already open and will remain open after this call. It's all or nothing, so we need to
+ * close them all, and leave things as they were before the first cursor operation.
+ *
+ * The column group open code does not need to do this. Unlike indices, column groups are
+ * opened when the table cursor is opened, and a failure there cannot result in an open
+ * table cursor.
+ */
+ for (i = 0, cp = ctable->idx_cursors; i < table->nindices; i++, cp++)
+ if (*cp != NULL) {
+ WT_TRET((*cp)->close(*cp));
+ *cp = NULL;
+ }
+ __wt_free(session, ctable->idx_cursors);
+ }
+ return (ret);
}
/*
diff --git a/src/third_party/wiredtiger/src/docs/arch-logging.dox b/src/third_party/wiredtiger/src/docs/arch-logging.dox
index 41c96f3ad78..aea99aa094f 100644
--- a/src/third_party/wiredtiger/src/docs/arch-logging.dox
+++ b/src/third_party/wiredtiger/src/docs/arch-logging.dox
@@ -1,8 +1,182 @@
/*! @arch_page arch-logging Logging
-WiredTiger writes all changes into a write-ahead log when configured.
-Log files are shared among all writers, so changes made to
-different tables, by different threads, are interleaved.
+The WiredTiger logging subsystem implements a write-ahead log when configured.
+It is a central resource recording changes made to different tables, by different
+threads, into a file on disk. Its purpose is so that changes made since the most recent
+checkpoint are not lost and can be recovered on restart after a crash (unclean shutdown).
+
+@section log_files Log-related files in the database directory
+
+There are three log-related file variants that users can see in the database directory:
+\c WiredTigerLog.*, \c WiredTigerPreplog.* and \c WiredTigerTmplog.*.
+The actual write-ahead log files are prepended with the string \c WiredTigerLog.
+followed by ten digits of log file number. For example, \c WiredTigerLog.0000000001.
+The other two log-related filenames are for log file pre-allocation. When pre-allocation
+is configured (the default), new log files are created ahead of time containing the
+log file header content and are ready in the directory for use. The header content is
+written into a temporary file with the prefix \c WiredTigerTmplog. and again followed
+by a number. Once the temporary file is completely filled with the required content,
+synced to disk and closed, it is renamed to a prepared log file that other threads in
+the system can rename to use as the next real log file. Prepared pre-allocated log files
+that are ready to use have the prefix \c WiredTigerPreplog.
+
+Only the numbering of the actual \c WiredTigerLog.* files is significant. There is
+no relation between the numbers on those files and the number of the pre-allocated
+files. For pre-allocation, unique names are needed to avoid any possibility of naming
+collision and the numbering mechanism exists, so the code reuses it. But there is
+no meaning to the numbers on the two pre-allocated file types.
+
+There are a varying number of temporary and prepared log files in the directory. They
+are removed immediately on startup. Old pre-allocated log files cannot be reused
+on a restart because the log format and WiredTiger software could have changed in between runs.
+See \ref log_threads for a discussion of pre-allocation.
+
+@section log_configuration Configuration choices and their implications
+
+Once the logging subsystem is enabled for the system, then other configuration settings
+control the finer details of the logging subsystem. The \c archive=true setting turns
+on log file archiving. That means that log files earlier than the most recently
+completed checkpoint can be removed. (In this use, archive means removal not a form
+of cold storage.) There are times, even when configured on, that log archiving is
+temporarily disabled inside the WiredTiger library.
+
+Log archiving is disabled when a backup cursor is open. WiredTiger must guarantee
+that any log file name that may have been returned to a backup cursor remains in
+existence for the lifetime of that cursor. Log archiving is also disabled when
+a log cursor is open. This cursor could be positioned anywhere in the log that
+existed when the cursor was opened and walking the records, so all log files that
+existed at open must continue to exist.
+
+The (default) log file pre-allocation setting \c prealloc=true allows the system to
+pre-allocate log files so that when application threads are writing their log
+records, on the critical path, they do not incur the penalties of file creation
+and having to sync the header or directory to the disk. Similar to archiving,
+there are times when log file pre-allocation is disabled internally. Pre-allocation is
+disabled when a backup cursor is open. The user may not walk the list of files returned in
+the backup cursor, but can, instead, copy the directory contents itself. Therefore,
+backup has a contract that all files that existed when the backup cursor was opened will
+continue to exist for the lifetime of the backup cursor. Renaming pre-allocated log
+files would violate that contract.
+
+@section log_records Log operations and records
+
+The unit written to the write-ahead log is a log record. Some log records are made up
+of log operations. The most common log record containing operations is the transaction
+commit log record. Log records are of type \c WT_LOG_RECORD. There is a 16-byte header
+that contains information about this record such as its length on disk, its length
+in memory, a record checksum and whether it is compressed or encrypted. Then the end of
+the log record contains the data for the that record. All log records
+are a multiple of 128 bytes. The reason for that was to avoid any false memory sharing
+when writing records into a memory buffer.
+
+Log operations describe the changes in a transaction. Modifications are collected in
+a memory buffer in a transaction and then when the transaction commits, that set of
+operations is given to the logging subsystem to write as a single commit log record.
+Therefore, transactions consume memory with that buffer as long as the transaction
+is active. The other implication of using this operations buffer is that it is
+simply freed if the transaction is rolled back and there is nothing to record or
+do for a rolled back transaction.
+
+@section log_subsystem Logging subsystem data structures and algorithms
+
+A log sequence number (LSN) identifies the location of a log record. In WiredTiger,
+the LSN is a 64-bit number containing two values, a 32-bit file number and a 32-bit offset.
+The file number portion of the LSN maps to the number in the \c WiredTigerLog. file name.
+The offset portion of the LSN is the byte offset within that file where the log record starts.
+
+There is a \c WT_LOG structure that contains the live information about the state of
+the logging subsystem. This document does not itemize every field. It contains some
+locks and condition variables for synchronization and a large set of LSNs for keeping
+track of the state of the system. Some of the important LSNs maintained are:
+- alloc_lsn: This is the LSN for the next log record allocation.
+- ckpt_lsn: This is the LSN of the last checkpoint.
+- sync_lsn: This is the LSN of the last record synced to disk.
+- write_lsn: This is the LSN of the end of the last record written to the operating system.
+- write_start_lsn: This is the LSN of the start of the last record written to the operating system.
+
+As mentioned earlier, all log records are a multiple of 128 bytes, and that means
+they also have a 128 byte minimum record size. If a buffer is not a multiple, the
+logging subsystem allocates a 128-byte multiple rounded up buffer and copies the
+record into that buffer and zero fills the tail.
+
+Logging supports both compression and at-rest encryption. When compression is enabled,
+WiredTiger only compresses if doing so may result in space savings. Therefore, small records
+that already are below the 128 byte minimum size will not result in any space savings.
+All user log records are encrypted when enabled, regardless of size. When both
+compression and encryption are enabled, compression is performed first, then encryption.
+That resulting log record is then rounded up to the 128-byte multiple.
+
+WiredTiger uses a lock free mechanism to write records to the log
+in the common path. WiredTiger has a pool of log buffers called
+slots and each thread entering the logging code reserves its memory
+buffer via atomic operations and then fills in its part of the
+memory. When all threads that are using the slot finish their copies
+into the memory, then the slot can be released and written to the
+file system. Slots remain open and the memory available for the
+next thread to use until a flush is forced, the memory fills or a
+timer expires.
+
+This means that for the common case of a user committing a transaction with the
+default synchronization setting of memory-only, the path of writing its record into
+the write-ahead log becomes, essentially, two atomic operations and memory copies. The
+common path does not require acquiring locks.
+
+@section log_threads Internal Threads
+There are several internal logging-related threads that perform
+housekeeping on the logging subsystem. The main thread, called \c
+log_server, is a general thread, meaning it performs several unrelated
+tasks. It flushes out the current slot to the file system. It does
+this flush every 50 milliseconds and this is done so that if a
+system becomes idle, buffered log records in the memory of a slot
+do not languish. The thread also performs log archiving to remove
+any log files that are no longer needed based on the checkpoint
+LSN. Finally the main thread performs log file pre-allocation, if
+configured. The pre-allocation algorithm is adaptable. If the thread
+did not make sufficient numbers of pre-allocated log files the
+system then makes more. If too few were used, then later pre-allocation
+will create fewer of them.
+
+There is another internal thread dedicated to managing operations on log files. This
+is the \c log_file_server thread. I/O operations can be slow and costly so this
+thread takes the burden of closing and syncing files to disk off of user application threads.
+If a log file needs to be closed, then the application thread moves its file handle to the
+\c log->log_close_fh field and signals this thread. This thread will fsync the file
+handle, and then close it. Updating the \c log_close_lsn and the \c sync_lsn values when
+those I/O operations are complete.
+
+The third internal thread manages advancing the \c write_lsn. As the \c write_lsn must
+be advanced in proper LSN order, it becomes a point of single threading
+in the path of writing a log record. The goal is to avoid single threading application
+threads. So after a log slot is written to the file system, the application thread
+only needs to set the slot's state to a special state \c WT_LOG_SLOT_WRITTEN and
+return. This internal thread then walks the array of log slots looking for written
+slots and advances the \c write_lsn in the proper order. Along the way the thread
+will coalesce adjacent LSNs of slots in order to advance the LSN in larger increments.
+This thread will then clean up and mark the state of the processed slots
+as \c WT_LOG_SLOT_FREE.
+
+@section log_usage Using the log
+
+In addition to storing a record of the operations performed to data in the write-ahead
+log, users can write their own strings into the logs via the \c WT_SESSION::log_printf
+method. That method takes a printf-style format string and arguments and will write
+that string into the write-ahead log as a message record type.
+
+Transactions are stored in the write-ahead log and their purpose is to allow recovery
+in the case of crash or failure. When the system is restarted, WiredTiger will always
+run recovery. If the system previously shutdown cleanly, then recovery determines that
+the log does not need to be replayed. Otherwise, recovery replays all operations from
+the LSN of the most recent checkpoint. When timestamps are in use, recovery also
+performs a rollback-to-stable operation on tables that are not logged.
+This aspect of recovery is discussed in @ref arch-rts.
+
+Users can access and view the records in the log using one of two methods. The most
+common method is via the \c wt printlog command. The command utility will print the
+entire log by default. The user can specify optional starting and ending LSNs on the
+command line to limit the output. See @ref command_line for more information.
+
+A log cursor can be opened up on a running system and that cursor
+can walk forward through the log. Log cursors are described in great detail on
+the @ref cursor_log page.
-Internally, the current logging state is represented by the WT_LOG structure.
*/
diff --git a/src/third_party/wiredtiger/src/docs/spell.ok b/src/third_party/wiredtiger/src/docs/spell.ok
index e2a2d691a9e..f6964b7b4d2 100644
--- a/src/third_party/wiredtiger/src/docs/spell.ok
+++ b/src/third_party/wiredtiger/src/docs/spell.ok
@@ -76,6 +76,7 @@ LRU
LRrVv
LSB
LSM
+LSNs
LZ
Lameter
LevelDB
@@ -122,9 +123,11 @@ WiredTigerCheckpoint
WiredTigerException
WiredTigerLog
WiredTigerPanicException
+WiredTigerPreplog
WiredTigerRollbackException
WiredTigerStat
WiredTigerTestCase
+WiredTigerTmplog
XRay
Yann
Za
@@ -179,6 +182,7 @@ checkpointed
checksum
checksums
ckp
+ckpt
clickable
colgroup
colgroups
@@ -466,6 +470,8 @@ plantuml
png
posix
pre
+prealloc
+prepended
prepends
prev
primary's
diff --git a/src/third_party/wiredtiger/src/docs/style/footer.html b/src/third_party/wiredtiger/src/docs/style/footer.html
index 48349037dd6..b7b43039d5f 100644
--- a/src/third_party/wiredtiger/src/docs/style/footer.html
+++ b/src/third_party/wiredtiger/src/docs/style/footer.html
@@ -3,13 +3,13 @@
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
$navpath
- <li class="footer">Copyright (c) 2008-2020 MongoDB, Inc. All rights reserved. Contact <a href="mailto:info@wiredtiger.com">info@wiredtiger.com</a> for more information.</li>
+ <li class="footer">Copyright (c) 2008-present MongoDB, Inc. All rights reserved. Contact <a href="mailto:info@wiredtiger.com">info@wiredtiger.com</a> for more information.</li>
</ul>
</div>
<!--END GENERATE_TREEVIEW-->
<!--BEGIN !GENERATE_TREEVIEW-->
<hr class="footer"/><address class="footer"><small>
-Copyright (c) 2008-2020 MongoDB, Inc. All rights reserved. Contact <a href="mailto:info@wiredtiger.com">info@wiredtiger.com</a> for more information.
+Copyright (c) 2008-present MongoDB, Inc. All rights reserved. Contact <a href="mailto:info@wiredtiger.com">info@wiredtiger.com</a> for more information.
</small></address>
<!--END !GENERATE_TREEVIEW-->
</body>
diff --git a/src/third_party/wiredtiger/src/docs/tools/doxfilter.py b/src/third_party/wiredtiger/src/docs/tools/doxfilter.py
index 42f47426578..a84723be0ec 100755
--- a/src/third_party/wiredtiger/src/docs/tools/doxfilter.py
+++ b/src/third_party/wiredtiger/src/docs/tools/doxfilter.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Public Domain 2014-2020 MongoDB, Inc.
+# Public Domain 2014-present MongoDB, Inc.
# Public Domain 2008-2014 WiredTiger, Inc.
#
# This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/docs/tools/fixlinks.py b/src/third_party/wiredtiger/src/docs/tools/fixlinks.py
index 39d17cd8949..6347289e5e2 100755
--- a/src/third_party/wiredtiger/src/docs/tools/fixlinks.py
+++ b/src/third_party/wiredtiger/src/docs/tools/fixlinks.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Public Domain 2014-2020 MongoDB, Inc.
+# Public Domain 2014-present MongoDB, Inc.
# Public Domain 2008-2014 WiredTiger, Inc.
#
# This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/evict/evict_file.c b/src/third_party/wiredtiger/src/evict/evict_file.c
index b66f8d3b1b0..1e83f0a5643 100644
--- a/src/third_party/wiredtiger/src/evict/evict_file.c
+++ b/src/third_party/wiredtiger/src/evict/evict_file.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/evict/evict_lru.c b/src/third_party/wiredtiger/src/evict/evict_lru.c
index 2cf014137a7..17e559cb52b 100644
--- a/src/third_party/wiredtiger/src/evict/evict_lru.c
+++ b/src/third_party/wiredtiger/src/evict/evict_lru.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/evict/evict_page.c b/src/third_party/wiredtiger/src/evict/evict_page.c
index e28c3cfb7ec..8919f3d6544 100644
--- a/src/third_party/wiredtiger/src/evict/evict_page.c
+++ b/src/third_party/wiredtiger/src/evict/evict_page.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/evict/evict_stat.c b/src/third_party/wiredtiger/src/evict/evict_stat.c
index 9d42ac577c4..6742fa734a1 100644
--- a/src/third_party/wiredtiger/src/evict/evict_stat.c
+++ b/src/third_party/wiredtiger/src/evict/evict_stat.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/history/hs_conn.c b/src/third_party/wiredtiger/src/history/hs_conn.c
index 554e504754c..161aeec0030 100644
--- a/src/third_party/wiredtiger/src/history/hs_conn.c
+++ b/src/third_party/wiredtiger/src/history/hs_conn.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/history/hs_cursor.c b/src/third_party/wiredtiger/src/history/hs_cursor.c
index 6baaf94847c..432fe116a72 100644
--- a/src/third_party/wiredtiger/src/history/hs_cursor.c
+++ b/src/third_party/wiredtiger/src/history/hs_cursor.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/history/hs_rec.c b/src/third_party/wiredtiger/src/history/hs_rec.c
index 3640b4d0adb..318804eb7e1 100644
--- a/src/third_party/wiredtiger/src/history/hs_rec.c
+++ b/src/third_party/wiredtiger/src/history/hs_rec.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/history/hs_verify.c b/src/third_party/wiredtiger/src/history/hs_verify.c
index d5b0100dd95..2fc49daa643 100644
--- a/src/third_party/wiredtiger/src/history/hs_verify.c
+++ b/src/third_party/wiredtiger/src/history/hs_verify.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/api.h b/src/third_party/wiredtiger/src/include/api.h
index 4449b6bb3ea..a894b79eeef 100644
--- a/src/third_party/wiredtiger/src/include/api.h
+++ b/src/third_party/wiredtiger/src/include/api.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/bitstring_inline.h b/src/third_party/wiredtiger/src/include/bitstring_inline.h
index 59a3533f918..defab3c3e59 100644
--- a/src/third_party/wiredtiger/src/include/bitstring_inline.h
+++ b/src/third_party/wiredtiger/src/include/bitstring_inline.h
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/include/block.h b/src/third_party/wiredtiger/src/include/block.h
index 74b677b6cd0..3b0370f63dd 100644
--- a/src/third_party/wiredtiger/src/include/block.h
+++ b/src/third_party/wiredtiger/src/include/block.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/block_inline.h b/src/third_party/wiredtiger/src/include/block_inline.h
index 9f47e4d96de..bb4f49ef626 100644
--- a/src/third_party/wiredtiger/src/include/block_inline.h
+++ b/src/third_party/wiredtiger/src/include/block_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/bloom.h b/src/third_party/wiredtiger/src/include/bloom.h
index 642cd33fc94..b7761b06f33 100644
--- a/src/third_party/wiredtiger/src/include/bloom.h
+++ b/src/third_party/wiredtiger/src/include/bloom.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/btmem.h b/src/third_party/wiredtiger/src/include/btmem.h
index 58fd2bd2ac6..79297af1743 100644
--- a/src/third_party/wiredtiger/src/include/btmem.h
+++ b/src/third_party/wiredtiger/src/include/btmem.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/btree.h b/src/third_party/wiredtiger/src/include/btree.h
index 79addcfd048..b2f6ba2dfb1 100644
--- a/src/third_party/wiredtiger/src/include/btree.h
+++ b/src/third_party/wiredtiger/src/include/btree.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/btree_cmp_inline.h b/src/third_party/wiredtiger/src/include/btree_cmp_inline.h
index 5969404f807..18d8a8e5158 100644
--- a/src/third_party/wiredtiger/src/include/btree_cmp_inline.h
+++ b/src/third_party/wiredtiger/src/include/btree_cmp_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/btree_inline.h b/src/third_party/wiredtiger/src/include/btree_inline.h
index 96072f2976f..4ca8db351b4 100644
--- a/src/third_party/wiredtiger/src/include/btree_inline.h
+++ b/src/third_party/wiredtiger/src/include/btree_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/buf_inline.h b/src/third_party/wiredtiger/src/include/buf_inline.h
index d8462daa93c..f38a632b4e4 100644
--- a/src/third_party/wiredtiger/src/include/buf_inline.h
+++ b/src/third_party/wiredtiger/src/include/buf_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/cache.h b/src/third_party/wiredtiger/src/include/cache.h
index 85b3ab35f83..f2899eda401 100644
--- a/src/third_party/wiredtiger/src/include/cache.h
+++ b/src/third_party/wiredtiger/src/include/cache.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/cache_inline.h b/src/third_party/wiredtiger/src/include/cache_inline.h
index 4015196fd6d..7bfa9dd70cd 100644
--- a/src/third_party/wiredtiger/src/include/cache_inline.h
+++ b/src/third_party/wiredtiger/src/include/cache_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/capacity.h b/src/third_party/wiredtiger/src/include/capacity.h
index 0e7d767334b..2ad40d7ed35 100644
--- a/src/third_party/wiredtiger/src/include/capacity.h
+++ b/src/third_party/wiredtiger/src/include/capacity.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/cell.h b/src/third_party/wiredtiger/src/include/cell.h
index e17a0370425..5b9db7a0173 100644
--- a/src/third_party/wiredtiger/src/include/cell.h
+++ b/src/third_party/wiredtiger/src/include/cell.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/cell_inline.h b/src/third_party/wiredtiger/src/include/cell_inline.h
index 8a81adcd896..70233e3f9cd 100644
--- a/src/third_party/wiredtiger/src/include/cell_inline.h
+++ b/src/third_party/wiredtiger/src/include/cell_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/column_inline.h b/src/third_party/wiredtiger/src/include/column_inline.h
index b76b1a728ff..c09a1321b23 100644
--- a/src/third_party/wiredtiger/src/include/column_inline.h
+++ b/src/third_party/wiredtiger/src/include/column_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/compact.h b/src/third_party/wiredtiger/src/include/compact.h
index ab11b981a74..637f4a60e51 100644
--- a/src/third_party/wiredtiger/src/include/compact.h
+++ b/src/third_party/wiredtiger/src/include/compact.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/config.h b/src/third_party/wiredtiger/src/include/config.h
index 1ee86b9713e..9830801a01e 100644
--- a/src/third_party/wiredtiger/src/include/config.h
+++ b/src/third_party/wiredtiger/src/include/config.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/connection.h b/src/third_party/wiredtiger/src/include/connection.h
index 548504c4a1b..55844322a93 100644
--- a/src/third_party/wiredtiger/src/include/connection.h
+++ b/src/third_party/wiredtiger/src/include/connection.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/ctype_inline.h b/src/third_party/wiredtiger/src/include/ctype_inline.h
index 0daf748f3b2..a6dc8e66e9f 100644
--- a/src/third_party/wiredtiger/src/include/ctype_inline.h
+++ b/src/third_party/wiredtiger/src/include/ctype_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/cursor.h b/src/third_party/wiredtiger/src/include/cursor.h
index 9a737ed158e..d489f7aa638 100644
--- a/src/third_party/wiredtiger/src/include/cursor.h
+++ b/src/third_party/wiredtiger/src/include/cursor.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/cursor_inline.h b/src/third_party/wiredtiger/src/include/cursor_inline.h
index 7675b495b44..ef359942853 100644
--- a/src/third_party/wiredtiger/src/include/cursor_inline.h
+++ b/src/third_party/wiredtiger/src/include/cursor_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/dhandle.h b/src/third_party/wiredtiger/src/include/dhandle.h
index 75183c83b99..51357bd03c6 100644
--- a/src/third_party/wiredtiger/src/include/dhandle.h
+++ b/src/third_party/wiredtiger/src/include/dhandle.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/dlh.h b/src/third_party/wiredtiger/src/include/dlh.h
index 76a36053c83..87a905e62e3 100644
--- a/src/third_party/wiredtiger/src/include/dlh.h
+++ b/src/third_party/wiredtiger/src/include/dlh.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/error.h b/src/third_party/wiredtiger/src/include/error.h
index 7ef6f387176..dde7bcf9710 100644
--- a/src/third_party/wiredtiger/src/include/error.h
+++ b/src/third_party/wiredtiger/src/include/error.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/extern.h b/src/third_party/wiredtiger/src/include/extern.h
index bf1505b2229..dfefe57ba26 100644
--- a/src/third_party/wiredtiger/src/include/extern.h
+++ b/src/third_party/wiredtiger/src/include/extern.h
@@ -1685,6 +1685,7 @@ extern void __wt_curstat_cache_walk(WT_SESSION_IMPL *session);
extern void __wt_curstat_dsrc_final(WT_CURSOR_STAT *cst);
extern void __wt_curtable_set_key(WT_CURSOR *cursor, ...);
extern void __wt_curtable_set_value(WT_CURSOR *cursor, ...);
+extern void __wt_dhandle_update_write_gens(WT_SESSION_IMPL *session);
extern void __wt_encrypt_size(
WT_SESSION_IMPL *session, WT_KEYED_ENCRYPTOR *kencryptor, size_t incoming_size, size_t *sizep);
extern void __wt_err_func(
diff --git a/src/third_party/wiredtiger/src/include/gcc.h b/src/third_party/wiredtiger/src/include/gcc.h
index a1972960a33..16241a02b87 100644
--- a/src/third_party/wiredtiger/src/include/gcc.h
+++ b/src/third_party/wiredtiger/src/include/gcc.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/hardware.h b/src/third_party/wiredtiger/src/include/hardware.h
index aa63293f07a..762613f0373 100644
--- a/src/third_party/wiredtiger/src/include/hardware.h
+++ b/src/third_party/wiredtiger/src/include/hardware.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/intpack_inline.h b/src/third_party/wiredtiger/src/include/intpack_inline.h
index f1804a2a3ed..b6e97cb1325 100644
--- a/src/third_party/wiredtiger/src/include/intpack_inline.h
+++ b/src/third_party/wiredtiger/src/include/intpack_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/lint.h b/src/third_party/wiredtiger/src/include/lint.h
index eb07573a530..9fc0720d121 100644
--- a/src/third_party/wiredtiger/src/include/lint.h
+++ b/src/third_party/wiredtiger/src/include/lint.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/log.h b/src/third_party/wiredtiger/src/include/log.h
index 955fcf67be4..f562e5da383 100644
--- a/src/third_party/wiredtiger/src/include/log.h
+++ b/src/third_party/wiredtiger/src/include/log.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/log_inline.h b/src/third_party/wiredtiger/src/include/log_inline.h
index ec64c0f4794..861d0afb022 100644
--- a/src/third_party/wiredtiger/src/include/log_inline.h
+++ b/src/third_party/wiredtiger/src/include/log_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/lsm.h b/src/third_party/wiredtiger/src/include/lsm.h
index 5b91e001892..0503a5c69f0 100644
--- a/src/third_party/wiredtiger/src/include/lsm.h
+++ b/src/third_party/wiredtiger/src/include/lsm.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/meta.h b/src/third_party/wiredtiger/src/include/meta.h
index b4902740837..01f0c6de92a 100644
--- a/src/third_party/wiredtiger/src/include/meta.h
+++ b/src/third_party/wiredtiger/src/include/meta.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/misc.h b/src/third_party/wiredtiger/src/include/misc.h
index 77c4088a363..14cf9133502 100644
--- a/src/third_party/wiredtiger/src/include/misc.h
+++ b/src/third_party/wiredtiger/src/include/misc.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/misc_inline.h b/src/third_party/wiredtiger/src/include/misc_inline.h
index 6967811b434..77af48481e3 100644
--- a/src/third_party/wiredtiger/src/include/misc_inline.h
+++ b/src/third_party/wiredtiger/src/include/misc_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/msvc.h b/src/third_party/wiredtiger/src/include/msvc.h
index a834f201d28..ccffa827e4c 100644
--- a/src/third_party/wiredtiger/src/include/msvc.h
+++ b/src/third_party/wiredtiger/src/include/msvc.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/mutex.h b/src/third_party/wiredtiger/src/include/mutex.h
index 4f9677a1764..43eb7b2376a 100644
--- a/src/third_party/wiredtiger/src/include/mutex.h
+++ b/src/third_party/wiredtiger/src/include/mutex.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/mutex_inline.h b/src/third_party/wiredtiger/src/include/mutex_inline.h
index a75c421f882..bc51c36672a 100644
--- a/src/third_party/wiredtiger/src/include/mutex_inline.h
+++ b/src/third_party/wiredtiger/src/include/mutex_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/optrack.h b/src/third_party/wiredtiger/src/include/optrack.h
index 653f5ef982b..e18c56ac418 100644
--- a/src/third_party/wiredtiger/src/include/optrack.h
+++ b/src/third_party/wiredtiger/src/include/optrack.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/os.h b/src/third_party/wiredtiger/src/include/os.h
index 965baab05e8..2b23882f660 100644
--- a/src/third_party/wiredtiger/src/include/os.h
+++ b/src/third_party/wiredtiger/src/include/os.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/os_fhandle_inline.h b/src/third_party/wiredtiger/src/include/os_fhandle_inline.h
index ae0f750ac00..c79c6ddd155 100644
--- a/src/third_party/wiredtiger/src/include/os_fhandle_inline.h
+++ b/src/third_party/wiredtiger/src/include/os_fhandle_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/os_fs_inline.h b/src/third_party/wiredtiger/src/include/os_fs_inline.h
index 7e6529c5f8d..56d0bc2a5f3 100644
--- a/src/third_party/wiredtiger/src/include/os_fs_inline.h
+++ b/src/third_party/wiredtiger/src/include/os_fs_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/os_fstream_inline.h b/src/third_party/wiredtiger/src/include/os_fstream_inline.h
index 7154f5a2e98..7f883c8503b 100644
--- a/src/third_party/wiredtiger/src/include/os_fstream_inline.h
+++ b/src/third_party/wiredtiger/src/include/os_fstream_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/os_windows.h b/src/third_party/wiredtiger/src/include/os_windows.h
index 1b35d2eb0d0..597c61a0430 100644
--- a/src/third_party/wiredtiger/src/include/os_windows.h
+++ b/src/third_party/wiredtiger/src/include/os_windows.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/packing_inline.h b/src/third_party/wiredtiger/src/include/packing_inline.h
index e0cc6e7769b..84390ba7266 100644
--- a/src/third_party/wiredtiger/src/include/packing_inline.h
+++ b/src/third_party/wiredtiger/src/include/packing_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/posix.h b/src/third_party/wiredtiger/src/include/posix.h
index 19778726110..faefe528046 100644
--- a/src/third_party/wiredtiger/src/include/posix.h
+++ b/src/third_party/wiredtiger/src/include/posix.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/reconcile.h b/src/third_party/wiredtiger/src/include/reconcile.h
index 81e1fa22479..f4bda5f5434 100644
--- a/src/third_party/wiredtiger/src/include/reconcile.h
+++ b/src/third_party/wiredtiger/src/include/reconcile.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/reconcile_inline.h b/src/third_party/wiredtiger/src/include/reconcile_inline.h
index 2bc38224679..8bf71e66ab9 100644
--- a/src/third_party/wiredtiger/src/include/reconcile_inline.h
+++ b/src/third_party/wiredtiger/src/include/reconcile_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/schema.h b/src/third_party/wiredtiger/src/include/schema.h
index 5974dbfbd15..ebee4b3ca21 100644
--- a/src/third_party/wiredtiger/src/include/schema.h
+++ b/src/third_party/wiredtiger/src/include/schema.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/serial_inline.h b/src/third_party/wiredtiger/src/include/serial_inline.h
index a469b0db0f6..14497c5a58e 100644
--- a/src/third_party/wiredtiger/src/include/serial_inline.h
+++ b/src/third_party/wiredtiger/src/include/serial_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/session.h b/src/third_party/wiredtiger/src/include/session.h
index 1350c6114b4..f07a9bba91f 100644
--- a/src/third_party/wiredtiger/src/include/session.h
+++ b/src/third_party/wiredtiger/src/include/session.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/stat.h b/src/third_party/wiredtiger/src/include/stat.h
index 99bcb538f59..f7f6cb8232e 100644
--- a/src/third_party/wiredtiger/src/include/stat.h
+++ b/src/third_party/wiredtiger/src/include/stat.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -785,6 +785,7 @@ struct __wt_connection_stats {
int64_t tiered_retention;
int64_t txn_read_race_prepare_update;
int64_t txn_rts_hs_stop_older_than_newer_start;
+ int64_t txn_rts_inconsistent_ckpt;
int64_t txn_rts_keys_removed;
int64_t txn_rts_keys_restored;
int64_t txn_rts_hs_restore_tombstones;
@@ -1002,6 +1003,7 @@ struct __wt_dsrc_stats {
int64_t tiered_retention;
int64_t txn_read_race_prepare_update;
int64_t txn_rts_hs_stop_older_than_newer_start;
+ int64_t txn_rts_inconsistent_ckpt;
int64_t txn_rts_keys_removed;
int64_t txn_rts_keys_restored;
int64_t txn_rts_hs_restore_tombstones;
diff --git a/src/third_party/wiredtiger/src/include/swap.h b/src/third_party/wiredtiger/src/include/swap.h
index 437de313a6c..2ff00294102 100644
--- a/src/third_party/wiredtiger/src/include/swap.h
+++ b/src/third_party/wiredtiger/src/include/swap.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/thread_group.h b/src/third_party/wiredtiger/src/include/thread_group.h
index fd991715723..b65313292e4 100644
--- a/src/third_party/wiredtiger/src/include/thread_group.h
+++ b/src/third_party/wiredtiger/src/include/thread_group.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/tiered.h b/src/third_party/wiredtiger/src/include/tiered.h
index caeb2226bc4..9b15bfbdf58 100644
--- a/src/third_party/wiredtiger/src/include/tiered.h
+++ b/src/third_party/wiredtiger/src/include/tiered.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/time_inline.h b/src/third_party/wiredtiger/src/include/time_inline.h
index cff5e0850ea..5b7c28da5fb 100644
--- a/src/third_party/wiredtiger/src/include/time_inline.h
+++ b/src/third_party/wiredtiger/src/include/time_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/timestamp.h b/src/third_party/wiredtiger/src/include/timestamp.h
index 00bcb7972b4..e630be8d08c 100644
--- a/src/third_party/wiredtiger/src/include/timestamp.h
+++ b/src/third_party/wiredtiger/src/include/timestamp.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/timestamp_inline.h b/src/third_party/wiredtiger/src/include/timestamp_inline.h
index 64a9c173ca3..0d36eb85ea8 100644
--- a/src/third_party/wiredtiger/src/include/timestamp_inline.h
+++ b/src/third_party/wiredtiger/src/include/timestamp_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/txn.h b/src/third_party/wiredtiger/src/include/txn.h
index 0a3c7a99582..de72ec0c64c 100644
--- a/src/third_party/wiredtiger/src/include/txn.h
+++ b/src/third_party/wiredtiger/src/include/txn.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/txn_inline.h b/src/third_party/wiredtiger/src/include/txn_inline.h
index f4a4c552ddb..c9d4486221a 100644
--- a/src/third_party/wiredtiger/src/include/txn_inline.h
+++ b/src/third_party/wiredtiger/src/include/txn_inline.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/verify_build.h b/src/third_party/wiredtiger/src/include/verify_build.h
index 5f131b7ab0c..af0e81c141d 100644
--- a/src/third_party/wiredtiger/src/include/verify_build.h
+++ b/src/third_party/wiredtiger/src/include/verify_build.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/wiredtiger.in b/src/third_party/wiredtiger/src/include/wiredtiger.in
index d041c231680..994b2ca11df 100644
--- a/src/third_party/wiredtiger/src/include/wiredtiger.in
+++ b/src/third_party/wiredtiger/src/include/wiredtiger.in
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -6110,22 +6110,24 @@ extern int wiredtiger_extension_terminate(WT_CONNECTION *connection);
* than newer records
*/
#define WT_STAT_CONN_TXN_RTS_HS_STOP_OLDER_THAN_NEWER_START 1471
+/*! transaction: rollback to stable inconsistent checkpoint */
+#define WT_STAT_CONN_TXN_RTS_INCONSISTENT_CKPT 1472
/*! transaction: rollback to stable keys removed */
-#define WT_STAT_CONN_TXN_RTS_KEYS_REMOVED 1472
+#define WT_STAT_CONN_TXN_RTS_KEYS_REMOVED 1473
/*! transaction: rollback to stable keys restored */
-#define WT_STAT_CONN_TXN_RTS_KEYS_RESTORED 1473
+#define WT_STAT_CONN_TXN_RTS_KEYS_RESTORED 1474
/*! transaction: rollback to stable restored tombstones from history store */
-#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_TOMBSTONES 1474
+#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_TOMBSTONES 1475
/*! transaction: rollback to stable restored updates from history store */
-#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_UPDATES 1475
+#define WT_STAT_CONN_TXN_RTS_HS_RESTORE_UPDATES 1476
/*! transaction: rollback to stable sweeping history store keys */
-#define WT_STAT_CONN_TXN_RTS_SWEEP_HS_KEYS 1476
+#define WT_STAT_CONN_TXN_RTS_SWEEP_HS_KEYS 1477
/*! transaction: rollback to stable updates removed from history store */
-#define WT_STAT_CONN_TXN_RTS_HS_REMOVED 1477
+#define WT_STAT_CONN_TXN_RTS_HS_REMOVED 1478
/*! transaction: transaction checkpoints due to obsolete pages */
-#define WT_STAT_CONN_TXN_CHECKPOINT_OBSOLETE_APPLIED 1478
+#define WT_STAT_CONN_TXN_CHECKPOINT_OBSOLETE_APPLIED 1479
/*! transaction: update conflicts */
-#define WT_STAT_CONN_TXN_UPDATE_CONFLICT 1479
+#define WT_STAT_CONN_TXN_UPDATE_CONFLICT 1480
/*!
* @}
@@ -6727,22 +6729,24 @@ extern int wiredtiger_extension_terminate(WT_CONNECTION *connection);
* than newer records
*/
#define WT_STAT_DSRC_TXN_RTS_HS_STOP_OLDER_THAN_NEWER_START 2201
+/*! transaction: rollback to stable inconsistent checkpoint */
+#define WT_STAT_DSRC_TXN_RTS_INCONSISTENT_CKPT 2202
/*! transaction: rollback to stable keys removed */
-#define WT_STAT_DSRC_TXN_RTS_KEYS_REMOVED 2202
+#define WT_STAT_DSRC_TXN_RTS_KEYS_REMOVED 2203
/*! transaction: rollback to stable keys restored */
-#define WT_STAT_DSRC_TXN_RTS_KEYS_RESTORED 2203
+#define WT_STAT_DSRC_TXN_RTS_KEYS_RESTORED 2204
/*! transaction: rollback to stable restored tombstones from history store */
-#define WT_STAT_DSRC_TXN_RTS_HS_RESTORE_TOMBSTONES 2204
+#define WT_STAT_DSRC_TXN_RTS_HS_RESTORE_TOMBSTONES 2205
/*! transaction: rollback to stable restored updates from history store */
-#define WT_STAT_DSRC_TXN_RTS_HS_RESTORE_UPDATES 2205
+#define WT_STAT_DSRC_TXN_RTS_HS_RESTORE_UPDATES 2206
/*! transaction: rollback to stable sweeping history store keys */
-#define WT_STAT_DSRC_TXN_RTS_SWEEP_HS_KEYS 2206
+#define WT_STAT_DSRC_TXN_RTS_SWEEP_HS_KEYS 2207
/*! transaction: rollback to stable updates removed from history store */
-#define WT_STAT_DSRC_TXN_RTS_HS_REMOVED 2207
+#define WT_STAT_DSRC_TXN_RTS_HS_REMOVED 2208
/*! transaction: transaction checkpoints due to obsolete pages */
-#define WT_STAT_DSRC_TXN_CHECKPOINT_OBSOLETE_APPLIED 2208
+#define WT_STAT_DSRC_TXN_CHECKPOINT_OBSOLETE_APPLIED 2209
/*! transaction: update conflicts */
-#define WT_STAT_DSRC_TXN_UPDATE_CONFLICT 2209
+#define WT_STAT_DSRC_TXN_UPDATE_CONFLICT 2210
/*!
* @}
diff --git a/src/third_party/wiredtiger/src/include/wiredtiger_ext.h b/src/third_party/wiredtiger/src/include/wiredtiger_ext.h
index c1fdb376ba8..7251ea7fcc0 100644
--- a/src/third_party/wiredtiger/src/include/wiredtiger_ext.h
+++ b/src/third_party/wiredtiger/src/include/wiredtiger_ext.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/include/wt_internal.h b/src/third_party/wiredtiger/src/include/wt_internal.h
index 148c5cd0ed5..a250032126b 100644
--- a/src/third_party/wiredtiger/src/include/wt_internal.h
+++ b/src/third_party/wiredtiger/src/include/wt_internal.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/log/log.c b/src/third_party/wiredtiger/src/log/log.c
index 6ba60e60129..9a2632da7c9 100644
--- a/src/third_party/wiredtiger/src/log/log.c
+++ b/src/third_party/wiredtiger/src/log/log.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/log/log_slot.c b/src/third_party/wiredtiger/src/log/log_slot.c
index abb6f6c2f41..30c3cd41016 100644
--- a/src/third_party/wiredtiger/src/log/log_slot.c
+++ b/src/third_party/wiredtiger/src/log/log_slot.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/log/log_sys.c b/src/third_party/wiredtiger/src/log/log_sys.c
index 73ca8cc2ada..a922cb9b56a 100644
--- a/src/third_party/wiredtiger/src/log/log_sys.c
+++ b/src/third_party/wiredtiger/src/log/log_sys.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_cursor.c b/src/third_party/wiredtiger/src/lsm/lsm_cursor.c
index 815cafd8047..d2093a26ecb 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_cursor.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_cursor.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_cursor_bulk.c b/src/third_party/wiredtiger/src/lsm/lsm_cursor_bulk.c
index 50dbcf5726c..0289bbde228 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_cursor_bulk.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_cursor_bulk.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_manager.c b/src/third_party/wiredtiger/src/lsm/lsm_manager.c
index 1ca3f32f262..0d5f1eae331 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_manager.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_manager.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_merge.c b/src/third_party/wiredtiger/src/lsm/lsm_merge.c
index e8fce20860f..06808b6a7af 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_merge.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_merge.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_meta.c b/src/third_party/wiredtiger/src/lsm/lsm_meta.c
index cf5ba61bdbf..fdeeb61f10d 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_meta.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_meta.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_stat.c b/src/third_party/wiredtiger/src/lsm/lsm_stat.c
index ab2a3a31415..80924f8d6b1 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_stat.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_stat.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_tree.c b/src/third_party/wiredtiger/src/lsm/lsm_tree.c
index 236120c29f3..39264213ecc 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_tree.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_tree.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_work_unit.c b/src/third_party/wiredtiger/src/lsm/lsm_work_unit.c
index 3d8c48f901a..c1587a781e3 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_work_unit.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_work_unit.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_worker.c b/src/third_party/wiredtiger/src/lsm/lsm_worker.c
index de06c1cc5ff..afbcab19d42 100644
--- a/src/third_party/wiredtiger/src/lsm/lsm_worker.c
+++ b/src/third_party/wiredtiger/src/lsm/lsm_worker.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/meta/meta_apply.c b/src/third_party/wiredtiger/src/meta/meta_apply.c
index c0f5969792f..66663f9b4f0 100644
--- a/src/third_party/wiredtiger/src/meta/meta_apply.c
+++ b/src/third_party/wiredtiger/src/meta/meta_apply.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/meta/meta_ckpt.c b/src/third_party/wiredtiger/src/meta/meta_ckpt.c
index 150880625a6..bbbcb64f230 100644
--- a/src/third_party/wiredtiger/src/meta/meta_ckpt.c
+++ b/src/third_party/wiredtiger/src/meta/meta_ckpt.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -1001,6 +1001,7 @@ __wt_meta_sysinfo_set(WT_SESSION_IMPL *session)
wt_timestamp_t oldest_timestamp;
uint32_t snap_count;
char hex_timestamp[WT_TS_HEX_STRING_SIZE];
+ char ts_string[2][WT_TS_INT_STRING_SIZE];
txn_global = &S2C(session)->txn_global;
@@ -1044,19 +1045,26 @@ __wt_meta_sysinfo_set(WT_SESSION_IMPL *session)
}
/* Record snapshot information in metadata for checkpoint. */
- if (txn->snapshot_count > 0) {
- WT_ERR(__wt_buf_fmt(session, buf,
- WT_SYSTEM_CKPT_SNAPSHOT_MIN "=%" PRIu64 "," WT_SYSTEM_CKPT_SNAPSHOT_MAX "=%" PRIu64
- "," WT_SYSTEM_CKPT_SNAPSHOT_COUNT "=%" PRIu32
- "," WT_SYSTEM_CKPT_SNAPSHOT "=[",
- txn->snap_min, txn->snap_max, txn->snapshot_count));
+ WT_ERR(__wt_buf_fmt(session, buf,
+ WT_SYSTEM_CKPT_SNAPSHOT_MIN "=%" PRIu64 "," WT_SYSTEM_CKPT_SNAPSHOT_MAX "=%" PRIu64
+ "," WT_SYSTEM_CKPT_SNAPSHOT_COUNT "=%" PRIu32,
+ txn->snap_min, txn->snap_max, txn->snapshot_count));
+ if (txn->snapshot_count > 0) {
+ WT_ERR(__wt_buf_catfmt(session, buf, "," WT_SYSTEM_CKPT_SNAPSHOT "=["));
for (snap_count = 0; snap_count < txn->snapshot_count - 1; ++snap_count)
WT_ERR(__wt_buf_catfmt(session, buf, "%" PRIu64 "%s", txn->snapshot[snap_count], ","));
WT_ERR(__wt_buf_catfmt(session, buf, "%" PRIu64 "%s", txn->snapshot[snap_count], "]"));
- WT_ERR(__wt_metadata_update(session, WT_SYSTEM_CKPT_SNAPSHOT_URI, buf->data));
}
+ WT_ERR(__wt_metadata_update(session, WT_SYSTEM_CKPT_SNAPSHOT_URI, buf->data));
+
+ __wt_verbose(session, WT_VERB_CHECKPOINT_PROGRESS,
+ "saving checkpoint snapshot min: %" PRIu64 ", snapshot max: %" PRIu64
+ " snapshot count: %" PRIu32 ", oldest timestamp: %s , meta checkpoint timestamp: %s",
+ txn->snap_min, txn->snap_max, txn->snapshot_count,
+ __wt_timestamp_to_string(txn_global->oldest_timestamp, ts_string[0]),
+ __wt_timestamp_to_string(txn_global->meta_ckpt_timestamp, ts_string[1]));
/* Record the base write gen in metadata as part of checkpoint */
WT_ERR(__wt_buf_fmt(
diff --git a/src/third_party/wiredtiger/src/meta/meta_ext.c b/src/third_party/wiredtiger/src/meta/meta_ext.c
index 08e14fa35f9..11e97ad9c45 100644
--- a/src/third_party/wiredtiger/src/meta/meta_ext.c
+++ b/src/third_party/wiredtiger/src/meta/meta_ext.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/meta/meta_table.c b/src/third_party/wiredtiger/src/meta/meta_table.c
index b6130e9cc41..b6367d29a68 100644
--- a/src/third_party/wiredtiger/src/meta/meta_table.c
+++ b/src/third_party/wiredtiger/src/meta/meta_table.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/meta/meta_track.c b/src/third_party/wiredtiger/src/meta/meta_track.c
index c99709f90e4..95125961485 100644
--- a/src/third_party/wiredtiger/src/meta/meta_track.c
+++ b/src/third_party/wiredtiger/src/meta/meta_track.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/meta/meta_turtle.c b/src/third_party/wiredtiger/src/meta/meta_turtle.c
index a70efef3025..a3eeae7c295 100644
--- a/src/third_party/wiredtiger/src/meta/meta_turtle.c
+++ b/src/third_party/wiredtiger/src/meta/meta_turtle.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/optrack/optrack.c b/src/third_party/wiredtiger/src/optrack/optrack.c
index 916c6ab74b6..1bdd08313f3 100644
--- a/src/third_party/wiredtiger/src/optrack/optrack.c
+++ b/src/third_party/wiredtiger/src/optrack/optrack.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/filename.c b/src/third_party/wiredtiger/src/os_common/filename.c
index 3c777281613..b340c0f8005 100644
--- a/src/third_party/wiredtiger/src/os_common/filename.c
+++ b/src/third_party/wiredtiger/src/os_common/filename.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_abort.c b/src/third_party/wiredtiger/src/os_common/os_abort.c
index ab3a154345a..d33f963d8ec 100644
--- a/src/third_party/wiredtiger/src/os_common/os_abort.c
+++ b/src/third_party/wiredtiger/src/os_common/os_abort.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_alloc.c b/src/third_party/wiredtiger/src/os_common/os_alloc.c
index 779d55620a4..3a8e786484f 100644
--- a/src/third_party/wiredtiger/src/os_common/os_alloc.c
+++ b/src/third_party/wiredtiger/src/os_common/os_alloc.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_errno.c b/src/third_party/wiredtiger/src/os_common/os_errno.c
index c7c8a6dfd4d..2423896a97b 100644
--- a/src/third_party/wiredtiger/src/os_common/os_errno.c
+++ b/src/third_party/wiredtiger/src/os_common/os_errno.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_fhandle.c b/src/third_party/wiredtiger/src/os_common/os_fhandle.c
index 3cd22b65260..18024f50ee3 100644
--- a/src/third_party/wiredtiger/src/os_common/os_fhandle.c
+++ b/src/third_party/wiredtiger/src/os_common/os_fhandle.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_fs_inmemory.c b/src/third_party/wiredtiger/src/os_common/os_fs_inmemory.c
index 8c62a47c651..9450cbba1d5 100644
--- a/src/third_party/wiredtiger/src/os_common/os_fs_inmemory.c
+++ b/src/third_party/wiredtiger/src/os_common/os_fs_inmemory.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_fstream.c b/src/third_party/wiredtiger/src/os_common/os_fstream.c
index 6aa22cb6cd6..af0bc03a104 100644
--- a/src/third_party/wiredtiger/src/os_common/os_fstream.c
+++ b/src/third_party/wiredtiger/src/os_common/os_fstream.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_fstream_stdio.c b/src/third_party/wiredtiger/src/os_common/os_fstream_stdio.c
index d10041301ec..3220b6afa21 100644
--- a/src/third_party/wiredtiger/src/os_common/os_fstream_stdio.c
+++ b/src/third_party/wiredtiger/src/os_common/os_fstream_stdio.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_common/os_getopt.c b/src/third_party/wiredtiger/src/os_common/os_getopt.c
index 520b85d72be..4b3c449ee8c 100644
--- a/src/third_party/wiredtiger/src/os_common/os_getopt.c
+++ b/src/third_party/wiredtiger/src/os_common/os_getopt.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/os_common/os_strtouq.c b/src/third_party/wiredtiger/src/os_common/os_strtouq.c
index f0123a4824d..63442a4cd3c 100644
--- a/src/third_party/wiredtiger/src/os_common/os_strtouq.c
+++ b/src/third_party/wiredtiger/src/os_common/os_strtouq.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_dir.c b/src/third_party/wiredtiger/src/os_posix/os_dir.c
index 25a570be96a..c20c6dce258 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_dir.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_dir.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_dlopen.c b/src/third_party/wiredtiger/src/os_posix/os_dlopen.c
index 77e5bb7d005..e843a9fbf89 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_dlopen.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_dlopen.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_fallocate.c b/src/third_party/wiredtiger/src/os_posix/os_fallocate.c
index 004d27c063c..198ee02103f 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_fallocate.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_fallocate.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_fs.c b/src/third_party/wiredtiger/src/os_posix/os_fs.c
index ede22518c26..cc9d2c08ca1 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_fs.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_fs.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/os_posix/os_getenv.c b/src/third_party/wiredtiger/src/os_posix/os_getenv.c
index 30c13d5fee1..5a8bb067361 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_getenv.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_getenv.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_map.c b/src/third_party/wiredtiger/src/os_posix/os_map.c
index 1f63ff0b18f..b23c32451b2 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_map.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_map.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_mtx_cond.c b/src/third_party/wiredtiger/src/os_posix/os_mtx_cond.c
index 61896fa1b83..b09a96a6e3e 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_mtx_cond.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_mtx_cond.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_once.c b/src/third_party/wiredtiger/src/os_posix/os_once.c
index e712556b433..0a24adfe7fb 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_once.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_once.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_pagesize.c b/src/third_party/wiredtiger/src/os_posix/os_pagesize.c
index 73390762b49..05c775ec824 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_pagesize.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_pagesize.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_path.c b/src/third_party/wiredtiger/src/os_posix/os_path.c
index 2223e3b8bd0..a05f675d8d0 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_path.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_path.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_priv.c b/src/third_party/wiredtiger/src/os_posix/os_priv.c
index c1fc626ca10..09a0ef96745 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_priv.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_priv.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_setvbuf.c b/src/third_party/wiredtiger/src/os_posix/os_setvbuf.c
index b54d4a59536..c0f4d4b8e35 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_setvbuf.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_setvbuf.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_sleep.c b/src/third_party/wiredtiger/src/os_posix/os_sleep.c
index 45101c50cc7..a9e73337a45 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_sleep.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_sleep.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_snprintf.c b/src/third_party/wiredtiger/src/os_posix/os_snprintf.c
index c9d1abf35e5..4f44845f0f9 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_snprintf.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_snprintf.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_thread.c b/src/third_party/wiredtiger/src/os_posix/os_thread.c
index 707df1429cd..2036395ee0b 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_thread.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_thread.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_time.c b/src/third_party/wiredtiger/src/os_posix/os_time.c
index 38a3be97c92..93083847013 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_time.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_time.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_posix/os_yield.c b/src/third_party/wiredtiger/src/os_posix/os_yield.c
index 5ee7121ca40..9d678ae42c5 100644
--- a/src/third_party/wiredtiger/src/os_posix/os_yield.c
+++ b/src/third_party/wiredtiger/src/os_posix/os_yield.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_dir.c b/src/third_party/wiredtiger/src/os_win/os_dir.c
index 9a76d2159bb..aeca4ffb3f5 100644
--- a/src/third_party/wiredtiger/src/os_win/os_dir.c
+++ b/src/third_party/wiredtiger/src/os_win/os_dir.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_dlopen.c b/src/third_party/wiredtiger/src/os_win/os_dlopen.c
index 243e21f0c9e..73ac06b56f4 100644
--- a/src/third_party/wiredtiger/src/os_win/os_dlopen.c
+++ b/src/third_party/wiredtiger/src/os_win/os_dlopen.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_fs.c b/src/third_party/wiredtiger/src/os_win/os_fs.c
index 9463252a6bb..919d124bf3c 100644
--- a/src/third_party/wiredtiger/src/os_win/os_fs.c
+++ b/src/third_party/wiredtiger/src/os_win/os_fs.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_getenv.c b/src/third_party/wiredtiger/src/os_win/os_getenv.c
index 1a434ddb30a..91458c5a26d 100644
--- a/src/third_party/wiredtiger/src/os_win/os_getenv.c
+++ b/src/third_party/wiredtiger/src/os_win/os_getenv.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_map.c b/src/third_party/wiredtiger/src/os_win/os_map.c
index 5ea7f0798ab..36ea7c81dff 100644
--- a/src/third_party/wiredtiger/src/os_win/os_map.c
+++ b/src/third_party/wiredtiger/src/os_win/os_map.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_mtx_cond.c b/src/third_party/wiredtiger/src/os_win/os_mtx_cond.c
index 687796efe33..8077babc619 100644
--- a/src/third_party/wiredtiger/src/os_win/os_mtx_cond.c
+++ b/src/third_party/wiredtiger/src/os_win/os_mtx_cond.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_once.c b/src/third_party/wiredtiger/src/os_win/os_once.c
index e9ac39abafc..da02db7ae85 100644
--- a/src/third_party/wiredtiger/src/os_win/os_once.c
+++ b/src/third_party/wiredtiger/src/os_win/os_once.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_pagesize.c b/src/third_party/wiredtiger/src/os_win/os_pagesize.c
index 24858fecf0a..2fdb3927592 100644
--- a/src/third_party/wiredtiger/src/os_win/os_pagesize.c
+++ b/src/third_party/wiredtiger/src/os_win/os_pagesize.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_path.c b/src/third_party/wiredtiger/src/os_win/os_path.c
index 1056e7afbdc..3ea25440617 100644
--- a/src/third_party/wiredtiger/src/os_win/os_path.c
+++ b/src/third_party/wiredtiger/src/os_win/os_path.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_priv.c b/src/third_party/wiredtiger/src/os_win/os_priv.c
index 2b3b428282a..8d24614f7f4 100644
--- a/src/third_party/wiredtiger/src/os_win/os_priv.c
+++ b/src/third_party/wiredtiger/src/os_win/os_priv.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_setvbuf.c b/src/third_party/wiredtiger/src/os_win/os_setvbuf.c
index 677a08d8e14..22e41db8712 100644
--- a/src/third_party/wiredtiger/src/os_win/os_setvbuf.c
+++ b/src/third_party/wiredtiger/src/os_win/os_setvbuf.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_sleep.c b/src/third_party/wiredtiger/src/os_win/os_sleep.c
index 1a247740a18..2442bca8225 100644
--- a/src/third_party/wiredtiger/src/os_win/os_sleep.c
+++ b/src/third_party/wiredtiger/src/os_win/os_sleep.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_snprintf.c b/src/third_party/wiredtiger/src/os_win/os_snprintf.c
index 4346b54ef9b..444645c36c8 100644
--- a/src/third_party/wiredtiger/src/os_win/os_snprintf.c
+++ b/src/third_party/wiredtiger/src/os_win/os_snprintf.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_thread.c b/src/third_party/wiredtiger/src/os_win/os_thread.c
index 6e95f17a94e..bb0bedc5352 100644
--- a/src/third_party/wiredtiger/src/os_win/os_thread.c
+++ b/src/third_party/wiredtiger/src/os_win/os_thread.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_time.c b/src/third_party/wiredtiger/src/os_win/os_time.c
index 58fe6ef71e4..29350f05764 100644
--- a/src/third_party/wiredtiger/src/os_win/os_time.c
+++ b/src/third_party/wiredtiger/src/os_win/os_time.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_utf8.c b/src/third_party/wiredtiger/src/os_win/os_utf8.c
index d96e9f8c537..2f87f09e193 100644
--- a/src/third_party/wiredtiger/src/os_win/os_utf8.c
+++ b/src/third_party/wiredtiger/src/os_win/os_utf8.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_winerr.c b/src/third_party/wiredtiger/src/os_win/os_winerr.c
index 56869f0432b..3d9a6b9c110 100644
--- a/src/third_party/wiredtiger/src/os_win/os_winerr.c
+++ b/src/third_party/wiredtiger/src/os_win/os_winerr.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/os_win/os_yield.c b/src/third_party/wiredtiger/src/os_win/os_yield.c
index ac946127cef..70615f2b4ae 100644
--- a/src/third_party/wiredtiger/src/os_win/os_yield.c
+++ b/src/third_party/wiredtiger/src/os_win/os_yield.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/packing/pack_api.c b/src/third_party/wiredtiger/src/packing/pack_api.c
index f9db5f906ec..f9d72f89093 100644
--- a/src/third_party/wiredtiger/src/packing/pack_api.c
+++ b/src/third_party/wiredtiger/src/packing/pack_api.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/packing/pack_impl.c b/src/third_party/wiredtiger/src/packing/pack_impl.c
index 17f92cba6eb..3958c273737 100644
--- a/src/third_party/wiredtiger/src/packing/pack_impl.c
+++ b/src/third_party/wiredtiger/src/packing/pack_impl.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/packing/pack_stream.c b/src/third_party/wiredtiger/src/packing/pack_stream.c
index 1c34bb5c00a..ff0153d5302 100644
--- a/src/third_party/wiredtiger/src/packing/pack_stream.c
+++ b/src/third_party/wiredtiger/src/packing/pack_stream.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_child.c b/src/third_party/wiredtiger/src/reconcile/rec_child.c
index d235f926fa0..56104639e53 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_child.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_child.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_col.c b/src/third_party/wiredtiger/src/reconcile/rec_col.c
index 4663062d222..8c98134a6ce 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_col.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_col.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_dictionary.c b/src/third_party/wiredtiger/src/reconcile/rec_dictionary.c
index 4ee74d9c8df..93c748e54bc 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_dictionary.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_dictionary.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_row.c b/src/third_party/wiredtiger/src/reconcile/rec_row.c
index 6e408adca4b..26f360ca4c0 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_row.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_row.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_track.c b/src/third_party/wiredtiger/src/reconcile/rec_track.c
index 1fb6b072d0e..1eb85ece597 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_track.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_track.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_visibility.c b/src/third_party/wiredtiger/src/reconcile/rec_visibility.c
index cf68c7783b1..0848660c455 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_visibility.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_visibility.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/reconcile/rec_write.c b/src/third_party/wiredtiger/src/reconcile/rec_write.c
index f7fcc07ddf5..97d5986353c 100644
--- a/src/third_party/wiredtiger/src/reconcile/rec_write.c
+++ b/src/third_party/wiredtiger/src/reconcile/rec_write.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_alter.c b/src/third_party/wiredtiger/src/schema/schema_alter.c
index 667071df670..4b3f40c8db2 100644
--- a/src/third_party/wiredtiger/src/schema/schema_alter.c
+++ b/src/third_party/wiredtiger/src/schema/schema_alter.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_create.c b/src/third_party/wiredtiger/src/schema/schema_create.c
index 35ae706ee1c..c656ae8a2f5 100644
--- a/src/third_party/wiredtiger/src/schema/schema_create.c
+++ b/src/third_party/wiredtiger/src/schema/schema_create.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_drop.c b/src/third_party/wiredtiger/src/schema/schema_drop.c
index 09ab32affcf..1c708792bef 100644
--- a/src/third_party/wiredtiger/src/schema/schema_drop.c
+++ b/src/third_party/wiredtiger/src/schema/schema_drop.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_list.c b/src/third_party/wiredtiger/src/schema/schema_list.c
index 8f924041e08..341b5e2a65d 100644
--- a/src/third_party/wiredtiger/src/schema/schema_list.c
+++ b/src/third_party/wiredtiger/src/schema/schema_list.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_open.c b/src/third_party/wiredtiger/src/schema/schema_open.c
index 3af4f12606a..8202607fb74 100644
--- a/src/third_party/wiredtiger/src/schema/schema_open.c
+++ b/src/third_party/wiredtiger/src/schema/schema_open.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_plan.c b/src/third_party/wiredtiger/src/schema/schema_plan.c
index 153a7ba1944..bd2ae7fa45c 100644
--- a/src/third_party/wiredtiger/src/schema/schema_plan.c
+++ b/src/third_party/wiredtiger/src/schema/schema_plan.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_project.c b/src/third_party/wiredtiger/src/schema/schema_project.c
index d3201d20d5c..d3db2c8e5e9 100644
--- a/src/third_party/wiredtiger/src/schema/schema_project.c
+++ b/src/third_party/wiredtiger/src/schema/schema_project.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_rename.c b/src/third_party/wiredtiger/src/schema/schema_rename.c
index 6b5eb98d008..bfb908d970b 100644
--- a/src/third_party/wiredtiger/src/schema/schema_rename.c
+++ b/src/third_party/wiredtiger/src/schema/schema_rename.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_stat.c b/src/third_party/wiredtiger/src/schema/schema_stat.c
index cc5c8d63fa5..6e5aa971d1e 100644
--- a/src/third_party/wiredtiger/src/schema/schema_stat.c
+++ b/src/third_party/wiredtiger/src/schema/schema_stat.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_truncate.c b/src/third_party/wiredtiger/src/schema/schema_truncate.c
index 27d8c78050f..8311a812154 100644
--- a/src/third_party/wiredtiger/src/schema/schema_truncate.c
+++ b/src/third_party/wiredtiger/src/schema/schema_truncate.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_util.c b/src/third_party/wiredtiger/src/schema/schema_util.c
index d5655f21a7c..1687d51eac4 100644
--- a/src/third_party/wiredtiger/src/schema/schema_util.c
+++ b/src/third_party/wiredtiger/src/schema/schema_util.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/schema/schema_worker.c b/src/third_party/wiredtiger/src/schema/schema_worker.c
index 37d069b8457..2d098c874b4 100644
--- a/src/third_party/wiredtiger/src/schema/schema_worker.c
+++ b/src/third_party/wiredtiger/src/schema/schema_worker.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/session/session_api.c b/src/third_party/wiredtiger/src/session/session_api.c
index 6c5d672900b..cec727d8ecd 100644
--- a/src/third_party/wiredtiger/src/session/session_api.c
+++ b/src/third_party/wiredtiger/src/session/session_api.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/session/session_compact.c b/src/third_party/wiredtiger/src/session/session_compact.c
index 28eac90138e..057e032a1f1 100644
--- a/src/third_party/wiredtiger/src/session/session_compact.c
+++ b/src/third_party/wiredtiger/src/session/session_compact.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/session/session_dhandle.c b/src/third_party/wiredtiger/src/session/session_dhandle.c
index b702190f6f0..502610d434b 100644
--- a/src/third_party/wiredtiger/src/session/session_dhandle.c
+++ b/src/third_party/wiredtiger/src/session/session_dhandle.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/cond_auto.c b/src/third_party/wiredtiger/src/support/cond_auto.c
index ec279949c19..296587b523d 100644
--- a/src/third_party/wiredtiger/src/support/cond_auto.c
+++ b/src/third_party/wiredtiger/src/support/cond_auto.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/crypto.c b/src/third_party/wiredtiger/src/support/crypto.c
index 7357fd0ff68..28afc944249 100644
--- a/src/third_party/wiredtiger/src/support/crypto.c
+++ b/src/third_party/wiredtiger/src/support/crypto.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/err.c b/src/third_party/wiredtiger/src/support/err.c
index 1a2c5d40add..d7099586fc3 100644
--- a/src/third_party/wiredtiger/src/support/err.c
+++ b/src/third_party/wiredtiger/src/support/err.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/generation.c b/src/third_party/wiredtiger/src/support/generation.c
index 0c35bd96433..74aa8611e27 100644
--- a/src/third_party/wiredtiger/src/support/generation.c
+++ b/src/third_party/wiredtiger/src/support/generation.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/global.c b/src/third_party/wiredtiger/src/support/global.c
index 9463f39f4d1..10bb0e93c7a 100644
--- a/src/third_party/wiredtiger/src/support/global.c
+++ b/src/third_party/wiredtiger/src/support/global.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/hash_city.c b/src/third_party/wiredtiger/src/support/hash_city.c
index bae27d7b694..01462cececa 100644
--- a/src/third_party/wiredtiger/src/support/hash_city.c
+++ b/src/third_party/wiredtiger/src/support/hash_city.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/support/hash_fnv.c b/src/third_party/wiredtiger/src/support/hash_fnv.c
index dad2b51e6eb..0fa3891ca02 100644
--- a/src/third_party/wiredtiger/src/support/hash_fnv.c
+++ b/src/third_party/wiredtiger/src/support/hash_fnv.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/support/hazard.c b/src/third_party/wiredtiger/src/support/hazard.c
index 084bd54f1cd..0470f441cd5 100644
--- a/src/third_party/wiredtiger/src/support/hazard.c
+++ b/src/third_party/wiredtiger/src/support/hazard.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/hex.c b/src/third_party/wiredtiger/src/support/hex.c
index 92466e086bb..860b7c34fb1 100644
--- a/src/third_party/wiredtiger/src/support/hex.c
+++ b/src/third_party/wiredtiger/src/support/hex.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/huffman.c b/src/third_party/wiredtiger/src/support/huffman.c
index 33595015ad9..81f5e9e4524 100644
--- a/src/third_party/wiredtiger/src/support/huffman.c
+++ b/src/third_party/wiredtiger/src/support/huffman.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/modify.c b/src/third_party/wiredtiger/src/support/modify.c
index 0a67847f420..8e5d955f94d 100644
--- a/src/third_party/wiredtiger/src/support/modify.c
+++ b/src/third_party/wiredtiger/src/support/modify.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/mtx_rw.c b/src/third_party/wiredtiger/src/support/mtx_rw.c
index 13f921584f4..7d2fd2516a3 100644
--- a/src/third_party/wiredtiger/src/support/mtx_rw.c
+++ b/src/third_party/wiredtiger/src/support/mtx_rw.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/support/pow.c b/src/third_party/wiredtiger/src/support/pow.c
index f245502bc9f..f7f94becdae 100644
--- a/src/third_party/wiredtiger/src/support/pow.c
+++ b/src/third_party/wiredtiger/src/support/pow.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/support/rand.c b/src/third_party/wiredtiger/src/support/rand.c
index efbaf6b5bd3..805c227dd24 100644
--- a/src/third_party/wiredtiger/src/support/rand.c
+++ b/src/third_party/wiredtiger/src/support/rand.c
@@ -1,5 +1,5 @@
/*-
- * Public Domain 2014-2020 MongoDB, Inc.
+ * Public Domain 2014-present MongoDB, Inc.
* Public Domain 2008-2014 WiredTiger, Inc.
*
* This is free and unencumbered software released into the public domain.
diff --git a/src/third_party/wiredtiger/src/support/scratch.c b/src/third_party/wiredtiger/src/support/scratch.c
index 19b2b57e24e..c4644bb0aba 100644
--- a/src/third_party/wiredtiger/src/support/scratch.c
+++ b/src/third_party/wiredtiger/src/support/scratch.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/stat.c b/src/third_party/wiredtiger/src/support/stat.c
index c0c776bde2e..47605ab42f8 100644
--- a/src/third_party/wiredtiger/src/support/stat.c
+++ b/src/third_party/wiredtiger/src/support/stat.c
@@ -209,6 +209,7 @@ static const char *const __stats_dsrc_desc[] = {
"session: tiered storage local retention time (secs)",
"transaction: race to read prepared update retry",
"transaction: rollback to stable hs records with stop timestamps older than newer records",
+ "transaction: rollback to stable inconsistent checkpoint",
"transaction: rollback to stable keys removed",
"transaction: rollback to stable keys restored",
"transaction: rollback to stable restored tombstones from history store",
@@ -459,6 +460,7 @@ __wt_stat_dsrc_clear_single(WT_DSRC_STATS *stats)
/* not clearing tiered_retention */
stats->txn_read_race_prepare_update = 0;
stats->txn_rts_hs_stop_older_than_newer_start = 0;
+ stats->txn_rts_inconsistent_ckpt = 0;
stats->txn_rts_keys_removed = 0;
stats->txn_rts_keys_restored = 0;
stats->txn_rts_hs_restore_tombstones = 0;
@@ -696,6 +698,7 @@ __wt_stat_dsrc_aggregate_single(WT_DSRC_STATS *from, WT_DSRC_STATS *to)
to->tiered_retention += from->tiered_retention;
to->txn_read_race_prepare_update += from->txn_read_race_prepare_update;
to->txn_rts_hs_stop_older_than_newer_start += from->txn_rts_hs_stop_older_than_newer_start;
+ to->txn_rts_inconsistent_ckpt += from->txn_rts_inconsistent_ckpt;
to->txn_rts_keys_removed += from->txn_rts_keys_removed;
to->txn_rts_keys_restored += from->txn_rts_keys_restored;
to->txn_rts_hs_restore_tombstones += from->txn_rts_hs_restore_tombstones;
@@ -939,6 +942,7 @@ __wt_stat_dsrc_aggregate(WT_DSRC_STATS **from, WT_DSRC_STATS *to)
to->txn_read_race_prepare_update += WT_STAT_READ(from, txn_read_race_prepare_update);
to->txn_rts_hs_stop_older_than_newer_start +=
WT_STAT_READ(from, txn_rts_hs_stop_older_than_newer_start);
+ to->txn_rts_inconsistent_ckpt += WT_STAT_READ(from, txn_rts_inconsistent_ckpt);
to->txn_rts_keys_removed += WT_STAT_READ(from, txn_rts_keys_removed);
to->txn_rts_keys_restored += WT_STAT_READ(from, txn_rts_keys_restored);
to->txn_rts_hs_restore_tombstones += WT_STAT_READ(from, txn_rts_hs_restore_tombstones);
@@ -1434,6 +1438,7 @@ static const char *const __stats_connection_desc[] = {
"session: tiered storage local retention time (secs)",
"transaction: race to read prepared update retry",
"transaction: rollback to stable hs records with stop timestamps older than newer records",
+ "transaction: rollback to stable inconsistent checkpoint",
"transaction: rollback to stable keys removed",
"transaction: rollback to stable keys restored",
"transaction: rollback to stable restored tombstones from history store",
@@ -1954,6 +1959,7 @@ __wt_stat_connection_clear_single(WT_CONNECTION_STATS *stats)
/* not clearing tiered_retention */
stats->txn_read_race_prepare_update = 0;
stats->txn_rts_hs_stop_older_than_newer_start = 0;
+ stats->txn_rts_inconsistent_ckpt = 0;
stats->txn_rts_keys_removed = 0;
stats->txn_rts_keys_restored = 0;
stats->txn_rts_hs_restore_tombstones = 0;
@@ -2485,6 +2491,7 @@ __wt_stat_connection_aggregate(WT_CONNECTION_STATS **from, WT_CONNECTION_STATS *
to->txn_read_race_prepare_update += WT_STAT_READ(from, txn_read_race_prepare_update);
to->txn_rts_hs_stop_older_than_newer_start +=
WT_STAT_READ(from, txn_rts_hs_stop_older_than_newer_start);
+ to->txn_rts_inconsistent_ckpt += WT_STAT_READ(from, txn_rts_inconsistent_ckpt);
to->txn_rts_keys_removed += WT_STAT_READ(from, txn_rts_keys_removed);
to->txn_rts_keys_restored += WT_STAT_READ(from, txn_rts_keys_restored);
to->txn_rts_hs_restore_tombstones += WT_STAT_READ(from, txn_rts_hs_restore_tombstones);
diff --git a/src/third_party/wiredtiger/src/support/thread_group.c b/src/third_party/wiredtiger/src/support/thread_group.c
index fddf7941d35..7b70ef63906 100644
--- a/src/third_party/wiredtiger/src/support/thread_group.c
+++ b/src/third_party/wiredtiger/src/support/thread_group.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/support/timestamp.c b/src/third_party/wiredtiger/src/support/timestamp.c
index f9c3263dbe8..0b6a008de9c 100644
--- a/src/third_party/wiredtiger/src/support/timestamp.c
+++ b/src/third_party/wiredtiger/src/support/timestamp.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/tiered/tiered_cursor.c b/src/third_party/wiredtiger/src/tiered/tiered_cursor.c
index 1694e57dbc3..45f8dcf86de 100644
--- a/src/third_party/wiredtiger/src/tiered/tiered_cursor.c
+++ b/src/third_party/wiredtiger/src/tiered/tiered_cursor.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/tiered/tiered_schema.c b/src/third_party/wiredtiger/src/tiered/tiered_schema.c
index 6e7dd84c0e3..dc22deb9e9a 100644
--- a/src/third_party/wiredtiger/src/tiered/tiered_schema.c
+++ b/src/third_party/wiredtiger/src/tiered/tiered_schema.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/txn/txn.c b/src/third_party/wiredtiger/src/txn/txn.c
index 94396fc92f2..0e087eb6029 100644
--- a/src/third_party/wiredtiger/src/txn/txn.c
+++ b/src/third_party/wiredtiger/src/txn/txn.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -2178,7 +2178,7 @@ __wt_txn_global_shutdown(WT_SESSION_IMPL *session, const char **cfg)
*/
if (F_ISSET(conn, WT_CONN_CLOSING_TIMESTAMP)) {
__wt_verbose(session, WT_VERB_RTS,
- "Performing shutdown rollback to stable with stable timestamp: %s",
+ "performing shutdown rollback to stable with stable timestamp: %s",
__wt_timestamp_to_string(conn->txn_global.stable_timestamp, ts_string));
WT_TRET(__wt_rollback_to_stable(session, cfg, true));
}
diff --git a/src/third_party/wiredtiger/src/txn/txn_ckpt.c b/src/third_party/wiredtiger/src/txn/txn_ckpt.c
index 887abaa503d..81acc426419 100644
--- a/src/third_party/wiredtiger/src/txn/txn_ckpt.c
+++ b/src/third_party/wiredtiger/src/txn/txn_ckpt.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/txn/txn_ext.c b/src/third_party/wiredtiger/src/txn/txn_ext.c
index 645d410efad..3e568c7e17c 100644
--- a/src/third_party/wiredtiger/src/txn/txn_ext.c
+++ b/src/third_party/wiredtiger/src/txn/txn_ext.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/txn/txn_log.c b/src/third_party/wiredtiger/src/txn/txn_log.c
index 818f03314aa..192dfc09cf2 100644
--- a/src/third_party/wiredtiger/src/txn/txn_log.c
+++ b/src/third_party/wiredtiger/src/txn/txn_log.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/txn/txn_recover.c b/src/third_party/wiredtiger/src/txn/txn_recover.c
index e71b686d633..4045d4f4de9 100644
--- a/src/third_party/wiredtiger/src/txn/txn_recover.c
+++ b/src/third_party/wiredtiger/src/txn/txn_recover.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -743,12 +743,14 @@ __wt_txn_recover(WT_SESSION_IMPL *session, const char *cfg[])
char *config;
char ts_string[2][WT_TS_INT_STRING_SIZE];
bool do_checkpoint, eviction_started, hs_exists, needs_rec, was_backup;
+ bool rts_executed;
conn = S2C(session);
WT_CLEAR(r);
WT_INIT_LSN(&r.ckpt_lsn);
config = NULL;
do_checkpoint = hs_exists = true;
+ rts_executed = false;
eviction_started = false;
was_backup = F_ISSET(conn, WT_CONN_WAS_BACKUP);
@@ -761,7 +763,6 @@ __wt_txn_recover(WT_SESSION_IMPL *session, const char *cfg[])
F_SET(conn, WT_CONN_RECOVERING);
WT_ERR(__recovery_set_ckpt_base_write_gen(&r));
- WT_ERR(__recovery_set_checkpoint_snapshot(session));
WT_ERR(__wt_metadata_search(session, WT_METAFILE_URI, &config));
WT_ERR(__recovery_setup_file(&r, WT_METAFILE_URI, config));
WT_ERR(__wt_metadata_cursor_open(session, NULL, &metac));
@@ -928,6 +929,8 @@ __wt_txn_recover(WT_SESSION_IMPL *session, const char *cfg[])
done:
WT_ERR(__recovery_set_checkpoint_timestamp(&r));
WT_ERR(__recovery_set_oldest_timestamp(&r));
+ WT_ERR(__recovery_set_checkpoint_snapshot(session));
+
/*
* Perform rollback to stable only when the following conditions met.
* 1. The connection is not read-only. A read-only connection expects that there shouldn't be
@@ -941,17 +944,6 @@ done:
eviction_started = true;
}
- /*
- * Currently, rollback to stable only needs to make changes to tables that use timestamps.
- * That is because eviction does not run in parallel with a checkpoint, so content that is
- * written never uses transaction IDs newer than the checkpoint's transaction ID and thus
- * never needs to be rolled back. Once eviction is allowed while a checkpoint is active, it
- * will be necessary to take the page write generation number into account during rollback
- * to stable. For example, a page with write generation 10 and txnid 20 is written in one
- * checkpoint, and in the next restart a new page with write generation 30 and txnid 20 is
- * written. The rollback to stable operation should only rollback the latest page changes
- * solely based on the write generation numbers.
- */
WT_ASSERT(session,
conn->txn_global.has_stable_timestamp == false &&
conn->txn_global.stable_timestamp == WT_TS_NONE);
@@ -967,19 +959,31 @@ done:
conn->txn_global.has_stable_timestamp = true;
__wt_verbose(session, WT_VERB_RECOVERY | WT_VERB_RTS,
- "Performing recovery rollback_to_stable with stable timestamp: %s and oldest timestamp: "
+ "performing recovery rollback_to_stable with stable timestamp: %s and oldest timestamp: "
"%s",
__wt_timestamp_to_string(conn->txn_global.stable_timestamp, ts_string[0]),
__wt_timestamp_to_string(conn->txn_global.oldest_timestamp, ts_string[1]));
+ rts_executed = true;
+ WT_ERR(__wt_rollback_to_stable(session, NULL, true));
+ }
- WT_ERR(__wt_rollback_to_stable(session, NULL, false));
- } else if (do_checkpoint)
+ if (do_checkpoint || rts_executed)
/*
* Forcibly log a checkpoint so the next open is fast and keep the metadata up to date with
* the checkpoint LSN and archiving.
*/
WT_ERR(session->iface.checkpoint(&session->iface, "force=1"));
+ /* Initialize the connection's base write generation after rollback to stable. */
+ WT_ERR(__wt_metadata_init_base_write_gen(session));
+
+ /*
+ * Update the open dhandles write generations and base write generation with the connection's
+ * base write generation because the recovery checkpoint writes the pages to disk with new write
+ * generation number which contains transaction ids that are needed to reset later.
+ */
+ __wt_dhandle_update_write_gens(session);
+
/*
* If we're downgrading and have newer log files, force an archive, no matter what the archive
* setting is.
diff --git a/src/third_party/wiredtiger/src/txn/txn_rollback_to_stable.c b/src/third_party/wiredtiger/src/txn/txn_rollback_to_stable.c
index 0001d09302b..9f0e831b92c 100644
--- a/src/third_party/wiredtiger/src/txn/txn_rollback_to_stable.c
+++ b/src/third_party/wiredtiger/src/txn/txn_rollback_to_stable.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -8,9 +8,14 @@
#include "wt_internal.h"
+#define WT_CHECK_RECOVERY_FLAG_TS_TXNID(session, txnid, durablets) \
+ (durablets == WT_TS_NONE && F_ISSET(S2C(session), WT_CONN_RECOVERING) && \
+ (txnid) >= S2C(session)->recovery_ckpt_snap_min)
+
/* Enable rollback to stable verbose messaging during recovery. */
#define WT_VERB_RECOVERY_RTS(session) \
(F_ISSET(S2C(session), WT_CONN_RECOVERING) ? WT_VERB_RECOVERY | WT_VERB_RTS : WT_VERB_RTS)
+
/*
* __rollback_abort_newer_update --
* Abort updates in an update change with timestamps newer than the rollback timestamp. Also,
@@ -149,6 +154,53 @@ err:
}
/*
+ * __rollback_check_if_txnid_non_committed --
+ * Check if the transaction id is non committed.
+ */
+static bool
+__rollback_check_if_txnid_non_committed(WT_SESSION_IMPL *session, uint64_t txnid)
+{
+ WT_CONNECTION_IMPL *conn;
+ bool found;
+
+ conn = S2C(session);
+
+ /* If not recovery then assume all the data as committed. */
+ if (!F_ISSET(conn, WT_CONN_RECOVERING))
+ return (false);
+
+ /*
+ * Only full checkpoint writes the metadata with snapshot. If the recovered checkpoint snapshot
+ * details are zero then return false i.e, updates are committed.
+ */
+ if (conn->recovery_ckpt_snap_min == 0 && conn->recovery_ckpt_snap_max == 0)
+ return (false);
+
+ /*
+ * Snapshot data:
+ * ids < recovery_ckpt_snap_min are committed,
+ * ids > recovery_ckpt_snap_max are non committed,
+ * everything else is committed unless it is found in the recovery_ckpt_snapshot array.
+ */
+ if (txnid < conn->recovery_ckpt_snap_min)
+ return (false);
+ else if (txnid > conn->recovery_ckpt_snap_max)
+ return (true);
+
+ /*
+ * Return false when the recovery snapshot count is 0, which means there is no uncommitted
+ * transaction ids.
+ */
+ if (conn->recovery_ckpt_snapshot_count == 0)
+ return (false);
+
+ WT_BINARY_SEARCH(
+ txnid, conn->recovery_ckpt_snapshot, conn->recovery_ckpt_snapshot_count, found);
+
+ return (found);
+}
+
+/*
* __rollback_row_ondisk_fixup_key --
* Abort updates in the history store and replace the on-disk value with an update that
* satisfies the given timestamp.
@@ -295,40 +347,51 @@ __rollback_row_ondisk_fixup_key(WT_SESSION_IMPL *session, WT_PAGE *page, WT_ROW
/*
* Stop processing when we find the newer version value of this key is stable according to
- * the current version stop timestamp when it is not appending the selected update to the
- * update chain. Also it confirms that history store doesn't contains any newer version than
- * the current version for the key.
+ * the current version stop timestamp and transaction id when it is not appending the
+ * selected update to the update chain. Also it confirms that history store doesn't contains
+ * any newer version than the current version for the key.
*/
- if (!replace && hs_stop_durable_ts <= rollback_timestamp) {
+ if (!replace &&
+ (hs_stop_durable_ts != WT_TS_NONE ||
+ !__rollback_check_if_txnid_non_committed(session, cbt->upd_value->tw.stop_txn)) &&
+ (hs_stop_durable_ts <= rollback_timestamp)) {
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "history store update valid with stop timestamp: %s, stable timestamp: %s and type: "
- "%" PRIu8,
+ "history store update valid with stop timestamp: %s, stable timestamp: %s, txnid: "
+ "%" PRIu64 " and type: %" PRIu8,
__wt_timestamp_to_string(hs_stop_durable_ts, ts_string[0]),
- __wt_timestamp_to_string(rollback_timestamp, ts_string[1]), type);
+ __wt_timestamp_to_string(rollback_timestamp, ts_string[1]),
+ cbt->upd_value->tw.stop_txn, type);
break;
}
- /* Stop processing when we find a stable update according to the given timestamp. */
- if (hs_durable_ts <= rollback_timestamp) {
+ /*
+ * Stop processing when we find a stable update according to the given timestamp and
+ * transaction id.
+ */
+ if ((hs_durable_ts != WT_TS_NONE ||
+ !__rollback_check_if_txnid_non_committed(session, cbt->upd_value->tw.start_txn)) &&
+ (hs_durable_ts <= rollback_timestamp)) {
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
"history store update valid with start timestamp: %s, durable timestamp: %s, stop "
- "timestamp: %s, stable timestamp: %s and type: %" PRIu8,
+ "timestamp: %s, stable timestamp: %s, txnid: %" PRIu64 " and type: %" PRIu8,
__wt_timestamp_to_string(hs_start_ts, ts_string[0]),
__wt_timestamp_to_string(hs_durable_ts, ts_string[1]),
__wt_timestamp_to_string(hs_stop_durable_ts, ts_string[2]),
- __wt_timestamp_to_string(rollback_timestamp, ts_string[3]), type);
- WT_ASSERT(session, cbt->upd_value->tw.start_ts < unpack->tw.start_ts);
+ __wt_timestamp_to_string(rollback_timestamp, ts_string[3]),
+ cbt->upd_value->tw.start_txn, type);
valid_update_found = true;
break;
}
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
"history store update aborted with start timestamp: %s, durable timestamp: %s, stop "
- "timestamp: %s, stable timestamp: %s and type: %" PRIu8,
+ "timestamp: %s, stable timestamp: %s, start txnid: %" PRIu64 ", stop txnid: %" PRIu64
+ " and type: %" PRIu8,
__wt_timestamp_to_string(hs_start_ts, ts_string[0]),
__wt_timestamp_to_string(hs_durable_ts, ts_string[1]),
__wt_timestamp_to_string(hs_stop_durable_ts, ts_string[2]),
- __wt_timestamp_to_string(rollback_timestamp, ts_string[3]), type);
+ __wt_timestamp_to_string(rollback_timestamp, ts_string[3]), cbt->upd_value->tw.start_txn,
+ cbt->upd_value->tw.stop_txn, type);
/*
* Start time point of the current record may be used as stop time point of the previous
@@ -352,14 +415,25 @@ __rollback_row_ondisk_fixup_key(WT_SESSION_IMPL *session, WT_PAGE *page, WT_ROW
* list. Otherwise remove the key by adding a tombstone.
*/
if (valid_update_found) {
- WT_ASSERT(session, cbt->upd_value->tw.start_ts < unpack->tw.start_ts);
+ WT_ASSERT(session,
+ cbt->upd_value->tw.start_ts < unpack->tw.start_ts ||
+ cbt->upd_value->tw.start_txn < unpack->tw.start_txn);
WT_ERR(__wt_upd_alloc(session, &full_value, WT_UPDATE_STANDARD, &upd, NULL));
- upd->txnid = cbt->upd_value->tw.start_txn;
+ /*
+ * Set the transaction id of updates to WT_TXN_NONE when called from recovery, because
+ * the connections write generation will be initialized after rollback to stable and the
+ * updates in the cache will be problematic. The transaction id of pages which are in
+ * disk will be automatically reset as part of unpacking cell when loaded to cache.
+ */
+ if (F_ISSET(S2C(session), WT_CONN_RECOVERING))
+ upd->txnid = WT_TXN_NONE;
+ else
+ upd->txnid = cbt->upd_value->tw.start_txn;
upd->durable_ts = cbt->upd_value->tw.durable_start_ts;
upd->start_ts = cbt->upd_value->tw.start_ts;
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "update restored from history store (txnid: %" PRIu64
+ "update restored from history store txnid: %" PRIu64
", start_ts: %s and durable_ts: %s",
upd->txnid, __wt_timestamp_to_string(upd->start_ts, ts_string[0]),
__wt_timestamp_to_string(upd->durable_ts, ts_string[1]));
@@ -378,11 +452,21 @@ __rollback_row_ondisk_fixup_key(WT_SESSION_IMPL *session, WT_PAGE *page, WT_ROW
if (hs_stop_durable_ts <= rollback_timestamp &&
hs_stop_durable_ts < newer_hs_durable_ts) {
WT_ERR(__wt_upd_alloc_tombstone(session, &tombstone, NULL));
- tombstone->txnid = cbt->upd_value->tw.stop_txn;
+ /*
+ * Set the transaction id of updates to WT_TXN_NONE when called from recovery,
+ * because the connections write generation will be initialized after rollback to
+ * stable and the updates in the cache will be problematic. The transaction id of
+ * pages which are in disk will be automatically reset as part of unpacking cell
+ * when loaded to cache.
+ */
+ if (F_ISSET(S2C(session), WT_CONN_RECOVERING))
+ tombstone->txnid = WT_TXN_NONE;
+ else
+ tombstone->txnid = cbt->upd_value->tw.stop_txn;
tombstone->durable_ts = cbt->upd_value->tw.durable_stop_ts;
tombstone->start_ts = cbt->upd_value->tw.stop_ts;
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "tombstone restored from history store (txnid: %" PRIu64
+ "tombstone restored from history store txnid: %" PRIu64
", start_ts: %s, durable_ts: %s",
tombstone->txnid, __wt_timestamp_to_string(tombstone->start_ts, ts_string[0]),
__wt_timestamp_to_string(tombstone->durable_ts, ts_string[1]));
@@ -468,14 +552,16 @@ __rollback_abort_row_ondisk_kv(
WT_STAT_CONN_DATA_INCR(session, txn_rts_sweep_hs_keys);
} else
return (0);
- } else if (vpack->tw.durable_start_ts > rollback_timestamp ||
+ } else if (((vpack->tw.durable_start_ts > rollback_timestamp) ||
+ (vpack->tw.durable_start_ts == WT_TS_NONE &&
+ __rollback_check_if_txnid_non_committed(session, vpack->tw.start_txn))) ||
(!WT_TIME_WINDOW_HAS_STOP(&vpack->tw) && prepared)) {
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
"on-disk update aborted with start durable timestamp: %s, commit timestamp: %s, "
- "prepared: %s and stable timestamp: %s",
+ "prepared: %s, stable timestamp: %s and txnid : %" PRIu64,
__wt_timestamp_to_string(vpack->tw.durable_start_ts, ts_string[0]),
__wt_timestamp_to_string(vpack->tw.start_ts, ts_string[1]), prepared ? "true" : "false",
- __wt_timestamp_to_string(rollback_timestamp, ts_string[2]));
+ __wt_timestamp_to_string(rollback_timestamp, ts_string[2]), vpack->tw.start_txn);
if (!F_ISSET(S2C(session), WT_CONN_IN_MEMORY))
return (__rollback_row_ondisk_fixup_key(session, page, rip, rollback_timestamp, true));
else {
@@ -487,7 +573,10 @@ __rollback_abort_row_ondisk_kv(
WT_STAT_CONN_DATA_INCR(session, txn_rts_keys_removed);
}
} else if (WT_TIME_WINDOW_HAS_STOP(&vpack->tw) &&
- (vpack->tw.durable_stop_ts > rollback_timestamp || prepared)) {
+ (((vpack->tw.durable_stop_ts > rollback_timestamp) ||
+ (vpack->tw.durable_stop_ts == WT_TS_NONE &&
+ __rollback_check_if_txnid_non_committed(session, vpack->tw.stop_txn))) ||
+ prepared)) {
/*
* Clear the remove operation from the key by inserting the original on-disk value as a
* standard update.
@@ -495,19 +584,30 @@ __rollback_abort_row_ondisk_kv(
WT_RET(__wt_page_cell_data_ref(session, page, vpack, &buf));
WT_ERR(__wt_upd_alloc(session, &buf, WT_UPDATE_STANDARD, &upd, NULL));
- upd->txnid = vpack->tw.start_txn;
+ /*
+ * Set the transaction id of updates to WT_TXN_NONE when called from recovery, because the
+ * connections write generation will be initialized after rollback to stable and the updates
+ * in the cache will be problematic. The transaction id of pages which are in disk will be
+ * automatically reset as part of unpacking cell when loaded to cache.
+ */
+ if (F_ISSET(S2C(session), WT_CONN_RECOVERING))
+ upd->txnid = WT_TXN_NONE;
+ else
+ upd->txnid = vpack->tw.start_txn;
upd->durable_ts = vpack->tw.durable_start_ts;
upd->start_ts = vpack->tw.start_ts;
F_SET(upd, WT_UPDATE_RESTORED_FROM_DS);
WT_STAT_CONN_DATA_INCR(session, txn_rts_keys_restored);
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "key restored with commit timestamp: %s, durable timestamp: %s txnid: %" PRIu64
- "and removed commit timestamp: %s, durable timestamp: %s, txnid: %" PRIu64
+ "key restored with commit timestamp: %s, durable timestamp: %s, stable timestamp: %s, "
+ "txnid: %" PRIu64
+ " and removed commit timestamp: %s, durable timestamp: %s, txnid: %" PRIu64
", prepared: %s",
__wt_timestamp_to_string(upd->start_ts, ts_string[0]),
- __wt_timestamp_to_string(upd->durable_ts, ts_string[1]), upd->txnid,
- __wt_timestamp_to_string(vpack->tw.stop_ts, ts_string[2]),
- __wt_timestamp_to_string(vpack->tw.durable_stop_ts, ts_string[3]), vpack->tw.stop_txn,
+ __wt_timestamp_to_string(upd->durable_ts, ts_string[1]),
+ __wt_timestamp_to_string(rollback_timestamp, ts_string[2]), upd->txnid,
+ __wt_timestamp_to_string(vpack->tw.stop_ts, ts_string[3]),
+ __wt_timestamp_to_string(vpack->tw.durable_stop_ts, ts_string[4]), vpack->tw.stop_txn,
prepared ? "true" : "false");
} else
/* Stable version according to the timestamp. */
@@ -760,6 +860,7 @@ __rollback_page_needs_abort(
WT_MULTI *multi;
WT_PAGE_MODIFY *mod;
wt_timestamp_t durable_ts;
+ uint64_t newest_txn;
uint32_t i;
char ts_string[WT_TS_INT_STRING_SIZE];
const char *tag;
@@ -768,12 +869,14 @@ __rollback_page_needs_abort(
addr = ref->addr;
mod = ref->page == NULL ? NULL : ref->page->modify;
durable_ts = WT_TS_NONE;
+ newest_txn = WT_TXN_NONE;
tag = "undefined state";
prepared = result = false;
/*
* The rollback operation should be performed on this page when any one of the following is
- * greater than the given timestamp:
+ * greater than the given timestamp or during recovery if the newest transaction id on the page
+ * is greater than or equal to recovered checkpoint snapshot min:
* 1. The reconciled replace page max durable timestamp.
* 2. The reconciled multi page max durable timestamp.
* 3. The on page address max durable timestamp.
@@ -800,17 +903,22 @@ __rollback_page_needs_abort(
__wt_cell_unpack_addr(session, ref->home->dsk, (WT_CELL *)addr, &vpack);
durable_ts = __rollback_get_ref_max_durable_timestamp(session, &vpack.ta);
prepared = vpack.ta.prepare;
- result = (durable_ts > rollback_timestamp) || prepared;
+ newest_txn = vpack.ta.newest_txn;
+ result = (durable_ts > rollback_timestamp) || prepared ||
+ WT_CHECK_RECOVERY_FLAG_TS_TXNID(session, newest_txn, durable_ts);
} else if (addr != NULL) {
tag = "address";
durable_ts = __rollback_get_ref_max_durable_timestamp(session, &addr->ta);
prepared = addr->ta.prepare;
- result = (durable_ts > rollback_timestamp) || prepared;
+ newest_txn = addr->ta.newest_txn;
+ result = (durable_ts > rollback_timestamp) || prepared ||
+ WT_CHECK_RECOVERY_FLAG_TS_TXNID(session, newest_txn, durable_ts);
}
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "%p: page with %s durable timestamp: %s and prepared updates: %s", (void *)ref, tag,
- __wt_timestamp_to_string(durable_ts, ts_string), prepared ? "true" : "false");
+ "%p: page with %s durable timestamp: %s, newest txn: %" PRIu64 " and prepared updates: %s",
+ (void *)ref, tag, __wt_timestamp_to_string(durable_ts, ts_string), newest_txn,
+ prepared ? "true" : "false");
return (result);
}
@@ -929,6 +1037,9 @@ __rollback_to_stable_btree_walk(WT_SESSION_IMPL *session, wt_timestamp_t rollbac
WT_DECL_RET;
WT_REF *child_ref, *ref;
+ /* Set this flag to return error instead of panic if file is corrupted. */
+ F_SET(session, WT_SESSION_QUIET_CORRUPT_FILE);
+
/* Walk the tree, marking commits aborted where appropriate. */
ref = NULL;
while ((ret = __wt_tree_walk_custom_skip(session, &ref, __wt_rts_page_skip, &rollback_timestamp,
@@ -942,6 +1053,7 @@ __rollback_to_stable_btree_walk(WT_SESSION_IMPL *session, wt_timestamp_t rollbac
} else
WT_RET(__rollback_abort_newer_updates(session, ref, rollback_timestamp));
+ F_CLR(session, WT_SESSION_QUIET_CORRUPT_FILE);
return (ret);
}
@@ -1176,12 +1288,14 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
WT_TXN_GLOBAL *txn_global;
wt_timestamp_t max_durable_ts, newest_start_durable_ts, newest_stop_durable_ts,
rollback_timestamp;
+ uint64_t rollback_txnid;
size_t addr_size;
char ts_string[2][WT_TS_INT_STRING_SIZE];
const char *config, *uri;
- bool durable_ts_found, prepared_updates;
+ bool durable_ts_found, prepared_updates, has_txn_updates_gt_than_ckpt_snap;
txn_global = &S2C(session)->txn_global;
+ rollback_txnid = 0;
addr_size = 0;
/*
@@ -1198,6 +1312,13 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
WT_ASSERT(session, F_ISSET(session, WT_SESSION_LOCKED_SCHEMA));
WT_RET(__wt_metadata_cursor(session, &cursor));
+ if (F_ISSET(S2C(session), WT_CONN_RECOVERING))
+ __wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
+ "recovered checkpoint snapshot min: %" PRIu64 ", snapshot max: %" PRIu64
+ ", snapshot count: %" PRIu32,
+ S2C(session)->recovery_ckpt_snap_min, S2C(session)->recovery_ckpt_snap_max,
+ S2C(session)->recovery_ckpt_snapshot_count);
+
while ((ret = cursor->next(cursor)) == 0) {
WT_ERR(cursor->get_key(cursor, &uri));
@@ -1212,7 +1333,7 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
/* Find out the max durable timestamp of the object from checkpoint. */
newest_start_durable_ts = newest_stop_durable_ts = WT_TS_NONE;
- durable_ts_found = prepared_updates = false;
+ durable_ts_found = prepared_updates = has_txn_updates_gt_than_ckpt_snap = false;
WT_ERR(__wt_config_getones(session, config, "checkpoint", &cval));
__wt_config_subinit(session, &ckptconf, &cval);
for (; __wt_config_next(&ckptconf, &key, &cval) == 0;) {
@@ -1235,12 +1356,22 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
prepared_updates = true;
}
WT_ERR_NOTFOUND_OK(ret, false);
+ ret = __wt_config_subgets(session, &cval, "newest_txn", &value);
+ if (value.len != 0)
+ rollback_txnid = (uint64_t)value.val;
+ WT_ERR_NOTFOUND_OK(ret, false);
ret = __wt_config_subgets(session, &cval, "addr", &value);
if (ret == 0)
addr_size = value.len;
WT_ERR_NOTFOUND_OK(ret, false);
}
max_durable_ts = WT_MAX(newest_start_durable_ts, newest_stop_durable_ts);
+ has_txn_updates_gt_than_ckpt_snap =
+ WT_CHECK_RECOVERY_FLAG_TS_TXNID(session, rollback_txnid, max_durable_ts);
+
+ /* Increment the inconsistent checkpoint stats counter. */
+ if (has_txn_updates_gt_than_ckpt_snap)
+ WT_STAT_CONN_DATA_INCR(session, txn_rts_inconsistent_ckpt);
/*
* The rollback to stable will skip the tables during recovery and shutdown in the following
@@ -1253,7 +1384,7 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
(addr_size == 0 ||
(txn_global->stable_timestamp == WT_TS_NONE && max_durable_ts != WT_TS_NONE))) {
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "Skip rollback to stable on file %s because %s", uri,
+ "skip rollback to stable on file %s because %s", uri,
addr_size == 0 ? "its checkpoint address length is 0" :
"it has timestamped updates and the stable timestamp is 0");
continue;
@@ -1271,7 +1402,7 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
if ((ret == ENOENT) ||
(ret == WT_ERROR && F_ISSET(S2C(session), WT_CONN_DATA_CORRUPTION))) {
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "Ignore performing rollback to stable on %s because the file %s", uri,
+ "ignore performing rollback to stable on %s because the file %s", uri,
ret == ENOENT ? "does not exist" : "is corrupted.");
continue;
}
@@ -1282,21 +1413,24 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
* 1. The tree is modified.
* 2. The checkpoint durable start/stop timestamp is greater than the rollback timestamp.
* 3. There is no durable timestamp in any checkpoint.
+ * 4. The checkpoint newest txn is greater than snapshot min txn id
*/
if (S2BT(session)->modified || max_durable_ts > rollback_timestamp || prepared_updates ||
- !durable_ts_found) {
+ !durable_ts_found || has_txn_updates_gt_than_ckpt_snap) {
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
"tree rolled back with durable timestamp: %s, or when tree is modified: %s or "
- "prepared updates: %s or when durable time is not found: %s",
+ "prepared updates: %s or when durable time is not found: %s or txnid: %" PRIu64
+ " is greater than recovery checkpoint snap min: %s",
__wt_timestamp_to_string(max_durable_ts, ts_string[0]),
S2BT(session)->modified ? "true" : "false", prepared_updates ? "true" : "false",
- !durable_ts_found ? "true" : "false");
+ !durable_ts_found ? "true" : "false", rollback_txnid,
+ has_txn_updates_gt_than_ckpt_snap ? "true" : "false");
WT_TRET(__rollback_to_stable_btree(session, rollback_timestamp));
} else
__wt_verbose(session, WT_VERB_RECOVERY_RTS(session),
- "tree skipped with durable timestamp: %s and stable timestamp: %s",
+ "tree skipped with durable timestamp: %s and stable timestamp: %s or txnid: %" PRIu64,
__wt_timestamp_to_string(max_durable_ts, ts_string[0]),
- __wt_timestamp_to_string(rollback_timestamp, ts_string[1]));
+ __wt_timestamp_to_string(rollback_timestamp, ts_string[1]), rollback_txnid);
/*
* Truncate history store entries for the non-timestamped table.
@@ -1312,6 +1446,14 @@ __rollback_to_stable_btree_apply(WT_SESSION_IMPL *session)
WT_TRET(__rollback_to_stable_btree_hs_truncate(session, S2BT(session)->id));
WT_TRET(__wt_session_release_dhandle(session));
+
+ /*
+ * Continue when the table is corrupted and proceed to perform rollback to stable on other
+ * tables.
+ */
+ if (ret == WT_ERROR && F_ISSET(S2C(session), WT_CONN_DATA_CORRUPTION))
+ continue;
+
WT_ERR(ret);
}
WT_ERR_NOTFOUND_OK(ret, false);
diff --git a/src/third_party/wiredtiger/src/txn/txn_timestamp.c b/src/third_party/wiredtiger/src/txn/txn_timestamp.c
index 03d5d06cff4..911abe50056 100644
--- a/src/third_party/wiredtiger/src/txn/txn_timestamp.c
+++ b/src/third_party/wiredtiger/src/txn/txn_timestamp.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util.h b/src/third_party/wiredtiger/src/utilities/util.h
index c932d77d6de..63077cdbd0c 100644
--- a/src/third_party/wiredtiger/src/utilities/util.h
+++ b/src/third_party/wiredtiger/src/utilities/util.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_alter.c b/src/third_party/wiredtiger/src/utilities/util_alter.c
index 6d5a9520a90..f46c8e4f61a 100644
--- a/src/third_party/wiredtiger/src/utilities/util_alter.c
+++ b/src/third_party/wiredtiger/src/utilities/util_alter.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_backup.c b/src/third_party/wiredtiger/src/utilities/util_backup.c
index f4b066955c3..def077df91a 100644
--- a/src/third_party/wiredtiger/src/utilities/util_backup.c
+++ b/src/third_party/wiredtiger/src/utilities/util_backup.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_compact.c b/src/third_party/wiredtiger/src/utilities/util_compact.c
index e4f23b3feef..33a4b9985d7 100644
--- a/src/third_party/wiredtiger/src/utilities/util_compact.c
+++ b/src/third_party/wiredtiger/src/utilities/util_compact.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_cpyright.c b/src/third_party/wiredtiger/src/utilities/util_cpyright.c
index 4e095f9475b..e8cd1a0e304 100644
--- a/src/third_party/wiredtiger/src/utilities/util_cpyright.c
+++ b/src/third_party/wiredtiger/src/utilities/util_cpyright.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
@@ -11,7 +11,7 @@
void
util_copyright(void)
{
- printf("%s\n", "Copyright (c) 2008-2020 MongoDB, Inc.");
+ printf("%s\n", "Copyright (c) 2008-present MongoDB, Inc.");
printf("%s\n\n", "All rights reserved.");
printf("%s\n\n",
diff --git a/src/third_party/wiredtiger/src/utilities/util_create.c b/src/third_party/wiredtiger/src/utilities/util_create.c
index 12abf2b2eda..f08c1330360 100644
--- a/src/third_party/wiredtiger/src/utilities/util_create.c
+++ b/src/third_party/wiredtiger/src/utilities/util_create.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_downgrade.c b/src/third_party/wiredtiger/src/utilities/util_downgrade.c
index f942611432d..39f4794dc97 100644
--- a/src/third_party/wiredtiger/src/utilities/util_downgrade.c
+++ b/src/third_party/wiredtiger/src/utilities/util_downgrade.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_drop.c b/src/third_party/wiredtiger/src/utilities/util_drop.c
index 6784735b340..aec61d0ae9d 100644
--- a/src/third_party/wiredtiger/src/utilities/util_drop.c
+++ b/src/third_party/wiredtiger/src/utilities/util_drop.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_dump.c b/src/third_party/wiredtiger/src/utilities/util_dump.c
index dcd01e68dd4..565660c5b66 100755
--- a/src/third_party/wiredtiger/src/utilities/util_dump.c
+++ b/src/third_party/wiredtiger/src/utilities/util_dump.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_dump.h b/src/third_party/wiredtiger/src/utilities/util_dump.h
index 35cb9476e34..d7e4175817a 100644
--- a/src/third_party/wiredtiger/src/utilities/util_dump.h
+++ b/src/third_party/wiredtiger/src/utilities/util_dump.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_list.c b/src/third_party/wiredtiger/src/utilities/util_list.c
index 1c9cae21bbf..eec4fe99cc2 100644
--- a/src/third_party/wiredtiger/src/utilities/util_list.c
+++ b/src/third_party/wiredtiger/src/utilities/util_list.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_load.c b/src/third_party/wiredtiger/src/utilities/util_load.c
index 0e9bd922eeb..36eea69648a 100644
--- a/src/third_party/wiredtiger/src/utilities/util_load.c
+++ b/src/third_party/wiredtiger/src/utilities/util_load.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_load.h b/src/third_party/wiredtiger/src/utilities/util_load.h
index 688f7854e5f..3f52ed439eb 100644
--- a/src/third_party/wiredtiger/src/utilities/util_load.h
+++ b/src/third_party/wiredtiger/src/utilities/util_load.h
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_load_json.c b/src/third_party/wiredtiger/src/utilities/util_load_json.c
index 54216bf9b4e..38801769e63 100644
--- a/src/third_party/wiredtiger/src/utilities/util_load_json.c
+++ b/src/third_party/wiredtiger/src/utilities/util_load_json.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_loadtext.c b/src/third_party/wiredtiger/src/utilities/util_loadtext.c
index 109b478bb15..44d73b410bd 100644
--- a/src/third_party/wiredtiger/src/utilities/util_loadtext.c
+++ b/src/third_party/wiredtiger/src/utilities/util_loadtext.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_main.c b/src/third_party/wiredtiger/src/utilities/util_main.c
index 4730c1a1ed6..ee81b5f5d52 100644
--- a/src/third_party/wiredtiger/src/utilities/util_main.c
+++ b/src/third_party/wiredtiger/src/utilities/util_main.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_misc.c b/src/third_party/wiredtiger/src/utilities/util_misc.c
index d0fff3519e9..75cadf3207a 100644
--- a/src/third_party/wiredtiger/src/utilities/util_misc.c
+++ b/src/third_party/wiredtiger/src/utilities/util_misc.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_printlog.c b/src/third_party/wiredtiger/src/utilities/util_printlog.c
index 8581e896313..085e54ef8aa 100644
--- a/src/third_party/wiredtiger/src/utilities/util_printlog.c
+++ b/src/third_party/wiredtiger/src/utilities/util_printlog.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_read.c b/src/third_party/wiredtiger/src/utilities/util_read.c
index 46e913cb0fd..dd7aa08c3e9 100644
--- a/src/third_party/wiredtiger/src/utilities/util_read.c
+++ b/src/third_party/wiredtiger/src/utilities/util_read.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_rename.c b/src/third_party/wiredtiger/src/utilities/util_rename.c
index 0c865881ed7..d518c98fb2e 100644
--- a/src/third_party/wiredtiger/src/utilities/util_rename.c
+++ b/src/third_party/wiredtiger/src/utilities/util_rename.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_salvage.c b/src/third_party/wiredtiger/src/utilities/util_salvage.c
index d26e6a3a049..afbb2d04d2b 100644
--- a/src/third_party/wiredtiger/src/utilities/util_salvage.c
+++ b/src/third_party/wiredtiger/src/utilities/util_salvage.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_stat.c b/src/third_party/wiredtiger/src/utilities/util_stat.c
index af9072e8e37..565633f5151 100644
--- a/src/third_party/wiredtiger/src/utilities/util_stat.c
+++ b/src/third_party/wiredtiger/src/utilities/util_stat.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_truncate.c b/src/third_party/wiredtiger/src/utilities/util_truncate.c
index 2b47783fb25..d4dab63d2a9 100644
--- a/src/third_party/wiredtiger/src/utilities/util_truncate.c
+++ b/src/third_party/wiredtiger/src/utilities/util_truncate.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_upgrade.c b/src/third_party/wiredtiger/src/utilities/util_upgrade.c
index b85b88b325c..0a5a16bdb2b 100644
--- a/src/third_party/wiredtiger/src/utilities/util_upgrade.c
+++ b/src/third_party/wiredtiger/src/utilities/util_upgrade.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_verbose.c b/src/third_party/wiredtiger/src/utilities/util_verbose.c
index 4162a101b59..66c0420d986 100644
--- a/src/third_party/wiredtiger/src/utilities/util_verbose.c
+++ b/src/third_party/wiredtiger/src/utilities/util_verbose.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_verify.c b/src/third_party/wiredtiger/src/utilities/util_verify.c
index ca4e0ae8389..910c03aa629 100644
--- a/src/third_party/wiredtiger/src/utilities/util_verify.c
+++ b/src/third_party/wiredtiger/src/utilities/util_verify.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*
diff --git a/src/third_party/wiredtiger/src/utilities/util_write.c b/src/third_party/wiredtiger/src/utilities/util_write.c
index d8156670b9e..fc0a846e54f 100644
--- a/src/third_party/wiredtiger/src/utilities/util_write.c
+++ b/src/third_party/wiredtiger/src/utilities/util_write.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2014-2020 MongoDB, Inc.
+ * Copyright (c) 2014-present MongoDB, Inc.
* Copyright (c) 2008-2014 WiredTiger, Inc.
* All rights reserved.
*