From 7693fa59c4470db729d85af99fb9cc3b264fa8c8 Mon Sep 17 00:00:00 2001 From: Alex Gorrod Date: Fri, 16 Sep 2016 16:22:54 +1000 Subject: Import wiredtiger: 5bc03723a7e77c96b1d5e45a97173654872c727a from branch 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 --- src/third_party/wiredtiger/dist/api_config.py | 2 +- src/third_party/wiredtiger/dist/api_data.py | 4 +-- src/third_party/wiredtiger/dist/log_data.py | 2 +- src/third_party/wiredtiger/dist/s_c_test_create | 7 ++--- src/third_party/wiredtiger/dist/s_define.list | 11 ++----- src/third_party/wiredtiger/dist/s_export | 1 - src/third_party/wiredtiger/dist/s_release_docs | 1 - src/third_party/wiredtiger/dist/s_whitespace | 39 +++++++------------------ src/third_party/wiredtiger/dist/stat_data.py | 4 ++- src/third_party/wiredtiger/dist/style.py | 1 - 10 files changed, 23 insertions(+), 49 deletions(-) (limited to 'src/third_party/wiredtiger/dist') diff --git a/src/third_party/wiredtiger/dist/api_config.py b/src/third_party/wiredtiger/dist/api_config.py index 5ccd8247b76..1069a7037ce 100644 --- a/src/third_party/wiredtiger/dist/api_config.py +++ b/src/third_party/wiredtiger/dist/api_config.py @@ -330,7 +330,7 @@ __wt_conn_config_discard(WT_SESSION_IMPL *session) \t__wt_free(session, conn->config_entries); } -/* +/* * __wt_conn_config_match -- * Return the static configuration entry for a method. */ diff --git a/src/third_party/wiredtiger/dist/api_data.py b/src/third_party/wiredtiger/dist/api_data.py index 44fc935d5d3..9781e58a807 100644 --- a/src/third_party/wiredtiger/dist/api_data.py +++ b/src/third_party/wiredtiger/dist/api_data.py @@ -402,7 +402,7 @@ connection_runtime_config = [ vary depending on the current eviction load''', min=1, max=20), ]), - Config('eviction_checkpoint_target', '15', r''' + Config('eviction_checkpoint_target', '5', r''' perform eviction at the beginning of checkpoints to bring the dirty content in cache to this level, expressed as a percentage of the total cache size. Ignored if set to zero or \c in_memory is \c true''', @@ -818,7 +818,7 @@ methods = { type='int'), ]), -'WT_SESSION.create' : Method(file_config + lsm_config + source_meta + +'WT_SESSION.create' : Method(file_config + lsm_config + source_meta + index_only_config + table_only_config + [ Config('exclusive', 'false', r''' fail if the object exists. When false (the default), if the diff --git a/src/third_party/wiredtiger/dist/log_data.py b/src/third_party/wiredtiger/dist/log_data.py index f46e9e80dda..8fd1a5787fe 100644 --- a/src/third_party/wiredtiger/dist/log_data.py +++ b/src/third_party/wiredtiger/dist/log_data.py @@ -1,7 +1,7 @@ # Data for log.py, describes the format of log records # There are a small number of main log record types. -# +# # Some log record types, such as transaction commit, also include a list of # "log operations" within the same log record. Both log record types and log # operations are described here. diff --git a/src/third_party/wiredtiger/dist/s_c_test_create b/src/third_party/wiredtiger/dist/s_c_test_create index fd0fa809d99..616570dca2e 100755 --- a/src/third_party/wiredtiger/dist/s_c_test_create +++ b/src/third_party/wiredtiger/dist/s_c_test_create @@ -64,9 +64,9 @@ mkdir $CSUITE_DIRECTORY/$TEST_NAME #include "test_util.h" /* - * JIRA ticket reference: - * Test case description: - * Failure mode: + * JIRA ticket reference: + * Test case description: + * Failure mode: */ void (*custom_die)(void) = NULL; @@ -92,7 +92,6 @@ main(int argc, char *argv[]) EOF ) > $CSUITE_DIRECTORY/$TEST_NAME/main.c - # Now update the C test suite makefile to include the new test case NEW_MAKE_SECT="test_${TEST_NAME}_SOURCES = ${TEST_NAME}\/main.c\\nnoinst_PROGRAMS = test_${TEST_NAME}\\n\\n" diff --git a/src/third_party/wiredtiger/dist/s_define.list b/src/third_party/wiredtiger/dist/s_define.list index 2cdda74e7d4..6a1a32004ea 100644 --- a/src/third_party/wiredtiger/dist/s_define.list +++ b/src/third_party/wiredtiger/dist/s_define.list @@ -41,18 +41,11 @@ WT_SESSION_LOCKED_CHECKPOINT WT_SESSION_LOCKED_TURTLE WT_STATS_FIELD_TO_SLOT WT_STATS_SLOT_ID +WT_STAT_CONN_DECRV +WT_STAT_DATA_DECRV WT_STAT_DECR WT_STAT_DECRV WT_STAT_DECRV_ATOMIC -WT_STAT_FAST_CONN_DECRV -WT_STAT_FAST_DATA_DECRV -WT_STAT_FAST_DECR -WT_STAT_FAST_DECRV -WT_STAT_FAST_DECRV_ATOMIC -WT_STAT_FAST_INCR -WT_STAT_FAST_INCRV -WT_STAT_FAST_INCRV_ATOMIC -WT_STAT_FAST_SET WT_STAT_INCRV_ATOMIC WT_STAT_WRITE WT_TIMEDIFF_US diff --git a/src/third_party/wiredtiger/dist/s_export b/src/third_party/wiredtiger/dist/s_export index 8a2c701d27f..94242e0118d 100755 --- a/src/third_party/wiredtiger/dist/s_export +++ b/src/third_party/wiredtiger/dist/s_export @@ -17,7 +17,6 @@ Darwin) ;; esac - check() { (sed -e '/^#/d' s_export.list && diff --git a/src/third_party/wiredtiger/dist/s_release_docs b/src/third_party/wiredtiger/dist/s_release_docs index 965f59662e8..80469628682 100755 --- a/src/third_party/wiredtiger/dist/s_release_docs +++ b/src/third_party/wiredtiger/dist/s_release_docs @@ -76,4 +76,3 @@ echo "Rebuild documentation root" echo "Finished packaging documentation, you should now push the results. Run:" echo "cd $DOC_DIR && git push origin" echo "To backout changes run 'git reset HEAD~1'" - diff --git a/src/third_party/wiredtiger/dist/s_whitespace b/src/third_party/wiredtiger/dist/s_whitespace index 8cf3f7dfe6f..e60d85f8cc6 100755 --- a/src/third_party/wiredtiger/dist/s_whitespace +++ b/src/third_party/wiredtiger/dist/s_whitespace @@ -4,46 +4,29 @@ t=__wt.$$ trap 'rm -f $t; exit 0' 0 1 2 3 13 15 -# Clear lines that only contain whitespace, discard trailing empty lines. -whitespace() -{ - sed -e 's/[ ][ ]*$//' \ - -e '${' \ - -e '/^$/d' \ - -e '}' < $1 > $t - cmp $t $1 > /dev/null 2>&1 || (echo "$1" && cp $t $1) -} - # Clear lines that only contain whitespace, compress multiple empty lines # into a single line, discard trailing empty lines. -whitespace_and_empty_line() +whitespace() { - sed -e 's/[ ][ ]*$//' \ - -e '/^$/N' \ - -e '/\n$/D' < $1 > $t + sed -e 's/[ ][ ]*$//' < $1 | \ + cat -s | \ + sed -e '${' -e '/^$/d' -e '}' > $t cmp $t $1 > /dev/null 2>&1 || (echo "$1" && cp $t $1) } cd .. -# Scripts. -for f in `find dist -name '*.py' -name 's_*'`; do - whitespace_and_empty_line $f -done - -# C-language sources. -for f in `find bench examples ext src test \ +find bench dist examples ext src test \ -name '*.[chi]' -o \ -name '*.dox' -o \ -name '*.in' -o \ + -name '*.py' -o \ + -name 's_*' -o \ -name 'Makefile.am' | sed -e '/Makefile.in/d' \ - -e '/checksum\/power8/d'`; do - whitespace_and_empty_line $f -done - -# Python sources. -for f in `find test \ - -name '*.py' | sed '/3rdparty/d'`; do + -e '/checksum\/power8/d' \ + -e '/3rdparty/d' \ + -e '/docs\/tools/d' \ +| while read f ; do whitespace $f done diff --git a/src/third_party/wiredtiger/dist/stat_data.py b/src/third_party/wiredtiger/dist/stat_data.py index a050849ad76..5087afa44dc 100644 --- a/src/third_party/wiredtiger/dist/stat_data.py +++ b/src/third_party/wiredtiger/dist/stat_data.py @@ -185,6 +185,7 @@ connection_stats = [ CacheStat('cache_eviction_clean', 'unmodified pages evicted'), CacheStat('cache_eviction_deepen', 'page split during eviction deepened the tree'), CacheStat('cache_eviction_dirty', 'modified pages evicted'), + CacheStat('cache_eviction_empty_score', 'eviction empty score', 'no_clear,no_scale'), CacheStat('cache_eviction_fail', 'pages selected for eviction unable to be evicted'), CacheStat('cache_eviction_force', 'pages evicted because they exceeded the in-memory maximum'), CacheStat('cache_eviction_force_delete', 'pages evicted because they had chains of deleted items'), @@ -208,7 +209,8 @@ connection_stats = [ CacheStat('cache_eviction_split_leaf', 'leaf pages split during eviction'), CacheStat('cache_eviction_state', 'eviction state', 'no_clear,no_scale'), CacheStat('cache_eviction_walk', 'pages walked for eviction'), - CacheStat('cache_eviction_walks_active', 'files with active eviction walks', 'no_clear,no_scale,size'), + CacheStat('cache_eviction_walks_abandoned', 'eviction walks abandoned'), + CacheStat('cache_eviction_walks_active', 'files with active eviction walks', 'no_clear,no_scale'), CacheStat('cache_eviction_walks_started', 'files with new eviction walks started'), CacheStat('cache_eviction_worker_evicting', 'eviction worker thread evicting pages'), CacheStat('cache_hazard_checks', 'hazard pointer check calls'), diff --git a/src/third_party/wiredtiger/dist/style.py b/src/third_party/wiredtiger/dist/style.py index ecb24d756e8..af713c03a59 100755 --- a/src/third_party/wiredtiger/dist/style.py +++ b/src/third_party/wiredtiger/dist/style.py @@ -35,7 +35,6 @@ def lines_could_join(): print '\t' + m.group(1).lstrip() + m.group(2) print - missing_comment() # Don't display lines that could be joined by default; in some cases, the code -- cgit v1.2.1