summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src/include/cursor.i
Commit message (Collapse)AuthorAgeFilesLines
* Import wiredtiger: 03178d7f9c3e1db7383268bfb346bd9cb551da1c from branch ↵Luke Chen2020-10-191-497/+0
| | | | | | | | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: f4b6230119..03178d7f9c for: 4.4.2 WT-6446 Rename *.i files into *_inline.h files WT-6490 Acquire snapshot for eviction threads WT-6624 Use transaction snapshot for applications performing eviction WT-6671 Save the checkpoint snapshot that is used to take checkpoint in the metadata WT-6691 Add file import repair functionality WT-6708 Repurpose oldest start txn to be newest txn in the aggregated time window WT-6725 Skip checking visibility for updates restored from disk WT-6741 Add check for supported data source on import WT-6746 Save base write gen in metadata during checkpoint WT-6761 Ignore stdout for test_rollback_to_stable10 WT-6763 Fix freeing update on the chain when insert fail after inserting to the update chain WT-6767 Adding a new read timestamp config that allows it to be set older than the oldest timestamp WT-6783 Generate unique keys for table to ensure log records WT-6792 Update compatibility tests to test against mongodb-5.0 branch WT-6793 Organize code statistics Evergreen tasks WT-6797 Ensure minimum entries before short-circuiting WT-6806 Back off aggressive abort in random_directio
* Import wiredtiger: 6a7db4f96fe828fdb1b9a31d83460c0573a2c3b1 from branch ↵Luke Chen2020-09-091-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: 579966149b..6a7db4f96f for: 4.4.2 WT-5144 Use wt_clock instead of wt_epoch in perf programs WT-5585 Remove cache_overflow config option WT-5693 Enable test_wt4105_large_doc_small_upd WT-5940 Migrate to Clang Format 10 WT-6000 Enhance incremental backup testing in format to support restart WT-6006 Revert test binaries to 10 in checkpoint-stress-test WT-6027 Fix docs spelling errors and warnings WT-6322 Split full compatibility tests into smaller groups WT-6390 Extend compact02 timeout from 8 => 10 minutes WT-6404 Add timing stress that delays checkpoint after it calls __wt_txn_begin WT-6451 Do not evict clean metadata pages if needed for historic reads WT-6458 read row-store leaf pages with prepared updates in a single pass WT-6463 History store operations should honor cache size WT-6471 Avoid the error message for non-existent clang-format binary WT-6472 Update timestamp_abort test cache configuration WT-6478 Cursor cache statistics not getting incremented WT-6505 Add debugging for missing file failure WT-6507 Exit cache eviction worker after our operation has timed out WT-6526 Fix assertion failure when opening DB in readonly mode after unclean shutdown WT-6532 Consider update structure overhead in split length calculation WT-6542 Add an assert to ensure we are not unintentionally returning empty values WT-6544 Onpage value not appended to the tombstone restored from the data or history store WT-6556 Fix internal sessions to use internal session close function than public API to avoid memory leak WT-6559 Use the session id from the new session to determine statistics bucket WT-6560 Fix usage of global salvage in WT utility WT-6561 Provide MongoDB configuration in the wt utility usage output WT-6569 Squash the prepared updates into a single update before writing it to data store WT-6570 RTS to remove the left over updates in the history store without stop timestamp WT-6571 Lseek cannot use error_sys_check because it does not return an int WT-6577 History store dump outputs confusing time window WT-6578 Prevent reconciliation from looking past the on-disk value WT-6581 Fix class name in test_hs15 WT-6585 Panic if updates that are older than the updates in history store are inserted to history store WT-6586 Tombstone inserted to history store should also be flagged as WT_UPDATE_HS WT-6589 Fix disabled cursor cache python tests WT-6591 Stop checkpoint thread before closing connection in Python tests WT-6593 Retry conflicting operations in test_rollback_to_stable10 WT-6596 Increase cache for timestamp abort test and separate key spaces for all abort tests WT-6598 Add new API allowing changing dhandle hash bucket size WT-6602 Allow operation timeout ms to be passed to commit and rollback WT-6604 Fix typo in the comment descibing WT_CELL structure WT-6610 Fix incremental backup checkpoint parsing to handle upgrades WT-6611 Revert enhancement allowing rename and incremental backup WT-6613 Add python test for early_load flag WT-6615 Initialize last_upd where it is actually used WT-6619 Eliminate possibility of infinite loop in test_cursor13.py WT-6623 Set the connection level file id in recovery file scan WT-6625 Remove outdated TODO WT-6635 Disable mix and column filetype test WT-6640 Coverity: Failure to restore saved dhandle WT-6641 Coverity: Unused value
* Import wiredtiger: 3b4a927265fc81dc4ab8895c5451a7ec9582c1d3 from branch ↵Luke Chen2020-06-191-1/+1
| | | | | | | | | | | | | | | | mongodb-4.4 ref: 3998a1f701..3b4a927265 for: 4.4.0-rc11 WT-6349 Don't clean the globally visible on-disk tombstones as part of checkpoint WT-6351 Fix race between threads to update condition variable's previous wait value WT-6388 Fix-up out-of-order updates in the history store WT-6397 Reduce visibility restrictions for reading tombstone information from history store's update list WT-6428 Fixes for checkpoint retention WT-6429 Fix memory leak in rollback to stable WT-6438 Fix rollback error due to cache pressure WT-6441 Add stats to indicate how many times the history store is search happened during a normal search call
* Import wiredtiger: 154719f3ff736872f67f2b3e9f4d8b396d2d8adf from branch ↵r4.4.0-rc9Luke Chen2020-06-101-18/+25
| | | | | | | | | | | | mongodb-4.4 ref: bf1d78126c..154719f3ff for: 4.4.0-rc9 WT-6185 Insert full updates into the history store in some corner cases and add a history store c test WT-6257 Fix rows out-of-order in history store file WT-6339 Stop creating snapshots for history store cursors WT-6396 Fix wrong assert when inserting updates to the history store
* Import wiredtiger: 943d9cdd2a1cfc4ae357da44ec497b5115ff3139 from branch ↵Luke Chen2020-05-291-1/+6
| | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: a7af601643..943d9cdd2a for: 4.4.0-rc8 WT-6168 Ignore history store visibility when resolving prepared updates WT-6250 Avoid passing reconcile struct to cell layer for stat logging WT-6302 Move format operations tracing into WiredTiger log files WT-6303 Fix commit check may fail because of a prepared rollback WT-6306 Do not force evict HS pages because of deleted items WT-6307 Increase the page cache size for all the page allocations WT-6312 Add history store verification WT-6315 Fix commit check failure because of updates restored from data store WT-6317 Create variant of compatibility test that runs faster and generates a smaller artifact footprint WT-6318 Stop assuming exclusive access when writing to history store pages WT-6320 Allow eviction of pages with older content
* Import wiredtiger: bdff12c2331ab0478a22309a6d35519d2e2ca441 from branch ↵Luke Chen2020-05-121-2/+2
| | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: 404b4a70af..bdff12c233 for: 4.4.0-rc6 WT-5864 Append globally visible tombstone with WT_TS_NONE to the update chain WT-6063 Re-enable checkpoint-filetypes-test in Evergreen WT-6065 Re-enable spinlock-gcc-test in Evergreen WT-6092 Use durable timestamp for global visibility check instead of commit timestamp WT-6111 Rework cell structures and unpacking WT-6157 Disable table logging in workgen stress test while running prepare transactions WT-6159 Tag verbose messages to make them easier to distinguish WT-6160 Fix format failure caused by stack overwrite WT-6161 Fix format hang when WiredTiger internal checkpoints are configured WT-6162 Fix incorrectly counts failures in format.sh WT-6166 KEY/VALUE short cells have to handle copy cells
* Import wiredtiger: 18dfb9e58e39927696affcd8e362364e23e1aa59 from branch ↵r4.4.0-rc4Luke Chen2020-05-061-12/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: a707df12a2..18dfb9e58e for: 4.4.0-rc4 WT-5242 Minimize checkpoints pinned during backup WT-5470 Reduce copies and allocations in read path WT-5673 Prepare support with durable history: modify verify and salvage as needed WT-5677 Prepare support with durable history: add test/format stress tests WT-5710 Review WT_PANIC usage WT-5716 Create the history store file at the same time as creating the metadata file in wiredtiger open WT-5839 Ignore non-globally visible tombstones for both data store and hs store in hs verification WT-5841 Return WT_TRY_SALVAGE when the history file is removed or truncated WT-5928 Cleanup stale FIXMEs from durable history WT-5977 WT_SESSION_NO_RECONCILE flag set by history cursor prevents eviction WT-5984 Allow prepared updates to be evicted in durable history WT-6009 Prepare support with durable history: add statistic for prepared updates evicted WT-6032 Turn on mongodb-4.4 branch upgrade/downgrade testing WT-6051 Fix reconstructing full value from modifies for string format WT-6068 Re-enable tests temporarily disabled during durable history development WT-6069 Remove WT_UPDATE_RESTORED_FROM_DISK flag WT-6070 Coverity : Copy paste error WT-6071 Coverity : Change format specifier WT-6086 Move time windows and aggregated time windows into structures WT-6087 Add a C2S(cursor) macro to simplify translation from a cursor to a session WT-6095 Verify on-disk page only for row store as part of rollback to stable WT-6109 Cleanup usage of cursor->session WT-6110 Cleanup cast from cbt to cursor WT-6120 Remove use-after-free in __verify_history_store_id WT-6130 Disable test_random_abort
* Import wiredtiger: 7b994a862e899a12eb7c3ac814c9fada7d8d1ab9 from branch ↵r4.4.0-rc2Luke Chen2020-04-221-3/+2
| | | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: 9bd1ece797..7b994a862e for: 4.4.0-rc2 WT-4701 Switch test/format to use WiredTiger locking primitives WT-5766 Separate out internal and shared transaction data WT-5791 Prepare checkpoint can finish in 0msec and reset prepare min stat WT-5794 Remove skew_newest option from reconciliation WT-5833 Fix caching issue for overflow key/value items WT-5919 Disallow logging archival testing with log-based incremental backup WT-5946 Eviction server handles can deadlock when opening HS cursors WT-5968 Make the WT_SESSION_IMPL.txn field an allocated structure WT-5986 Create script for emulating multiversion tests WT-6016 Fill source code comments where lines start with parentheticals WT-6020 __rec_append_orig_value() cleanup WT-6026 Fix s_all breakage on format.h
* Import wiredtiger: 5b5d7988560a20dbe827a1fa16c0481e6c0e2821 from branch ↵Luke Chen2020-03-301-2/+8
| | | | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: 4500a8ed93..5b5d798856 for: 4.4.0-rc0 WT-4523 Fix type incompatibilities during alloc and free of memory for async ops WT-5588 Only release cursor memory allocated by the API for cursor copy debug mode WT-5826 Fix a leak when a page splits and some updates aren't restored WT-5828 Reconciliation discards salvaged overflow blocks with stop time pairs WT-5891 Disable testing of checkpoint cursors in wt4333_handle_locks WT-5901 Fix branch checkout issue in release compatibility tests WT-5902 Fix history store using incorrect key for lookups WT-5914 Only configure log-incremental backup if archiving is off in test/format WT-5921 Fix wtperf_xray to detect builds that haven't been instrumented with XRay WT-5922 Separate out XRay and xray_to_optrack build instructions WT-5923 Avoid performing history store cleanup for modified trees WT-5925 Rework format CONFIG file syntax for clarity WT-5931 Recovery rollback to stable is leading to remove a record that is not expected
* Import wiredtiger: 187983a50c696eb217a780bb6b29e4bd3433c13b from branch ↵Luke Chen2020-03-151-28/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: 7e595e4a3a..187983a50c for: 4.4.0-rc0 WT-3821 Python test case fails due to pinned timestamp warning WT-4458 Only sweep btree handles that have been evicted from cache WT-4671 Remove Limbo pages WT-4674 Instantiate birthmark records using in-memory metadata WT-4676 Search LAS for the history and compare to in-memory update WT-4677 Re-initialize prepared updates WT-4678 Write the test workload for relevant history in cache WT-4681 Check if expired content is being swept from lookaside WT-4683 Reverse the modifies when writing to LAS WT-4685 Add new statistics for relevant history in cache WT-4868 Aggregate btree write gen from leaf pages in salvage WT-4954 Document duplicate backup cursors WT-5001 Migrate Jenkins “wiredtiger-test-format-stress-sanitizer-ppc” job to Evergreen WT-5045 Add more statistics tracking where checkpoint spends time WT-5052 Enhance lookaside search functionality to handle WT_MODIFY records WT-5058 Stop initializing a page with updates from lookaside WT-5066 Extend test_las06 to support column store. WT-5072 Modify __wt_rec_upd_select() to pull an update from lookaside WT-5073 Review update chain traversals WT-5089 test_las02.py fails: Unable to locate the correct record WT-5092 Modify lookaside schema to add timestamp and transaction id to the key WT-5098 Modify __wt_update_alloc() to accept NULL WT_ITEM values WT-5141 Handle multiple modifies for the same key on lookaside eviction WT-5146 Returning wrong record value for variable length columnar table WT-5158 Remove assertion in __wt_find_lookaside_upd for cursor comparison WT-5167 Fixing the missing pieces of page instantiation from las WT-5186 Handle reading of LAS modifies on top of a birthmark record WT-5191 Avoid LAS sweep server remove records that don't have disk image with proper version WT-5203 lookaside history should no longer be preferentially evicted WT-5212 Backup data validation tests WT-5214 Verify potential incremental failures WT-5215 Stress testing of incremental backup WT-5222 Make checkpoint always choose skew newest WT-5225 Create persistent file for History store WT-5227 Enable python test cursor04 on relevant history feature branch WT-5228 Several tests fail with incorrect or missing record after reconciliation changes WT-5233 Prepared update not visible in las06 WT-5236 Enhance workgen to support draft lookaside stress workload WT-5246 Update WiredTiger backup documentation WT-5253 Add History store file to checkpoint target list. WT-5254 Add aggregate timestamp info to the WT_REF. WT-5256 Fix relevant history build after develop merged brought LIMBO reference WT-5264 Add a delete record for every insert record into the WT history store to represent stop time pair WT-5267 Enable storing start/stop time pair for each record in the history store WT-5271 Remove WT_PAGE_LOOKASIDE structure. WT-5279 Disable failing tests in the preferred way WT-5280 Write all other versions to history store during checkpoint. WT-5281 Assert that we're no longer writing tombstones to the history store WT-5283 Eviction to create disk image with newest committed version. WT-5284 Test to check eviction is writing the newest version to data store WT-5286 Enable the data format to store time pair WT-5289 Remove the code that does garbage collection from sweep server WT-5290 Add new verbose flag and verbose logs for checkpoint garbage collection WT-5291 Additional statistics for checkpoint garbage collection WT-5292 Test the garbage collection by checkpoint WT-5295 Disable remaining failing tests in durable history branch WT-5298 Add a condition to verify the timestamp of a page during checkpoint of history store WT-5300 Traverse the history store internal page for obsolete child pages by checkpoint WT-5302 Begin writing validity window for new data format WT-5303 Update checkpoint statistics for the new history store file. WT-5308 Remove WT --enable-page-version-ts build configuration option WT-5317 Eviction writes uncommitted metadata changes to disk WT-5320 Save update restore to reuse lookaside eviction. WT-5321 Update the stats and counters that represent lookaside inserts according to durable history WT-5328 Evict obsolete history store page WT-5333 Fix search not found issue due to skipped birthmark and rework txn_read WT-5335 Read the start and stop time pairs back from cell when we reconstruct it on update chain WT-5341 Clang sanitiser was triggered by checkpoint writing to the history store change WT-5343 Show history store in the wt list WT-5345 Show aggregated timestamp information for internal pages and leaf pages WT-5347 Add ability for wt util to print historical versions of a key WT-5353 Verify data continuity between history and data store WT-5354 Verify history store key is not missing from the data store WT-5355 Add the ability to dump a given btree as of a timestamp WT-5361 Fix selecting aborted txn to write to disk WT-5369 Don't use transaction ids from a page with a previous startup generation WT-5385 Use WT_UPDATE_HISTORY_STORE to avoid repeatedly inserting updates to lookaside WT-5386 Re-enable test_inmem01 WT-5388 Fix write squash statistic caused by change in reverse delta WT-5392 Fall out of in-memory obsolete history page eviction WT-5414 Change the usage from durable timestamp to commit timestamp during eviction. WT-5416 Make sure that rollback to stable works on all objects in WT WT-5417 Skip the clean pages of each tree with aggregated stop timestamp is less than stable timestamp WT-5419 Create a TOMBSTONE update to represent the on-disk value state WT-5420 Reconcile should consider TOMBSTONE update to replace or remove the on-disk value WT-5421 Search the history store to find the value that can be replaced the on-disk value WT-5422 Remove the history updates for reconciled data pages WT-5423 Convert a history store modified value into a full update WT-5424 Add statistics for rollback to stable operations WT-5425 Add a new verbose flag to print the rollback to stable operation WT-5426 Ensure rollback to stable is executed from recovery WT-5427 Implement tests for rollback to stable WT-5431 Merge develop branch to durable history branch WT-5434 Remove develop-timestamp and add test for 4.0 and 4.2 pair to compatibility_test_for_mongodb_releases.sh after merge durable history to develop WT-5441 Fix known visibility issues WT-5446 Fix not writing to lookaside WT-5448 Reconciliation wrongly overwrites the cell with default time pairs WT-5451 Update reverse modify logic to always insert a modify into the history store WT-5453 Fix cell packing for globally visible values. WT-5454 Rename cache_overflow configuration option. WT-5455 Fix test_hs03.py WT-5457 single block reconciliation with saved updates can leak blocks WT-5461 Search should not return onpage value if nothing is found by transaction read WT-5462 Rebalance the Evergreen Python test buckets WT-5464 Open reading history cursors on the user session WT-5467 Make history store cursor part of each session, get rid of the cursor pool WT-5469 Support mixing timestamped and non-timestamped updates WT-5476 Continue writing tombstones when the tombstone is globally visable. WT-5478 Insert records directly into history store without a txn WT-5482 Increment cache usage when appending on-disk value to update list WT-5484 Check visibility before saving updates for in memory reconciliation WT-5489 page-read can race with threads locking in-memory page structures WT-5491 Add an option to wt verify to confirm that no data exists after the stable timestamp WT-5493 Re-enabling test_bug008 WT-5495 WT-5495 For column store, check the on-page value and history store even if the key is in the insert list WT-5496 upd should be reset to NULL if all upd on the chain are not visible in txn read WT-5500 Implement new history store format WT-5501 Do not use default session to create a history store cursor when configuring WT-5502 Re-add changes reverted by merge commit WT-5503 We can only free updates inserted into history store after a full update. WT-5508 Some of the txnids not cleared after restart WT-5509 Infinite loop when reading from history store at early specific timestamp in test_util01 WT-5510 Fix test_hs01.py, test_hs06.py (test_hs_prepare_reads) WT-5513 Don't consider TOMBSTONE/Stop time pair for history store reads WT-5515 Enable test_hs06 WT-5516 Backup starts with base_write_gen 1 WT-5518 Split-parent code can race with other threads when checking the WT_REF.state WT-5519 Apply version from datastore after finding a modify when possible. WT-5522 Remove update free logic in hs_insert_updates. WT-5523 Inserting history store needs to handle modify based on a tombstone WT-5525 Free up 3B in the WT_REF structure WT-5529 Improve usage of upd in txn.i WT-5540 Call cursor disable bulk insert on first insert to history store. WT-5541 Use snapshot isolation whenever we use history store cursors in verification WT-5542 History store not using the on disk value as the base value for modify when key boundary crossed WT-5547 Disable all the skipped rollback to stable tests for column store types WT-5549 Fix the recovery rollback to stable and enable the passing tests for both row and variable columnar types WT-5551 Fix the history store insert statistics WT-5552 Checkpoint reconciliation and page splits free the WT_REF.addr field without locking WT-5555 Update base write gen to the maximum write gen we have seen in recover WT-5556 Verify of a file should verify its history store content too WT-5558 Use durable timestamp from the update instead of start WT-5563 Transactions ID are getting wiped which causes errors in WT Verify WT-5565 Core dump is generated when running test_random_abort or test_random_direcio run on durable history branch WT-5566 Update rollback to stable tests to use new statistics WT-5567 Fix an assert in txn_read always be true WT-5569 Update WiredTiger source code to include 2020 copyright notices for durable history WT-5570 Refactor the __upd_alloc_tombstone() according to the new use in durable history WT-5574 Rolling back a prepared transaction with `cursor_copy` results in a use-after-free WT-5575 Fix the test_durable_ts01 test to expect older data after recovery WT-5576 Temporarily add lookaside score stat and cache_overflow config option WT-5579 Fix Evergreen memory sanitizer test failure WT-5581 Address sanitizer test failure running bloom filter testing WT-5582 Long unit testing sweeping cursors failing WT-5583 Applying operations in recovery encounters unexpected operation type WT-5587 Limit how many checkpoints are dropped by a subsequent checkpoint WT-5589 force_stop on duplicate cursor open not returning error WT-5590 Fix spellings so s_string passes WT-5593 test/format assertion failure addr->size != 0 WT-5595 test/format data mismatch errors WT-5596 Increase format stress testing scope. WT-5597 Fix the history store file access during recovery WT-5598 __verify_timestamp_to_pretty_string uses local buffer which is freed before access WT-5602 Rollback transaction core dumped with upd->start_ts >= unpack->stop_ts WT-5603 test/format assertion failure while discarding in-memory page WT-5605 Update test checkpoint to no longer use checkpoint cursors WT-5607 Successful 'verify -h' calls are returning not found WT-5610 Fix assertion for reconciling fixed length column store WT-5611 Don't write updates with different commit and durable timestamps to data store WT-5612 Remove history store values for non-timestamp tables WT-5613 Remove birthmark update type WT-5615 Coverity: Read of uninitialised value WT-5618 Skip timestamp range overlap check if start timestamp is zero WT-5620 Skip the history store TOMBSTONE only for rollback to stable operation WT-5624 Incremental unit test should use offset/length ranges WT-5625 corruption detected during validation - root page's aggregated timestamp incorrect WT-5626 Remove assert which checks for newer updates in the history store WT-5628 rollback_to_stable failed with no such file WT-5631 Recovery rollback to stable for timestamped logged tables WT-5632 Don't write stop_ts of 1 for non-timestamped delete WT-5633 Fix another assertion for reconciling fixed length column store WT-5636 prefix compression is slow in the history-store access pattern WT-5638 Ignore checking visibility of history store updates as they are implicitly committed WT-5640 test_wt2323_join_visibility fail when processing consecutive tombstones in __wt_hs_insert_updates WT-5641 Clear history store content when deleting a key due to a globally visible tombstone WT-5644 Appending onpage value to an aborted update triggers an assert WT-5647 replace the WT_REF structure's WT_REF_READING state with a flag WT-5648 Add a leaf or internal page type flag to the WT_REF structure WT-5649 Refactor WT_REF locking, review all WT_REF.addr reads for locking issues WT-5650 Fix a race condition between reading the WT_PAGE.modify field and the page being dirtied. WT-5651 Fix the RTS assert to consider error scenarios of search WT-5654 Add version information to the history store key format WT-5658 Fix heap-use-after-free in parent split code WT-5665 Data mismatch bug when running new version of test_checkpoint with timestamps WT-5666 Deleting a chunk of the namespace changes the WT_REF type WT-5667 Remove usage of checkpoint cursor in test/format WT-5668 Prepare support with durable history: implement data format changes WT-5678 Fix infinite looping behaviour in history store cursor positioning WT-5680 segfault when dereferencing NULL addr while reconciling WT-5682 Ensure that we can't apply modifies on top of tombstones WT-5684 overflow values must be discarded when there is no update for a key WT-5685 Set aspell dictionary to en_US WT-5688 Memory leak detected during page overflow read WT-5689 reduce work required for the cursor-pinned test. WT-5690 Rollback to stable assertion failure regarding update visibility WT-5692 Revert a test change to fix a Python hang WT-5695 Fixed incremental backup example to use O_CREAT in the backup range case WT-5696 test_timestamp_abort fails with data mismatch WT-5698 Disabling bulk cursor changes broke a Jenkins compile WT-5699 Refactor incremental backup RANGE code WT-5700 Add smoke test script for incremental backup stress test WT-5701 If an out-of-order update masks an on-disk value, don't append it WT-5704 Incremental backup smoke test core dumped WT-5706 Fix csuite-incr-backup-test calculation of value sizes WT-5707 Reduce the test load for checkpoint stress test WT-5712 Ensure WT command line utility treats history store consistently WT-5713 Fix failures so test_durable_rollback_stable.py can be enabled WT-5719 Incremental backup metadata should quote the ID string WT-5722 Incremental backup should do a name check on identifiers WT-5745 Don't copy a value into tombstones WT-5747 Cope with updates out of timestamp order WT-5753 Fix divide by zero error in test/csuite/test_incr_backup WT-5756 heap-use-after-free in __wt_row_modify WT-5762 Make test_hs10 more robust WT-5767 Fix search_near invocations for history store WT-5771 make-check-msan-test failed with use-of-uninitialized-value error on RHEL 8.0 WT-5774 Move stress test tasks into a separate build variant WT-5775 Fix leak of updates from history store WT-5777 Add statistic for tracking history store deletions due to key removal WT-5780 Fix timestamp_index_build.js in noPassthrough suite. WT-5781 Fix basic.js in parallel suite WT-5786 Detect if a file is too small to read a descriptor block WT-5792 Dump and verify can't see the history store WT-5795 Disable assertion that inserts to the history store are unique WT-5798 Check that the history store file exists before performing rollback to stable WT-5799 Dont assume we have ordered timestamps when doing rec append original value WT-5800 Temporarily disable history store verify WT-5806 Perform rollback to stable on a clean shutdown WT-5809 Invariant failure: stable timestamp does not equal appliedThrough timestamp WT-5820 Change format.sh to forcibly quit if a test runs out of disk space. WT-5822 Don't evict metadata updates from a running checkpoint WT-5827 Enable test_schema_abort WT-5830 Enable two c tests in evergreen
* Import wiredtiger: d74cb1a91399e1197a95667502002ffed2b7b82b from branch ↵Luke Chen2020-02-121-1/+1
| | | | | | | | | | | | | | | | | | mongodb-4.4 ref: 94c6c16014..d74cb1a913 for: 4.3.4 WT-5372 Skip known errors for long-running format stress sanitizer tasks WT-5383 Update WiredTiger source code to include 2020 copyright notices WT-5398 Adding more correctness tasks into rhel80 Evergreen build variant WT-5526 Remove visibility check in __wt_value_return_upd WT-5536 Add zstd as a builtin compressor for WiredTiger Python package WT-5538 Change format to ignore Evergreen timestamps in configuration files WT-5553 Return error if primary cursor is not an incremental source WT-5554 Account for logpath when retrieving file size in incremental backup WT-5557 Fix the wrong page type returned when checking on-page cell WT-5564 Buffer not extended properly when incremental bitstring grows
* Import wiredtiger: c6962452f2c3469c039edfcafb7702450bf14c3b from branch ↵Luke Chen2020-01-151-0/+14
| | | | | | | | | | | | | | | | | | | mongodb-4.4 ref: 5bd9fdfc0b..c6962452f2 for: 4.3.3 WT-4886 Avoid depending on particular error message text for test_bug018 WT-5003 Migrate Jenkins “wiredtiger-test-race-condition-stress-sanitizer” job to Evergreen WT-5024 Migrate Jenkins “wiredtiger-compatibility” job to Evergreen WT-5081 Add support for ASan builds in the Python test suite WT-5119 Birthmark records can be read as normal updates if reads race with checkpoints WT-5165 Add cursor copy debug mode WT-5199 Adding correctness tasks into rhel80 Evergreen build variant WT-5261 coverage-report task timed out in Evergreen WT-5334 Add testing coverage for static wt build WT-5379 Missing varargs cleanup WT-5410 WiredTiger formatted timestamp string buffer size is too small
* Import wiredtiger: ddace22cbd344d440b523e2b3158b1d720cc4de9 from branch ↵Luke Chen2019-10-311-4/+4
| | | | | | | | | | | mongodb-4.4 ref: 2fd676d2bc..ddace22cbd for: 4.3.1 WT-5120 checkpoint hangs when reconciliation doesn't release the eviction generation WT-5204 Add diagnostic logging code to the generation drain function WT-5207 Minimize WT-5043 diagnostic tests to exclude time other than eviction itself
* Import wiredtiger: af2cb8f052184a94635c3bfc358620dd36df5828 from branch ↵Luke Chen2019-10-151-16/+12
| | | | | | | | | | | | | | | | mongodb-4.4 ref: 3818fb14bd..af2cb8f052 for: 4.3.1 WT-4972 Add new RHEL Evergreen build variant WT-4975 Migrate Jenkins “wiredtiger-pull-request-asan” job to Evergreen WT-5123 Fill multi-paragraph comments WT-5150 LAS sweep is not removing the entries that are no longer required WT-5161 Remove deprecated git.apply_patch WT-5163 Fix ignored failure return in WT_CURSOR.next when random retrieval configured WT-5164 Fix inconsistent underscore/dash output WT-5166 Allow configuring configure flags in evergreen builds
* Import wiredtiger: 7dfd9391862bc9a6d84868c4dc51689c45a3aacf from branch ↵Luke Chen2019-08-211-308/+288
| | | | | | | | | | | mongodb-4.4 ref: c809757d8b..7dfd939186 for: 4.3.1 WT-4658 Apply Clang Format WT-4810 Adding WT_ERR_ASSERT and WT_RET_ASSERT macros WT-5046 Prepared transactions aren't properly cleared from global table with WT_CONN_LOG_DEBUG_MODE enabled
* Import wiredtiger: 99e0760cc5f11440b21184874d8dd2ae5bde23d6 from branch ↵Luke Pearson2019-07-091-1/+3
| | | | | | | | | | | | | | | | mongodb-4.2 ref: b50d65e856..99e0760cc5 for: 4.3.1 WT-4792 Add stat to track pages queued for eviction after LRU sorting WT-4832 Change ordering on shutdown to close LSM and async threads earlier WT-4836 Lower scheduling frequency for endianness compatibility tests WT-4892 Improve statistics about forced eviction WT-4893 Fix a race between internal page child-page eviction checks and cursors in the tree WT-4898 Don't allow the eviction server to reconcile if it's busy WT-4918 LSM allocated mutexes leaked in readonly tests WT-4920 Add statistics tracking when eviction server is waiting for page transitions
* Import wiredtiger: afdead1093b5c5b41dd54ddddf6f42d92bef1666 from branch ↵Luke Chen2019-03-051-42/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-4.2 ref: 37e1570f82..afdead1093 for: 4.1.9 WT-4413 Add optional compact progress messages WT-4465 Add documentation for a dhandle's lifecycle WT-4514 Implement assert=durable_timestamp WT-4517 Change WT data format to avoid writing stable timestamps WT-4537 Fix WiredTiger cursor prev/next traversal failure on prepare retry WT-4554 Enhance WT salvage to handle the case of corrupted WiredTiger.turtle WT-4556 workgen: add synchronization points during run time WT-4558 WiredTiger connection statistics cursor incorrectly provides doubled-up values WT-4568 Operation tracking visualization incorrectly displays call stacks WT-4573 Reducing calls to __wt_epoch from session reset WT-4587 Parallelize the script that parses operation tracking files WT-4595 Coverity "null pointer dereference" complaints WT-4596 Simplify wt utility's session/connection handling WT-4599 Show latency threshold violations in operation visualizations WT-4605 workgen: read_write_storms.py needs a public domain notice WT-4606 workgen: remove lsm from the default table type in wtperf emulation WT-4613 Skip the wt4333_handle_locks test on OS X WT-4615 Sync backup file before returning backup cursor WT-4617 Cursor next/prev returns PREPARE_CONFLICT only once
* Import wiredtiger: 0c6ba8d8be02dd34a46c3e9533971f1739b6ad8e from branch ↵Luke Chen2019-02-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-4.2 ref: 92719d6bc9..0c6ba8d8be for: 4.1.9 WT-4053 Add statistic for data handle size WT-4296 Add aggressive mode to sweep server WT-4313 Update query_timestamp documentation for last_checkpoint and recovery timestamp WT-4369 random_directio shouldn't assume children threads wrote any data WT-4433 Enable dynamic compression for snappy WT-4447 Add prototype implementation allowing limiting of IO per subsystem WT-4484 workgen: wtperf.py should store python intermediate files in home directory WT-4489 Store correct timestamp in cells on disk WT-4492 Automate testing of versioned data format WT-4501 Fix a race condition opening/closing the shared cache WT-4533 Upgrade to v3 toolchain for Evergreen tests WT-4546 Add workgen improvements and test files to simulate read and write "storms" WT-4547 Consolidate capacity and block manager bytes written WT-4557 Remove error_prefix from base configuration file, set error_prefix in wt command WT-4559 Create a marker file when a test leaves a database corrupted WT-4561 WiredTiger LSM chunk drop can race with hot backups WT-4562 Coverity: possible divide by zero conn_capacity:434 WT-4569 WT_CONN_DATA_CORRUPTION incorrectly set in Btree verify code. WT-4576 Coverity warning in conn_capacity.c
* Import wiredtiger: fa402fef1974b30ef61770caff58b0eabda97781 from branch ↵Luke Chen2019-01-101-1/+1
| | | | | | | | | | | | | mongodb-4.2 ref: 86012f8e40..fa402fef19 for: 4.1.7 WT-4444 Extend cursor operation tracking statistics WT-4483 Improve caching of small updates to large values WT-4505 Add ability to manage when prepared transactions appear in checkpoints WT-4518 Give applications a chance to handle panic before API panic returns WT-4522 Update WiredTiger copyrights to 2019
* Import wiredtiger: e6c1b9724ed6ed2879a36d7e140f4fa9daceb261 from branch ↵Luke Chen2018-12-271-3/+18
| | | | | | | | | | | | | mongodb-4.2 ref: d5793d4dd5..e6c1b9724e for: 4.1.7 WT-4366 Fix how test/format handles prepare conflict errors WT-4426 Change WT data format to include timestamps in leaf page key/value cells WT-4475 clang detected memory leak while executing csuite tests WT-4499 Fix prepared transactions for cursor key order check failure WT-4506 Bypass some csuite tests for valgrind
* Import wiredtiger: a065c83d8dd73d1c0199f742d6ee15d73c7e1394 from branch ↵Luke Chen2018-11-211-0/+27
| | | | | | | | | | | | | mongodb-4.2 ref: fe4a3f763b..a065c83d8d for: 4.1.6 WT-4372 For throughput testing, create a standard metric to measure latency smoothness WT-4378 Create new auto functions and cursor for session level statistics WT-4403 Add statistic tracking accumulated dirty cache WT-4405 Fix cursor next and prev for prepared transactions WT-4409 Fix workgen throttling
* Import wiredtiger: e8cf194d813096cc2b30c0dd2d9d9c93ade79756 from branch ↵Luke Chen2018-11-021-0/+6
| | | | | | | | | | | | | | | | | mongodb-4.2 ref: 22b1224ee0..e8cf194d81 for: 4.1.5 WT-4298 Fix workgen to retry on WT_ROLLBACK and clear ops after warmup WT-4343 Unlock when sleeping to allow other log threads to make progress WT-4371 Workgen improvements to create a MongoDB-like workload WT-4376 Fix a bug where table index open can race WT-4385 Prepare-conflict during a cursor scan can return the wrong key WT-4392 A large lint change WT-4395 Seg fault walking corrupted log with log cursor WT-4396 When retrying after prepare-conflict, cursor unable to find a valid update WT-4400 Fix workgen use of PRIxxx macros, needed for old C++ compilers
* Import wiredtiger: abf0651a814a01169c21a3cbe689ad2534134701 from branch ↵Luke Chen2018-04-271-23/+14
| | | | | | | | | | | | | | | | | mongodb-3.8 ref: 43c20b5583..abf0651a81 for: 4.0.0-rc0 WT-3914 Add general documentation for prepared transactions WT-3937 Tune lookaside sweep to react to workload WT-4039 Move row-store missing-value support into the cell unpack code. WT-4044 Add an internal API to return if a generation is active WT-4052 Free transaction resources should on session reset WT-4055 Format transaction prepare and logging configuration is incorrect WT-4057 round_to_oldest should establish txn snapshot after establishing rounded read timestamp WT-4059 Start lookaside sweep at full records WT-4063 Update docs to make clear when log archiving is disabled.
* Import wiredtiger: b33708d7d9b2971cda05e71fcba6067b230b97cc from branch ↵Luke Chen2018-03-141-0/+14
| | | | | | | | | | | | | | mongodb-3.8 ref: 60a06941b8..b33708d7d9 for: 3.7.4 WT-3913 Enhance cursor operations to account for prepare state WT-3950 Add some rollback_to_stable statistics WT-3958 Add query API to get most recent checkpoint's stable timestamp WT-3969 enhance format tester to account for prepare state WT-3972 Allow more than 64K cursors to be open on a data source simultaneously WT-3975 arg format mismatch after rwlock changes
* Import wiredtiger: 9e5044823185feffa71e56a6593cfb92e0741a41 from branch ↵Luke Chen2018-01-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.8 ref: 1a29eac4dc..9e50448231 for: 3.7.1 WT-2705 High throughput cache bound many threaded workloads can experience long latencies WT-3725 Add statistics to locks around timestamp structures WT-3750 Fast-path fs_directory_list of a single file. WT-3768 Lookaside optimization: birthmarks WT-3769 Fix a bug in reverse cursor walks with particular delete patterns and prefix compression enabled WT-3779 Add support for string formats with WT_CURSOR::modify WT-3800 test_wt2834_join_bloom_fix hang WT-3806 Make sure rdtsc values move forward in time WT-3807 clang static analysis updates WT-3810 wt_rdtsc calibration needs to be longer and verify validity WT-3812 debugging page output should handle complex key/value items. WT-3816 Enable prefix compression on the lookaside table WT-3819 clang static analysis improvements WT-3820 Add a WT_SESSION.breakpoint method for Python debugging. WT-3822 Update WiredTiger copyrights to 2018 WT-3824 tsc_nsec_ratio can compute to zero and cause divide by zero bug
* Revert "Revert "Import wiredtiger: fd0c611577e38687455cee311cc279bec16651ea ↵Greg McKeon2017-11-171-1/+1
| | | | | | from branch mongodb-3.8"" This reverts commit 770b4bfe6d7f11d50d79fab08c0764a8e6b866fe.
* Revert "Import wiredtiger: fd0c611577e38687455cee311cc279bec16651ea from ↵Greg McKeon2017-11-171-1/+1
| | | | | | branch mongodb-3.8" This reverts commit d303ef9ba44fb7dfeb41c8b975e761c184d1d4b5.
* Import wiredtiger: fd0c611577e38687455cee311cc279bec16651ea from branch ↵Ramon Fernandez2017-11-171-1/+1
| | | | | | | | | | | mongodb-3.8 ref: ce5ee5097b..fd0c611577 for: 3.7.1 WT-3444 Test format on PPC fails with ENOTSUP when performing an update on an LSM tree WT-3745 Don't stall reads due to write pressure WT-3746 Don't busy wait when syncing the log and waiting for writes to complete
* Import wiredtiger: 6f561957cb5606f504f9fe5a124c80386b210b1a from branch ↵Alex Gorrod2017-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: e2c927fa58..6f561957cb for: 3.5.14 WT-3230 automatic style checking: function local variable declarations WT-3252 Remove the reconciliation WT_BOUNDARY structure. WT-3430 Add statistics tracking transaction ID/timestamp queue usage WT-3437 Evaluate improvements to tuning of number of eviction workers WT-3449 Get the Helium software running again. WT-3457 Enhance checkpoint scrub algorithm WT-3468 Ensure time comparison is done in thread-safe manner WT-3474 Extend Python timestamp rollback test case WT-3510 Add tests to check different sized timestamps and timestamps turned off WT-3511 Add test for timestamp changing partway during a multi-step transaction WT-3512 Add tests to catch improper usage of timestamp API WT-3524 Test format likely to pin cache full when enabling timestamps WT-3533 eviction handle walk can race with handle re-open WT-3537 Split pages when nothing can be written WT-3543 Ensure that failed checkpoints cleanup properly WT-3555 Streamline open cursor for tables WT-3556 remove wtstats support from WiredTiger WT-3557 Make test/format ignore unknown keywords WT-3561 test/recovery hangs with timestamps disabled WT-3571 clsm_open_cursors() set incorrct chunk->count WT-3572 format should limit runs to 6 hours. WT-3574 timestamp abort does not need to increment with atomic op WT-3575 ASCII statistics log printing WT-3576 Update test_timestamp09 to use integer comparison of timestamps WT-3578 Failed to parse oldest timestamp '0': zero not permitted WT-3581 format: unexpected checkpoint resolution WT-3588 test/format references freed memory. WT-3589 replace return checks and testutil_die() pairs, with testutil_check(). WT-3590 Keep data consistent if writes fail during a clean shutdown WT-3595 Make sure the Python example gets the right _wiredtiger.so WT-3601 Coverity 1381365: bt_split.c:__split_ref_move() resource leak WT-3602 compatible=(release=2.9) is insufficient for downgrading to 2.9 WT-3603 format threads always traverse the same RNG space. WT-3605 LSM doesn't support type 'r' WT-3606 reconfigure compatibility error paths leave system in modified state WT-3609 Coverity 1381438: change __wt_panic to handle a NULL session argument WT-3610 Relax commit timestamp ordering check WT-3614 Full-build Friday lint
* Import wiredtiger: 698847557ce7b3a938bbc8334d64a9430e4dc786 from branch ↵Alex Gorrod2017-08-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 2e9744d11a..698847557c for: 3.5.12 WT-3336 Review all jenkins jobs and ensure that they run with stats enabled and stat files are archived WT-3378 Create a workload where dirty cache usage is similar to eviction_checkpoint_target WT-3388 Online rollbackToStableTimestamp WT-3456 Investigate the impact of statistics logging when statistics are disabled WT-3458 Checkpoint should ignore stable_timestamp for logged tables WT-3470 Avoid a metadata cursor open for table open/drop WT-3471 Clear out each session's table cache WT-3472 WT_CURSOR.modify has incorrect API wrapping macros WT-3478 Coverity CID 1378760: Insecure data handling (TAINTED_SCALAR) WT-3479 resolving modify updates before writing them to the lookaside file causes snapshot isolation failures. WT-3480 WiredTiger connection close can hang joining async threads WT-3481 lsm merge span fails to collect chunks to span WT-3486 Discard obsolete updates as part of re-instantiating updates based on the lookaside table. WT-3489 Provide an API to reset the commit_timestamp during rollback WT-3490 WT_CURSOR.modify unaligned size_t access. WT-3494 __cursor_needvalue() calls __cursor_localkey(), not __cursor_localvalue()
* Import wiredtiger: 2e9744d11a65c63ba7445060dc78371250f04051 from branch ↵Alex Gorrod2017-08-011-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 6173a98979..2e9744d11a for: 3.5.11 WT-2309 Add yields and/or sleeps in #DIAGNOSTIC mode WT-3047 Add mode aimed at uncovering race conditions in split code WT-3308 Add statistics tracking around yield loops WT-3316 Add new engineering section to reference guide documentation WT-3338 Optimize cursor modify WT-3380 Special case 8-byte timestamps WT-3387 Add support for a stable timestamp WT-3389 Restructure split code to hold a split generation for the entire operation. WT-3406 Reconciliation is choosing reserved records for writing. WT-3410 Add developer documentation for table rename WT-3412 Add backoff logic to the btree delete and walk yield loops WT-3418 block manager object race WT-3422 WiredTiger upgrading documents out of date WT-3432 workgen needs braces around an "if" body WT-3433 session->alter method should not be supported in read-only mode WT-3439 lint/cleanup WT-3440 Add a log record when starting a checkpoint WT-3442 Coverity 1378213: false positive on diagnostic assignment. WT-3446 Temporarily disable timestamp testing in test/checkpoint WT-3447 test_stat_log02 can assert before table stats are printed WT-3461 Avoid long sleeps when the system clock is adjusted WT-3463 Add recovery of backup to test_timestamp03.py WT-3466 Track the first commit timestamp for each transaction WT-3467 Minor lint/cleanup
* Import wiredtiger: 7aaeaaa054d1ac27a95c79984f7ca69ba739caae from branch ↵Alex Gorrod2017-06-071-25/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 78109ca3fe..7aaeaaa054 for: 3.5.9 SERVER-28820 Recovery failed: WT_NOTFOUND: item not found SERVER-28835 Fix a memory leak in WiredTiger on error when creating thread group WT-2972 Add interface allowing partial updates to existing values WT-3041 Failure of test_perf01 on PPC WT-3063 Reserve records for read-modify-write WT-3076 Add a general-purpose epoch manager WT-3123 Thread group holding lock across thread join WT-3142 Add a workload generator application WT-3158 Fix structure layout on Windows. WT-3160 Improve eviction of internal pages from idle trees WT-3197 aarch64 CRC32C support fails to compile on non-linux ARM platforms WT-3219 Make the clang-analyzer job fail when lint is introduced WT-3222 Review and enhance log statistics WT-3245 Avoid hangs on shutdown when a utility thread encounters an error WT-3247 Test should exit instead of abort to avoid a core dump WT-3248 Performance degradation in workload with large overflow items WT-3253 txn07 test problem WT-3258 Improve visibility into thread wait time due to pages exceeding memory_page_max WT-3261 add a checkpoint epoch to avoid draining the eviction queue WT-3262 Schema operations shouldn't wait for cache WT-3263 Allow archive on restart/recovery if clean shutdown WT-3264 Permanent change to disable logging should eventually remove all logs WT-3265 Verify hits assertion in eviction when transiting handle to exclusive mode WT-3266 Thread group deadlock WT-3267 Upgrade copyright notices from 2016 to 2017. WT-3268 Failure to close cursor can get wiredtiger stuck in a cursor-close loop WT-3269 Miscellaneous cleanup changes WT-3271 Eviction tuning stuck in a loop WT-3275 stress test sanitizer failure WT-3278 log the row-store cursor key instead of page key WT-3281 stress test sanitizer failure WT-3282 Stuck in conn cache pool destroy join WT-3284 tree-walk restart bug WT-3287 review WiredTiger internal panic checks WT-3288 fix error codes for event_handler to be consistent in file operations WT-3292 review/cleanup full-barrier calls in WiredTiger WT-3293 Make internal symbols externally visible WT-3296 LAS table fixes/improvements WT-3297 support the gcc/clang -fvisibility=hidden flag WT-3300 Coverity 1374542: Dereference after null check WT-3302 Failure to create cache pool manager thread results in crash when destroying cache pool WT-3303 Deadlock during first access to lookaside table WT-3307 FI testing: segfault in python test test_bug013 when fault introduced reading turtle file WT-3312 encryption btree configuration test WT-3313 Replace calls to the deprecated LZ4_compress function WT-3314 clarify error handling WT-3327 Checkpoints can hang if time runs backward WT-3331 Test format aborted due to time rollback WT-3333 Make it possible to store 0 bytes into a 'u' format via Python WT-3334 static test suite's BaseDataSet class has 'u' value format bugs WT-3339 The CURSOR_UPDATE_API_CALL macro will dump core on a NULL btree handle WT-3342 Create a new WiredTiger 2.9.2 release WT-3343 WiredTiger database close can attempt unlock of a lock that's not held. WT-3345 Improve rwlock scaling WT-3348 Lint, Windows warnings. WT-3351 Recovery assertion failure: old_lognum < lognum WT-3354 Coverity issues 1375904-1375907 WT-3356 rwlock assertion failure on PPC
* Import wiredtiger: af735d14a603a6ef6256a6685f09ec13755a5024 from branch ↵Alex Gorrod2017-04-011-43/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: cc2f15f595..af735d14a6 for: 3.5.6 SERVER-28168 Cannot start or repair mongodb after unexpected shutdown. SERVER-28194 Missing WiredTiger.turtle file loses data WT-2439 Enhance reconciliation page layout WT-2978 Make WiredTiger python binding pip-compatible WT-2990 Fix a new bug where checkpoint load live_open failed WT-3136 bug fix: WiredTiger doesn't check sprintf calls for error return WT-3155 Remove WT_CONN_SERVER_RUN flag WT-3182 Switch make-check to run the short test suite by default WT-3190 Enhance eviction thread auto-tuning algorithm WT-3191 Fix lint complaints WT-3193 Close a race between verify opening a handle and eviction visiting it WT-3196 Race with LSM and eviction when switching chunks WT-3199 bug: eviction assertion failure WT-3202 wtperf report an error on in_memory=true mode : No such file or directory WT-3203 bulk-load state changes can race WT-3204 eviction changes cost LSM performance WT-3206 bug: core dump on NULL page index WT-3207 Drops with checkpoint_wait=false should not wait for checkpoints WT-3208 test format hung with 9mb cache WT-3211 WT_CURSOR.remove cannot always retain its position. WT-3212 'wt dump' crashes when given table with unknown collator WT-3213 generated test/format CONFIG invalid on next run WT-3216 add support for clang-tidy WT-3218 unexpected checkpoint ordering failures WT-3224 LSM assertion failure pindex->entries == 1 WT-3225 WiredTiger won't build with clang on CentOS 7.3.1611 WT-3227 Python test suite inserts unnecessary whitespace in error output. WT-3228 Remove with overwrite shouldn't return WT_NOTFOUND WT-3234 Update WiredTiger build for clang 4.0. WT-3238 Java: Cursor.compare and Cursor.equals throw Exceptions for valid return values WT-3240 Coverity reports WT-3243 Reorder log slot release so joins don't wait on IO WT-3244 Metadata operations failing in in-memory configurations when the cache is full WT-98 Update the current cursor value without a search
* Import wiredtiger: ca6eee06ffdacc8e191987e64b3791740dad21e1 from branch ↵Michael Cahill2016-11-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | mongodb-3.4 ref: 74430da40c..ca6eee06ff for: 3.4.0 WT-2962 Provide a way to configure builtin extensions WT-2984 Search of metadata for recently created collection gets WT_NOTFOUND WT-3000 Missing log records in recovery when crashing after a log file switch WT-3002 Allow applications to exempt threads from eviction. WT-3004 lint: declare functions that don't return a value as void WT-3011 __wt_curjoin_open() saves the wrong URI in the cursor. WT-3012 Test format hanging on LSM configurations WT-3015 Test format stuck with 2mb cache WT-3016 Tests needed for systems without ftruncate WT-3017 Hazard pointer race with page replace causes error WT-3018 lint WT-3020 LSM primary changes impact parallel-pop-lsm load time WT-3022 LSM operations get stuck in __wt_clsm_await_switch waiting for switch on tree to complete WT-3023 Test format hang on zSeries WT-3024 wtperf medium-lsm-compact test can hang
* Import wiredtiger: 2566118fc68b0124187e806bed52eb7cdbcb1be0 from branch ↵Ramon Fernandez2016-08-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.4 ref: 34182ad..2566118fc6 for: 3.3.12 WT-2631 nullptr is passed for parameters marked with attribute non-null WT-2638 ftruncate may not be supported WT-2645 wt dump: push the complexity of collecting metadata into a dump cursor WT-2678 The metadata should not imply that an empty value is true WT-2695 Integrate s390x accelerated crc32c support WT-2719 add fuzz testing for WiredTiger options and reconfiguration. WT-2734 Improve documentation of eviction behavior WT-2766 Don't count eviction of lookaside file pages for the purpose of checking stuck cache WT-2783 wtperf multi-btree.wtperf dumps core on Mac WT-2787 Include src/include/wiredtiger_ext.h is problematic WT-2795 Update documentation around read-only configuration WT-2807 Switch Jenkins performance tests to tcmalloc WT-2813 small cache usage stuck even with large cache WT-2814 Enhance wtperf to support single-op truncate mode WT-2816 Improve WiredTiger eviction performance WT-2817 Investigate performance regression in develop, add workload to wtperf/runners WT-2818 The page visibility check when queuing pages for eviction is overly restrictive WT-2820 add gcc warn_unused_result attribute WT-2822 panic mutex and other functions that cannot fail WT-2823 support file handles without a truncate method WT-2826 clang38 false positive on uninitialized variable. WT-2827 checkpoint log_size configuration improvements WT-2828 Make long wtperf tests reflect mongoDB usage WT-2829 Switch automated testing to use enable-strict configure option WT-2832 Python test uses hard-coded temporary directory WT-2834 Join cursor: discrepancy with bloom filters WT-2835 WT_CONNECTION.leak-memory can skip memory map and cache cleanup WT-2838 Don't free session handles on close if leak memory is configured WT-2839 lint: Ignoring return value of function WT-2840 clang analysis: garbage values WT-2841 Jenkins Valgrind runner is reporting errors in test wt2719_reconfig WT-2843 Fix a bug in recovery if there is no filesystem truncate support WT-2846 Several bugs related to reconfiguring eviction server at runtime WT-2847 Merge fair locks into read/write locks. WT-2850 clang 4.1 attribute warnings when building WT-2853 Multi threaded reader writer example shows temporary slowdown or lockup WT-2857 POSIX ftruncate calls should be #ifdef'd HAVE_FTRUNCATE WT-2862 Fix lint error in test case for forced eviction with multiple cursors WT-2863 Support UTF-8 paths on Windows
* Import wiredtiger-wiredtiger-2.8.0-589-ga9e9696.tar.gz from wiredtiger ↵Alex Gorrod2016-08-041-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: d8fb874..a9e9696 for: 3.3.11 SERVER-24971 Excessive memory held by sessions when application threads do evictions WT-1162 Add latency to Jenkins wtperf tests and plots WT-2026 Maximum pages size at eviction too large WT-2239 Make sure LSM cursors read up to date dsk_gen, it was racing with compact WT-2353 Failure to create async threads as part of a wiredtiger_open call will cause a hang WT-2380 Make scripts fail if code doesn't match style WT-2486 Update make check so that it runs faster WT-2578 remove write barriers from the TAILQ_INSERT_XXX macros WT-2648 cache-line alignment for new ports WT-2665 Limit allocator fragmentation in WiredTiger WT-2693 Check open_cursor error paths for consistent handling WT-2708 split child-update race with reconciliation/eviction WT-2711 Change statistics log configuration options WT-2728 Don't re-read log file headers during log_flush WT-2729 Focus eviction walks in largest trees WT-2730 cursor next/prev can return the wrong key/value pair when crossing a page boundary WT-2731 Raw compression can create pages that are larger than expected WT-2732 Coverity analysis defect 99665: Redundant test WT-2737 Scrub dirty pages rather than evicting them WT-2738 Remove the ability to change the default checkpoint name WT-2739 pluggable file systems documentation cleanups WT-2743 Thread count statistics always report 0 WT-2744 partial line even with line buffering set WT-2746 track checkpoint I/O separately from eviction I/O WT-2751 column-store statistics incorrectly calculates the number of entries WT-2752 Fixes to zipfian wtperf workload config WT-2755 flexelint configuration treats size_t as 4B type WT-2756 Upgrade the autoconf archive package to check for swig 3.0 WT-2757 Column tables behave differently when column names are provided WT-2759 Releasing the hot-backup lock doesn't require the schema lock. WT-2760 Fix a bug in backup related to directory sync. Change the filesystem API to make durable the default WT-2762 wtstats tool fails if checkpoint runs WT-2763 Unit test test_intpack failing on OSX WT-2764 Optimize checkpoints to reduce throughput disruption WT-2765 wt dump: indices need to be shown in the dump output WT-2767 test suite needs way to run an individual scenario WT-2769 Update documentation to reflect correct limits of memory_page_max WT-2770 Add statistics tracking schema operations WT-2772 Investigate log performance testing weirdness WT-2773 search_near in indexes does not find exact matches WT-2774 minor cleanups/improvements WT-2778 Python test suite: make scenario initialization consistent WT-2779 Raw compression created unexpectedly large pages on disk WT-2781 Enhance bulk cursor option with an option to return immediately on contention WT-2782 Missing a fs_directory_list_free in ex_file_system.c WT-2785 Scrub dirty pages rather than evicting them: single-page reconciliation WT-2791 Enhance OS X Evergreen unit test WT-2793 wtperf config improvements WT-2796 Memory leak in reconciliation uncovered by stress testing WT-2798 Crash vulnerability with nojournal after create during checkpoint WT-2800 Illegal file format in test/format on PPC WT-2801 Crash vulnerability from eviction of metadata during checkpoint WT-2802 Transaction commit causes heap-use-after free WT-2803 Add verbose functionality to WT Evergreen tests WT-2804 Don't read values in a tree without a snapshot WT-2805 Infinite recursion if error streams fail WT-2806 wtperf allocation size off-by-one
* Import wiredtiger-wiredtiger-2.8.0-410-g636a7b2.tar.gz from wiredtiger ↵Ramon Fernandez2016-05-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: eaa7b5f..636a7b2 WT-2103 add incremental backup testing to format WT-2223 Add stress testing for in-memory WT-2343 Assert we don't remove or rename when backup cursor is open WT-2349 Add ability to open databases read-only WT-2359 WiredTiger with Python will hang if a calloc failure occurs during __wt_connection_close WT-2360 Allow disjunctions and combinations of operations in join cursors WT-2446 Estimate WT cache hit ratio WT-2450 salvage releases pages, then explicitly evicts them. WT-2453 Throughput drop in wtperf evict Jenkins tests WT-2479 dump utility discards table config (JSON) WT-2504 Should READONLY always read basecfg file? WT-2505 Review clang analyzer warnings WT-2508 test programs should remove test directories on the "clean" target WT-2518 LSM checkpoint handle acquisition optimization WT-2520 WT_SESSION::verify should not alter tables WT-2526 mixing and matching readonly and read/write handles WT-2535 Extend test/format to test for transactions reading their writes WT-2537 cannot open DB written by WT2.6.1 with WT2.8.0 due to WT_NOTFOUND on recovery WT-2539 Implement file streaming above pluggable filesystems WT-2540 Separate stream and file handle methods WT-2542 fixed-length column store reconciliation overwrites original values WT-2544 Investigate any thread populating eviction queue WT-2546 Eviction server not help evict pages sometimes WT-2547 Add 1-eviction-worker jobs to Jenkins WT-2548 Cap the amount of data handed to raw compression. WT-2549 joins using recno keys return no values WT-2550 java ex_schema example fails WT-2552 Public API for pluggable filesystems WT-2553 Document in-memory configuration and WT_CACHE_FULL error return WT-2556 typo in the Java example code WT-2557 format test program should discard log files after incremental backup WT-2558 WT_PAGE structure reorganization WT-2559 Jenkins Windows segfault in logging code WT-2560 test/format workload stuck trying to update oldest transaction ID WT-2562 reconfig02 test failing sometimes on PPC WT-2565 item 3573 on page at [write-check] is a corrupted cell WT-2566 All lock operations should be barriers WT-2567 segfault in test/format log truncate WT-2568 Java PackTest.java compilation error WT-2569 win_handle_read should always call GetLastError on error WT-2570 Minor lint cleanups. WT-2571 join code cleanup WT-2572 don't select an in-memory format run if incompatible options configured WT-2573 free of stack-allocated WT_REF WT-2574 format doesn't free all allocated configure memory WT-2576 variable-length column-store out-of-order return WT-2577 core dump discarding non-existent addresses WT-2579 in-memory configurations break debugging support WT-2580 potential SWIG naming conflict in Java WT-2581 assert multi->disk_image == NULL WT-2582 cache eviction server error: WT_RESTART WT-2583 incremental backup can prevent future recovery WT-2584 don't use periods in error messages WT-2586 Remove ex_config.c until config cursors are supported WT-2592 Joins using non-recno key types not working WT-2593 disk full with pre-allocated log files WT-2595 Fix compiler warning in packing tests WT-2598 in-memory FS needs fast lookup on file names WT-2599 split out the checksum code from the support directory WT-2600 clean up test program #includes WT-2602 LSM stress hangs with very large uncompressed pages WT-2609 Incorrect "skips API_END call" error. WT-2612 The dist/s_prototypes script is creating a debugging file xxx. WT-2613 WT Compile windows Alt is returning a C4100 error WT-2615 Enabling checkpoints in test/format leads to reduced concurrency WT-2616 In-memory deadlock getting size WT-2621 WiredTiger fails to compile on MSVC 2013 SERVER-23661 $sample takes disproportionately long time on newly created collection SERVER-23904 WiredTiger changes for MongoDB 3.3.6
* Import wiredtiger-wiredtiger-2.7.0-505-g7fea169.tar.gz from wiredtiger ↵Ramon Fernandez2016-01-271-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: 44463c5..7fea169 WT-2355 Fix minor scratch buffer usage in logging. WT-2348 xargs -P isn't portable WT-2347 Java: schema format edge cases WT-2344 OS X compiler warning WT-2342 Enhance wtperf to support background create and drop operations WT-2340 Add logging guarantee assertions, whitespace WT-2339 format post-rebalance verify failure (stress run #11586) WT-2338 Disable using pre-allocated log files when backup cursor is open WT-2335 NULL pointer crash in config_check_search with invalid configuration string WT-2333 Add a flag so drop doesn't block WT-2332 Bug in logging write-no-sync mode WT-2331 Checking of search() result for reference cursors before join() WT-2328 schema drop does direct unlink, it should use a block manager interface. WT-2326 Change WTPERF to use new memory allocation functions instead of the standard WT-2321 WT-2321: race between eviction and worker threads on the eviction queue WT-2320 Only check copyright when cutting releases WT-2316 stress test failure: WT_CURSOR.prev out-of-order returns WT-2314 page-swap error handling is inconsistent WT-2313 sweep-server: conn_dhandle.c, 610: dhandle != conn->cache->evict_file_next WT-2312 re-creating a deleted column-store page can corrupt the in-memory tree WT-2308 custom extractor for ref_cursors in join cursor WT-2305 Fix coverity scan issues on 23/12/2015 WT-2296 New log algorithm needs improving for sync/flush settings WT-2295 WT_SESSION.create does a full-scan of the main table WT-2287 WT_SESSION.rebalance WT-2275 broken DB after application crash WT-2267 Improve wtperf throttling implementation to provide steady load WT-2247 variable-length column-store in-memory page splits WT-2242 WiredTiger treats dead trees the same as other trees in eviction WT-2142 Connection cleanup in Python tests WT-2073 metadata cleanups WT-1801 Add a directory sync after rollback of a WT_SESSION::rename operation WT-1517 schema format edge cases SERVER-22064 Coverity analysis defect 77699: Unchecked return value SERVER-21619 sys-perf: WT crash during core_workloads_WT execution
* Import wiredtiger-wiredtiger-mongodb-3.2-rc4-41-g8326df6.tar.gz from ↵Michael Cahill2015-11-301-10/+14
| | | | | | | | | | | | | | | | wiredtiger branch mongodb-3.2 ref: b65381f..8326df6 4c49948 WT-2244 Trigger in-memory splits sooner. 9f2e4f3 WT-2248 WT_SESSION.close is updating WT_CONNECTION_IMPL.default_session. a6da10e SERVER-21553 Enable fast-path truncate after splits. 39dfd21 WT-2243 Don't keep transaction IDs pinned for reading from checkpoints. 4e1844c WT-2230 multi-split error path. cace179 WT-2228 avoid unnecessary raw-compression calls. 890ee34 SERVER-21619 Don't do internal page splits after a tree is marked DEAD. 6c7338f WT-2241 Use a lock to protect transaction ID allocation. 978c237 WT-2234 Coverity analysis warnings.
* Import wiredtiger-wiredtiger-mongodb-3.2.0-rc3-177-g9d375e3.tar.gz from ↵Ramon Fernandez2015-11-191-0/+64
| | | | | | | | | | | | | | | | | | | | | | | | wiredtiger branch mongodb-3.2 ref: d9ec1ff..9d375e3 16c0a1a WT-1315 Fix some leaks with join cursors. 59857f9 WT-2222 Add statistics for named snapshots. 4368d39 WT-1315 Cursor join implementation a72ddb7 WT-2218 Add truncate stats fb9cebe WT-2224 Track which deleted refs are discarded by a split. e2f1130 WT-2220 Split WT_TIMEDIFF macro into unit specific macros. be412b5 WT-2182 when internal pages grow large enough, split them into their parents ce8c091 WT-2219 Enhancements to in-memory testing 347d922 WT-2220 time_t cleanup. 08c0fcd WT-2217 change WT_CURSOR.insert to clear "set" key/value on return d1b5e7f WT-2135 Fix log_only setting for backup cursor. Fix initialization. 78bd4ac WT-2210 raw compression fails if row-store recovery precedes column-store recovery c1b2634 WT-2182 fixes for splitting up the tree. 0a1ee34 WT-2199 Fix transaction sync inconsistency. ee31bb2 WT-2182 Simplify the split deepen logic. c360d53 WT-2212 Add a "use_environment" config to "wiredtiger_open" 3f132a4 WT-2182 detect internal page split races.
* Import wiredtiger-wiredtiger-2.6.1-1231-g10208e8.tar.gz from wiredtiger ↵Michael Cahill2015-09-251-3/+3
| | | | branch mongodb-3.2
* Import wiredtiger-wiredtiger-2.6.1-1056-g5205bb1.tar.gz from wiredtiger ↵Michael Cahill2015-09-111-1/+1
| | | | branch mongodb-3.2
* Import wiredtiger-wiredtiger-2.6.1-633-g0cccab3.tar.gz from wiredtiger ↵Michael Cahill2015-08-281-2/+2
| | | | branch mongodb-3.2
* Import wiredtiger-wiredtiger-2.6.1-500-g26d1ad2.tar.gz from wiredtiger ↵Michael Cahill2015-08-121-0/+6
| | | | branch mongodb-3.2
* Import wiredtiger-wiredtiger-2.6.1-132-gfbaf1cf.tar.gz from wiredtiger ↵Alexander Gorrod2015-06-261-1/+1
| | | | branch mongodb-3.2
* Import wiredtiger-wiredtiger-2.6.0-182-gbdaaaec.tar.gz from wiredtiger ↵Alexander Gorrod2015-05-291-5/+9
| | | | branch mongodb-3.2
* SERVER-18199 Import wiredtiger-wiredtiger-2.5.3-371-g1f44c05.tar.gz from ↵Ramon Fernandez2015-04-271-9/+9
| | | | wiredtiger branch mongodb-3.2
* Import wiredtiger-wiredtiger-2.5.2-293-g3e37e1f.tar.gz from wiredtiger ↵Ramon Fernandez2015-03-261-10/+2
| | | | branch mongodb-3.0
* Import wiredtiger-wiredtiger-mongodb-3.0-rc9-1-g8eecf94.tar.gz from ↵Dan Pasette2015-02-121-4/+2
| | | | wiredtiger branch mongodb-3.0
* Import wiredtiger-wiredtiger-mongodb-2.8-rc7-105-g92325a3.tar.gz from ↵Dan Pasette2015-02-041-1/+4
| | | | wiredtiger branch mongodb-2.8