mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Backport BUG#38468 Memory leak detected when using mysqlbinlog utility
There were two memory leaks in mysqlbinlog command, one was already fixed by previous patches, another one was that defaults_argv was set to the value of argv after parse_args, in which called handle_options after calling load_defaults and changed the value of argv, and caused the memory allocated for defaults arguments not freed. Fixed the problem by setting defaults_argv right after calling load_defaults.
This commit is contained in:
@ -380,3 +380,27 @@ FLUSH LOGS;
|
||||
--echo End of 5.0 tests
|
||||
|
||||
--echo End of 5.1 tests
|
||||
|
||||
#
|
||||
# BUG#38468 Memory leak detected when using mysqlbinlog utility;
|
||||
#
|
||||
disable_query_log;
|
||||
RESET MASTER;
|
||||
CREATE TABLE t1 SELECT 1;
|
||||
FLUSH LOGS;
|
||||
DROP TABLE t1;
|
||||
enable_query_log;
|
||||
|
||||
# Write an empty file for comparison
|
||||
write_file $MYSQLTEST_VARDIR/tmp/mysqlbinlog.warn.empty;
|
||||
EOF
|
||||
|
||||
# Before fix of BUG#38468, this would generate some warnings
|
||||
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 >/dev/null 2> $MYSQLTEST_VARDIR/tmp/mysqlbinlog.warn
|
||||
|
||||
# Make sure the command above does not generate any error or warnings
|
||||
diff_files $MYSQLTEST_VARDIR/tmp/mysqlbinlog.warn $MYSQLTEST_VARDIR/tmp/mysqlbinlog.warn.empty;
|
||||
|
||||
# Cleanup for this part of test
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqlbinlog.warn.empty;
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/mysqlbinlog.warn;
|
||||
|
Reference in New Issue
Block a user