Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
N/A
-
Not for Release Notes
-
Q4/2025 Server Maintenance
Description
A simple ./bin/mariadbd exec on an UB+ASAN build for the current main-MDEV-36290 branch will yield:
MDEV-36290 CS 12.2 b2acd0bdab200f6ed29f88d8b1ac2911e2f5773f (Debug, UBASAN, Clang 21.1.3-20250923) Build 10/10/2025 |
==3676882==ERROR: AddressSanitizer: global-buffer-overflow on address 0x5d377cd91338 at pc 0x5d377a0da33a bp 0x7ffc9e9db070 sp 0x7ffc9e9db068
|
READ of size 8 at 0x5d377cd91338 thread T0
|
#0 0x5d377a0da339 in Sys_var_typelib::Sys_var_typelib(char const*, char const*, int, long, CMD_LINE, enum_mysql_show_type, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*) /test/main-MDEV-36290_dbg_san/sql/sys_vars.inl:329:28
|
#1 0x5d377a0d2e5b in Sys_var_set::Sys_var_set(char const*, char const*, int, long, unsigned long, CMD_LINE, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*) /test/main-MDEV-36290_dbg_san/sql/sys_vars.inl:1525:7
|
#2 0x5d377a0f9d7c in Sys_var_on_access_global<Sys_var_set, (privilege_t)17179869184>::Sys_var_on_access_global(char const*, char const*, int, long, unsigned long, CMD_LINE, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*) /test/main-MDEV-36290_dbg_san/sql/sys_vars.inl:129:15
|
#3 0x5d377a0f9d7c in __cxx_global_var_init.680 /test/main-MDEV-36290_dbg_san/sql/sys_vars.cc:3736:5
|
#4 0x5d377a0f9d7c in _GLOBAL__sub_I_sys_vars.cc /test/main-MDEV-36290_dbg_san/sql/sys_vars.cc
|
#5 0x774d2842a303 in call_init csu/../csu/libc-start.c:145:3
|
#6 0x774d2842a303 in __libc_start_main csu/../csu/libc-start.c:347:5
|
#7 0x5d377875f714 in _start (/test/MDEV-36290_UBASAN_MD101025-mariadb-12.2.0-linux-x86_64-dbg/bin/mariadbd+0x3aeb714) (BuildId: 63161e0b1d2f6babc7d107b82b859a7fdf070717)
|
|
0x5d377cd91338 is located 40 bytes before global variable 'replicate_events_marked_for_skip_names' defined in '/test/main-MDEV-36290_dbg_san/sql/sys_vars.cc:3779' (0x5d377cd91360) of size 32
|
0x5d377cd91338 is located 0 bytes after global variable 'slave_type_conversions_name' defined in '/test/main-MDEV-36290_dbg_san/sql/sys_vars.cc:3732' (0x5d377cd91320) of size 24
|
SUMMARY: AddressSanitizer: global-buffer-overflow /test/main-MDEV-36290_dbg_san/sql/sys_vars.inl:329:28 in Sys_var_typelib::Sys_var_typelib(char const*, char const*, int, long, CMD_LINE, enum_mysql_show_type, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*)
|
Shadow bytes around the buggy address:
|
0x5d377cd91080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
0x5d377cd91100: 00 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 00 f9 f9 f9
|
0x5d377cd91180: 00 00 00 00 00 00 00 f9 f9 f9 f9 f9 00 00 00 00
|
0x5d377cd91200: f9 f9 f9 f9 00 00 00 00 f9 f9 f9 f9 00 f9 f9 f9
|
0x5d377cd91280: 00 00 00 f9 f9 f9 f9 f9 00 00 00 00 00 f9 f9 f9
|
=>0x5d377cd91300: f9 f9 f9 f9 00 00 00[f9]f9 f9 f9 f9 00 00 00 00
|
0x5d377cd91380: f9 f9 f9 f9 00 00 00 f9 f9 f9 f9 f9 00 00 00 00
|
0x5d377cd91400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
0x5d377cd91480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
0x5d377cd91500: f9 f9 f9 f9 f9 f9 f9 f9 00 00 00 00 00 00 00 00
|
0x5d377cd91580: 00 00 00 f9 f9 f9 f9 f9 00 00 00 00 00 f9 f9 f9
|
Shadow byte legend (one shadow byte represents 8 application bytes):
|
Addressable: 00
|
Partially addressable: 01 02 03 04 05 06 07
|
Heap left redzone: fa
|
Freed heap region: fd
|
Stack left redzone: f1
|
Stack mid redzone: f2
|
Stack right redzone: f3
|
Stack after return: f5
|
Stack use after scope: f8
|
Global redzone: f9
|
Global init order: f6
|
Poisoned by user: f7
|
Container overflow: fc
|
Array cookie: ac
|
Intra object redzone: bb
|
ASan internal: fe
|
Left alloca redzone: ca
|
Right alloca redzone: cb
|
==3676882==ABORTING
|
MDEV-36290 CS 12.2 b2acd0bdab200f6ed29f88d8b1ac2911e2f5773f (Optimized, UBASAN, Clang 21.1.3-20250923) Build 10/10/2025 |
==3823342==ERROR: AddressSanitizer: global-buffer-overflow on address 0x587c888ddd38 at pc 0x587c85eda80f bp 0x7ffd67ef57b0 sp 0x7ffd67ef57a8
|
READ of size 8 at 0x587c888ddd38 thread T0
|
#0 0x587c85eda80e in Sys_var_typelib::Sys_var_typelib(char const*, char const*, int, long, CMD_LINE, enum_mysql_show_type, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*) /test/main-MDEV-36290_opt_san/sql/sys_vars.inl:329:28
|
#1 0x587c85ed457b in Sys_var_set::Sys_var_set(char const*, char const*, int, long, unsigned long, CMD_LINE, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*) /test/main-MDEV-36290_opt_san/sql/sys_vars.inl:1525:7
|
#2 0x587c85efa082 in Sys_var_on_access_global<Sys_var_set, (privilege_t)17179869184>::Sys_var_on_access_global(char const*, char const*, int, long, unsigned long, CMD_LINE, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*) /test/main-MDEV-36290_opt_san/sql/sys_vars.inl:129:15
|
#3 0x587c85efa082 in __cxx_global_var_init.671 /test/main-MDEV-36290_opt_san/sql/sys_vars.cc:3736:5
|
#4 0x587c85efa082 in _GLOBAL__sub_I_sys_vars.cc /test/main-MDEV-36290_opt_san/sql/sys_vars.cc
|
#5 0x77cb9382a303 in call_init csu/../csu/libc-start.c:145:3
|
#6 0x77cb9382a303 in __libc_start_main csu/../csu/libc-start.c:347:5
|
#7 0x587c84564b54 in _start (/test/MDEV-36290_UBASAN_MD101025-mariadb-12.2.0-linux-x86_64-opt/bin/mariadbd+0x2f20b54) (BuildId: 9fddd00b320456763f71ff04905b301244bc9ebb)
|
|
0x587c888ddd38 is located 40 bytes before global variable 'replicate_events_marked_for_skip_names' defined in '/test/main-MDEV-36290_opt_san/sql/sys_vars.cc:3779' (0x587c888ddd60) of size 32
|
0x587c888ddd38 is located 0 bytes after global variable 'slave_type_conversions_name' defined in '/test/main-MDEV-36290_opt_san/sql/sys_vars.cc:3732' (0x587c888ddd20) of size 24
|
SUMMARY: AddressSanitizer: global-buffer-overflow /test/main-MDEV-36290_opt_san/sql/sys_vars.inl:329:28 in Sys_var_typelib::Sys_var_typelib(char const*, char const*, int, long, CMD_LINE, enum_mysql_show_type, char const**, unsigned long long, PolyLock*, sys_var::binlog_status_enum, bool (*)(sys_var*, THD*, set_var*), bool (*)(sys_var*, THD*, enum_var_type), char const*)
|
Shadow bytes around the buggy address:
|
0x587c888dda80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
0x587c888ddb00: 00 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 00 f9 f9 f9
|
0x587c888ddb80: 00 00 00 00 00 00 00 f9 f9 f9 f9 f9 00 00 00 00
|
0x587c888ddc00: f9 f9 f9 f9 00 00 00 00 f9 f9 f9 f9 00 f9 f9 f9
|
0x587c888ddc80: 00 00 00 f9 f9 f9 f9 f9 00 00 00 00 00 f9 f9 f9
|
=>0x587c888ddd00: f9 f9 f9 f9 00 00 00[f9]f9 f9 f9 f9 00 00 00 00
|
0x587c888ddd80: f9 f9 f9 f9 00 00 00 f9 f9 f9 f9 f9 00 00 00 00
|
0x587c888dde00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
0x587c888dde80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
0x587c888ddf00: f9 f9 f9 f9 f9 f9 f9 f9 00 00 00 00 00 00 00 00
|
0x587c888ddf80: 00 00 00 f9 f9 f9 f9 f9 00 00 00 00 00 f9 f9 f9
|
Shadow byte legend (one shadow byte represents 8 application bytes):
|
Addressable: 00
|
Partially addressable: 01 02 03 04 05 06 07
|
Heap left redzone: fa
|
Freed heap region: fd
|
Stack left redzone: f1
|
Stack mid redzone: f2
|
Stack right redzone: f3
|
Stack after return: f5
|
Stack use after scope: f8
|
Global redzone: f9
|
Global init order: f6
|
Poisoned by user: f7
|
Container overflow: fc
|
Array cookie: ac
|
Intra object redzone: bb
|
ASan internal: fe
|
Left alloca redzone: ca
|
Right alloca redzone: cb
|
==3823342==ABORTING
|
Attachments
Issue Links
- is caused by
-
MDEV-36290 improved support of replication between tables of different structure
-
- In Testing
-
- relates to
-
MDEV-37737 SIGABRT upon executing BINLOG statement
-
- Closed
-