| Bug #118175 | UBSan error at x/protocol/stream/decompression_input_stream.h | ||
|---|---|---|---|
| Submitted: | 13 May 6:53 | Modified: | 13 Nov 9:14 |
| Reporter: | Laurynas Biveinis (OCA) | Email Updates: | |
| Status: | Won't fix | Impact on me: | |
| Category: | MySQL Server: Document Store: X Plugin | Severity: | S3 (Non-critical) |
| Version: | 8.0.42 | OS: | MacOS (15.4.1) |
| Assigned to: | CPU Architecture: | ARM | |
[13 May 7:20]
Laurynas Biveinis
Same on: x.compression_client_mixed_caps x.compression_level_deflate_adjustment x.compression_level_deflate_client x.compression_level_deflate_server x.compression_level_lz4_adjustment x.compression_level_lz4_client x.compression_level_lz4_server x.compression_level_zstd_adjustment x.compression_level_zstd_client x.compression_level_zstd_server x.compression_limit_message_count x.compression_multiple_changes x.compression_server
[13 May 7:37]
MySQL Verification Team
Hello Laurynas, Thank you for the report and feedback. regards, Umesh
[13 May 7:44]
Laurynas Biveinis
Same on: x.flow_compression_resultset_crud_document x.flow_compression_resultset_crud_table x.flow_compression_resultset_cursors x.flow_compression_resultset_prepexecute_crud_document x.flow_compression_resultset_prepexecute_crud_table x.flow_compression_resultset_prepexecute_sql x.flow_compression_resultset_prepexecute_stored_procedures x.flow_compression_resultset_stmtexecute_sql x.flow_compression_style_group x.flow_compression_style_multiple x.flow_compression_style_single x.message_compressed_empty x.mysqlxtest_mode_compression x.session_reset x.status_variables_compression_client x.status_variables_compression_server
[28 Oct 9:16]
Laurynas Biveinis
No longer reproduces with 8.0.44 / 8.4.7 / 9.5.0. Leaving it for you to close if you want to update release notes etc
[13 Nov 9:14]
Lukasz Kotula
Posted by developer: Thank you for the bug report. Between versions 8.0.42 and 8.0.44, there were no significant changes in the X Plugin that could have addressed this issue. Therefore, I assume that the problem was caused either by a compiler issue, specific compilation flags, or an external ODR conflict that has since been resolved. Closing the bug report.

Description: CMake flags: -DCMAKE_BUILD_TYPE=Debug -DWITH_DEBUG=ON -DMYSQL_MAINTAINER_MODE=ON -DWITH_SYSTEM_LIBS=ON -DWITH_NDBCLUSTER_STORAGE_ENGINE=OFF -DDOWNLOAD_BOOST=ON -DWITH_BOOST=path -DCMAKE_CXX_FLAGS=-g -DCMAKE_CXX_FLAGS_DEBUG=-g -DCMAKE_CXX_FLAGS_RELEASE=-g -O2 -DNDEBUG -DWITH_ASAN=ON -DWITH_ASAN_SCOPE=ON -DWITH_UBSAN=ON -DCMAKE_C_COMPILER=/opt/homebrew/opt/llvm@14/bin/clang -DCMAKE_CXX_COMPILER=/opt/homebrew/opt/llvm@14/bin/clang++ -DCMAKE_AR=/opt/homebrew/opt/llvm@14/bin/llvm-ar ... The following error is seen under many X tests, for example $ ./mtr x.compression_client ... 50%] x.compression_client [ fail ] Test ended at 2025-05-13 09:48:14 CURRENT_TEST: x.compression_client --- /Users/laurynas/vilniusdb/mysql-8.0.42/mysql-test/suite/x/r/compression_client.result 2025-04-16 10:05:31 +++ /Users/laurynas/vilniusdb/mysql-8.0.42/_build-llvm-14-debug-san/mysql-test/var/log/compression_client.reject 2025-05-13 09:48:14 @@ -39,6 +39,12 @@ sql_state: "HY000" } +/Users/laurynas/vilniusdb/mysql-8.0.42/plugin/x/protocol/stream/decompression_input_stream.h:107:22: runtime error: member call on address 0x000109360610 which does not point to an object of type 'google::protobuf::io::ZeroCopyInputStream' +0x000109360610: note: object is of type 'google::protobuf::io::ArrayInputStream' + 00 00 00 00 a0 8d 8b 06 01 00 00 00 d0 5c e1 09 01 00 00 00 4e 00 00 00 4e 00 00 00 00 00 00 00 + ^~~~~~~~~~~~~~~~~~~~~~~ + vptr for 'google::protobuf::io::ArrayInputStream' +SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /Users/laurynas/vilniusdb/mysql-8.0.42/plugin/x/protocol/stream/decompression_input_stream.h:107:22 in First query First query 0 rows affected ... a lot more ... How to repeat: See above