Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.2(EOL), 10.3(EOL), 10.4(EOL), 10.5, 10.6, 10.7(EOL)
-
None
Description
A memory leak on the embedded server bootstrap makes ./mtr --embedded almost useless for AddressSanitizer runs:
mkdir bld
|
cd bld
|
cmake -DWITH_EMBEDDED_SERVER=ON -DWITH_ASAN=ON ..
|
cmake --build .
|
(cd mysql-test; ASAN_OPTIONS=log_path=/dev/shm/10.2-embedded:fast_unwind_on_malloc=0 ./mtr --embedded --parallel=auto)
|
Note: When the code is compiled with GCC, many tests will pass despite leaks. When compiled with Clang, tests will fail more easily.
Here is the contents of a sample file /dev/shm/10.2-embedded.*:
10.2 ca89489716890ebab5b207e49f3b157e78e0f8e4 |
|
=================================================================
|
==4111278==ERROR: LeakSanitizer: detected memory leaks
|
|
Direct leak of 16400 byte(s) in 1 object(s) allocated from:
|
#0 0x7f8decc8c7cf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
|
#1 0x55c0ed114981 in my_malloc /mariadb/10.2o/mysys/my_malloc.c:101
|
#2 0x55c0ed1b23c2 in net_allocate_new_packet(st_net*, void*, unsigned int) /mariadb/10.2o/sql/net_serv.cc:177
|
#3 0x55c0ed1b24be in my_net_init /mariadb/10.2o/sql/net_serv.cc:141
|
#4 0x55c0ed13f261 in bootstrap /mariadb/10.2o/libmysqld/../sql/mysqld.cc:6469
|
#5 0x55c0ed13f261 in read_init_file /mariadb/10.2o/libmysqld/../sql/mysqld.cc:6509
|
#6 0x55c0ed13f261 in init_embedded_server /mariadb/10.2o/libmysqld/lib_sql.cc:636
|
#7 0x55c0ed074138 in main /mariadb/10.2o/client/mysqltest.cc:9202
|
#8 0x7f8dec1ead09 in __libc_start_main ../csu/libc-start.c:308
|
#9 0x55c0ed0adba9 in _start (/dev/shm/10.2o/libmysqld/examples/mysqltest_embedded+0x79cba9)
|
|
SUMMARY: AddressSanitizer: 16400 byte(s) leaked in 1 allocation(s).
|
Similar leaks are reported for 10.5 and 10.6 as well.
Furthermore, the ./mtr --embedded run of a 10.6 GCC ASAN build would seemingly hang using 100% CPU; sudo perf top -g would attribute 95% of all samples to __asan::AsanDie(). This would happen after only 2 reported test failures, after 4197 tests, 1167 to go. I suspect that it could be related to the bootstrap leak.
Attachments
Issue Links
- relates to
-
MDEV-12749 multiple tests fail in buildbot with ASAN and embedded
- Stalled