Fallout of errors coming from new UBSAN Build variants in WT-7552. Within test/csuite/wt3184_dup_index_collator/main.c.
[2021/06/28 05:05:12.512] ../../../test/csuite/wt3184_dup_index_collator/main.c:66:35: runtime error: load of misaligned address 0x0000014809c1 for type 'int32_t' (aka 'int'), which requires 4 byte alignment [2021/06/28 05:05:12.512] 0x0000014809c1: note: pointer points here [2021/06/28 05:05:12.512] 00 00 00 84 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 00 00 00 00 [2021/06/28 05:05:12.512] ^ [2021/06/28 05:05:12.512] #0 0x423f1b in print_int_item /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/test/csuite/../../../test/csuite/wt3184_dup_index_collator/main.c:66:35 [2021/06/28 05:05:12.512] #1 0x423bb8 in index_compare /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/test/csuite/../../../test/csuite/wt3184_dup_index_collator/main.c:81:5 [2021/06/28 05:05:12.512] #2 0x7f414e423935 in __wt_compare /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/../src/include/btree_cmp_inline.h:111:13 [2021/06/28 05:05:12.512] #3 0x7f414e42510b in __search_insert_append /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/../src/btree/row_srch.c:43:5 [2021/06/28 05:05:12.512] #4 0x7f414e422310 in __wt_row_search /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/../src/btree/row_srch.c:478:9 [2021/06/28 05:05:12.512] #5 0x7f414e29b184 in __cursor_row_search /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/../src/btree/bt_cursor.c:385:5 [2021/06/28 05:05:12.512] #6 0x7f414e29ef96 in __wt_btcur_search_near /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/../src/btree/bt_cursor.c:671:13 [2021/06/28 05:05:12.512] #7 0x7f414e526a0e in __curfile_search_near /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/../src/cursor/cur_file.c:232:5 [2021/06/28 05:05:12.512] #8 0x7f414e56494d in __curindex_search /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/../src/cursor/cur_index.c:234:5 [2021/06/28 05:05:12.512] #9 0x423396 in main /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/test/csuite/../../../test/csuite/wt3184_dup_index_collator/main.c:147:5 [2021/06/28 05:05:12.512] #10 0x7f414cab5bf6 in __libc_start_main /build/glibc-S9d2JN/glibc-2.27/csu/../csu/libc-start.c:310 [2021/06/28 05:05:12.512] #11 0x403629 in _start (/data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/test/csuite/test_wt3184_dup_index_collator+0x403629)
The error is pointing towards the type cast done within:
static void print_int_item(const char *str, const WT_ITEM *item) { if (item->size > 0) { testutil_assert(item->size == sizeof(int32_t)); printf("%s%" PRId32, str, *(int32_t *)item->data); } else printf("%s<empty>", str); }
Verify with UBSAN build again once fixed.