Bug #90839 | make ubsan error reporting fail-fast | ||
---|---|---|---|
Submitted: | 11 May 2018 14:06 | Modified: | 23 May 2018 17:56 |
Reporter: | Tor Didriksen | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Compiling | Severity: | S3 (Non-critical) |
Version: | 8.0.13 | OS: | Any |
Assigned to: | CPU Architecture: | Any |
[11 May 2018 14:06]
Tor Didriksen
[14 May 2018 8:39]
Tor Didriksen
Posted by developer: more failing tests: i_main.gis w2 [ fail ] sql/item_func.cc:1177:24: runtime error: -1.84467e+19 is outside the range of representable values of type 'long long' #0 0x59ea32b in Item_func_numhybrid::val_int() sql/item_func.cc:1177:24 #1 0x5bde483 in Item_func_export_set::val_str(String*) sql/item_strfunc.cc:3417:49 #2 0x6534848 in Item_func_geometry_from_wkb::val_str(String*) sql/item_geofunc.cc:733:26 ./mtr --mem --sanitize main.myisampack mysys/tree.cc:505:18: runtime error: call to function save_counts_in_queue(unsigned char*, unsigned int, HUFF_TREE*) through pointer to incorrect function type 'int (*)(void *, unsigned int, void *)' storage/myisam/myisampack.cc:1558: note: save_counts_in_queue(unsigned char*, unsigned int, HUFF_TREE*) defined here #0 0x7c7544 in tree_walk_left_root_right(TREE*, TREE_ELEMENT*, int (*)(void*, unsigned int, void*), void*) mysys/tree.cc:505:18 #1 0x7c7301 in tree_walk(TREE*, int (*)(void*, unsigned int, void*), void*, TREE_WALK) mysys/tree.cc:491:14 #2 0x4d4881 in make_huff_tree(HUFF_TREE*, HUFF_COUNTS*) storage/myisam/myisampack.cc:1429:5
[14 May 2018 9:06]
Tor Didriksen
Posted by developer: ./mtr --mem --sanitize main.myisampack storage/myisam/myisampack.cc:2656:38: runtime error: shift exponent 64 is too large for 64-bit type 'ulonglong' (aka 'unsigned long long') #0 0x4d8593 in flush_bits() storage/myisam/myisampack.cc:2656:38 #1 0x4bfba1 in write_huff_tree(HUFF_TREE*, unsigned int) storage/myisam/myisampack.cc:2135:5 #2 0x4aa438 in compress(PACK_MRG_INFO*, char*) storage/myisam/myisampack.cc:586:24 storage/myisam/myisampack.cc:1764:34: runtime error: shift exponent 64 is too large for 64-bit type 'ulonglong' (aka 'unsigned long long') #0 0x4d7272 in make_traverse_code_tree(HUFF_TREE*, HUFF_ELEMENT*, unsigned int, unsigned long long) storage/myisam/myisampack.cc:1764:34 #1 0x4b92f8 in make_huff_decode_table(HUFF_TREE*, unsigned int) storage/myisam/myisampack.cc:1751:7 #2 0x4aa340 in compress(PACK_MRG_INFO*, char*) storage/myisam/myisampack.cc:566:7
[23 May 2018 9:56]
Tor Didriksen
Posted by developer: gcc/ubsan: ./mtr --mem --sanitize myisampack storage/myisam/myisampack.cc:2656:38: runtime error: shift exponent 64 is too large for 64-bit type 'ulonglong' (aka 'unsigned long long') #0 0x4d8593 in flush_bits() storage/myisam/myisampack.cc:2656:38 #1 0x4bfba1 in write_huff_tree(HUFF_TREE*, unsigned int) storage/myisam/myisampack.cc:2135:5 #2 0x4aa438 in compress(PACK_MRG_INFO*, char*) storage/myisam/myisampack.cc:586:24 storage/myisam/myisampack.cc:1764:34: runtime error: shift exponent 64 is too large for 64-bit type 'ulonglong' (aka 'unsigned long long') #0 0x4d7272 in make_traverse_code_tree(HUFF_TREE*, HUFF_ELEMENT*, unsigned int, unsigned long long) storage/myisam/myisampack.cc:1764:34 #1 0x4b92f8 in make_huff_decode_table(HUFF_TREE*, unsigned int) storage/myisam/myisampack.cc:1751:7 #2 0x4aa340 in compress(PACK_MRG_INFO*, char*) storage/myisam/myisampack.cc:566:7
[23 May 2018 17:56]
Paul DuBois
Posted by developer: Fixed in 8.0.13. Work was done for test suite. No changelog entry needed.