main.mysqlbinlog_debug fails with a LeakSanitizer error
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
MySQL Server |
Unknown
|
Unknown
|
||||
Percona Server moved to https://jira.percona.com/projects/PS | Status tracked in 5.7 | |||||
5.5 |
Invalid
|
Undecided
|
Unassigned | |||
5.6 |
Fix Released
|
Low
|
Laurynas Biveinis | |||
5.7 |
Fix Released
|
Low
|
Laurynas Biveinis |
Bug Description
Copy of http://
[19 Jul 15:13] Laurynas Biveinis
Description:
On a system with AddressSanitizer support that includes LeakSanitizer, -DWITH_ASAN=ON -DCMAKE_
$ ./mtr --debug-server mysqlbinlog_debug
...
main.mysqlbinlo
Test ended at 2016-07-19 18:09:31
CURRENT_TEST: main.mysqlbinlo
mysqltest: At line 14: command "$MYSQL_BINLOG -#d,simulate_
The result from queries just before the failure was:
#
# Bug#18742916 : MYSQLBINLOG --RAW DOES NOT CHECK FOR ERRORS
#
safe_process[939]: Child process: 940, exit: 1
If "2>&1" is removed, then the output contains
URRENT_TEST: main.mysqlbinlo
ERROR: Could not write into log file '/home/
=======
==1117==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 336 byte(s) in 1 object(s) allocated from:
#0 0x7fd08b154602 in malloc (/usr/lib/
#1 0x4e9004 in my_raw_malloc /home/laurynas/
#2 0x4e9004 in my_malloc /home/laurynas/
#3 0x4168c2 in Log_event::operator new(unsigned long) /home/laurynas/
#4 0x42cdb7 in Log_event:
#5 0x449231 in dump_remote_
#6 0x449231 in dump_single_log /home/laurynas/
#7 0x449231 in dump_multiple_logs /home/laurynas/
#8 0x44a6de in main /home/laurynas/
#9 0x7fd08a05182f in __libc_start_main (/lib/x86_
Indirect leak of 78 byte(s) in 1 object(s) allocated from:
#0 0x7fd08b155532 in operator new(unsigned long) (/usr/lib/
#1 0x5be727 in __gnu_cxx:
#2 0x5be727 in __gnu_cxx:
#3 0x5be727 in std::_Vector_
#4 0x5be727 in void std::vector<
#5 0x5bc215 in void std::vector<
#6 0x5bc215 in void std::vector<
#7 0x5bc215 in binary_
#8 0x41ae85 in Format_
#9 0x42cdd2 in Log_event:
#10 0x449231 in dump_remote_
#11 0x449231 in dump_single_log /home/laurynas/
#12 0x449231 in dump_multiple_logs /home/laurynas/
#13 0x44a6de in main /home/laurynas/
#14 0x7fd08a05182f in __libc_start_main (/lib/x86_
SUMMARY: AddressSanitizer: 414 byte(s) leaked in 2 allocation(s).
mysqltest: At line 14: command "$MYSQL_BINLOG -#d,simulate_
The result from queries just before the failure was:
#
# Bug#18742916 : MYSQLBINLOG --RAW DOES NOT CHECK FOR ERRORS
#
safe_process[1109]: Child process: 1110, exit: 1
How to repeat:
CMake options -DWITH_ASAN=ON -DCMAKE_
$ ./mtr --debug-server mysqlbinlog_debug
tags: | added: asan ci upstream |
https:/ /github. com/percona/ percona- server/ pull/685, https:/ /github. com/percona/ percona- server/ pull/686