Commit 8d813f08 authored by Sergei Golubchik's avatar Sergei Golubchik

MDEV-34539 Invalid "use" and "Schema" in slow query log file with multi-line schema

quote a database name in the slow log
parent f12634f5
......@@ -181,6 +181,30 @@ SET @@global.slow_query_log= @old_slow_query_log;
SET SESSION slow_query_log=default;
drop table tab_MDEV_30820, tab2;
drop function get_zero;
#
# End of 10.4 tests
#
# MDEV-34539 Invalid "use" and "Schema" in slow query log file with multi-line schema
#
set global log_output='file';
set @@log_slow_filter= 'not_using_index';
set slow_query_log=1;
set timestamp=1234567890;
create database `a
b`;
use `a
b`;
select count(*) from mysql.global_priv where length(priv)>2;
count(*)
5
drop database `a
b`;
use test;
set global log_output= @old_log_output;
set slow_query_log=default;
set log_slow_filter=default;
set timestamp=default;
use `a
b`;
SET timestamp=1234567890;
select count(*) from mysql.global_priv where length(priv)>2
# End of 10.5 tests
......@@ -186,6 +186,33 @@ drop function get_zero;
--enable_ps2_protocol
--enable_view_protocol
--echo #
--echo # End of 10.4 tests
--echo #
--echo # MDEV-34539 Invalid "use" and "Schema" in slow query log file with multi-line schema
--echo #
set global log_output='file';
set @@log_slow_filter= 'not_using_index';
set slow_query_log=1;
set timestamp=1234567890;
create database `a
b`;
use `a
b`;
--disable_ps_protocol
select count(*) from mysql.global_priv where length(priv)>2;
--enable_ps_protocol
drop database `a
b`;
use test;
set global log_output= @old_log_output;
set slow_query_log=default;
set log_slow_filter=default;
set timestamp=default;
let SEARCH_FILE=`select @@slow_query_log_file`;
let SEARCH_PATTERN=use.*2;
let SEARCH_OUTPUT=matches;
source include/search_pattern_in_file.inc;
--echo # End of 10.5 tests
......@@ -3324,7 +3324,7 @@ bool MYSQL_QUERY_LOG::write(THD *thd, time_t current_time,
}
if (thd->db.str && strcmp(thd->db.str, db))
{ // Database changed
if (my_b_printf(&log_file,"use %s;\n",thd->db.str))
if (my_b_printf(&log_file,"use %`s;\n",thd->db.str))
goto err;
strmov(db,thd->db.str);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment