summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src/evict
Commit message (Collapse)AuthorAgeFilesLines
* Import wiredtiger: 357efdd4ce279efc71ff618c59fe1b903ef80bb2 from branch ↵Luke Chen2018-01-172-42/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.8 ref: 9e50448231..357efdd4ce for: 3.7.2 WT-3565 Test and understand mixed timestamp/no-timestamp usage to same data WT-3597 Add a diagnostic check for updates to the same key out of timestamp order WT-3632 Increase how granularly cache usage settings can be configured WT-3695 format failed to report a stuck cache WT-3740 race in page dirty-byte decrement. WT-3767 Avoid lookaside instantiation for faster reads WT-3775 Improve commit timestamp is older than oldest timestamp error message WT-3792 LSM version 1 metadata incompatibility WT-3796 Report a better error message if transaction commit fails WT-3799 Test/format with timestamps enabled pin cache full WT-3809 Fix a bug in lookaside related to birthmarks WT-3811 Python scripts for visualizing operation tracking files WT-3818 __rec_txn_read() code order cleanup WT-3825 Fix calculation of CPU ticks per unit time WT-3826 random-abort test failure WT-3827 test_compact02 failure WT-3828 Link error on OS/X for __wt_process data reference WT-3831 uninitialized buffer value in statlog server path comparison WT-3832 Fixup shell script warning messages WT-3833 test/format cache_minimum value error WT-3841 Fix error message pattern in timestamp09 WT-3842 full-build Friday & lint WT-3844 Checkpoints can hang on limbo pages WT-3845 Compiler warning in examples using GCC 5.4.0
* Import wiredtiger: 9e5044823185feffa71e56a6593cfb92e0741a41 from branch ↵Luke Chen2018-01-054-16/+15
| | | | | | | | | | | | | | | | | | | | | | | | 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
* Import wiredtiger: 1a29eac4dc8cf82de437292da546e3f4039268a4 from branch ↵Luke Chen2017-12-142-52/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.8 ref: 596a3c7c01..1a29eac4dc for: 3.7.1 WT-3079 Make sure eviction visits all trees WT-3133 Detect or track long latency operations WT-3295 Allow LSM to merge into custom data sources WT-3587 Remove HAVE_VERBOSE conditional compilation WT-3654 Fix warning in Windows build on evergreen WT-3716 Restore the WT_VERB_TEMPORARY verbose flag. WT-3720 flags macros cast flags to unsigned values, hiding warnings. WT-3732 Handle adding WT indices while cursors on the table are open WT-3734 Fix undefined behavior in verbose output WT-3738 Review internal session allocation accounting WT-3753 Building on Windows --enable-java WT-3772 Hot backup causes uncontrolled growth of WiredTigerPreplog files WT-3774 Enhance Python lookaside testing to cover cursor modify WT-3776 Cursor remove operation unpins page too early WT-3780 Improve error messages on invalid WT_CURSOR::modify usage WT-3783 Fix transaction isolation to use the correct enum WT-3786 Transactions with timestamps should read their writes WT-3787 test_compact02 failed as compaction halted due to eviction pressure WT-3790 Switch statistics to rdtsc from epoch calls WT-3793 WiredTiger page debug dump functions should unpack integer keys WT-3794 Coverity 1383547 and lint WT-3795 lint cleanups for the op-tracking software, reduce record write size.
* Import wiredtiger: 596a3c7c0169cbda0475bfbd4b177fdbf3258058 from branch ↵Alex Gorrod2017-12-071-46/+77
| | | | | | | | | | | mongodb-3.8 ref: 6dcff54e40..596a3c7c01 for: 3.7.1 WT-3079 Make sure eviction visits all trees WT-3776 Cursor remove operation unpins page too early WT-3786 Transactions with timestamps should read their writes
* Import wiredtiger: 6dcff54e40ce18729d14a9e96b1cbcb4fbc331fe from branch ↵Ramon Fernandez2017-11-292-16/+18
| | | | | | | | | | | | mongodb-3.8 ref: bc0337ed00..6dcff54e40 for: 3.7.1 WT-3763 Tune eviction algorithm when cache overflow is in use WT-3764 Evict pages faster when doing non-cache-disruptive walks WT-3765 Python tests failed due to crash WT-3773 Reconciling a page with modify records and lookaside can choose wrong values
* Revert "Revert "Import wiredtiger: fd0c611577e38687455cee311cc279bec16651ea ↵Greg McKeon2017-11-171-32/+19
| | | | | | from branch mongodb-3.8"" This reverts commit 770b4bfe6d7f11d50d79fab08c0764a8e6b866fe.
* Revert "Import wiredtiger: fd0c611577e38687455cee311cc279bec16651ea from ↵Greg McKeon2017-11-171-19/+32
| | | | | | branch mongodb-3.8" This reverts commit d303ef9ba44fb7dfeb41c8b975e761c184d1d4b5.
* Import wiredtiger: fd0c611577e38687455cee311cc279bec16651ea from branch ↵Ramon Fernandez2017-11-171-32/+19
| | | | | | | | | | | 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: 3a8316e86e9c7cd379679d8530ecc54ad9bdf5c1 from branch ↵Luke Chen2017-11-133-17/+57
| | | | | | | | | | | | | | | mongodb-3.6 ref: 0a2f8f6ad7..3a8316e86e for: 3.6.0-rc4 WT-3637 Fix a heap use after free from evicting of a page that just split. WT-3648 Fix timestamp_abort test calculation of the oldest timestamp WT-3696 Add diagnostic code to detect when sessions are in use by multiple threads WT-3710 Fix a race condition between concurrent page splits WT-3715 Performance tuning for cache overflow mechanism WT-3717 Add a diagnostic verbose lookaside mode WT-3730 For simple tables, do not use table dhandle after it is released
* Import wiredtiger: 0a2f8f6ad756189263d050b29f69bc57b45b9816 from branch ↵Luke Chen2017-11-032-69/+48
| | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: a31e9d415a..0a2f8f6ad7 for: 3.6.0-rc3 WT-3223 Output progress messages during long checkpoint operations WT-3630 Intermittent failure loading libwiredtiger in Evergreen OSX job WT-3652 Skip lookaside reads for checkpoints without a timestamp WT-3666 Fix lost updates with lookaside eviction WT-3675 timestamp abort test failure WT-3677 test/format compaction doesn't handle timeout error return WT-3679 Python test suite: when 'wt' fails, display its output and error files WT-3680 metadata unroll should discard in-process checkpoints WT-3681 Don't truncate the last log file in recovery WT-3683 WT tests failing with cache full of clean pages WT-3699 support minimum cache sizes in format WT-3705 Full build Friday and lint WT-3707 timestamp_abort updating timestamp out of order and parent process not handling failure WT-3708 PRIu64 format incorrectly specified for size_t WT-3711 random_abort test needs signal handler change WT-3713 Make timestamp abort test output more concise WT-3714 Make timestamp_abort and random_abort ranges readable
* Import wiredtiger: a31e9d415a25561bd36b001f3a6e9b0a6a115236 from branch ↵Michael Cahill2017-10-252-79/+91
| | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 4ecdb8f1a3..a31e9d415a for: 3.6.0 WT-3235 Fix typo in test case to cover more LSM use cases WT-3257 Need unit test for log recover setting WT-3585 Add an API to allow read timestamp to round up to oldest WT-3596 Timestamp documentation incomplete WT-3598 Open cursor should not to set transaction error on failure WT-3616 format failed to report a stuck cache WT-3629 Cache accounting underflow checks and logging WT-3640 Change bytes-read statistic WT-3643 Recovery does not run after database opened with recover=error WT-3667 Timestamp tests that take backups should pass log=(archive=false) WT-3669 Check for aborted updates during reconciliation WT-3672 Test format failure with commit timestamp older than oldest WT-3673 Opening the lookaside table can race with the statistics server WT-3674 Snapshot isolation failure after update/restore eviction
* Import wiredtiger: 4ecdb8f1a327067a178258ad025806eeefc1267b from branch ↵Luke Chen2017-10-193-38/+14
| | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 4b5ade6072..4ecdb8f1a3 for: 3.6.0-rc1 WT-3553 Change test utility error handling to abort rather than exit WT-3611 Backup comment doesn't match the code. WT-3619 Make compaction more aware of checkpoints and eviction WT-3635 Coverity 1381606 & Friday builds & lint. WT-3650 test_timestamp07(table-cg.nolog.1000keys) WT-3651 Reduce runtime of Python lookaside test WT-3655 Don't dirty pages to induce lookaside eviction WT-3657 Timestamp and lookaside related automated test failures WT-3660 WiredTiger documentation refers to WT_CURSOR::first. WT-3662 Write lookaside after reconciliation has succeeded WT-3663 lookaside records ignored unless a backing disk block written WT-3665 change format to configure the WiredTiger checkpoint thread
* Import wiredtiger: 4b5ade6072d548fdebe3b376f94e0d672eea5359 from branch ↵r3.6.0-rc0Ramon Fernandez2017-10-122-14/+29
| | | | | | | | | | | | mongodb-3.6 ref: 0cd3d5bbd8..4b5ade6072 for: 3.5.14 WT-3644 Port to FreeBSD release 11.1 WT-3645 Build Failed: Lookaside file occupies 10MB of 11MB cache size WT-3646 Only use lookaside when operations are blocked waiting for cache WT-3649 Disable lookaside eviction during close
* Import wiredtiger: 0cd3d5bbd8a5c8779f1129c6754b4463403e788f from branch ↵Alex Gorrod2017-10-103-55/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 6f561957cb..0cd3d5bbd8 for: 3.5.14 WT-3200 LSM bug: Failed lookup in bloom filter. WT-3435 Lookaside eviction should be able to save unstable updates WT-3453 Enhance lookaside table test coverage in Python suite WT-3559 Detect when a checkpoint races with metadata changes WT-3579 Enhance support for running wtperf workloads with workgen WT-3582 Cache stuck full of internal pages WT-3593 Add an API to enforce consistent use of timestamps (#3667) WT-3599 reconciliation calculates block matching checksums too frequently. WT-3600 timestamp API lets you set timestamps with invalid characters WT-3612 Improve documentation of durability with backup cursors WT-3613 test/format cache full with LSM WT-3618 WT remove solaris from evergreen builds WT-3620 POSIX thread attribute structures must be destroyed WT-3621 Add test for full backups with concurrent table creation WT-3622 Allow upper case hexadecimal timestamps WT-3627 test_txn14.test_txn14.test_log_flush timeout WT-3631 Convert timestamps to integers in Python tests before comparing WT-3636 Account for page image sizes in cache consistently WT-3638 format failure, update list without complete visible record WT-3639 Test/format tried to drop named checkpoints during a hot backup WT-3641 Track maximum timestamp used in each btree WT-3642 Avoid lookaside reads for dead trees
* Import wiredtiger: 6f561957cb5606f504f9fe5a124c80386b210b1a from branch ↵Alex Gorrod2017-10-032-39/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: bacc9ada53a46128642343c162a993d15bc80b57 from branch ↵Alex Gorrod2017-08-311-11/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: b055251678..bacc9ada53 for: 3.5.13 WT-3386 Fix test/checkpoint with timestamps WT-3454 Enhance Python test_timestamp03 to test with logged and non-logged tables WT-3476 Make tables first class data handles WT-3495 Don't allow log truncation if log cursors are open WT-3516 Some potential cursor open performance improvements WT-3522 Coverity 1379736, full build Friday lint WT-3523 Fix incorrect use of configure API in test format WT-3525 test_timestamp07 failing automated testing on develop WT-3527 Use power of two hash table size WT-3528 Don't allow setting a commit timestamp on a non-running transaction WT-3529 Add undocumented debug API WT-3535 Fix ASAN build on Jenkins WT-3536 Enable more strict compiler options for clang WT-3538 Misaligned reads when using the lookaside table and timestamps WT-3539 Enhance documentation around APIs that need exclusive handle access WT-3540 Test failure running recovery test case WT-3541 Python test_reconfig02 timeout on the PPC WT-3542 Python test_stats_log_on_json_with_tables timeout on the PPC WT-3544 WT rollback_to_stable hits "memory stomping bug" WT-3545 Avoid array-bounds warnings with gcc 7 WT-3546 Coverity 1380021 dereference before NULL check, lint WT-3547 Hang in test/fops on LSM table read lock WT-3549 Deadlock in test_schema03 WT-3550 Minor output changes to debug_info
* Import wiredtiger: 2e9744d11a65c63ba7445060dc78371250f04051 from branch ↵Alex Gorrod2017-08-013-11/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: 6173a98979715ed727c432c1a31da64ea8a37048 from branch ↵Alex Gorrod2017-07-202-52/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: ff10db8811..6173a98979 for: 3.5.11 WT-3039 Enhance logging so new log files no longer need to wait for the previous log file to be synced WT-3138 Enhance eviction statistics WT-3140 Enhance json mode statistics to better support per-dhandle statistics WT-3310 Add support to WT_SESSION::alter to change table log setting WT-3329 With a uniform workload and a number of small collections, eviction does a poor job of selecting candidates for eviction. WT-3381 Improve concurrency in the transaction subsystem WT-3394 Build WiredTiger with gcc7 WT-3396 test/csuite/wt3363_checkpoint_op_races, test_utility cleanups WT-3397 Coverity lint WT-3398 in-memory configurations don't support schema_worker operations WT-3401 Lint and minor cleanup WT-3402 Move cached overflow records to the update list. WT-3403 Automated tests timeout running csuite WT-3409 WiredTiger generations can silently self-deadlock. WT-3413 Add more aggressive compile warning flags to Jenkins Windows job WT-3415 setting timestamp in txn_state requires the global write lock WT-3421 Compilation error unreachable code in test/csuite/wt3363_checkpoint_op_races WT-3424 additional gcc 7.1 compile warnings. WT-3425 workgen: add ability to reopen cursors WT-3426 Add new wtperf configuration to automated performance testing WT-3438 Don't tune eviction thread count when the count is fixed Also explicitly disable v2 log records via a configuration setting in MongoDB - this will later be plumbed into the feature compatability version mechanism.
* Import wiredtiger: ff10db881161bbd1bc23e40ac385ff0de18f68ff from branch ↵Alex Gorrod2017-06-292-6/+7
| | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: f59321a372..ff10db8811 for: 3.5.10 WT-1939 Improve error handling in example code WT-3181 Add support for MongoDB timestamps WT-3342 Create a new WiredTiger 2.9.2 release WT-3363 Add test case to detect when drops may be blocked by checkpoints WT-3373 Access violation due to a bug in internal page splitting WT-3385 Coverity 1376471: __wt_txn_parse_timestamp() memory overrun WT-3391 Create a WiredTiger 2.9.3 release. WT-3392 Coverity analysis complaints WT-3393 Missing barrier when a WT_UPDATE structure is appended to list. Also manually update wiredtiger_config.h pre-generated files in MongoDB source tree
* Import wiredtiger: 2b048c9ad2dfde7ad9c2a1329bc082dfc882aec7 from branch ↵Michael Cahill2017-06-241-11/+17
| | | | | | | | | | | | | | mongodb-3.6 ref: 47e8c3d1d2..2b048c9ad2 for: 3.5.10 SERVER-29439 WiredTiger turtle file "MoveFileExW: Access is denied." error. WT-3251 Remove interim buffer used to split pages during reconciliation WT-3367 Switch OSX builders to 10.12 WT-3370 Heap use after free in txn recover code WT-3371 Make Windows/MSVC build warnings fatal. WT-3379 Avoid a performance regression on secondaries
* Import wiredtiger: 47e8c3d1d22018eaaa09f91dfd78addb49e0b49b from branch ↵Alex Gorrod2017-06-141-22/+1
| | | | | | | | | | | | | | | | | mongodb-3.6 ref: 7aaeaaa054..47e8c3d1d2 for: 3.5.9 WT-2596 Document behavior after a crash with a backup cursor open WT-3169 Add ability to log a message when the lookaside file is used WT-3326 workgen: run wtperf "runner" files WT-3332 Add statistic tracking connection wide transaction conflicts WT-3346 workgen: create JSON output for latency sampling WT-3349 Add timing stats to rwlocks WT-3361 Resolve Windows build warnings, build more test programs on Windows. WT-3362 Cursor opens should never block for the duration of a checkpoint WT-3369 WT_CURSOR->uri should always match the URI used to open the cursor
* Import wiredtiger: 7aaeaaa054d1ac27a95c79984f7ca69ba739caae from branch ↵Alex Gorrod2017-06-074-144/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: cb16839cfbdf338af95bed43ca40979ae6e32f54 from branch ↵Alex Gorrod2017-04-111-17/+19
| | | | | | | | | | | | | | mongodb-3.6 ref: af735d14a6..cb16839cfb for: 3.5.6 WT-3249 Unit test test_readonly fails as it is unable to open WiredTiger.lock WT-3250 Incorrect statistics incremented on Windows WT-3254 test_reconfig02 uses incorrect configuration string WT-3262 Schema operations shouldn't wait for cache WT-3265 Verify hits assertion in eviction when transiting handle to exclusive mode WT-3271 Fix a bug where eviction tuning could get stuck in a loop
* Import wiredtiger: af735d14a603a6ef6256a6685f09ec13755a5024 from branch ↵Alex Gorrod2017-04-013-74/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: cc2f15f595b16479affd73791c207da334453bcc from branch ↵Michael Cahill2017-03-171-19/+29
| | | | | | | | | | | | | | mongodb-3.6 ref: e1bcc30da9..cc2f15f595 for: 3.5.5 WT-3149 Change eviction to start new walks from a random place in the tree WT-3187 Hang on shutdown with a busy cache pool WT-3188 Fix error handling in logging where fatal errors could lead to a hang WT-3189 Fix a segfault in the eviction server random positioning WT-3206 bug: core dump on NULL page index WT-3218 unexpected checkpoint ordering failures
* Import wiredtiger: e1bcc30da91eedd0b17cebb725cc7e607ffa2340 from branch ↵Alex Gorrod2017-02-172-312/+307
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 48a3cbc17f..e1bcc30da9 for: 3.5.4 WT-2790 Fix a text case false positive in test_sweep01 WT-2909 Create automatable test verifying checkpoint integrity after errors WT-3088 bug: Don't evict a page with refs visible to readers after a split WT-3097 Race on reconfigure or shutdown can lead to waiting for statistics log server WT-3111 util_create() doesnt free memory assigned to "uri" WT-3113 Add a verbose mode to dump the cache when eviction is stuck WT-3115 Change the dhandle lock to a read/write lock WT-3120 Fix ordering problem in connection_close for filesystem loaded in an extension WT-3135 search_near() for index with custom collator WT-3137 Hang in __log_slot_join/__log_slot_switch_internal WT-3139 Enhance wtperf to support periodic table scans WT-3144 bug fix: random cursor returns not-found when descending to an empty page WT-3148 Improve eviction efficiency with many small trees WT-3149 Change eviction to start new walks from a random place in the tree WT-3150 Reduce impact of checkpoints on eviction server WT-3152 Convert table lock from a spinlock to a read write lock WT-3156 Assertion in log_write fires after write failure WT-3157 checkpoint/transaction integrity issue when writes fail. WT-3159 Incorrect key for index containing multiple variable sized entries WT-3161 checkpoint hang after write failure injection. WT-3164 Ensure all relevant btree fields are reset on checkpoint error WT-3170 Clear the eviction walk point while populating from a tree WT-3173 Add runtime detection for s390x CRC32 hardware support WT-3174 Coverity/lint cleanup WT-3175 New hang in internal page split WT-3179 Test bug: clang sanitizer failure in fail_fs WT-3180 Fault injection tests should only run as "long" tests and should not create core files WT-3184 Problem duplicating index cursor with custom collator WT-3186 Fix error path and panic detection in logging loops
* Import wiredtiger: 48a3cbc17fa902528217287fd075c87efb44aebc from branch ↵David Hows2017-01-231-69/+404
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 8d23249433..48a3cbc17f for: 3.5.2 SERVER-16796 Increase logging activity for journal recovery operations WT-2 What does metadata look like? WT-2402 Misaligned structure accesses lead to undefined behavior WT-2771 Add a statistic to track per-btree dirty cache usage WT-2833 improvement: add projections to wt dump utility WT-2898 Improve performance of eviction-heavy workloads by dynamically controlling the number of eviction threads WT-2994 Create documentation describing page sizes and relationships WT-3080 Python test suite: add timestamp or elapsed time for tests WT-3082 Python test suite: shorten default run to avoid pull request timeouts. WT-3083 Fix a bug in wtperf config dump WT-3086 Add transaction state information to cache stuck diagnostic information WT-3091 Add stats to test_perf0001 WT-3092 Quiet a warning from autogen.sh WT-3093 Padding the WT_RWLOCK structure grew the WT_PAGE structure. WT-3099 lint: static function declarations, non-text characters in documentation WT-3100 test bug: format is weighted to delete, insert, then write operations. WT-3104 Fix wtperf configs for eviction tests WT-3105 Fix a deadlock caused by allocating eviction thread sessions dynamically WT-3106 Add truncate support to command line wt utility WT-3108 Also dump disk page size as part of metadata information WT-3109 wording fix in transaction doc WT-3110 Add more test cases for the WT command line utility WT-3112 Handle list lock statistic not incremented in eviction server WT-3114 Avoid archiving log files immediately after recovery WT-3116 Python style testing in s_all may not execute correctly WT-3118 Protect random-abort test against unexpectedly slow child start WT-3121 In test suite create standard way to load extensions WT-3127 bug: CPU yield calls don't necessarily imply memory barriers WT-3134 Coverity scan reports 1368529 and 1368528
* Import wiredtiger: 8d2324943364286056ae399043f70b8a937de312 from branch ↵Alex Gorrod2016-12-192-4/+12
| | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: 1b6c815a3f..8d23249433 for: 3.5.2 SERVER-26545 Remove fixed-size limitation on WiredTiger hazard pointers WT-2402 Misaligned structure accesses lead to undefined behavior WT-283 Add a way to change persistent object settings WT-3056 For cursors with projections, keys should be allowed WT-3061 syscall test runs with checkpoint_sync=false and doesn't acknowledge pwrite64 WT-3066 lint WT-3068 Copy wtperf artifacts when running Jenkins tests WT-3069 Fix build failures in LevelDB APIs WT-3070 Fix search_near() for index cursor WT-3071 Java: fix build with -Werror=sign-conversion WT-3075 Document and enforce that WiredTiger now depends on Python 2.7 WT-3078 Fix a hang in the reconfiguration test. WT-3084 Fix Coverity resource leak complaint.
* Import wiredtiger: 1b6c815a3fd34f14c20d5cd627155799d1de535c from branch ↵Alex Gorrod2016-12-123-49/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.6 ref: ca6eee06ff..1b6c815a3f for: 3.5.1 WT-2336 Add a test validating schema operations via file system call monitoring WT-2670 Add option to configure read-ahead per table and change default behavior WT-2960 Inserting multi-megabyte values can cause pathological lookaside usage WT-2969 Fix a bug that could cause snapshot corruption during compaction WT-3014 Add GCC/clang support for ELF symbol visibility. WT-3021 Fixes needed for Java log cursor example, Java raw mode cursors, log cursors in raw mode WT-3025 fix error path in log_force_sync WT-3028 Workloads with all dirty pages could trigger diagnostic stuck check WT-3030 Test failure indicating invalid key order during traversal WT-3034 Add support for single-writer named snapshots. WT-3037 Fix some outdated comments in logging WT-3048 WiredTiger maximum size warning uses the wrong format. WT-3051 Remove external __wt_hex symbol. WT-3052 Improve search if an index hint is wrong WT-3053 Review Python and Java calls to internal WiredTiger functions WT-3054 Java PackTest, PackTest03 do not compile WT-3055 Java AsyncTest faults WT-3057 WiredTiger hazard pointers should use the WT_REF, not the WT_PAGE. WT-3064 minor tree cleanups: .gitignore, NEWS misspelling
* Import wiredtiger: ca6eee06ffdacc8e191987e64b3791740dad21e1 from branch ↵Michael Cahill2016-11-162-4/+17
| | | | | | | | | | | | | | | | | | | | | | | 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: 74430da40c96247c0a0d92f011ccfb2b175f1f32 from branch ↵Michael Cahill2016-11-071-24/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.4 ref: ef9a7983ea..74430da40c for: 3.4.0 SERVER-26753 Minor speed regression (13%) and 'choppy' performance in 3.4 vs 3.2 WT-2415 Add option for join cursors to return false positives WT-2945 Occasional hang running reconfigure fuzz test WT-2947 test suite populate functions need refactoring WT-2953 Test format failure - stuck cache with 1/42MB dirty WT-2961 Add a version drop-down to the web version of the docs WT-2964 WTPERF parallel-pop-btree hung in populate phase WT-2968 backup cursor opens every file WT-2971 Add documentation for raw compression to the WT docs WT-2975 Reduce the memory allocated for statistics WT-2991 Coverity issue 1365198 WT-2998 Add error messages to error returns that might be confusing. WT-2999 Memory leak in join WT_CURSOR with custom extractor WT-3001 WT_EXTENSION_API references are named inconsistently. WT-3003 log generation should not auto generate the record and op types WT-3005 Add top-level .gitignore file. WT-3007 Remove duplicated word in comment WT-3008 Run wtperf stress testing against all maintained branches WT-3009 Test format hung/aborted with small cache (sub 10mB)
* Import wiredtiger: ef9a7983ea47cea78400a4472a3d4e46735385c5 from branch ↵Alex Gorrod2016-10-243-21/+149
| | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.4 ref: 6a31c2118c..ef9a7983ea for: 3.4.0-rc2 WT-1592 Add ability to dump detailed cache information via statistics WT-2403 Enhance random cursor implementation for LSM trees WT-2880 Add support for Zstandard compression WT-2904 Fix a bug where the reported checkpoint size could be many times data size WT-2949 Add an option to wtperf to not close connection on shutdown WT-2954 Inserting multi-megabyte values can cause large in-memory pages WT-2955 Add statistics tracking the amount of time threads spend waiting for high level locks WT-2956 utility tests -h option is always overridden by the default setup WT-2959 Ensure WT_SESSION_IMPL is never used before it's initialized WT-2963 Race setting max_entries during eviction WT-2965 test_wt2323_join_visibility can hang on OSX WT-2974 lint WT-2976 Add a statistic tracking how long application threads spend doing I/O WT-2977 Csuite LSM Random test can occasionally fail WT-2985 Race during checkpoint can cause a core dump WT-2987 Fix a bug where opening a cursor on an incomplete table drops core WT-2988 Fix a bug where __wt_epoch potentially returns garbage values.
* Import wiredtiger: 6a31c2118cce88c68281eda2ca9ab1df915a2773 from branch ↵Alex Gorrod2016-10-071-48/+75
| | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.4 ref: fc0e7abe82..6a31c2118c for: 3.4.0 WT-2831 Skip creating a checkpoint if there have been no changes WT-2858 rename wtperf's CONFIG structure WT-2895 Reduce the runtime of make check testing with disable long WT-2907 Bug in Java ConcurrentCloseTest case WT-2917 split wtperf's configuration into per-database and per-run parts WT-2920 New eviction statistics WT-2931 Configure default in-memory dirty cache usage lower WT-2932 Allow applications to selectively ignore cache limit with in-memory configuration WT-2933 Fix a race between named snapshots and checkpoints WT-2937 test_inmem01 aborts due to stuck cache WT-2938 Assembly files should end in .sx, not .S WT-2941 Improve test/format to use faster key-generation functions WT-2942 verbose strings don't need newline WT-2946 dist/s_docs incompatible with OS X Xcode installation WT-2948 simplify error handling by making epoch time return never fail WT-2950 Inserting multi-megabyte values can cause large in-memory pages
* Import wiredtiger: fc0e7abe82595e579573d42448632f7b36a2d154 from branch ↵Ramon Fernandez2016-09-261-63/+85
| | | | | | | | | | | | | | | | | | mongodb-3.4 ref: 5bc03723a7..fc0e7abe82 for: 3.3.15 WT-2864 Reconfiguring the checkpoint server can lead to hangs WT-2874 Change test_compact01 to avoid eviction WT-2918 The dist scripts create C files s_whitespace complains about WT-2919 Don't mask error returns from style checking scripts WT-2921 Reduce the WT_SESSION hazard_size when possible WT-2923 heap-use-after-free on address in compaction WT-2924 Ensure we are doing eviction when threads are waiting for it WT-2925 WT_THREAD_PANIC_FAIL is a WT_THREAD structure flag WT-2926 WT_CONNECTION.reconfigure can attempt unlock of not-locked lock WT-2928 Eviction failing to switch queues can lead to starvation
* Import wiredtiger: 5bc03723a7e77c96b1d5e45a97173654872c727a from branch ↵Alex Gorrod2016-09-162-107/+156
| | | | | | | | | | | | | | | | | | | | mongodb-3.4 ref: deeb0f589a..5bc03723a7 for: 3.3.13 WT-2859 Improve statistics macros to not collect stats when statistics=none is set WT-2894 Create workload that shows negative scaling when overwhelmed WT-2900 Add ARM8 build support to WiredTiger and fix ARM CRC assembler tags WT-2902 Enhance eviction to work better with update heavy YCSB load WT-2905 dead code: MongoDB Coverity #99881 WT-2908 Add dry-run support to python unit-test WT-2910 test_inmem01 can abort due to stuck cache WT-2911 add support for gcc6 WT-2912 make --enable-strict run on the zseries test box WT-2913 stuck cache after latest merge WT-2914 Fix link error on OS/X for checksum_init call WT-2916 whitespace check not working
* Import wiredtiger: 569c70d13a7b3da0fe8eb1bac06a86865cb36a7c from branch ↵Alex Gorrod2016-09-092-212/+215
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mongodb-3.4 ref: 7d3c0f9f50..569c70d13a for: 3.3.13 SERVER-25843 Coverity analysis defect 99856: Redundant test SERVER-25845 Coverity analysis defect 99859: Explicit null dereferenced SERVER-25846 Coverity analysis defect 99861: Dereference after null check WT-2221 Document which statistics are available via a "fast" configuration vs. an "all" configuration WT-2233 Investigate changing when the eviction server switches to aggressive mode. WT-2323 Allocate a transaction id at the beginning of join cursor iteration WT-2555 make format run on Windows WT-2788 Java: freed memory overwrite during handle close can cause JNI crash WT-2816 Improve WiredTiger eviction performance WT-2824 wtperf displays connection and table create configurations twice WT-2842 split wtperf's configuration into per-database and per-run parts WT-2866 Eviction server algorithm tuning WT-2867 Review and fix barrier usage in __lsm_tree_close WT-2870 Rename wtperf checkpoint schema jobs WT-2871 __wt_verbose has the wrong GCC format attributes WT-2872 Recent stuck cache test/stress failures. WT-2873 Refactor CRC32 code WT-2875 Test test_wt2853_perf can run too long under valgrind WT-2876 Extend wtperf to support a log like table WT-2878 Verbose changes affected performance WT-2881 Add -Wpedantic to clang compiler warning flags WT-2882 Add CRC32 hardware scons detection, disable CRC hardware support on ARM for now WT-2883 wiredtiger_open with verbose=handleops recursive loop WT-2885 __wt_checkpoint_signal lint WT-2886 Decide how in-memory configuration and eviction_dirty_target interact WT-2888 Switch functions to return void where possible WT-2892 hot backup can race with block truncate WT-2896 Coverity #1362535: resource leak WT-2897 Checkpoints can become corrupted on failure WT-2901 Add option to disable checkpoint dirty stepdown phase
* Import wiredtiger: 7d3c0f9f50862798270cf38663255202e5bcf3fd from branch ↵Ramon Fernandez2016-08-291-5/+3
| | | | | | | | | | | mongodb-3.4 ref: 2566118fc6..7d3c0f9f50 for: 3.3.12 WT-2865 eviction thread error failure WT-2868 Add sample_interval to checkpoint-stress wtperf config WT-2869 Performance regression on secondaries
* Import wiredtiger: 2566118fc68b0124187e806bed52eb7cdbcb1be0 from branch ↵Ramon Fernandez2016-08-262-376/+361
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-042-313/+511
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-511-gd8fb874.tar.gz from wiredtiger ↵Ramon Fernandez2016-06-243-188/+201
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: fb1663e..d8fb874 SERVER-24580 Performance is poor when WiredTiger cache is full WT-2319 Add statistics around fsync calls WT-2408 Windows error translation layer WT-2514 log path name is an empty string. WT-2541 Add statistics for number of threads currently in read/write WT-2605 C tests focused on different schema types needed for join and other APIs WT-2622 unit test failed in test_cursor_random.test_cursor_random.test_cursor_random_multiple_page_records WT-2652 Logging code improvements WT-2664 Change eviction so any eviction thread can find candidates WT-2667 Enhance WiredTiger Evergreen testing WT-2668 Create join statistics that are useful and are easy to understand WT-2671 dump more information about the file layout in verify debug mode WT-2672 Handle system calls that don't set errno WT-2676 Don't use key size in column store in-memory splits. WT-2677 Fix JSON output so only printable ASCII is produced (seen on Solaris) WT-2682 add option to configure WiredTiger with strict compiler flags WT-2683 WiredTiger no longer needs to return non-zero disk sizes WT-2685 hazard pointer failure from clear walk WT-2686 logging subsystem core dump WT-2687 test suite should verify the exit status of the wt utility WT-2689 Use after free in WT_SESSION::open_cursor WT-2691 Use wrappers for ctype functions to avoid sign extension errors WT-2692 Fix race in file system example WT-2696 Missing log records with large updates WT-2698 Test/recovery hung WT-2702 Under high thread load, WiredTiger exceeds cache size WT-2704 test/format hung on bengal WT-2706 Test failure running random-abort recovery test WT-2707 dist/s_label enhancements, and error jump cleanups WT-2709 connection reconfigure segfault in __wt_conn_cache_pool_destroy WT-2710 WT_FILE_HANDLE_INMEM no longer needs an off field WT-2712 Coverity 1356928 and 1356929: ASSERT_SIDE_EFFECT WT-2713 document WT_PANIC so pluggable filesystems can panic. WT-2714 lint WT-2715 random-abort test may write partial record at the end WT-2720 Pull request tester not running Python suite WT-2722 s_label or s_label_loop false positive WT-2724 Eviction workers created on open exit immediately SERVER-24425 WiredTiger changes for MongoDB 3.3.9
* Import wiredtiger-wiredtiger-2.8.0-410-g636a7b2.tar.gz from wiredtiger ↵Ramon Fernandez2016-05-053-132/+229
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.8.0-134-g5047aab.tar.gz from wiredtiger ↵Alex Gorrod2016-04-051-17/+21
| | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: 9cf8eb2..5047aab SERVER-23504 Coverity analysis defect 98177: Resource leak WT-2330 in-memory configurations should not create on-disk collection files WT-2513 conversion from 'int64_t' to 'uint32_t' WT-2522 Incorrect format code in message WT-2525 in-memory configurations: miscellaneous cleanups WT-2527 OS X compile error, missing POSIX_FADV_WILLNEED #define WT-2528 style error in WiredTiger build WT-2529 The readonly test case is crashing with a stack overflow WT-2531 in-memory tables are allocating unnecessary memory WT-2532 WT_STREAM_APPEND and WT_STREAM_LINE_BUFFER flag overlap WT-2533 Ensure that in-memory tables don't report a zero size SERVER-23517 WiredTiger changes for MongoDB 3.3.5
* Import wiredtiger-wiredtiger-2.7.0-1122-g9cf8eb2.tar.gz from wiredtiger ↵Alex Gorrod2016-03-222-103/+145
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: 444981a..9cf8eb2 SERVER-23040 Coverity analysis defect 98151: Dereference after null check WT-2123 Don't clear allocated memory if not required WT-2318 Configurable thread wake up time WT-2322 Join cursor with isolation read-uncommitted may give different results with Bloom filters WT-2345 Evicting tiny pages creates small pages on disk WT-2375 Add tests for collators WT-2381 Dump utility discards table config WT-2384 lt, le conditions for ordering cursor in join cursor WT-2391 De-prioritize eviction from indexes WT-2404 Add streaming pack/unpack methods to the extension API WT-2414 Avoid extractor calls for ordering cursor in join cursor WT-2418 Rebalance operation failing with EBUSY WT-2426 Deadlock caused by recent changes to checkpoint handle locking WT-2431 Join statistics documentation needed WT-2435 __wt_evict_file_exclusive_on/off cleanups WT-2436 lt, le conditions for ref cursor with "strategy=bloom" in join cursor WT-2443 Getting statistic for all indexes used in join cursor WT-2444 Broken flag test in wtperf, whitespace WT-2447 Join cursor reads main table WT-2448 Add no_scale flag to relevant statistics WT-2449 Configure should check for a 64-bit build WT-2451 Allow eviction of metadata WT-2454 checkpoint_sync=false does *not* prevent flushes/sync to disk. WT-2456 Update Power8 CRC32 Code WT-2457 Dropping an LSM table can fail with EBUSY when no user ops are active WT-2459 Allow Configure scripts to provide the --tag option for libtool when compiling on PPC WT-2460 Checkpoint failing with WT_ROLLBACK WT-2461 Python sweep01 test failing WT-2463 Test that measures idle CPU usage fails under valgrind WT-2464 Valgrind errors. WT-2465 Coverity 1352899: Dereference before null check WT-2466 Coverity 1352893 Buffer not null terminated WT-2467 Coverity 1352894: Logically dead code WT-2468 Coverity 1352896: Explicit null dereferenced WT-2469 Coverity 1352897: Integer overflowed argument WT-2470 Coverity 1352898: Resource leak WT-2471 Review WiredTiger "int" printf formats WT-2473 MSVC doesn't support PRId64 WT-2475 Have reconf script remove cached configure results WT-2476 btree->evict_lock is being accessed after being destroyed WT-2477 Missing define in Windows wiredtiger_config.h WT-2478 Valgrind test failures WT-2481 Recent changes affect LSM performance WT-2482 Coverity 1353015, 1353016, out-of-bounds access WT-2483 readonly02 periodically fails WT-2484 Coverity 1345809: unchecked return value WT-2485 Test/format failure with Floating point exception WT-2487 Release memory in manydbs test WT-2489 Fix compiler warnings from /test/manydbs WT-2490 search_near() returns wrong key for column-store WT-2492 Windows test_config04.test_config04.test_invalid_config crashes WT-2493 Verbose lsm_manager unsupported WT-2494 Review calls to __wt_free, plus minor bug in an error path. WT-2495 Missing memory initialization leads to crash on Windows WT-2496 Testing revealed error unable to read root page WT-2497 Enhance test/format to save a copy of backup WT-2498 LSM tree drop hangs when a user cursor is open WT-2499 LSM shutdown race causes segfault WT-2501 Dropping a just opened LSM tree isn't safe WT-2502 Memory leak in locking handles for checkpoint WT-2503 Build warning in lsm_tree.c WT-2506 Using an uninitialised value
* Import wiredtiger-wiredtiger-2.7.0-858-g444981a.tar.gz from wiredtiger ↵Alex Gorrod2016-03-031-4/+18
| | | | | | | | | | | | | | branch mongodb-3.4 ref: 4531b92..444981a SERVER-22773 Fix CRC32 implementation for ppc64le platform WT-2432 Understand eviction impact on LSM and readonly workload WT-2433 Allow read-only databases to log statistics WT-2434 Fix a race between force-drop and sweep WT-2437 Fix test suite failures on Windows WT-2438 Extend WiredTiger stat declarations to help timeseries tool WT-2440 vpmsum_crc32: Per the PPC64 ABI, v20-v31 are non-volatile register
* Import wiredtiger-wiredtiger-2.7.0-829-g4531b92.tar.gz from wiredtiger ↵Alex Gorrod2016-02-292-11/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: 4f38287..4531b92 SERVER-22784 Coverity analysis defect 77722: Unused value SERVER-22831 Low query rate with heavy cache pressure and an idle collection WT-2173 test/format cache stuck full WT-2264 Checkpoints cannot keep up with inserts WT-2349 Add ability to open databases read-only WT-2376 Modules should compile without including wt_internal.h header file WT-2382 Problem with custom collator for 'u' format with join cursor WT-2394 Long Unit Test for test_compact02 failed. WT-2395 Recovery failure with an LSM tree WT-2399 Add test case that verifies cursor traversal WT-2405 test utility error handling. WT-2407 recovery lint WT-2409 Minor Perf Regression in LSM WT-2410 Casting function pointers to different types WT-2411 LSM drop hang WT-2412 Truncate error tag is incorrect WT-2417 Windows Jenkins task is failing WT-2419 Tests fail to compile on windows due to new util functions WT-2420 LSM failed to read bytes WT-2423 Session reference count could be wrong if adding the handle fails WT-2425 evict-btree read through performance drop WT-2428 Make statistics logging compatible with MongoDB WT-2429 Add a statistic that tracks aggressive mode in eviction
* Import wiredtiger-wiredtiger-2.7.0-675-g4f38287.tar.gz from wiredtiger ↵Michael Cahill2016-02-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: cc96d99..4f38287 SERVER-22676 WiredTiger fails to open databases created by 3.0.0 or 3.0.1 WT-2280 Add CRC32 Optimized code for PPC64LE WT-2295 WT_SESSION.create does a full-scan of the main table WT-2346 Don't hold schema lock during checkpoint I/O WT-2361 Column-store starting record number error WT-2367 WT_CURSOR.next out-of-order returns failure WT-2374 Read error on index file WT-2375 Need tests for collators WT-2382 Problem with custom collator for 'u' format with join cursor WT-2387 Fix cursor random unit test on Windows WT-2390 OS X build is broken WT-2393 Unnecessary error handling labels. WT-2396 Jenkins Spinlock GCC task Hung WT-2397 Cursor traversal from end of the tree skips records. WT-2399 Add test case that verifies cursor traversal WT-2411 LSM drop hang
* Import wiredtiger-wiredtiger-2.7.0-505-g7fea169.tar.gz from wiredtiger ↵Ramon Fernandez2016-01-273-37/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-2.7.0-269-g44463c5.tar.gz from wiredtiger ↵Ramon Fernandez2016-01-071-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | branch mongodb-3.4 ref: 3c2ad56..44463c5 SERVER-21833 Compact does not release space to the system with WiredTiger WT-2060 Simplify aggregation of statistics WT-2099 Seeing memory underflow messages WT-2113 truncate01 sometimes fails WT-2177 Add a per-thread seed to random number generator WT-2198 bulk load and column store appends WT-2231 pinned page cursor searches could check parent keys WT-2235 wt printlog option without unicode WT-2245 WTPERF Truncate has no ability to catch up when it falls behind WT-2246 column-store append searches the leaf page; the maximum record number fails CRUD operations WT-2256 WTPERFs throttle option fires in bursts WT-2257 wtperf doesn't handle overriding workload config WT-2259 __wt_evict_file_exclusive_on() should clear WT_BTREE_NO_EVICTION on error WT-2260 Workloads evict internal pages unexpectedly WT-2262 Random sampling is skewed by tree shape WT-2265 Wiredtiger related change in ppc64le specific code block in gcc.h WT-2266 Add wtperf config to set if perf thresholds are fatal WT-2269 wtperf should dump its config everytime it runs WT-2272 Stress test assertion in the sweep server WT-2275 broken DB after application crash WT-2276 tool to decode checkpoint addr WT-2277 Remove WT check against big-endian systems WT-2279 Define WT_PAUSE(), WT_FULL_BARRIER(), etc when s390x is defined WT-2281 wtperf smoke.sh fails on ppc64le WT-2282 error in wt_txn_update_oldest verbose message test WT-2283 retry in txn_update_oldest results in a hang WT-2285 configure should set BUFFER_ALIGNMENT_DEFAULT to 4kb on linux WT-2289 failure in fast key check WT-2290 WT_SESSION.compact could be more effective. WT-2291 Random cursor walk inefficient in skip list only trees WT-2297 Fix off-by-one error in Huffman config file parsing WT-2299 upper-level WiredTiger code is reaching into the block manager WT-2301 Add reading a range to wtperf WT-2303 Build warning in wtperf WT-2304 wtperf crash dumping config WT-2307 Internal page splits can corrupt cursor iteration WT-2311 Support Sparc
* Import wiredtiger-wiredtiger-mongodb-3.2-rc4-75-gdecd916.tar.gz from ↵Dan Pasette2015-12-162-9/+19
| | | | | | | | | | wiredtiger branch mongodb-3.2 ref: 197eef0..decd916 48e1343 WT-2262 Have random sampling walk the tree so it isn't biased in skewed trees. eb838c7 WT-2260 Avoid adding internal pages to the eviction queue. a695751 WT-2258 WiredTiger preloads pages even when direct-IO is configured.
* Import wiredtiger-wiredtiger-mongodb-3.2-rc4-70-g197eef0.tar.gz from ↵Michael Cahill2015-12-022-6/+7
| | | | | | | | | | wiredtiger branch mongodb-3.2 ref: 7a4f325..197eef0 bff6525 SERVER-21553 Free blocks during reverse splits. c70b097 WT-2253: prioritize WT_READGEN_OLDEST pages for eviction. 4fc3e39 WT-2253 Evict pages left behind by in-memory splits.