Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-2402

Misaligned structure accesses lead to undefined behavior

    Details

    • # Replies:
      27
    • Last comment by Customer:
      true
    • Sprint:
      Storage 2016-12-12, Storage 2017-01-23

      Description

      Running the MongoDB core JS tests under undefined behavior sanitizer leads to many errors of the following form:

      [MongoDFixture:job0] src/third_party/wiredtiger/src/session/session_api.c:1405:21: runtime error: member access within misaligned address 0x7f8331082010 for type 'WT_SESSION_IMPL' (aka 'struct __wt_session_impl'), which requires 64 byte alignment
      [MongoDFixture:job0] 0x7f8331082010: note: pointer points here
      [MongoDFixture:job0]  00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00
      [MongoDFixture:job0]               ^
      [MongoDFixture:job0]     #0 0x2901369 in __open_session /home/andrew/Documents/10gen/dev/src/mongodb/src/third_party/wiredtiger/src/session/session_api.c:1405:8
      [MongoDFixture:job0]     #1 0x2901369 in __wt_open_session /home/andrew/Documents/10gen/dev/src/mongodb/src/third_party/wiredtiger/src/session/session_api.c:1514
      [MongoDFixture:job0]     #2 0x29015f1 in __wt_open_internal_session /home/andrew/Documents/10gen/dev/src/mongodb/src/third_party/wiredtiger/src/session/session_api.c:1552:2
      [MongoDFixture:job0]     #3 0x284463e in __wt_connection_open /home/andrew/Documents/10gen/dev/src/mongodb/src/third_party/wiredtiger/src/conn/conn_open.c:40:2
      [MongoDFixture:job0]     #4 0x2831943 in wiredtiger_open /home/andrew/Documents/10gen/dev/src/mongodb/src/third_party/wiredtiger/src/conn/conn_api.c:2019:2
      [MongoDFixture:job0]     #5 0x1ac3702 in mongo::WiredTigerKVEngine::WiredTigerKVEngine(std::string const&, std::string const&, std::string const&, unsigned long, bool, bool, bool) /home/andrew/Documents/10gen/dev/src/mongodb/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp:239:15
      [MongoDFixture:job0]     #6 0x1ac22f4 in mongo::(anonymous namespace)::WiredTigerFactory::create(mongo::StorageGlobalParams const&, mongo::StorageEngineLockFile const&) const /home/andrew/Documents/10gen/dev/src/mongodb/src/mongo/db/storage/wiredtiger/wiredtiger_init.cpp:79:34
      [MongoDFixture:job0]     #7 0x196f7b9 in mongo::ServiceContextMongoD::initializeGlobalStorageEngine() /home/andrew/Documents/10gen/dev/src/mongodb/src/mongo/db/service_context_d.cpp:160:22
      [MongoDFixture:job0]     #8 0x1004412 in mongo::_initAndListen(int) /home/andrew/Documents/10gen/dev/src/mongodb/src/mongo/db/db.cpp:481:5
      [MongoDFixture:job0]     #9 0x100380a in mongo::initAndListen(int) /home/andrew/Documents/10gen/dev/src/mongodb/src/mongo/db/db.cpp:668:9
      [MongoDFixture:job0]     #10 0x1007b3f in mongoDbMain(int, char**, char**) /home/andrew/Documents/10gen/dev/src/mongodb/src/mongo/db/db.cpp:893:25
      [MongoDFixture:job0]     #11 0x1007b3f in main /home/andrew/Documents/10gen/dev/src/mongodb/src/mongo/db/db.cpp:713
      [MongoDFixture:job0] Waiting to connect to mongod on port 20000.
      [MongoDFixture:job0]     #12 0x7f8332b16a3f in __libc_start_main /build/buildd/glibc-2.21/csu/libc-start.c:289
      [MongoDFixture:job0]     #13 0xfeb3c8 in _start (/home/andrew/Documents/10gen/dev/src/mongodb/mongod+0xfeb3c8)
      [MongoDFixture:job0]
      

      This is not the only error, there are many others, but they are generally of this form, where a structure member is read out of a structure that is not aligned.

      This is undefined behavior unless the member is copied to/from an aligned temporary with memcpy. On architectures where unaligned access is legal, the memcpy will be elided.

        Issue Links

          Activity

          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'daveh86', u'name': u'David Hows', u'email': u'howsdav@gmail.com'}

          Message: Import wiredtiger: 48a3cbc17fa902528217287fd075c87efb44aebc from branch 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
          Branch: master
          https://github.com/mongodb/mongo/commit/c91b93d2786342505fd9e151c8aa6b68ee03a1fb

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'daveh86', u'name': u'David Hows', u'email': u'howsdav@gmail.com'} Message: Import wiredtiger: 48a3cbc17fa902528217287fd075c87efb44aebc from branch 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 Branch: master https://github.com/mongodb/mongo/commit/c91b93d2786342505fd9e151c8aa6b68ee03a1fb
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'daveh86', u'name': u'David Hows', u'email': u'howsdav@gmail.com'}

          Message: WT-2402 Fix setting the Autoconf options too late for strict checking (#3209)

          Fix setting the Autoconf options too late for strict checking.
          Branch: mongodb-3.4
          https://github.com/wiredtiger/wiredtiger/commit/7742cd7a80a7ce76c6ab1cc5eb62ac2d1f4f0afd

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'daveh86', u'name': u'David Hows', u'email': u'howsdav@gmail.com'} Message: WT-2402 Fix setting the Autoconf options too late for strict checking (#3209) Fix setting the Autoconf options too late for strict checking. Branch: mongodb-3.4 https://github.com/wiredtiger/wiredtiger/commit/7742cd7a80a7ce76c6ab1cc5eb62ac2d1f4f0afd
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'}

          Message: Import wiredtiger: d6659de8d742b9562d08c1ba5138be881f8e24fa from branch mongodb-3.4

          ref: 8d23249433..d6659de8d7
          for: 3.4.3

          SERVER-16796 Increase logging activity for journal recovery operations
          WT-2402 Misaligned structure accesses lead to undefined behavior
          WT-2771 Add a statistic to track per-btree dirty cache usage
          WT-2790 Fix a text case false positive in test_sweep01
          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-2909 Create automatable test verifying checkpoint integrity after errors
          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-3088 bug: Don't evict a page with refs visible to readers after a split
          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-3097 Race on reconfigure or shutdown can lead to waiting for statistics log server
          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-3111 util_create() doesnt free memory assigned to "uri"
          WT-3112 Handle list lock statistic not incremented in eviction server
          WT-3113 Add a verbose mode to dump the cache when eviction is stuck
          WT-3114 Avoid archiving log files immediately after recovery
          WT-3115 Change the dhandle lock to a read/write lock
          WT-3116 Python style testing in s_all may not execute correctly
          WT-3118 Protect random-abort test against unexpectedly slow child start
          WT-3120 Fix ordering problem in connection_close for filesystem loaded in an extension
          WT-3121 In test suite create standard way to load extensions
          WT-3126 Fix a bug in dist/s_all script
          WT-3127 bug: CPU yield calls don't necessarily imply memory barriers
          WT-3128 Fix a bug where wt printlog returns operation-not-supported if it doesn't find any log files
          WT-3130 Proposal to change initialization of custom filesystem
          WT-3134 Coverity scan reports 1368529 and 1368528
          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-3143 Fix Coverity static analysis complaint in test program
          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
          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
          Branch: v3.4
          https://github.com/mongodb/mongo/commit/086c21e2b4c87952273fde78ab8fb18f18e8fdc6

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'} Message: Import wiredtiger: d6659de8d742b9562d08c1ba5138be881f8e24fa from branch mongodb-3.4 ref: 8d23249433..d6659de8d7 for: 3.4.3 SERVER-16796 Increase logging activity for journal recovery operations WT-2402 Misaligned structure accesses lead to undefined behavior WT-2771 Add a statistic to track per-btree dirty cache usage WT-2790 Fix a text case false positive in test_sweep01 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-2909 Create automatable test verifying checkpoint integrity after errors 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-3088 bug: Don't evict a page with refs visible to readers after a split 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-3097 Race on reconfigure or shutdown can lead to waiting for statistics log server 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-3111 util_create() doesnt free memory assigned to "uri" WT-3112 Handle list lock statistic not incremented in eviction server WT-3113 Add a verbose mode to dump the cache when eviction is stuck WT-3114 Avoid archiving log files immediately after recovery WT-3115 Change the dhandle lock to a read/write lock WT-3116 Python style testing in s_all may not execute correctly WT-3118 Protect random-abort test against unexpectedly slow child start WT-3120 Fix ordering problem in connection_close for filesystem loaded in an extension WT-3121 In test suite create standard way to load extensions WT-3126 Fix a bug in dist/s_all script WT-3127 bug: CPU yield calls don't necessarily imply memory barriers WT-3128 Fix a bug where wt printlog returns operation-not-supported if it doesn't find any log files WT-3130 Proposal to change initialization of custom filesystem WT-3134 Coverity scan reports 1368529 and 1368528 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-3143 Fix Coverity static analysis complaint in test program 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 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 Branch: v3.4 https://github.com/mongodb/mongo/commit/086c21e2b4c87952273fde78ab8fb18f18e8fdc6
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'daveh86', u'name': u'David Hows', u'email': u'howsdav@gmail.com'}

          Message: WT-2402 Fix setting the Autoconf options too late for strict checking (#3209)

          Fix setting the Autoconf options too late for strict checking.
          Branch: mongodb-3.2
          https://github.com/wiredtiger/wiredtiger/commit/7742cd7a80a7ce76c6ab1cc5eb62ac2d1f4f0afd

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'daveh86', u'name': u'David Hows', u'email': u'howsdav@gmail.com'} Message: WT-2402 Fix setting the Autoconf options too late for strict checking (#3209) Fix setting the Autoconf options too late for strict checking. Branch: mongodb-3.2 https://github.com/wiredtiger/wiredtiger/commit/7742cd7a80a7ce76c6ab1cc5eb62ac2d1f4f0afd
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'}

          Message: Import wiredtiger: f5c08e2b5f02805b062888d45c9eca19af175f7e from branch mongodb-3.2

          ref: d48181f6f4..f5c08e2b5f
          for: 3.2.13

          SERVER-16796 Increase logging activity for journal recovery operations
          SERVER-28168 Cannot start or repair mongodb after unexpected shutdown.
          SERVER-28194 Missing WiredTiger.turtle file loses data
          WT-2402 Misaligned structure accesses lead to undefined behavior
          WT-2439 Enhance reconciliation page layout
          WT-2771 Add a statistic to track per-btree dirty cache usage
          WT-2790 Fix a text case false positive in test_sweep01
          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-2909 Create automatable test verifying checkpoint integrity after errors
          WT-2978 Make WiredTiger python binding pip-compatible
          WT-2990 checkpoint load live_open assertion failure
          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-3088 bug: Don't evict a page with refs visible to readers after a split
          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-3097 Race on reconfigure or shutdown can lead to waiting for statistics log server
          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-3111 util_create() doesnt free memory assigned to "uri"
          WT-3112 Handle list lock statistic not incremented in eviction server
          WT-3113 Add a verbose mode to dump the cache when eviction is stuck
          WT-3114 Avoid archiving log files immediately after recovery
          WT-3115 Change the dhandle lock to a read/write lock
          WT-3116 Python style testing in s_all may not execute correctly
          WT-3118 Protect random-abort test against unexpectedly slow child start
          WT-3120 Fix ordering problem in connection_close for filesystem loaded in an extension
          WT-3121 In test suite create standard way to load extensions
          WT-3126 bug: dist/s_all script has misplaced quote causing bad error reporting
          WT-3127 bug: CPU yield calls don't necessarily imply memory barriers
          WT-3128 wt printlog returns operation-not-supported if it doesn't find any log files
          WT-3130 Ensure extensions have access to database home directory
          WT-3134 Coverity scan reports 1368529 and 1368528
          WT-3135 search_near() for index with custom collator
          WT-3136 bug fix: WiredTiger doesn't check sprintf calls for error return
          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-3155 Remove WT_CONN_SERVER_RUN flag
          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-3182 Switch make-check to run the short test suite by default
          WT-3184 Problem duplicating index cursor with custom collator
          WT-3186 Fix error path and panic detection in logging loops
          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-3190 Enhance eviction thread auto-tuning algorithm
          WT-3191 lint
          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
          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 Eviction tuning stuck in a loop
          WT-98 Update the current cursor value without a search
          Branch: v3.2
          https://github.com/mongodb/mongo/commit/e5de3702c1dd8257c6289869d2cbd8b014221808

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'} Message: Import wiredtiger: f5c08e2b5f02805b062888d45c9eca19af175f7e from branch mongodb-3.2 ref: d48181f6f4..f5c08e2b5f for: 3.2.13 SERVER-16796 Increase logging activity for journal recovery operations SERVER-28168 Cannot start or repair mongodb after unexpected shutdown. SERVER-28194 Missing WiredTiger.turtle file loses data WT-2402 Misaligned structure accesses lead to undefined behavior WT-2439 Enhance reconciliation page layout WT-2771 Add a statistic to track per-btree dirty cache usage WT-2790 Fix a text case false positive in test_sweep01 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-2909 Create automatable test verifying checkpoint integrity after errors WT-2978 Make WiredTiger python binding pip-compatible WT-2990 checkpoint load live_open assertion failure 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-3088 bug: Don't evict a page with refs visible to readers after a split 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-3097 Race on reconfigure or shutdown can lead to waiting for statistics log server 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-3111 util_create() doesnt free memory assigned to "uri" WT-3112 Handle list lock statistic not incremented in eviction server WT-3113 Add a verbose mode to dump the cache when eviction is stuck WT-3114 Avoid archiving log files immediately after recovery WT-3115 Change the dhandle lock to a read/write lock WT-3116 Python style testing in s_all may not execute correctly WT-3118 Protect random-abort test against unexpectedly slow child start WT-3120 Fix ordering problem in connection_close for filesystem loaded in an extension WT-3121 In test suite create standard way to load extensions WT-3126 bug: dist/s_all script has misplaced quote causing bad error reporting WT-3127 bug: CPU yield calls don't necessarily imply memory barriers WT-3128 wt printlog returns operation-not-supported if it doesn't find any log files WT-3130 Ensure extensions have access to database home directory WT-3134 Coverity scan reports 1368529 and 1368528 WT-3135 search_near() for index with custom collator WT-3136 bug fix: WiredTiger doesn't check sprintf calls for error return 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-3155 Remove WT_CONN_SERVER_RUN flag 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-3182 Switch make-check to run the short test suite by default WT-3184 Problem duplicating index cursor with custom collator WT-3186 Fix error path and panic detection in logging loops 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-3190 Enhance eviction thread auto-tuning algorithm WT-3191 lint 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 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 Eviction tuning stuck in a loop WT-98 Update the current cursor value without a search Branch: v3.2 https://github.com/mongodb/mongo/commit/e5de3702c1dd8257c6289869d2cbd8b014221808

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Days since reply:
                1 week, 6 days ago
                Date of 1st Reply:

                  Agile