Fallout of errors coming from new UBSAN Build variants in WT-7552. Within test/csuite/wt2999_join_extractor/main.c.
[2021/06/28 05:05:12.512] ================================ [2021/06/28 05:05:12.512] ../../../test/csuite/wt2999_join_extractor/main.c:122:13: runtime error: signed integer overflow: 2147450890 + 65536 cannot be represented in type 'int' [2021/06/28 05:05:12.512] #0 0x42329a in main /data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/test/csuite/../../../test/csuite/wt2999_join_extractor/main.c:122:13 [2021/06/28 05:05:12.512] #1 0x7fedf0651bf6 in __libc_start_main /build/glibc-S9d2JN/glibc-2.27/csu/../csu/libc-start.c:310 [2021/06/28 05:05:12.512] #2 0x4035d9 in _start (/data/mci/ca8a7d950f1bf956b286e945a18a82e9/wiredtiger/build_posix/test/csuite/test_wt2999_join_extractor+0x4035d9) [2021/06/28 05:05:12.512] FAIL test_wt2999_join_extractor (exit status: 1)
The error is pointing towards this line.
key = 10;
val[0] = 20;
val[1] = 30;
for (i = 0; i < 100000; ++i) {
key += i;
val[0] += i;
val[1] += i;
cursor1->set_key(cursor1, &k);
cursor1->set_value(cursor1, &v);
testutil_check(cursor1->insert(cursor1));
}
Seems that the variable key is getting an integer overflow. Verify with UBSAN build again once fixed.