diff options
Diffstat (limited to 'mysql-test/suite/percona')
94 files changed, 4742 insertions, 780 deletions
diff --git a/mysql-test/suite/percona/disabled.def b/mysql-test/suite/percona/disabled.def index 2155df55a7f..eb9df7f4118 100644 --- a/mysql-test/suite/percona/disabled.def +++ b/mysql-test/suite/percona/disabled.def @@ -15,9 +15,29 @@ percona_sql_no_fcache: Feature not merged into MariaDB percona_status_wait_query_cache_mutex: Feature not merged into MariaDB percona_slave_innodb_stats: Feature not merged into MariaDB percona_query_response_time-replication: Feature not merged into MariaDB -percona_server_variables: Feature not merged into MariaDB - +percona_server_variables_debug: Feature not merged into MariaDB +percona_server_variables_release: Feature not merged into MariaDB percona_slow_query_log-log_slow_verbosity: InnoDB filtering information not fully merged into MariaDB - percona_innodb_buffer_pool_shm: Requires big shmmax not default on many systems +percona_log_warnings_suppress: Feature not merged into MariaDB +percona_slow_extended-log_slow_sp_statements-cl: Feature not merged into MariaDB +percona_slow_extended-log_slow_verbosity-cl: Feature not merged into MariaDB +slow_query_log_use_global_control: Feature not merged into MariaDB +percona_slow_extended-use_global_control: Feature not merged into MariaDB +percona_slow_query_log-log_slow_verbosity: Feature not merged into MariaDB +percona_slow_extended-log_slow_verbosity: Feature not merged into MariaDB +percona_slow_extended-microseconds_in_slow_extended: Feature not merged into MariaDB +percona_slow_extended-use_global_long_query_time: Feature not merged into MariaDB +percona_slow_extended-slow_query_log_timestamp_always-cl: Feature not merged into MariaDB +percona_slow_extended-slow_query_log_microseconds_timestamp-cl: Feature not merged into MariaDB +percona_bug643149: Feature not merged into MariaDB +percona_processlist_row_stats: Feature not merged into MariaDB +percona_server_variables_debug: Feature not merged into MariaDB +percona_slow_extended-slave_statements: Feature not merged into MariaDB +percona_show_slave_status_nolock: Feature not merged into MariaDB +percona_slow_extended-slave_innodb_stats: Feature not merged into MariaDB +percona_slow_extended-slave_statements-and-use_global_long_query_time: Feature not merged into MariaDB userstat_bug602047: Feature not merged into MariaDB +percona_innodb_expand_fast_index_creation: Feature not merged into MariaDB +percona_innodb_kill_idle_trx: Feature not merged into MariaDB +percona_innodb_kill_idle_trx_locks: Feature not merged into MariaDB diff --git a/mysql-test/suite/percona/have_response_time_distribution.inc b/mysql-test/suite/percona/have_response_time_distribution.inc index aa4bf40ce67..45650133b31 100644 --- a/mysql-test/suite/percona/have_response_time_distribution.inc +++ b/mysql-test/suite/percona/have_response_time_distribution.inc @@ -1,4 +1,4 @@ --- require r/have_response_time_distribution.require -disable_query_log; -show variables like 'have_response_time_distribution'; -enable_query_log; +if (`SELECT @@have_response_time_distribution != 'YES'`) +{ + --skip No response time distribution +} diff --git a/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.result b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.result index 3c6c67f770c..352c9ca2a99 100644 --- a/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.result +++ b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.result @@ -12,4 +12,5 @@ connect(localhost,root,,test,port,socket); ERROR HY000: Too many connections SET GLOBAL max_connections = @old_max_connections; SET GLOBAL log_warnings = @old_log_warnings; -1 +[log_grep.inc] file: percona.log_connection_error.err pattern: Too many connections +[log_grep.inc] lines: 1 diff --git a/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.test b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.test index 57cd652bd24..048102d0499 100644 --- a/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.test +++ b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.test @@ -45,8 +45,10 @@ if(!`select LENGTH('$log_error_')`) # does not know the location of its .err log, use default location let $log_error_ = $MYSQLTEST_VARDIR/log/mysqld.1.err; } -# Assign env variable LOG_ERROR -let LOG_ERROR=$log_error_; -let cmd=cat $log_error | grep "Too many connections" | wc -l; -exec $cmd; +--let log_error=$log_error_ +--let log_file=percona.log_connection_error.err +--let log_file_full_path=$log_error +--let grep_pattern= Too many connections +--source log_grep.inc + diff --git a/mysql-test/suite/percona/percona_innodb_buffer_pool_shm-master.opt b/mysql-test/suite/percona/percona_innodb_buffer_pool_shm-master.opt index 521fd9f459e..5974ef6e2be 100644 --- a/mysql-test/suite/percona/percona_innodb_buffer_pool_shm-master.opt +++ b/mysql-test/suite/percona/percona_innodb_buffer_pool_shm-master.opt @@ -1,2 +1 @@ --innodb_buffer_pool_shm_key=123456 ---innodb=FORCE diff --git a/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.result b/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.result index 04ca5f4b877..e5373606099 100644 --- a/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.result +++ b/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.result @@ -2,7 +2,3 @@ show variables like 'innodb_buffer_pool_shm%'; Variable_name Value innodb_buffer_pool_shm_checksum ON innodb_buffer_pool_shm_key 123456 -show variables like 'innodb_buffer_pool_shm%'; -Variable_name Value -innodb_buffer_pool_shm_checksum ON -innodb_buffer_pool_shm_key 123456 diff --git a/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.test b/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.test index a7f9c8eb72f..7b26c217893 100644 --- a/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.test +++ b/mysql-test/suite/percona/percona_innodb_buffer_pool_shm.test @@ -1,19 +1,2 @@ ---source include/big_test.inc ---source include/have_innodb.inc +--source include/have_xtradb.inc show variables like 'innodb_buffer_pool_shm%'; - -#clean shutdown (restart_mysqld.inc is not clean if over 10 sec...) ---write_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect -wait -EOF -shutdown_server 120; ---append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect -restart -EOF ---enable_reconnect ---source include/wait_until_connected_again.inc ---disable_reconnect - -show variables like 'innodb_buffer_pool_shm%'; ---sleep 1 ---system ipcrm -M 123456 diff --git a/mysql-test/suite/percona/percona_innodb_deadlock_count.result b/mysql-test/suite/percona/percona_innodb_deadlock_count.result index 4ad6fd433fe..00902e87feb 100644 --- a/mysql-test/suite/percona/percona_innodb_deadlock_count.result +++ b/mysql-test/suite/percona/percona_innodb_deadlock_count.result @@ -11,18 +11,18 @@ insert into t values(1,2); # Switch to connection con1 BEGIN; SELECT b FROM t WHERE a=1 FOR UPDATE; -b -2 # Switch to connection con2 BEGIN; SELECT b FROM t WHERE a=2 FOR UPDATE; -b -1 # Switch to connection con1 SELECT b FROM t WHERE a=2 FOR UPDATE; # Switch to connection con2 SELECT b FROM t WHERE a=1 FOR UPDATE; +# Switch to connection con1 +ROLLBACK; +# Switch to connection con2 +ROLLBACK; # Switch to connection con3 -1 +Deadlocks: 1 # Drop test table drop table t; diff --git a/mysql-test/suite/percona/percona_innodb_deadlock_count.test b/mysql-test/suite/percona/percona_innodb_deadlock_count.test index b0882a18dc1..f953b9d7822 100644 --- a/mysql-test/suite/percona/percona_innodb_deadlock_count.test +++ b/mysql-test/suite/percona/percona_innodb_deadlock_count.test @@ -1,4 +1,4 @@ ---source include/have_innodb.inc +--source include/have_xtradb.inc --echo # Establish connection con1 (user=root) connect (con1,localhost,root,,); --echo # Establish connection con2 (user=root) @@ -9,7 +9,6 @@ connect (con3,localhost,root,,); --disable_warnings drop table if exists t; --enable_warnings -disable_abort_on_error; --echo # Create test table create table t(a INT PRIMARY KEY, b INT) engine=InnoDB; @@ -20,12 +19,12 @@ insert into t values(1,2); #--echo # Save current deadlock count let $current = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'Innodb_deadlocks'`; +--disable_result_log + --echo # Switch to connection con1 connection con1; BEGIN; SELECT b FROM t WHERE a=1 FOR UPDATE; -#show engine innodb status; - --echo # Switch to connection con2 connection con2; BEGIN; SELECT b FROM t WHERE a=2 FOR UPDATE; @@ -38,12 +37,25 @@ SEND SELECT b FROM t WHERE a=2 FOR UPDATE; connection con2; SEND SELECT b FROM t WHERE a=1 FOR UPDATE; -SLEEP 0.2; +--echo # Switch to connection con1 +connection con1; +--error 0, ER_LOCK_DEADLOCK +reap; +ROLLBACK; + +--echo # Switch to connection con2 +connection con2; +--error 0, ER_LOCK_DEADLOCK +reap; +ROLLBACK; + --echo # Switch to connection con3 connection con3; let $result = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'Innodb_deadlocks'`; +--enable_result_log + let $diff = `SELECT $result - $current`; -echo $diff; +echo Deadlocks: $diff; --echo # Drop test table drop table t; diff --git a/mysql-test/suite/percona/percona_innodb_doublewrite_file.test b/mysql-test/suite/percona/percona_innodb_doublewrite_file.test index 8068d561190..d9e94db8463 100644 --- a/mysql-test/suite/percona/percona_innodb_doublewrite_file.test +++ b/mysql-test/suite/percona/percona_innodb_doublewrite_file.test @@ -1,2 +1,2 @@ ---source include/have_innodb.inc +--source include/have_xtradb.inc show variables like 'innodb_doublewrite%'; diff --git a/mysql-test/suite/percona/percona_innodb_expand_fast_index_creation.result b/mysql-test/suite/percona/percona_innodb_expand_fast_index_creation.result new file mode 100644 index 00000000000..b8cec3d4398 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_expand_fast_index_creation.result @@ -0,0 +1,64 @@ +CREATE TABLE t1( +id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, +a CHAR(1) NOT NULL, +b CHAR(36) NOT NULL) ENGINE=InnoDB; +INSERT INTO t1(a,b) VALUES ('a','b'); +INSERT INTO t1(a,b) SELECT a,b FROM t1; +INSERT INTO t1(a,b) SELECT a,b FROM t1; +INSERT INTO t1(a,b) SELECT a,b FROM t1; +INSERT INTO t1(a,b) SELECT a,b FROM t1; +ALTER TABLE t1 ADD KEY (a); +affected rows: 0 +info: Records: 0 Duplicates: 0 Warnings: 0 +EXPLAIN SELECT COUNT(*) FROM t1, t1 t2 WHERE t1.a = t2.a AND t1.b = t2.b; +id 1 +select_type SIMPLE +table t1 +type ALL +possible_keys a +key NULL +key_len NULL +ref NULL +rows 16 +Extra +id 1 +select_type SIMPLE +table t2 +type ref +possible_keys a +key a +key_len 1 +ref test.t1.a +rows 1 +Extra Using where +ALTER TABLE t1 DROP KEY a; +SET expand_fast_index_creation = 1; +SELECT @@expand_fast_index_creation; +@@expand_fast_index_creation +1 +ALTER TABLE t1 ADD KEY (a); +affected rows: 0 +info: Records: 0 Duplicates: 0 Warnings: 0 +EXPLAIN SELECT COUNT(*) FROM t1, t1 t2 WHERE t1.a = t2.a AND t1.b = t2.b; +id 1 +select_type SIMPLE +table t1 +type ALL +possible_keys a +key NULL +key_len NULL +ref NULL +rows 16 +Extra +id 1 +select_type SIMPLE +table t2 +type ALL +possible_keys a +key NULL +key_len NULL +ref NULL +rows 16 +Extra Using where; Using join buffer +SET expand_fast_index_creation = 0; +DROP TABLE t1; diff --git a/mysql-test/suite/percona/percona_innodb_expand_fast_index_creation.test b/mysql-test/suite/percona/percona_innodb_expand_fast_index_creation.test new file mode 100644 index 00000000000..06e6c719c17 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_expand_fast_index_creation.test @@ -0,0 +1,45 @@ +--source include/have_innodb.inc + +######################################################################## +# Bug #857590: Fast index creation does not update index statistics +######################################################################## + +CREATE TABLE t1( + id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, + a CHAR(1) NOT NULL, + b CHAR(36) NOT NULL) ENGINE=InnoDB; + +INSERT INTO t1(a,b) VALUES ('a','b'); +INSERT INTO t1(a,b) SELECT a,b FROM t1; +INSERT INTO t1(a,b) SELECT a,b FROM t1; +INSERT INTO t1(a,b) SELECT a,b FROM t1; +INSERT INTO t1(a,b) SELECT a,b FROM t1; + +# Check that fast index creation is used +--enable_info +ALTER TABLE t1 ADD KEY (a); +--disable_info + +# The default (wrong) plan due to bogus statistics +--vertical_results +EXPLAIN SELECT COUNT(*) FROM t1, t1 t2 WHERE t1.a = t2.a AND t1.b = t2.b; +--horizontal_results + +ALTER TABLE t1 DROP KEY a; + +SET expand_fast_index_creation = 1; +SELECT @@expand_fast_index_creation; + +# Check that stats are updated with the option enabled + +--enable_info +ALTER TABLE t1 ADD KEY (a); +--disable_info + +--vertical_results +EXPLAIN SELECT COUNT(*) FROM t1, t1 t2 WHERE t1.a = t2.a AND t1.b = t2.b; +--horizontal_results + +SET expand_fast_index_creation = 0; + +DROP TABLE t1; diff --git a/mysql-test/suite/percona/percona_innodb_fake_changes.result b/mysql-test/suite/percona/percona_innodb_fake_changes.result new file mode 100644 index 00000000000..7f00c687c54 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_fake_changes.result @@ -0,0 +1,55 @@ +DROP TABLE IF EXISTS t1; +# Checking variables +SHOW VARIABLES LIKE 'innodb_fake_changes'; +Variable_name Value +innodb_fake_changes OFF +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='innodb_fake_changes'; +VARIABLE_VALUE +OFF +SET innodb_fake_changes=1; +SHOW VARIABLES LIKE 'innodb_fake_changes'; +Variable_name Value +innodb_fake_changes ON +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='innodb_fake_changes'; +VARIABLE_VALUE +ON +SET innodb_fake_changes=default; +SHOW VARIABLES LIKE 'innodb_fake_changes'; +Variable_name Value +innodb_fake_changes OFF +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='innodb_fake_changes'; +VARIABLE_VALUE +OFF +# Explicit COMMIT should fail when innodb_fake_changes is enabled +# DML should be fine +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +INSERT INTO t1 VALUES (1); +SET autocommit=0; +SET innodb_fake_changes=1; +BEGIN; +INSERT INTO t1 VALUES (2); +UPDATE t1 SET a=0; +DELETE FROM t1 LIMIT 1; +SELECT * FROM t1; +a +1 +COMMIT; +ERROR HY000: Got error 131 during COMMIT +SET innodb_fake_changes=default; +DROP TABLE t1; +# DDL must result in error +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +SET autocommit=0; +SET innodb_fake_changes=1; +BEGIN; +CREATE TABLE t2 (a INT) ENGINE=InnoDB; +ERROR HY000: Can't create table 'test.t2' (errno: 131) +DROP TABLE t1; +ERROR 42S02: Unknown table 't1' +TRUNCATE TABLE t1; +ERROR HY000: Got error 131 during COMMIT +ALTER TABLE t1 ENGINE=MyISAM; +ERROR HY000: Got error 131 during COMMIT +ROLLBACK; +SET innodb_fake_changes=default; +DROP TABLE t1; diff --git a/mysql-test/suite/percona/percona_innodb_fake_changes.test b/mysql-test/suite/percona/percona_innodb_fake_changes.test new file mode 100644 index 00000000000..fd231ae096f --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_fake_changes.test @@ -0,0 +1,49 @@ +--source include/have_innodb.inc + +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings + + +--echo # Checking variables +SHOW VARIABLES LIKE 'innodb_fake_changes'; +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='innodb_fake_changes'; +SET innodb_fake_changes=1; +SHOW VARIABLES LIKE 'innodb_fake_changes'; +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='innodb_fake_changes'; +SET innodb_fake_changes=default; +SHOW VARIABLES LIKE 'innodb_fake_changes'; +SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='innodb_fake_changes'; + +--echo # Explicit COMMIT should fail when innodb_fake_changes is enabled +--echo # DML should be fine +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +INSERT INTO t1 VALUES (1); +SET autocommit=0; +SET innodb_fake_changes=1; +BEGIN; +INSERT INTO t1 VALUES (2); +UPDATE t1 SET a=0; +DELETE FROM t1 LIMIT 1; +SELECT * FROM t1; +--error 1180 +COMMIT; +SET innodb_fake_changes=default; +DROP TABLE t1; + +--echo # DDL must result in error +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +SET autocommit=0; +SET innodb_fake_changes=1; +BEGIN; +--error 1005 +CREATE TABLE t2 (a INT) ENGINE=InnoDB; +--error 1051 +DROP TABLE t1; +--error 1180 +TRUNCATE TABLE t1; +--error 1180 +ALTER TABLE t1 ENGINE=MyISAM; +ROLLBACK; +SET innodb_fake_changes=default; +DROP TABLE t1; diff --git a/mysql-test/suite/percona/percona_innodb_fake_changes_locks.result b/mysql-test/suite/percona/percona_innodb_fake_changes_locks.result new file mode 100644 index 00000000000..c2b533ca9f3 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_fake_changes_locks.result @@ -0,0 +1,19 @@ +DROP TABLE IF EXISTS t1; +# Verifying that X_LOCK not acquired +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +INSERT INTO t1 VALUES (1); +SET autocommit=0; +SET innodb_fake_changes=1; +BEGIN; +SELECT * FROM t1 FOR UPDATE; +a +1 +SET innodb_lock_wait_timeout=3; +UPDATE t1 SET a=2; +ERROR HY000: Lock wait timeout exceeded; try restarting transaction +SELECT * FROM t1 LOCK IN SHARE MODE; +a +1 +ROLLBACK; +SET innodb_fake_changes=default; +DROP TABLE t1; diff --git a/mysql-test/suite/percona/percona_innodb_fake_changes_locks.test b/mysql-test/suite/percona/percona_innodb_fake_changes_locks.test new file mode 100644 index 00000000000..e298405cd43 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_fake_changes_locks.test @@ -0,0 +1,24 @@ +--source include/have_innodb.inc + +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings + +--echo # Verifying that X_LOCK not acquired +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +INSERT INTO t1 VALUES (1); +--connect (conn1,localhost,root,,) +--connection conn1 +SET autocommit=0; +SET innodb_fake_changes=1; +BEGIN; +SELECT * FROM t1 FOR UPDATE; +--connection default +SET innodb_lock_wait_timeout=3; +--error 1205 +UPDATE t1 SET a=2; +SELECT * FROM t1 LOCK IN SHARE MODE; +--connection conn1 +ROLLBACK; +SET innodb_fake_changes=default; +DROP TABLE t1; diff --git a/mysql-test/suite/percona/percona_innodb_kill_idle_trx.result b/mysql-test/suite/percona/percona_innodb_kill_idle_trx.result new file mode 100644 index 00000000000..a05b5a912fe --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_kill_idle_trx.result @@ -0,0 +1,41 @@ +DROP TABLE IF EXISTS t1; +SET autocommit=0; +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +SHOW GLOBAL VARIABLES LIKE 'innodb_kill_idle_transaction'; +Variable_name Value +innodb_kill_idle_transaction 0 +SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_kill_idle_transaction'; +VARIABLE_NAME VARIABLE_VALUE +INNODB_KILL_IDLE_TRANSACTION 0 +SET GLOBAL innodb_kill_idle_transaction=1; +SHOW GLOBAL VARIABLES LIKE 'innodb_kill_idle_transaction'; +Variable_name Value +innodb_kill_idle_transaction 1 +SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_kill_idle_transaction'; +VARIABLE_NAME VARIABLE_VALUE +INNODB_KILL_IDLE_TRANSACTION 1 +BEGIN; +INSERT INTO t1 VALUES (1),(2),(3); +COMMIT; +SELECT * FROM t1; +a +1 +2 +3 +BEGIN; +INSERT INTO t1 VALUES (4),(5),(6); +SELECT * FROM t1; +ERROR HY000: MySQL server has gone away +SELECT * FROM t1; +a +1 +2 +3 +DROP TABLE t1; +SET GLOBAL innodb_kill_idle_transaction=0; +SHOW GLOBAL VARIABLES LIKE 'innodb_kill_idle_transaction'; +Variable_name Value +innodb_kill_idle_transaction 0 +SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_kill_idle_transaction'; +VARIABLE_NAME VARIABLE_VALUE +INNODB_KILL_IDLE_TRANSACTION 0 diff --git a/mysql-test/suite/percona/percona_innodb_kill_idle_trx.test b/mysql-test/suite/percona/percona_innodb_kill_idle_trx.test new file mode 100644 index 00000000000..e1b7b778a31 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_kill_idle_trx.test @@ -0,0 +1,28 @@ +--source include/have_innodb.inc +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings + +SET autocommit=0; +CREATE TABLE t1 (a INT) ENGINE=InnoDB; + +--source percona_innodb_kill_idle_trx_show.inc +SET GLOBAL innodb_kill_idle_transaction=1; +--source percona_innodb_kill_idle_trx_show.inc + +BEGIN; +INSERT INTO t1 VALUES (1),(2),(3); +COMMIT; +SELECT * FROM t1; + +BEGIN; +INSERT INTO t1 VALUES (4),(5),(6); +sleep 3; + +--enable_reconnect +--error 2006 --error CR_SERVER_GONE_ERROR +SELECT * FROM t1; +SELECT * FROM t1; +DROP TABLE t1; +SET GLOBAL innodb_kill_idle_transaction=0; +--source percona_innodb_kill_idle_trx_show.inc diff --git a/mysql-test/suite/percona/percona_innodb_kill_idle_trx_locks.result b/mysql-test/suite/percona/percona_innodb_kill_idle_trx_locks.result new file mode 100644 index 00000000000..6bdd2617805 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_kill_idle_trx_locks.result @@ -0,0 +1,45 @@ +DROP TABLE IF EXISTS t1; +SET autocommit=0; +CREATE TABLE t1 (a INT) ENGINE=InnoDB; +SHOW GLOBAL VARIABLES LIKE 'innodb_kill_idle_transaction'; +Variable_name Value +innodb_kill_idle_transaction 0 +SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_kill_idle_transaction'; +VARIABLE_NAME VARIABLE_VALUE +INNODB_KILL_IDLE_TRANSACTION 0 +SET GLOBAL innodb_kill_idle_transaction=5; +SHOW GLOBAL VARIABLES LIKE 'innodb_kill_idle_transaction'; +Variable_name Value +innodb_kill_idle_transaction 5 +SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_kill_idle_transaction'; +VARIABLE_NAME VARIABLE_VALUE +INNODB_KILL_IDLE_TRANSACTION 5 +BEGIN; +INSERT INTO t1 VALUES (1),(2),(3); +COMMIT; +SELECT * FROM t1; +a +1 +2 +3 +### Locking rows. Lock should be released when idle trx is killed. +BEGIN; +SELECT * FROM t1 FOR UPDATE; +a +1 +2 +3 +UPDATE t1 set a=4; +SELECT * FROM t1; +a +4 +4 +4 +DROP TABLE t1; +SET GLOBAL innodb_kill_idle_transaction=0; +SHOW GLOBAL VARIABLES LIKE 'innodb_kill_idle_transaction'; +Variable_name Value +innodb_kill_idle_transaction 0 +SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_kill_idle_transaction'; +VARIABLE_NAME VARIABLE_VALUE +INNODB_KILL_IDLE_TRANSACTION 0 diff --git a/mysql-test/suite/percona/percona_innodb_kill_idle_trx_locks.test b/mysql-test/suite/percona/percona_innodb_kill_idle_trx_locks.test new file mode 100644 index 00000000000..c283f38de42 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_kill_idle_trx_locks.test @@ -0,0 +1,31 @@ +--source include/have_innodb.inc +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings + +SET autocommit=0; +CREATE TABLE t1 (a INT) ENGINE=InnoDB; + +--source percona_innodb_kill_idle_trx_show.inc +SET GLOBAL innodb_kill_idle_transaction=5; +--source percona_innodb_kill_idle_trx_show.inc + +connect (conn1,localhost,root,,); +connection conn1; + +BEGIN; +INSERT INTO t1 VALUES (1),(2),(3); +COMMIT; +SELECT * FROM t1; + +--echo ### Locking rows. Lock should be released when idle trx is killed. +BEGIN; +SELECT * FROM t1 FOR UPDATE; + +connection default; +UPDATE t1 set a=4; + +SELECT * FROM t1; +DROP TABLE t1; +SET GLOBAL innodb_kill_idle_transaction=0; +--source percona_innodb_kill_idle_trx_show.inc diff --git a/mysql-test/suite/percona/percona_innodb_kill_idle_trx_show.inc b/mysql-test/suite/percona/percona_innodb_kill_idle_trx_show.inc new file mode 100644 index 00000000000..c85c0311c81 --- /dev/null +++ b/mysql-test/suite/percona/percona_innodb_kill_idle_trx_show.inc @@ -0,0 +1,2 @@ +SHOW GLOBAL VARIABLES LIKE 'innodb_kill_idle_transaction'; +SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_kill_idle_transaction'; diff --git a/mysql-test/suite/percona/percona_innodb_use_sys_stats_table-master.opt b/mysql-test/suite/percona/percona_innodb_use_sys_stats_table-master.opt index c6865f5704c..7479e2036aa 100644 --- a/mysql-test/suite/percona/percona_innodb_use_sys_stats_table-master.opt +++ b/mysql-test/suite/percona/percona_innodb_use_sys_stats_table-master.opt @@ -1 +1 @@ ---innodb_use_sys_stats_table +--loose-innodb_use_sys_stats_table diff --git a/mysql-test/suite/percona/percona_innodb_use_sys_stats_table.test b/mysql-test/suite/percona/percona_innodb_use_sys_stats_table.test index 02791137f08..534b26a3b45 100644 --- a/mysql-test/suite/percona/percona_innodb_use_sys_stats_table.test +++ b/mysql-test/suite/percona/percona_innodb_use_sys_stats_table.test @@ -1,2 +1,2 @@ ---source include/have_innodb.inc +--source include/have_xtradb.inc show variables like 'innodb_use_sys_stats%'; diff --git a/mysql-test/suite/percona/percona_suppress_log_warning_1592-master.opt b/mysql-test/suite/percona/percona_log_warnings_suppress-master.opt index 4658d62af60..4658d62af60 100644 --- a/mysql-test/suite/percona/percona_suppress_log_warning_1592-master.opt +++ b/mysql-test/suite/percona/percona_log_warnings_suppress-master.opt diff --git a/mysql-test/suite/percona/percona_log_warnings_suppress.result b/mysql-test/suite/percona/percona_log_warnings_suppress.result new file mode 100644 index 00000000000..1ee6c46738a --- /dev/null +++ b/mysql-test/suite/percona/percona_log_warnings_suppress.result @@ -0,0 +1,31 @@ +SET @old_log_warnings = @@log_warnings; +SET @old_log_warnings_suppress = @@log_warnings_suppress; +DROP TABLE IF EXISTS t1; +CREATE TABLE t1 (a VARCHAR(36), b VARCHAR(20)); +SET GLOBAL log_warnings_suppress=''; +SET GLOBAL LOG_WARNINGS=0; +SHOW GLOBAL VARIABLES LIKE 'log_warnings_suppress'; +Variable_name Value +log_warnings_suppress +INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); +Warnings: +Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave. +SET GLOBAL LOG_WARNINGS=1; +INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); +Warnings: +Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave. +SET GLOBAL log_warnings_suppress='1592'; +SET GLOBAL LOG_WARNINGS=0; +INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); +Warnings: +Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave. +SET GLOBAL LOG_WARNINGS=1; +INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); +Warnings: +Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave. +DROP TABLE t1; +SET GLOBAL log_warnings = @old_log_warnings; +SET GLOBAL log_warnings_suppress = @old_log_warnings_suppress; +# Count the number of times the "Unsafe" message was printed +# to the error log. +Occurrences: 1 diff --git a/mysql-test/suite/percona/percona_suppress_log_warning_1592.test b/mysql-test/suite/percona/percona_log_warnings_suppress.test index 97fe40469fc..82221013f0b 100644 --- a/mysql-test/suite/percona/percona_suppress_log_warning_1592.test +++ b/mysql-test/suite/percona/percona_log_warnings_suppress.test @@ -2,26 +2,27 @@ -- source include/have_binlog_format_statement.inc SET @old_log_warnings = @@log_warnings; -SET @old_suppress_log_warning_1592 = @@suppress_log_warning_1592; +SET @old_log_warnings_suppress = @@log_warnings_suppress; --disable_warnings DROP TABLE IF EXISTS t1; --enable_warnings CREATE TABLE t1 (a VARCHAR(36), b VARCHAR(20)); -SET GLOBAL SUPPRESS_LOG_WARNING_1592 = 0; -SET GLOBAL LOG_WARNINGS = 0; +SET GLOBAL log_warnings_suppress=''; +SET GLOBAL LOG_WARNINGS=0; +SHOW GLOBAL VARIABLES LIKE 'log_warnings_suppress'; INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); -SET GLOBAL LOG_WARNINGS = 1; +SET GLOBAL LOG_WARNINGS=1; INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); -SET GLOBAL SUPPRESS_LOG_WARNING_1592 = 1; -SET GLOBAL LOG_WARNINGS = 0; +SET GLOBAL log_warnings_suppress='1592'; +SET GLOBAL LOG_WARNINGS=0; INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); -SET GLOBAL LOG_WARNINGS = 1; +SET GLOBAL LOG_WARNINGS=1; INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); DROP TABLE t1; SET GLOBAL log_warnings = @old_log_warnings; -SET GLOBAL suppress_log_warning_1592 = @old_suppress_log_warning_1592; +SET GLOBAL log_warnings_suppress = @old_log_warnings_suppress; let $log_error_= `SELECT @@GLOBAL.log_error`; if(!`select LENGTH('$log_error_')`) diff --git a/mysql-test/suite/percona/percona_processlist_row_stats.result b/mysql-test/suite/percona/percona_processlist_row_stats.result new file mode 100644 index 00000000000..109b6a912d9 --- /dev/null +++ b/mysql-test/suite/percona/percona_processlist_row_stats.result @@ -0,0 +1,70 @@ +DROP TABLE IF EXISTS t1; +DROP TABLE IF EXISTS t2; +CREATE TABLE t2 (a INT); +INSERT INTO t2 VALUES(10); +INSERT INTO t2 VALUES(10); +INSERT INTO t2 VALUES(20); +INSERT INTO t2 VALUES(10); +INSERT INTO t2 VALUES(20); +SET DEBUG_SYNC= 'locked_table_name SIGNAL thread1_ready WAIT_FOR threads_dumped'; +CREATE TABLE t1 (a INT); +SET DEBUG_SYNC= 'now WAIT_FOR thread1_ready'; +SET DEBUG_SYNC= 'execute_command_after_close_tables SIGNAL thread2_ready WAIT_FOR threads_dumped'; +SELECT a FROM t2 WHERE a > 15; +SET DEBUG_SYNC= 'now WAIT_FOR thread2_ready'; +SHOW PROCESSLIST; +Id User Host db Command Time State Info Rows_sent Rows_examined Rows_read +### root ### test Query ### ### SHOW PROCESSLIST 0 0 2 +### root ### test Query ### ### CREATE TABLE t1 (a INT) 0 0 1 +### root ### test Query ### ### SELECT a FROM t2 WHERE a > 15 2 5 6 +SELECT id, info, rows_sent, rows_examined, rows_read FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id; +id info rows_sent rows_examined rows_read +### SELECT id, info, rows_sent, rows_examined, rows_read FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id 0 0 1 +### CREATE TABLE t1 (a INT) 0 0 1 +### SELECT a FROM t2 WHERE a > 15 2 5 6 +SET DEBUG_SYNC= 'now SIGNAL threads_dumped'; +a +20 +20 +SET DEBUG_SYNC= 'sent_row SIGNAL thread1_ready WAIT_FOR threads_dumped'; +SELECT a FROM t2 WHERE a < 15; +SET DEBUG_SYNC= 'now WAIT_FOR thread1_ready'; +SET DEBUG_SYNC= 'sent_row SIGNAL thread2_ready WAIT_FOR threads_dumped'; +SELECT a FROM t2 WHERE a > 15; +SET DEBUG_SYNC= 'now WAIT_FOR thread2_ready'; +SHOW PROCESSLIST; +Id User Host db Command Time State Info Rows_sent Rows_examined Rows_read +### root ### test Query ### ### SHOW PROCESSLIST 0 0 4 +### root ### test Query ### ### SELECT a FROM t2 WHERE a < 15 1 0 1 +### root ### test Query ### ### SELECT a FROM t2 WHERE a > 15 1 0 3 +SELECT id, info, rows_sent, rows_examined, rows_read FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id; +id info rows_sent rows_examined rows_read +### SELECT id, info, rows_sent, rows_examined, rows_read FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id 0 0 1 +### SELECT a FROM t2 WHERE a < 15 1 0 1 +### SELECT a FROM t2 WHERE a > 15 1 0 3 +SET DEBUG_SYNC= 'now SIGNAL threads_dumped'; +a +10 +10 +10 +a +20 +20 +SET DEBUG_SYNC= 'execute_command_after_close_tables SIGNAL thread1_ready WAIT_FOR threads_dumped'; +UPDATE t2 SET a = 15 WHERE a = 20; +SET DEBUG_SYNC= 'now WAIT_FOR thread1_ready'; +SET DEBUG_SYNC= 'execute_command_after_close_tables SIGNAL thread2_ready WAIT_FOR threads_dumped'; +UPDATE t2 SET a = 15 WHERE a = 10; +SET DEBUG_SYNC= 'now WAIT_FOR thread2_ready'; +SHOW PROCESSLIST; +Id User Host db Command Time State Info Rows_sent Rows_examined Rows_read +### root ### test Query ### ### SHOW PROCESSLIST 0 0 4 +### root ### test Query ### ### UPDATE t2 SET a = 15 WHERE a = 20 0 5 6 +### root ### test Query ### ### UPDATE t2 SET a = 15 WHERE a = 10 0 5 6 +SELECT id, info, rows_sent, rows_examined, rows_read FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id; +id info rows_sent rows_examined rows_read +### SELECT id, info, rows_sent, rows_examined, rows_read FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id 0 0 1 +### UPDATE t2 SET a = 15 WHERE a = 20 0 5 6 +### UPDATE t2 SET a = 15 WHERE a = 10 0 5 6 +SET DEBUG_SYNC= 'now SIGNAL threads_dumped'; +DROP TABLES t1, t2; diff --git a/mysql-test/suite/percona/percona_processlist_row_stats.test b/mysql-test/suite/percona/percona_processlist_row_stats.test new file mode 100644 index 00000000000..17ebfedfa40 --- /dev/null +++ b/mysql-test/suite/percona/percona_processlist_row_stats.test @@ -0,0 +1,79 @@ +# Testing of INFORMATION_SCHEMA.PROCESSLIST fields ROWS_SENT, ROWS_EXAMINED, ROWS_READ +--source include/have_debug_sync.inc + +--disable_warnings +DROP TABLE IF EXISTS t1; +DROP TABLE IF EXISTS t2; +--enable_warnings + +CREATE TABLE t2 (a INT); +INSERT INTO t2 VALUES(10); +INSERT INTO t2 VALUES(10); +INSERT INTO t2 VALUES(20); +INSERT INTO t2 VALUES(10); +INSERT INTO t2 VALUES(20); + +--connect (conn1, localhost, root, ,) +--connect (conn2, localhost, root, ,) + +--connection conn1 +SET DEBUG_SYNC= 'locked_table_name SIGNAL thread1_ready WAIT_FOR threads_dumped'; +send CREATE TABLE t1 (a INT); +--connection default +SET DEBUG_SYNC= 'now WAIT_FOR thread1_ready'; + +--connection conn2 +SET DEBUG_SYNC= 'execute_command_after_close_tables SIGNAL thread2_ready WAIT_FOR threads_dumped'; +send SELECT a FROM t2 WHERE a > 15; +--connection default +SET DEBUG_SYNC= 'now WAIT_FOR thread2_ready'; + +--source include/percona_processlist_row_stats_show.inc + +--connection conn1 +reap; +--connection conn2 +reap; + +--connection conn1 +SET DEBUG_SYNC= 'sent_row SIGNAL thread1_ready WAIT_FOR threads_dumped'; +send SELECT a FROM t2 WHERE a < 15; +--connection default +SET DEBUG_SYNC= 'now WAIT_FOR thread1_ready'; + +--connection conn2 +SET DEBUG_SYNC= 'sent_row SIGNAL thread2_ready WAIT_FOR threads_dumped'; +send SELECT a FROM t2 WHERE a > 15; +--connection default +SET DEBUG_SYNC= 'now WAIT_FOR thread2_ready'; + +--source include/percona_processlist_row_stats_show.inc + +--connection conn1 +reap; +--connection conn2 +reap; + +--connection conn1 +SET DEBUG_SYNC= 'execute_command_after_close_tables SIGNAL thread1_ready WAIT_FOR threads_dumped'; +send UPDATE t2 SET a = 15 WHERE a = 20; +--connection default +SET DEBUG_SYNC= 'now WAIT_FOR thread1_ready'; + +--connection conn2 +SET DEBUG_SYNC= 'execute_command_after_close_tables SIGNAL thread2_ready WAIT_FOR threads_dumped'; +send UPDATE t2 SET a = 15 WHERE a = 10; +--connection default +SET DEBUG_SYNC= 'now WAIT_FOR thread2_ready'; + +--source include/percona_processlist_row_stats_show.inc + +--connection conn1 +reap; +--connection conn2 +reap; + +--connection default +disconnect conn1; +disconnect conn2; +DROP TABLES t1, t2; diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments.inc.backup b/mysql-test/suite/percona/percona_query_cache_with_comments.inc.backup new file mode 100644 index 00000000000..4b5b31e9239 --- /dev/null +++ b/mysql-test/suite/percona/percona_query_cache_with_comments.inc.backup @@ -0,0 +1,88 @@ +--source include/percona_query_cache_with_comments_clear.inc +let $query=/* with comment first */select * from t1; +eval $query; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=# with comment first +select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=-- with comment first +select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=/* with comment first and "quote" */select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=# with comment first and "quote" +select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=-- with comment first and "quote" +select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query= + /* with comment and whitespaces first */select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query= + # with comment and whitespaces first +select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query= + -- with comment and whitespaces first +select * from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $internal=* internal comment *; + +let $query=select * /$internal/ from t1; +--source include/percona_query_cache_with_comments_eval.inc +let $query=select */$internal/ from t1; +--source include/percona_query_cache_with_comments_eval.inc +let $query=select */$internal/from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $internal=* internal comment with "quote" *; + +let $query=select * /$internal/ from t1; +--source include/percona_query_cache_with_comments_eval.inc +let $query=select */$internal/ from t1; +--source include/percona_query_cache_with_comments_eval.inc +let $query=select */$internal/from t1; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 +; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 ; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 ; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 +/* comment in the end */; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 +/* comment in the end */ +; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 #comment in the end; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 #comment in the end +; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 -- comment in the end; +--source include/percona_query_cache_with_comments_eval.inc + +let $query=select * from t1 -- comment in the end +; +--source include/percona_query_cache_with_comments_eval.inc diff --git a/mysql-test/suite/percona/percona_query_response_time-replication.result b/mysql-test/suite/percona/percona_query_response_time-replication.result new file mode 100644 index 00000000000..c00520110c2 --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time-replication.result @@ -0,0 +1,727 @@ +SET GLOBAL query_exec_time=0.1; +include/master-slave.inc +[connection master] +CREATE TABLE t(id INT); +SET GLOBAL query_exec_time = 0.1; +include/restart_slave.inc +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1; +Warnings: +Warning 1292 Truncated incorrect query_response_time_range_base value: '1' +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time = 0.31; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; +INSERT INTO t VALUES(1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 2 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 1 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 1 0.100000 + 0.250000 0 0.000000 + 0.500000 30 10.650000 + 1.000000 3 1.500000 + 2.000000 15 19.500000 + 4.000000 12 30.000000 + 8.000000 6 27.599997 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 1 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 1 0.100000 + 0.250000 0 0.000000 + 0.500000 30 10.650000 + 1.000000 3 1.500000 + 2.000000 15 19.500000 + 4.000000 12 30.000000 + 8.000000 6 27.599997 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP TABLE t; +CREATE TABLE t(id INT); +SET GLOBAL query_exec_time = 0.1; +include/restart_slave.inc +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=2; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time = 0.31; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; +INSERT INTO t VALUES(1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 2 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 1 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 1 0.100000 + 0.250000 0 0.000000 + 0.500000 30 10.650000 + 1.000000 3 1.500000 + 2.000000 15 19.500000 + 4.000000 12 30.000000 + 8.000000 6 27.599997 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 1 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 1 0.100000 + 0.250000 0 0.000000 + 0.500000 30 10.650000 + 1.000000 3 1.500000 + 2.000000 15 19.500000 + 4.000000 12 30.000000 + 8.000000 6 27.599997 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP TABLE t; +CREATE TABLE t(id INT); +SET GLOBAL query_exec_time = 0.1; +include/restart_slave.inc +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=10; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time = 0.31; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; +INSERT INTO t VALUES(1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 10 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 1 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 34 12.250000 + 10.000000 33 77.099997 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 1 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 34 12.250000 + 10.000000 33 77.099997 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP TABLE t; +CREATE TABLE t(id INT); +SET GLOBAL query_exec_time = 0.1; +include/restart_slave.inc +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=7; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time = 0.31; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; +INSERT INTO t VALUES(1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 7 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 1 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 1 0.100000 + 1.000000 33 12.150000 + 7.000000 33 77.099997 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 1 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 1 0.100000 + 1.000000 33 12.150000 + 7.000000 33 77.099997 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP TABLE t; +CREATE TABLE t(id INT); +SET GLOBAL query_exec_time = 0.1; +include/restart_slave.inc +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=156; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time = 0.31; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; +INSERT INTO t VALUES(1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 156 +SHOW QUERY_RESPONSE_TIME; + + 0.000041 1 0.000000 + 0.006410 0 0.000000 + 1.000000 34 12.250000 + 156.000000 33 77.099997 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000041 1 0.000000 + 0.006410 0 0.000000 + 1.000000 34 12.250000 + 156.000000 33 77.099997 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP TABLE t; +CREATE TABLE t(id INT); +SET GLOBAL query_exec_time = 0.1; +include/restart_slave.inc +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1000; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time = 0.31; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; +INSERT INTO t VALUES(1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 1000 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 1 0.000000 + 0.001000 0 0.000000 + 1.000000 34 12.250000 + 1000.000000 33 77.099997 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 1 0.000000 + 0.001000 0 0.000000 + 1.000000 34 12.250000 + 1000.000000 33 77.099997 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP TABLE t; +CREATE TABLE t(id INT); +SET GLOBAL query_exec_time = 0.1; +include/restart_slave.inc +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1001; +Warnings: +Warning 1292 Truncated incorrect query_response_time_range_base value: '1001' +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time = 0.31; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; +INSERT INTO t VALUES(1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 1000 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 1 0.000000 + 0.001000 0 0.000000 + 1.000000 34 12.250000 + 1000.000000 33 77.099997 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 1 0.000000 + 0.001000 0 0.000000 + 1.000000 34 12.250000 + 1000.000000 33 77.099997 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP TABLE t; +include/rpl_end.inc +SET GLOBAL query_exec_time=default; +SET GLOBAL query_exec_time=default; diff --git a/mysql-test/suite/percona/percona_query_response_time-replication.test b/mysql-test/suite/percona/percona_query_response_time-replication.test new file mode 100644 index 00000000000..1207e5d1c3d --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time-replication.test @@ -0,0 +1,28 @@ +SET GLOBAL query_exec_time=0.1; + +--source include/have_response_time_distribution.inc +--source include/have_debug.inc +--source include/have_binlog_format_statement.inc +--source include/master-slave.inc + +--let base=1 +--source include/query_response_time-replication.inc +--let base=2 +--source include/query_response_time-replication.inc +--let base=10 +--source include/query_response_time-replication.inc +--let base=7 +--source include/query_response_time-replication.inc +--let base=156 +--source include/query_response_time-replication.inc +--let base=1000 +--source include/query_response_time-replication.inc +--let base=1001 +--source include/query_response_time-replication.inc + +--source include/rpl_end.inc + +SET GLOBAL query_exec_time=default; + +connection slave; +SET GLOBAL query_exec_time=default; diff --git a/mysql-test/suite/percona/percona_query_response_time-stored.result b/mysql-test/suite/percona/percona_query_response_time-stored.result new file mode 100644 index 00000000000..7385231241e --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time-stored.result @@ -0,0 +1,544 @@ +CREATE TABLE t(a INT); +CREATE PROCEDURE test_f(t DECIMAL(3,2)) +BEGIN +SET SESSION query_exec_time=t; +INSERT INTO t VALUES(1); +SET SESSION query_exec_time=0.1; +DELETE FROM t; +END^ +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1; +Warnings: +Warning 1292 Truncated incorrect query_response_time_range_base value: '1' +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 2 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 45 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 44 4.400000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 45 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 44 4.400000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=2; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 2 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 45 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 44 4.400000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 45 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 44 4.400000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=10; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 10 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 45 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 55 8.450000 + 10.000000 11 25.699999 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 45 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 55 8.450000 + 10.000000 11 25.699999 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=7; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 7 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 45 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 44 4.400000 + 1.000000 11 4.050000 + 7.000000 11 25.699999 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 45 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 44 4.400000 + 1.000000 11 4.050000 + 7.000000 11 25.699999 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=156; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 156 +SHOW QUERY_RESPONSE_TIME; + + 0.000041 45 0.000000 + 0.006410 0 0.000000 + 1.000000 55 8.450000 + 156.000000 11 25.699999 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000041 45 0.000000 + 0.006410 0 0.000000 + 1.000000 55 8.450000 + 156.000000 11 25.699999 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1000; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 1000 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 45 0.000000 + 0.001000 0 0.000000 + 1.000000 55 8.450000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 45 0.000000 + 0.001000 0 0.000000 + 1.000000 55 8.450000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1001; +Warnings: +Warning 1292 Truncated incorrect query_response_time_range_base value: '1001' +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 1000 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 45 0.000000 + 0.001000 0 0.000000 + 1.000000 55 8.450000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 45 0.000000 + 0.001000 0 0.000000 + 1.000000 55 8.450000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; +DROP PROCEDURE test_f; +DROP TABLE t; diff --git a/mysql-test/suite/percona/percona_query_response_time-stored.test b/mysql-test/suite/percona/percona_query_response_time-stored.test new file mode 100644 index 00000000000..847ff223b3f --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time-stored.test @@ -0,0 +1,36 @@ +--source include/have_response_time_distribution.inc +--source include/have_debug.inc + +CREATE TABLE t(a INT); + +delimiter ^; +CREATE PROCEDURE test_f(t DECIMAL(3,2)) +BEGIN + SET SESSION query_exec_time=t; + INSERT INTO t VALUES(1); + SET SESSION query_exec_time=0.1; + DELETE FROM t; +END^ +delimiter ;^ + +--let base=1 +--source include/query_response_time-stored.inc +--let base=2 +--source include/query_response_time-stored.inc +--let base=10 +--source include/query_response_time-stored.inc +--let base=7 +--source include/query_response_time-stored.inc +--let base=156 +--source include/query_response_time-stored.inc +--let base=1000 +--source include/query_response_time-stored.inc +--let base=1001 +--source include/query_response_time-stored.inc + +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; + +DROP PROCEDURE test_f; + +DROP TABLE t; diff --git a/mysql-test/suite/percona/percona_query_response_time.result b/mysql-test/suite/percona/percona_query_response_time.result new file mode 100644 index 00000000000..4c4d50319c0 --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time.result @@ -0,0 +1,1307 @@ +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1; +Warnings: +Warning 1292 Truncated incorrect query_response_time_range_base value: '1' +FLUSH QUERY_RESPONSE_TIME; +SHOW QUERY_RESPONSE_TIME; + + 0.000001 0 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 0 0.000000 + 1.000000 0 0.000000 + 2.000000 0 0.000000 + 4.000000 0 0.000000 + 8.000000 0 0.000000 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 0 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 0 0.000000 + 1.000000 0 0.000000 + 2.000000 0 0.000000 + 4.000000 0 0.000000 + 8.000000 0 0.000000 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time=0.31; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.32; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.33; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.34; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.35; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.36; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.37; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.38; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.39; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.2; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=3.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=4.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=5.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 2 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 24 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 24 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=2; +FLUSH QUERY_RESPONSE_TIME; +SHOW QUERY_RESPONSE_TIME; + + 0.000001 0 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 0 0.000000 + 1.000000 0 0.000000 + 2.000000 0 0.000000 + 4.000000 0 0.000000 + 8.000000 0 0.000000 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 0 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 0 0.000000 + 1.000000 0 0.000000 + 2.000000 0 0.000000 + 4.000000 0 0.000000 + 8.000000 0 0.000000 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time=0.31; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.32; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.33; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.34; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.35; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.36; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.37; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.38; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.39; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.2; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=3.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=4.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=5.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 2 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 24 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 24 0.000000 + 0.000003 0 0.000000 + 0.000007 0 0.000000 + 0.000015 0 0.000000 + 0.000030 0 0.000000 + 0.000061 0 0.000000 + 0.000122 0 0.000000 + 0.000244 0 0.000000 + 0.000488 0 0.000000 + 0.000976 0 0.000000 + 0.001953 0 0.000000 + 0.003906 0 0.000000 + 0.007812 0 0.000000 + 0.015625 0 0.000000 + 0.031250 0 0.000000 + 0.062500 0 0.000000 + 0.125000 0 0.000000 + 0.250000 0 0.000000 + 0.500000 10 3.550000 + 1.000000 1 0.500000 + 2.000000 5 6.500000 + 4.000000 4 10.000000 + 8.000000 2 9.199999 + 16.000000 0 0.000000 + 32.000000 0 0.000000 + 64.000000 0 0.000000 + 128.000000 0 0.000000 + 256.000000 0 0.000000 + 512.000000 0 0.000000 + 1024.000000 0 0.000000 + 2048.000000 0 0.000000 + 4096.000000 0 0.000000 + 8192.000000 0 0.000000 + 16384.000000 0 0.000000 + 32768.000000 0 0.000000 + 65536.000000 0 0.000000 + 131072.000000 0 0.000000 + 262144.000000 0 0.000000 + 524288.000000 0 0.000000 + 1048576.00000 0 0.000000 + 2097152.00000 0 0.000000 + 4194304.00000 0 0.000000 + 8388608.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=10; +FLUSH QUERY_RESPONSE_TIME; +SHOW QUERY_RESPONSE_TIME; + + 0.000001 0 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 0 0.000000 + 10.000000 0 0.000000 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 0 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 0 0.000000 + 10.000000 0 0.000000 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time=0.31; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.32; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.33; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.34; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.35; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.36; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.37; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.38; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.39; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.2; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=3.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=4.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=5.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 10 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 24 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 11 4.050000 + 10.000000 11 25.699999 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 24 0.000000 + 0.000010 0 0.000000 + 0.000100 0 0.000000 + 0.001000 0 0.000000 + 0.010000 0 0.000000 + 0.100000 0 0.000000 + 1.000000 11 4.050000 + 10.000000 11 25.699999 + 100.000000 0 0.000000 + 1000.000000 0 0.000000 + 10000.000000 0 0.000000 + 100000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=7; +FLUSH QUERY_RESPONSE_TIME; +SHOW QUERY_RESPONSE_TIME; + + 0.000001 0 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 0 0.000000 + 1.000000 0 0.000000 + 7.000000 0 0.000000 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 0 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 0 0.000000 + 1.000000 0 0.000000 + 7.000000 0 0.000000 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time=0.31; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.32; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.33; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.34; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.35; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.36; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.37; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.38; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.39; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.2; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=3.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=4.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=5.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 7 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 24 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 0 0.000000 + 1.000000 11 4.050000 + 7.000000 11 25.699999 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 24 0.000000 + 0.000008 0 0.000000 + 0.000059 0 0.000000 + 0.000416 0 0.000000 + 0.002915 0 0.000000 + 0.020408 0 0.000000 + 0.142857 0 0.000000 + 1.000000 11 4.050000 + 7.000000 11 25.699999 + 49.000000 0 0.000000 + 343.000000 0 0.000000 + 2401.000000 0 0.000000 + 16807.000000 0 0.000000 + 117649.000000 0 0.000000 + 823543.000000 0 0.000000 + 5764801.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=156; +FLUSH QUERY_RESPONSE_TIME; +SHOW QUERY_RESPONSE_TIME; + + 0.000041 0 0.000000 + 0.006410 0 0.000000 + 1.000000 0 0.000000 + 156.000000 0 0.000000 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000041 0 0.000000 + 0.006410 0 0.000000 + 1.000000 0 0.000000 + 156.000000 0 0.000000 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time=0.31; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.32; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.33; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.34; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.35; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.36; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.37; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.38; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.39; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.2; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=3.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=4.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=5.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 156 +SHOW QUERY_RESPONSE_TIME; + + 0.000041 24 0.000000 + 0.006410 0 0.000000 + 1.000000 11 4.050000 + 156.000000 11 25.699999 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000041 24 0.000000 + 0.006410 0 0.000000 + 1.000000 11 4.050000 + 156.000000 11 25.699999 + 24336.000000 0 0.000000 + 3796416.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1000; +FLUSH QUERY_RESPONSE_TIME; +SHOW QUERY_RESPONSE_TIME; + + 0.000001 0 0.000000 + 0.001000 0 0.000000 + 1.000000 0 0.000000 + 1000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 0 0.000000 + 0.001000 0 0.000000 + 1.000000 0 0.000000 + 1000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time=0.31; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.32; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.33; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.34; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.35; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.36; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.37; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.38; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.39; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.2; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=3.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=4.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=5.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 1000 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 24 0.000000 + 0.001000 0 0.000000 + 1.000000 11 4.050000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 24 0.000000 + 0.001000 0 0.000000 + 1.000000 11 4.050000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=1001; +Warnings: +Warning 1292 Truncated incorrect query_response_time_range_base value: '1001' +FLUSH QUERY_RESPONSE_TIME; +SHOW QUERY_RESPONSE_TIME; + + 0.000001 0 0.000000 + 0.001000 0 0.000000 + 1.000000 0 0.000000 + 1000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 0 0.000000 + 0.001000 0 0.000000 + 1.000000 0 0.000000 + 1000.000000 0 0.000000 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; +SET SESSION query_exec_time=0.31; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.32; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.33; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.34; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.35; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.36; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.37; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.38; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.39; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.2; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=1.4; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.3; +SELECT 1; +1 +1 +SET SESSION query_exec_time=2.5; +SELECT 1; +1 +1 +SET SESSION query_exec_time=3.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=4.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=5.1; +SELECT 1; +1 +1 +SET SESSION query_exec_time=0.1; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +Variable_name Value +query_response_time_range_base 1000 +SHOW QUERY_RESPONSE_TIME; + + 0.000001 24 0.000000 + 0.001000 0 0.000000 + 1.000000 11 4.050000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +time count total + 0.000001 24 0.000000 + 0.001000 0 0.000000 + 1.000000 11 4.050000 + 1000.000000 11 25.699999 + 1000000.00000 0 0.000000 +TOO LONG 0 TOO LONG +SET SESSION query_exec_time=default; +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; diff --git a/mysql-test/suite/percona/percona_query_response_time.test b/mysql-test/suite/percona/percona_query_response_time.test new file mode 100644 index 00000000000..d4fb9c61388 --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time.test @@ -0,0 +1,20 @@ +--source include/have_response_time_distribution.inc +--source include/have_debug.inc + +--let base=1 +--source include/query_response_time.inc +--let base=2 +--source include/query_response_time.inc +--let base=10 +--source include/query_response_time.inc +--let base=7 +--source include/query_response_time.inc +--let base=156 +--source include/query_response_time.inc +--let base=1000 +--source include/query_response_time.inc +--let base=1001 +--source include/query_response_time.inc + +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; diff --git a/mysql-test/suite/percona/percona_query_response_time_flush.inc b/mysql-test/suite/percona/percona_query_response_time_flush.inc new file mode 100644 index 00000000000..44bb320fe13 --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time_flush.inc @@ -0,0 +1 @@ +FLUSH QUERY_RESPONSE_TIME; diff --git a/mysql-test/suite/percona/percona_query_response_time_show.inc b/mysql-test/suite/percona/percona_query_response_time_show.inc new file mode 100644 index 00000000000..709abf9872e --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time_show.inc @@ -0,0 +1,8 @@ +SELECT d.count, +(SELECT SUM(a.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME as a WHERE a.count != 0) as query_count, +(SELECT SUM((b.total * 1000000) DIV 1000000) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME as b WHERE b.count != 0) as query_total, +(SELECT COUNT(*) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME as c WHERE c.count != 0) as not_zero_region_count, +(SELECT COUNT(*) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME) as region_count +FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME as d WHERE d.count > 0; +SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; diff --git a/mysql-test/suite/percona/percona_query_response_time_sleep.inc b/mysql-test/suite/percona/percona_query_response_time_sleep.inc new file mode 100644 index 00000000000..d889fd9f98d --- /dev/null +++ b/mysql-test/suite/percona/percona_query_response_time_sleep.inc @@ -0,0 +1,19 @@ +SET SESSION debug="+d,query_exec_time_0.31"; +SET SESSION debug="+d,query_exec_time_0.32"; +SET SESSION debug="+d,query_exec_time_0.33"; +SET SESSION debug="+d,query_exec_time_0.34"; +SET SESSION debug="+d,query_exec_time_0.35"; +SET SESSION debug="+d,query_exec_time_0.36"; +SET SESSION debug="+d,query_exec_time_0.37"; +SET SESSION debug="+d,query_exec_time_0.38"; +SET SESSION debug="+d,query_exec_time_0.39"; +SET SESSION debug="+d,query_exec_time_0.4"; +SET SESSION debug="+d,query_exec_time_1.1"; +SET SESSION debug="+d,query_exec_time_1.2"; +SET SESSION debug="+d,query_exec_time_1.3"; +SET SESSION debug="+d,query_exec_time_1.5"; +SET SESSION debug="+d,query_exec_time_1.4"; +SET SESSION debug="+d,query_exec_time_0.5"; +SET SESSION debug="+d,query_exec_time_2.1"; +SET SESSION debug="+d,query_exec_time_2.3"; +SET SESSION debug="+d,query_exec_time_2.5"; diff --git a/mysql-test/suite/percona/percona_server_variables.inc b/mysql-test/suite/percona/percona_server_variables.inc new file mode 100644 index 00000000000..60c8e0ba759 --- /dev/null +++ b/mysql-test/suite/percona/percona_server_variables.inc @@ -0,0 +1,3 @@ +--source have_response_time_distribution.inc +--source include/have_xtradb.inc +SELECT Variable_name FROM INFORMATION_SCHEMA.SESSION_VARIABLES ORDER BY 1; diff --git a/mysql-test/suite/percona/percona_server_variables.result b/mysql-test/suite/percona/percona_server_variables.result deleted file mode 100644 index 9eeb1bd90e5..00000000000 --- a/mysql-test/suite/percona/percona_server_variables.result +++ /dev/null @@ -1,343 +0,0 @@ -show variables; -Variable_name Value -auto_increment_increment Value -auto_increment_offset Value -autocommit Value -automatic_sp_privileges Value -back_log Value -basedir Value -big_tables Value -binlog_cache_size Value -binlog_direct_non_transactional_updates Value -binlog_format Value -bulk_insert_buffer_size Value -character_set_client Value -character_set_connection Value -character_set_database Value -character_set_filesystem Value -character_set_results Value -character_set_server Value -character_set_system Value -character_sets_dir Value -collation_connection Value -collation_database Value -collation_server Value -completion_type Value -concurrent_insert Value -connect_timeout Value -datadir Value -date_format Value -datetime_format Value -debug Value -debug_sync Value -default_week_format Value -delay_key_write Value -delayed_insert_limit Value -delayed_insert_timeout Value -delayed_queue_size Value -div_precision_increment Value -enable_query_response_time_stats Value -engine_condition_pushdown Value -error_count Value -event_scheduler Value -expire_logs_days Value -fast_index_creation Value -flush Value -flush_time Value -foreign_key_checks Value -ft_boolean_syntax Value -ft_max_word_len Value -ft_min_word_len Value -ft_query_expansion_limit Value -ft_stopword_file Value -general_log Value -general_log_file Value -group_concat_max_len Value -have_community_features Value -have_compress Value -have_crypt Value -have_csv Value -have_dynamic_loading Value -have_geometry Value -have_innodb Value -have_ndbcluster Value -have_openssl Value -have_partitioning Value -have_query_cache Value -have_response_time_distribution Value -have_rtree_keys Value -have_ssl Value -have_symlink Value -hostname Value -identity Value -ignore_builtin_innodb Value -init_connect Value -init_file Value -init_slave Value -innodb_adaptive_checkpoint Value -innodb_adaptive_flushing Value -innodb_adaptive_hash_index Value -innodb_additional_mem_pool_size Value -innodb_auto_lru_dump Value -innodb_autoextend_increment Value -innodb_autoinc_lock_mode Value -innodb_buffer_pool_shm_checksum Value -innodb_buffer_pool_shm_key Value -innodb_buffer_pool_size Value -innodb_change_buffering Value -innodb_checkpoint_age_target Value -innodb_checksums Value -innodb_commit_concurrency Value -innodb_concurrency_tickets Value -innodb_data_file_path Value -innodb_data_home_dir Value -innodb_dict_size_limit Value -innodb_doublewrite Value -innodb_doublewrite_file Value -innodb_enable_unsafe_group_commit Value -innodb_expand_import Value -innodb_extra_rsegments Value -innodb_extra_undoslots Value -innodb_fast_checksum Value -innodb_fast_recovery Value -innodb_fast_shutdown Value -innodb_file_format Value -innodb_file_format_check Value -innodb_file_per_table Value -innodb_flush_log_at_trx_commit Value -innodb_flush_log_at_trx_commit_session Value -innodb_flush_method Value -innodb_flush_neighbor_pages Value -innodb_force_recovery Value -innodb_ibuf_accel_rate Value -innodb_ibuf_active_contract Value -innodb_ibuf_max_size Value -innodb_io_capacity Value -innodb_lock_wait_timeout Value -innodb_locks_unsafe_for_binlog Value -innodb_log_buffer_size Value -innodb_log_file_size Value -innodb_log_files_in_group Value -innodb_log_group_home_dir Value -innodb_max_dirty_pages_pct Value -innodb_max_purge_lag Value -innodb_mirrored_log_groups Value -innodb_old_blocks_pct Value -innodb_old_blocks_time Value -innodb_open_files Value -innodb_overwrite_relay_log_info Value -innodb_page_size Value -innodb_pass_corrupt_table Value -innodb_read_ahead Value -innodb_read_ahead_threshold Value -innodb_read_io_threads Value -innodb_recovery_stats Value -innodb_replication_delay Value -innodb_rollback_on_timeout Value -innodb_show_locks_held Value -innodb_show_verbose_locks Value -innodb_spin_wait_delay Value -innodb_stats_auto_update Value -innodb_stats_method Value -innodb_stats_on_metadata Value -innodb_stats_sample_pages Value -innodb_stats_update_need_lock Value -innodb_strict_mode Value -innodb_support_xa Value -innodb_sync_spin_loops Value -innodb_table_locks Value -innodb_thread_concurrency Value -innodb_thread_concurrency_timer_based Value -innodb_thread_sleep_delay Value -innodb_use_purge_thread Value -innodb_use_sys_malloc Value -innodb_use_sys_stats_table Value -innodb_version Value -innodb_write_io_threads Value -insert_id Value -interactive_timeout Value -join_buffer_size Value -keep_files_on_create Value -key_buffer_size Value -key_cache_age_threshold Value -key_cache_block_size Value -key_cache_division_limit Value -language Value -large_files_support Value -large_page_size Value -large_pages Value -last_insert_id Value -lc_time_names Value -license Value -local_infile Value -locked_in_memory Value -log Value -log_bin Value -log_bin_trust_function_creators Value -log_bin_trust_routine_creators Value -log_error Value -log_output Value -log_queries_not_using_indexes Value -log_slave_updates Value -log_slow_filter Value -log_slow_queries Value -log_slow_rate_limit Value -log_slow_slave_statements Value -log_slow_sp_statements Value -log_slow_timestamp_every Value -log_slow_verbosity Value -log_warnings Value -long_query_time Value -low_priority_updates Value -lower_case_file_system Value -lower_case_table_names Value -max_allowed_packet Value -max_binlog_cache_size Value -max_binlog_size Value -max_connect_errors Value -max_connections Value -max_delayed_threads Value -max_error_count Value -max_heap_table_size Value -max_insert_delayed_threads Value -max_join_size Value -max_length_for_sort_data Value -max_prepared_stmt_count Value -max_relay_log_size Value -max_seeks_for_key Value -max_sort_length Value -max_sp_recursion_depth Value -max_tmp_tables Value -max_user_connections Value -max_write_lock_count Value -min_examined_row_limit Value -multi_range_count Value -myisam_data_pointer_size Value -myisam_max_sort_file_size Value -myisam_mmap_size Value -myisam_recover_options Value -myisam_repair_threads Value -myisam_sort_buffer_size Value -myisam_stats_method Value -myisam_use_mmap Value -net_buffer_length Value -net_read_timeout Value -net_retry_count Value -net_write_timeout Value -new Value -old Value -old_alter_table Value -old_passwords Value -open_files_limit Value -optimizer_fix Value -optimizer_prune_level Value -optimizer_search_depth Value -optimizer_switch Value -pid_file Value -plugin_dir Value -port Value -preload_buffer_size Value -profiling Value -profiling_history_size Value -profiling_server Value -profiling_use_getrusage Value -protocol_version Value -pseudo_thread_id Value -query_alloc_block_size Value -query_cache_limit Value -query_cache_min_res_unit Value -query_cache_size Value -query_cache_strip_comments Value -query_cache_type Value -query_cache_wlock_invalidate Value -query_prealloc_size Value -query_response_time_range_base Value -rand_seed1 Value -rand_seed2 Value -range_alloc_block_size Value -read_buffer_size Value -read_only Value -read_rnd_buffer_size Value -relay_log Value -relay_log_index Value -relay_log_info_file Value -relay_log_purge Value -relay_log_space_limit Value -report_host Value -report_password Value -report_port Value -report_user Value -rpl_recovery_rank Value -secure_auth Value -secure_file_priv Value -server_id Value -skip_external_locking Value -skip_name_resolve Value -skip_networking Value -skip_show_database Value -slave_compressed_protocol Value -slave_exec_mode Value -slave_load_tmpdir Value -slave_net_timeout Value -slave_skip_errors Value -slave_transaction_retries Value -slow_launch_time Value -slow_query_log Value -slow_query_log_file Value -slow_query_log_microseconds_timestamp Value -socket Value -sort_buffer_size Value -sql_auto_is_null Value -sql_big_selects Value -sql_big_tables Value -sql_buffer_result Value -sql_log_bin Value -sql_log_off Value -sql_log_update Value -sql_low_priority_updates Value -sql_max_join_size Value -sql_mode Value -sql_notes Value -sql_quote_show_create Value -sql_safe_updates Value -sql_select_limit Value -sql_slave_skip_counter Value -sql_warnings Value -ssl_ca Value -ssl_capath Value -ssl_cert Value -ssl_cipher Value -ssl_key Value -storage_engine Value -suppress_log_warning_1592 Value -sync_binlog Value -sync_frm Value -system_time_zone Value -table_definition_cache Value -table_lock_wait_timeout Value -table_open_cache Value -table_type Value -thread_cache_size Value -thread_handling Value -thread_stack Value -thread_statistics Value -time_format Value -time_zone Value -timed_mutexes Value -timestamp Value -tmp_table_size Value -tmpdir Value -transaction_alloc_block_size Value -transaction_prealloc_size Value -tx_isolation Value -unique_checks Value -updatable_views_with_limit Value -use_global_log_slow_control Value -use_global_long_query_time Value -userstat_running Value -version Value -version_comment Value -version_compile_machine Value -version_compile_os Value -wait_timeout Value -warning_count Value diff --git a/mysql-test/suite/percona/percona_server_variables.test b/mysql-test/suite/percona/percona_server_variables.test deleted file mode 100644 index 2e158ed2755..00000000000 --- a/mysql-test/suite/percona/percona_server_variables.test +++ /dev/null @@ -1,8 +0,0 @@ ---source include/have_response_time_distribution.inc ---source include/have_innodb.inc ---source include/have_debug.inc - -#check the list of variable names ---replace_column 2 Value -show variables; - diff --git a/mysql-test/suite/percona/percona_server_variables_debug.result b/mysql-test/suite/percona/percona_server_variables_debug.result new file mode 100644 index 00000000000..ea1c02e7716 --- /dev/null +++ b/mysql-test/suite/percona/percona_server_variables_debug.result @@ -0,0 +1,380 @@ +SELECT Variable_name FROM INFORMATION_SCHEMA.SESSION_VARIABLES ORDER BY 1; +Variable_name +AUTOCOMMIT +AUTOMATIC_SP_PRIVILEGES +AUTO_INCREMENT_INCREMENT +AUTO_INCREMENT_OFFSET +BACK_LOG +BASEDIR +BIG_TABLES +BINLOG_CACHE_SIZE +BINLOG_DIRECT_NON_TRANSACTIONAL_UPDATES +BINLOG_FORMAT +BINLOG_STMT_CACHE_SIZE +BULK_INSERT_BUFFER_SIZE +CHARACTER_SETS_DIR +CHARACTER_SET_CLIENT +CHARACTER_SET_CONNECTION +CHARACTER_SET_DATABASE +CHARACTER_SET_FILESYSTEM +CHARACTER_SET_RESULTS +CHARACTER_SET_SERVER +CHARACTER_SET_SYSTEM +COLLATION_CONNECTION +COLLATION_DATABASE +COLLATION_SERVER +COMPLETION_TYPE +CONCURRENT_INSERT +CONNECT_TIMEOUT +DATADIR +DATETIME_FORMAT +DATE_FORMAT +DEBUG +DEBUG_SYNC +DEFAULT_STORAGE_ENGINE +DEFAULT_WEEK_FORMAT +DELAYED_INSERT_LIMIT +DELAYED_INSERT_TIMEOUT +DELAYED_QUEUE_SIZE +DELAY_KEY_WRITE +DIV_PRECISION_INCREMENT +ENGINE_CONDITION_PUSHDOWN +ERROR_COUNT +EVENT_SCHEDULER +EXPAND_FAST_INDEX_CREATION +EXPIRE_LOGS_DAYS +EXTERNAL_USER +FAST_INDEX_CREATION +FLUSH +FLUSH_TIME +FOREIGN_KEY_CHECKS +FT_BOOLEAN_SYNTAX +FT_MAX_WORD_LEN +FT_MIN_WORD_LEN +FT_QUERY_EXPANSION_LIMIT +FT_STOPWORD_FILE +GENERAL_LOG +GENERAL_LOG_FILE +GROUP_CONCAT_MAX_LEN +HAVE_COMPRESS +HAVE_CRYPT +HAVE_CSV +HAVE_DYNAMIC_LOADING +HAVE_GEOMETRY +HAVE_INNODB +HAVE_NDBCLUSTER +HAVE_OPENSSL +HAVE_PARTITIONING +HAVE_PROFILING +HAVE_QUERY_CACHE +HAVE_RESPONSE_TIME_DISTRIBUTION +HAVE_RTREE_KEYS +HAVE_SSL +HAVE_SYMLINK +HOSTNAME +IDENTITY +IGNORE_BUILTIN_INNODB +INIT_CONNECT +INIT_FILE +INIT_SLAVE +INNODB_ADAPTIVE_FLUSHING +INNODB_ADAPTIVE_FLUSHING_METHOD +INNODB_ADAPTIVE_HASH_INDEX +INNODB_ADAPTIVE_HASH_INDEX_PARTITIONS +INNODB_ADDITIONAL_MEM_POOL_SIZE +INNODB_AUTOEXTEND_INCREMENT +INNODB_AUTOINC_LOCK_MODE +INNODB_BLOCKING_BUFFER_POOL_RESTORE +INNODB_BUFFER_POOL_INSTANCES +INNODB_BUFFER_POOL_RESTORE_AT_STARTUP +INNODB_BUFFER_POOL_SHM_CHECKSUM +INNODB_BUFFER_POOL_SHM_KEY +INNODB_BUFFER_POOL_SIZE +INNODB_CHANGE_BUFFERING +INNODB_CHANGE_BUFFERING_DEBUG +INNODB_CHECKPOINT_AGE_TARGET +INNODB_CHECKSUMS +INNODB_COMMIT_CONCURRENCY +INNODB_CONCURRENCY_TICKETS +INNODB_CORRUPT_TABLE_ACTION +INNODB_DATA_FILE_PATH +INNODB_DATA_HOME_DIR +INNODB_DICT_SIZE_LIMIT +INNODB_DOUBLEWRITE +INNODB_DOUBLEWRITE_FILE +INNODB_FAKE_CHANGES +INNODB_FAST_CHECKSUM +INNODB_FAST_SHUTDOWN +INNODB_FILE_FORMAT +INNODB_FILE_FORMAT_CHECK +INNODB_FILE_FORMAT_MAX +INNODB_FILE_PER_TABLE +INNODB_FLUSH_LOG_AT_TRX_COMMIT +INNODB_FLUSH_METHOD +INNODB_FLUSH_NEIGHBOR_PAGES +INNODB_FORCE_LOAD_CORRUPTED +INNODB_FORCE_RECOVERY +INNODB_IBUF_ACCEL_RATE +INNODB_IBUF_ACTIVE_CONTRACT +INNODB_IBUF_MAX_SIZE +INNODB_IMPORT_TABLE_FROM_XTRABACKUP +INNODB_IO_CAPACITY +INNODB_KILL_IDLE_TRANSACTION +INNODB_LARGE_PREFIX +INNODB_LAZY_DROP_TABLE +INNODB_LOCKS_UNSAFE_FOR_BINLOG +INNODB_LOCK_WAIT_TIMEOUT +INNODB_LOG_BLOCK_SIZE +INNODB_LOG_BUFFER_SIZE +INNODB_LOG_FILES_IN_GROUP +INNODB_LOG_FILE_SIZE +INNODB_LOG_GROUP_HOME_DIR +INNODB_MAX_DIRTY_PAGES_PCT +INNODB_MAX_PURGE_LAG +INNODB_MIRRORED_LOG_GROUPS +INNODB_OLD_BLOCKS_PCT +INNODB_OLD_BLOCKS_TIME +INNODB_OPEN_FILES +INNODB_PAGE_SIZE +INNODB_PURGE_BATCH_SIZE +INNODB_PURGE_THREADS +INNODB_RANDOM_READ_AHEAD +INNODB_READ_AHEAD +INNODB_READ_AHEAD_THRESHOLD +INNODB_READ_IO_THREADS +INNODB_RECOVERY_STATS +INNODB_RECOVERY_UPDATE_RELAY_LOG +INNODB_REPLICATION_DELAY +INNODB_ROLLBACK_ON_TIMEOUT +INNODB_ROLLBACK_SEGMENTS +INNODB_SHOW_LOCKS_HELD +INNODB_SHOW_VERBOSE_LOCKS +INNODB_SPIN_WAIT_DELAY +INNODB_STATS_AUTO_UPDATE +INNODB_STATS_METHOD +INNODB_STATS_ON_METADATA +INNODB_STATS_SAMPLE_PAGES +INNODB_STATS_UPDATE_NEED_LOCK +INNODB_STRICT_MODE +INNODB_SUPPORT_XA +INNODB_SYNC_SPIN_LOOPS +INNODB_TABLE_LOCKS +INNODB_THREAD_CONCURRENCY +INNODB_THREAD_CONCURRENCY_TIMER_BASED +INNODB_THREAD_SLEEP_DELAY +INNODB_USE_GLOBAL_FLUSH_LOG_AT_TRX_COMMIT +INNODB_USE_NATIVE_AIO +INNODB_USE_SYS_MALLOC +INNODB_USE_SYS_STATS_TABLE +INNODB_VERSION +INNODB_WRITE_IO_THREADS +INSERT_ID +INTERACTIVE_TIMEOUT +JOIN_BUFFER_SIZE +KEEP_FILES_ON_CREATE +KEY_BUFFER_SIZE +KEY_CACHE_AGE_THRESHOLD +KEY_CACHE_BLOCK_SIZE +KEY_CACHE_DIVISION_LIMIT +LARGE_FILES_SUPPORT +LARGE_PAGES +LARGE_PAGE_SIZE +LAST_INSERT_ID +LC_MESSAGES +LC_MESSAGES_DIR +LC_TIME_NAMES +LICENSE +LOCAL_INFILE +LOCKED_IN_MEMORY +LOCK_WAIT_TIMEOUT +LOG +LOG_BIN +LOG_BIN_TRUST_FUNCTION_CREATORS +LOG_ERROR +LOG_OUTPUT +LOG_QUERIES_NOT_USING_INDEXES +LOG_SLAVE_UPDATES +LOG_SLOW_ADMIN_STATEMENTS +LOG_SLOW_FILTER +LOG_SLOW_QUERIES +LOG_SLOW_RATE_LIMIT +LOG_SLOW_SLAVE_STATEMENTS +LOG_SLOW_SP_STATEMENTS +LOG_SLOW_VERBOSITY +LOG_WARNINGS +LOG_WARNINGS_SUPPRESS +LONG_QUERY_TIME +LOWER_CASE_FILE_SYSTEM +LOWER_CASE_TABLE_NAMES +LOW_PRIORITY_UPDATES +MAX_ALLOWED_PACKET +MAX_BINLOG_CACHE_SIZE +MAX_BINLOG_SIZE +MAX_BINLOG_STMT_CACHE_SIZE +MAX_CONNECTIONS +MAX_CONNECT_ERRORS +MAX_DELAYED_THREADS +MAX_ERROR_COUNT +MAX_HEAP_TABLE_SIZE +MAX_INSERT_DELAYED_THREADS +MAX_JOIN_SIZE +MAX_LENGTH_FOR_SORT_DATA +MAX_LONG_DATA_SIZE +MAX_PREPARED_STMT_COUNT +MAX_RELAY_LOG_SIZE +MAX_SEEKS_FOR_KEY +MAX_SORT_LENGTH +MAX_SP_RECURSION_DEPTH +MAX_TMP_TABLES +MAX_USER_CONNECTIONS +MAX_WRITE_LOCK_COUNT +MIN_EXAMINED_ROW_LIMIT +MULTI_RANGE_COUNT +MYISAM_DATA_POINTER_SIZE +MYISAM_MAX_SORT_FILE_SIZE +MYISAM_MMAP_SIZE +MYISAM_RECOVER_OPTIONS +MYISAM_REPAIR_THREADS +MYISAM_SORT_BUFFER_SIZE +MYISAM_STATS_METHOD +MYISAM_USE_MMAP +NET_BUFFER_LENGTH +NET_READ_TIMEOUT +NET_RETRY_COUNT +NET_WRITE_TIMEOUT +NEW +OLD +OLD_ALTER_TABLE +OLD_PASSWORDS +OPEN_FILES_LIMIT +OPTIMIZER_FIX +OPTIMIZER_PRUNE_LEVEL +OPTIMIZER_SEARCH_DEPTH +OPTIMIZER_SWITCH +PERFORMANCE_SCHEMA +PERFORMANCE_SCHEMA_EVENTS_WAITS_HISTORY_LONG_SIZE +PERFORMANCE_SCHEMA_EVENTS_WAITS_HISTORY_SIZE +PERFORMANCE_SCHEMA_MAX_COND_CLASSES +PERFORMANCE_SCHEMA_MAX_COND_INSTANCES +PERFORMANCE_SCHEMA_MAX_FILE_CLASSES +PERFORMANCE_SCHEMA_MAX_FILE_HANDLES +PERFORMANCE_SCHEMA_MAX_FILE_INSTANCES +PERFORMANCE_SCHEMA_MAX_MUTEX_CLASSES +PERFORMANCE_SCHEMA_MAX_MUTEX_INSTANCES +PERFORMANCE_SCHEMA_MAX_RWLOCK_CLASSES +PERFORMANCE_SCHEMA_MAX_RWLOCK_INSTANCES +PERFORMANCE_SCHEMA_MAX_TABLE_HANDLES +PERFORMANCE_SCHEMA_MAX_TABLE_INSTANCES +PERFORMANCE_SCHEMA_MAX_THREAD_CLASSES +PERFORMANCE_SCHEMA_MAX_THREAD_INSTANCES +PID_FILE +PLUGIN_DIR +PORT +PRELOAD_BUFFER_SIZE +PROFILING +PROFILING_HISTORY_SIZE +PROTOCOL_VERSION +PROXY_USER +PSEUDO_THREAD_ID +QUERY_ALLOC_BLOCK_SIZE +QUERY_CACHE_LIMIT +QUERY_CACHE_MIN_RES_UNIT +QUERY_CACHE_SIZE +QUERY_CACHE_STRIP_COMMENTS +QUERY_CACHE_TYPE +QUERY_CACHE_WLOCK_INVALIDATE +QUERY_EXEC_TIME +QUERY_PREALLOC_SIZE +QUERY_RESPONSE_TIME_RANGE_BASE +QUERY_RESPONSE_TIME_STATS +RAND_SEED1 +RAND_SEED2 +RANGE_ALLOC_BLOCK_SIZE +READ_BUFFER_SIZE +READ_ONLY +READ_RND_BUFFER_SIZE +RELAY_LOG +RELAY_LOG_INDEX +RELAY_LOG_INFO_FILE +RELAY_LOG_PURGE +RELAY_LOG_RECOVERY +RELAY_LOG_SPACE_LIMIT +REPORT_HOST +REPORT_PASSWORD +REPORT_PORT +REPORT_USER +RPL_RECOVERY_RANK +SECURE_AUTH +SECURE_FILE_PRIV +SERVER_ID +SKIP_EXTERNAL_LOCKING +SKIP_NAME_RESOLVE +SKIP_NETWORKING +SKIP_SHOW_DATABASE +SLAVE_COMPRESSED_PROTOCOL +SLAVE_EXEC_MODE +SLAVE_LOAD_TMPDIR +SLAVE_NET_TIMEOUT +SLAVE_SKIP_ERRORS +SLAVE_TRANSACTION_RETRIES +SLAVE_TYPE_CONVERSIONS +SLOW_LAUNCH_TIME +SLOW_QUERY_LOG +SLOW_QUERY_LOG_FILE +SLOW_QUERY_LOG_TIMESTAMP_ALWAYS +SLOW_QUERY_LOG_TIMESTAMP_PRECISION +SLOW_QUERY_LOG_USE_GLOBAL_CONTROL +SOCKET +SORT_BUFFER_SIZE +SQL_AUTO_IS_NULL +SQL_BIG_SELECTS +SQL_BIG_TABLES +SQL_BUFFER_RESULT +SQL_LOG_BIN +SQL_LOG_OFF +SQL_LOW_PRIORITY_UPDATES +SQL_MAX_JOIN_SIZE +SQL_MODE +SQL_NOTES +SQL_QUOTE_SHOW_CREATE +SQL_SAFE_UPDATES +SQL_SELECT_LIMIT +SQL_SLAVE_SKIP_COUNTER +SQL_WARNINGS +SSL_CA +SSL_CAPATH +SSL_CERT +SSL_CIPHER +SSL_KEY +STORAGE_ENGINE +SYNC_BINLOG +SYNC_FRM +SYNC_MASTER_INFO +SYNC_RELAY_LOG +SYNC_RELAY_LOG_INFO +SYSTEM_TIME_ZONE +TABLE_DEFINITION_CACHE +TABLE_OPEN_CACHE +THREAD_CACHE_SIZE +THREAD_CONCURRENCY +THREAD_HANDLING +THREAD_STACK +THREAD_STATISTICS +TIMED_MUTEXES +TIMESTAMP +TIME_FORMAT +TIME_ZONE +TMPDIR +TMP_TABLE_SIZE +TRANSACTION_ALLOC_BLOCK_SIZE +TRANSACTION_PREALLOC_SIZE +TX_ISOLATION +UNIQUE_CHECKS +UPDATABLE_VIEWS_WITH_LIMIT +USERSTAT +VERSION +VERSION_COMMENT +VERSION_COMPILE_MACHINE +VERSION_COMPILE_OS +WAIT_TIMEOUT +WARNING_COUNT diff --git a/mysql-test/suite/percona/percona_server_variables_debug.test b/mysql-test/suite/percona/percona_server_variables_debug.test new file mode 100644 index 00000000000..971f6bae689 --- /dev/null +++ b/mysql-test/suite/percona/percona_server_variables_debug.test @@ -0,0 +1,2 @@ +--source include/have_debug.inc +--source percona_server_variables.inc diff --git a/mysql-test/suite/percona/percona_server_variables_release.result b/mysql-test/suite/percona/percona_server_variables_release.result new file mode 100644 index 00000000000..e5965cf7e5e --- /dev/null +++ b/mysql-test/suite/percona/percona_server_variables_release.result @@ -0,0 +1,376 @@ +SELECT Variable_name FROM INFORMATION_SCHEMA.SESSION_VARIABLES ORDER BY 1; +Variable_name +AUTOCOMMIT +AUTOMATIC_SP_PRIVILEGES +AUTO_INCREMENT_INCREMENT +AUTO_INCREMENT_OFFSET +BACK_LOG +BASEDIR +BIG_TABLES +BINLOG_CACHE_SIZE +BINLOG_DIRECT_NON_TRANSACTIONAL_UPDATES +BINLOG_FORMAT +BINLOG_STMT_CACHE_SIZE +BULK_INSERT_BUFFER_SIZE +CHARACTER_SETS_DIR +CHARACTER_SET_CLIENT +CHARACTER_SET_CONNECTION +CHARACTER_SET_DATABASE +CHARACTER_SET_FILESYSTEM +CHARACTER_SET_RESULTS +CHARACTER_SET_SERVER +CHARACTER_SET_SYSTEM +COLLATION_CONNECTION +COLLATION_DATABASE +COLLATION_SERVER +COMPLETION_TYPE +CONCURRENT_INSERT +CONNECT_TIMEOUT +DATADIR +DATETIME_FORMAT +DATE_FORMAT +DEFAULT_STORAGE_ENGINE +DEFAULT_WEEK_FORMAT +DELAYED_INSERT_LIMIT +DELAYED_INSERT_TIMEOUT +DELAYED_QUEUE_SIZE +DELAY_KEY_WRITE +DIV_PRECISION_INCREMENT +ENGINE_CONDITION_PUSHDOWN +ERROR_COUNT +EVENT_SCHEDULER +EXPAND_FAST_INDEX_CREATION +EXPIRE_LOGS_DAYS +EXTERNAL_USER +FAST_INDEX_CREATION +FLUSH +FLUSH_TIME +FOREIGN_KEY_CHECKS +FT_BOOLEAN_SYNTAX +FT_MAX_WORD_LEN +FT_MIN_WORD_LEN +FT_QUERY_EXPANSION_LIMIT +FT_STOPWORD_FILE +GENERAL_LOG +GENERAL_LOG_FILE +GROUP_CONCAT_MAX_LEN +HAVE_COMPRESS +HAVE_CRYPT +HAVE_CSV +HAVE_DYNAMIC_LOADING +HAVE_GEOMETRY +HAVE_INNODB +HAVE_NDBCLUSTER +HAVE_OPENSSL +HAVE_PARTITIONING +HAVE_PROFILING +HAVE_QUERY_CACHE +HAVE_RESPONSE_TIME_DISTRIBUTION +HAVE_RTREE_KEYS +HAVE_SSL +HAVE_SYMLINK +HOSTNAME +IDENTITY +IGNORE_BUILTIN_INNODB +INIT_CONNECT +INIT_FILE +INIT_SLAVE +INNODB_ADAPTIVE_FLUSHING +INNODB_ADAPTIVE_FLUSHING_METHOD +INNODB_ADAPTIVE_HASH_INDEX +INNODB_ADAPTIVE_HASH_INDEX_PARTITIONS +INNODB_ADDITIONAL_MEM_POOL_SIZE +INNODB_AUTOEXTEND_INCREMENT +INNODB_AUTOINC_LOCK_MODE +INNODB_BLOCKING_BUFFER_POOL_RESTORE +INNODB_BUFFER_POOL_INSTANCES +INNODB_BUFFER_POOL_RESTORE_AT_STARTUP +INNODB_BUFFER_POOL_SHM_CHECKSUM +INNODB_BUFFER_POOL_SHM_KEY +INNODB_BUFFER_POOL_SIZE +INNODB_CHANGE_BUFFERING +INNODB_CHECKPOINT_AGE_TARGET +INNODB_CHECKSUMS +INNODB_COMMIT_CONCURRENCY +INNODB_CONCURRENCY_TICKETS +INNODB_CORRUPT_TABLE_ACTION +INNODB_DATA_FILE_PATH +INNODB_DATA_HOME_DIR +INNODB_DICT_SIZE_LIMIT +INNODB_DOUBLEWRITE +INNODB_DOUBLEWRITE_FILE +INNODB_FAKE_CHANGES +INNODB_FAST_CHECKSUM +INNODB_FAST_SHUTDOWN +INNODB_FILE_FORMAT +INNODB_FILE_FORMAT_CHECK +INNODB_FILE_FORMAT_MAX +INNODB_FILE_PER_TABLE +INNODB_FLUSH_LOG_AT_TRX_COMMIT +INNODB_FLUSH_METHOD +INNODB_FLUSH_NEIGHBOR_PAGES +INNODB_FORCE_LOAD_CORRUPTED +INNODB_FORCE_RECOVERY +INNODB_IBUF_ACCEL_RATE +INNODB_IBUF_ACTIVE_CONTRACT +INNODB_IBUF_MAX_SIZE +INNODB_IMPORT_TABLE_FROM_XTRABACKUP +INNODB_IO_CAPACITY +INNODB_KILL_IDLE_TRANSACTION +INNODB_LARGE_PREFIX +INNODB_LAZY_DROP_TABLE +INNODB_LOCKS_UNSAFE_FOR_BINLOG +INNODB_LOCK_WAIT_TIMEOUT +INNODB_LOG_BLOCK_SIZE +INNODB_LOG_BUFFER_SIZE +INNODB_LOG_FILES_IN_GROUP +INNODB_LOG_FILE_SIZE +INNODB_LOG_GROUP_HOME_DIR +INNODB_MAX_DIRTY_PAGES_PCT +INNODB_MAX_PURGE_LAG +INNODB_MIRRORED_LOG_GROUPS +INNODB_OLD_BLOCKS_PCT +INNODB_OLD_BLOCKS_TIME +INNODB_OPEN_FILES +INNODB_PAGE_SIZE +INNODB_PURGE_BATCH_SIZE +INNODB_PURGE_THREADS +INNODB_RANDOM_READ_AHEAD +INNODB_READ_AHEAD +INNODB_READ_AHEAD_THRESHOLD +INNODB_READ_IO_THREADS +INNODB_RECOVERY_STATS +INNODB_RECOVERY_UPDATE_RELAY_LOG +INNODB_REPLICATION_DELAY +INNODB_ROLLBACK_ON_TIMEOUT +INNODB_ROLLBACK_SEGMENTS +INNODB_SHOW_LOCKS_HELD +INNODB_SHOW_VERBOSE_LOCKS +INNODB_SPIN_WAIT_DELAY +INNODB_STATS_AUTO_UPDATE +INNODB_STATS_METHOD +INNODB_STATS_ON_METADATA +INNODB_STATS_SAMPLE_PAGES +INNODB_STATS_UPDATE_NEED_LOCK +INNODB_STRICT_MODE +INNODB_SUPPORT_XA +INNODB_SYNC_SPIN_LOOPS +INNODB_TABLE_LOCKS +INNODB_THREAD_CONCURRENCY +INNODB_THREAD_CONCURRENCY_TIMER_BASED +INNODB_THREAD_SLEEP_DELAY +INNODB_USE_GLOBAL_FLUSH_LOG_AT_TRX_COMMIT +INNODB_USE_NATIVE_AIO +INNODB_USE_SYS_MALLOC +INNODB_USE_SYS_STATS_TABLE +INNODB_VERSION +INNODB_WRITE_IO_THREADS +INSERT_ID +INTERACTIVE_TIMEOUT +JOIN_BUFFER_SIZE +KEEP_FILES_ON_CREATE +KEY_BUFFER_SIZE +KEY_CACHE_AGE_THRESHOLD +KEY_CACHE_BLOCK_SIZE +KEY_CACHE_DIVISION_LIMIT +LARGE_FILES_SUPPORT +LARGE_PAGES +LARGE_PAGE_SIZE +LAST_INSERT_ID +LC_MESSAGES +LC_MESSAGES_DIR +LC_TIME_NAMES +LICENSE +LOCAL_INFILE +LOCKED_IN_MEMORY +LOCK_WAIT_TIMEOUT +LOG +LOG_BIN +LOG_BIN_TRUST_FUNCTION_CREATORS +LOG_ERROR +LOG_OUTPUT +LOG_QUERIES_NOT_USING_INDEXES +LOG_SLAVE_UPDATES +LOG_SLOW_ADMIN_STATEMENTS +LOG_SLOW_FILTER +LOG_SLOW_QUERIES +LOG_SLOW_RATE_LIMIT +LOG_SLOW_SLAVE_STATEMENTS +LOG_SLOW_SP_STATEMENTS +LOG_SLOW_VERBOSITY +LOG_WARNINGS +LOG_WARNINGS_SUPPRESS +LONG_QUERY_TIME +LOWER_CASE_FILE_SYSTEM +LOWER_CASE_TABLE_NAMES +LOW_PRIORITY_UPDATES +MAX_ALLOWED_PACKET +MAX_BINLOG_CACHE_SIZE +MAX_BINLOG_SIZE +MAX_BINLOG_STMT_CACHE_SIZE +MAX_CONNECTIONS +MAX_CONNECT_ERRORS +MAX_DELAYED_THREADS +MAX_ERROR_COUNT +MAX_HEAP_TABLE_SIZE +MAX_INSERT_DELAYED_THREADS +MAX_JOIN_SIZE +MAX_LENGTH_FOR_SORT_DATA +MAX_LONG_DATA_SIZE +MAX_PREPARED_STMT_COUNT +MAX_RELAY_LOG_SIZE +MAX_SEEKS_FOR_KEY +MAX_SORT_LENGTH +MAX_SP_RECURSION_DEPTH +MAX_TMP_TABLES +MAX_USER_CONNECTIONS +MAX_WRITE_LOCK_COUNT +MIN_EXAMINED_ROW_LIMIT +MULTI_RANGE_COUNT +MYISAM_DATA_POINTER_SIZE +MYISAM_MAX_SORT_FILE_SIZE +MYISAM_MMAP_SIZE +MYISAM_RECOVER_OPTIONS +MYISAM_REPAIR_THREADS +MYISAM_SORT_BUFFER_SIZE +MYISAM_STATS_METHOD +MYISAM_USE_MMAP +NET_BUFFER_LENGTH +NET_READ_TIMEOUT +NET_RETRY_COUNT +NET_WRITE_TIMEOUT +NEW +OLD +OLD_ALTER_TABLE +OLD_PASSWORDS +OPEN_FILES_LIMIT +OPTIMIZER_FIX +OPTIMIZER_PRUNE_LEVEL +OPTIMIZER_SEARCH_DEPTH +OPTIMIZER_SWITCH +PERFORMANCE_SCHEMA +PERFORMANCE_SCHEMA_EVENTS_WAITS_HISTORY_LONG_SIZE +PERFORMANCE_SCHEMA_EVENTS_WAITS_HISTORY_SIZE +PERFORMANCE_SCHEMA_MAX_COND_CLASSES +PERFORMANCE_SCHEMA_MAX_COND_INSTANCES +PERFORMANCE_SCHEMA_MAX_FILE_CLASSES +PERFORMANCE_SCHEMA_MAX_FILE_HANDLES +PERFORMANCE_SCHEMA_MAX_FILE_INSTANCES +PERFORMANCE_SCHEMA_MAX_MUTEX_CLASSES +PERFORMANCE_SCHEMA_MAX_MUTEX_INSTANCES +PERFORMANCE_SCHEMA_MAX_RWLOCK_CLASSES +PERFORMANCE_SCHEMA_MAX_RWLOCK_INSTANCES +PERFORMANCE_SCHEMA_MAX_TABLE_HANDLES +PERFORMANCE_SCHEMA_MAX_TABLE_INSTANCES +PERFORMANCE_SCHEMA_MAX_THREAD_CLASSES +PERFORMANCE_SCHEMA_MAX_THREAD_INSTANCES +PID_FILE +PLUGIN_DIR +PORT +PRELOAD_BUFFER_SIZE +PROFILING +PROFILING_HISTORY_SIZE +PROTOCOL_VERSION +PROXY_USER +PSEUDO_THREAD_ID +QUERY_ALLOC_BLOCK_SIZE +QUERY_CACHE_LIMIT +QUERY_CACHE_MIN_RES_UNIT +QUERY_CACHE_SIZE +QUERY_CACHE_STRIP_COMMENTS +QUERY_CACHE_TYPE +QUERY_CACHE_WLOCK_INVALIDATE +QUERY_PREALLOC_SIZE +QUERY_RESPONSE_TIME_RANGE_BASE +QUERY_RESPONSE_TIME_STATS +RAND_SEED1 +RAND_SEED2 +RANGE_ALLOC_BLOCK_SIZE +READ_BUFFER_SIZE +READ_ONLY +READ_RND_BUFFER_SIZE +RELAY_LOG +RELAY_LOG_INDEX +RELAY_LOG_INFO_FILE +RELAY_LOG_PURGE +RELAY_LOG_RECOVERY +RELAY_LOG_SPACE_LIMIT +REPORT_HOST +REPORT_PASSWORD +REPORT_PORT +REPORT_USER +RPL_RECOVERY_RANK +SECURE_AUTH +SECURE_FILE_PRIV +SERVER_ID +SKIP_EXTERNAL_LOCKING +SKIP_NAME_RESOLVE +SKIP_NETWORKING +SKIP_SHOW_DATABASE +SLAVE_COMPRESSED_PROTOCOL +SLAVE_EXEC_MODE +SLAVE_LOAD_TMPDIR +SLAVE_NET_TIMEOUT +SLAVE_SKIP_ERRORS +SLAVE_TRANSACTION_RETRIES +SLAVE_TYPE_CONVERSIONS +SLOW_LAUNCH_TIME +SLOW_QUERY_LOG +SLOW_QUERY_LOG_FILE +SLOW_QUERY_LOG_TIMESTAMP_ALWAYS +SLOW_QUERY_LOG_TIMESTAMP_PRECISION +SLOW_QUERY_LOG_USE_GLOBAL_CONTROL +SOCKET +SORT_BUFFER_SIZE +SQL_AUTO_IS_NULL +SQL_BIG_SELECTS +SQL_BIG_TABLES +SQL_BUFFER_RESULT +SQL_LOG_BIN +SQL_LOG_OFF +SQL_LOW_PRIORITY_UPDATES +SQL_MAX_JOIN_SIZE +SQL_MODE +SQL_NOTES +SQL_QUOTE_SHOW_CREATE +SQL_SAFE_UPDATES +SQL_SELECT_LIMIT +SQL_SLAVE_SKIP_COUNTER +SQL_WARNINGS +SSL_CA +SSL_CAPATH +SSL_CERT +SSL_CIPHER +SSL_KEY +STORAGE_ENGINE +SYNC_BINLOG +SYNC_FRM +SYNC_MASTER_INFO +SYNC_RELAY_LOG +SYNC_RELAY_LOG_INFO +SYSTEM_TIME_ZONE +TABLE_DEFINITION_CACHE +TABLE_OPEN_CACHE +THREAD_CACHE_SIZE +THREAD_CONCURRENCY +THREAD_HANDLING +THREAD_STACK +THREAD_STATISTICS +TIMED_MUTEXES +TIMESTAMP +TIME_FORMAT +TIME_ZONE +TMPDIR +TMP_TABLE_SIZE +TRANSACTION_ALLOC_BLOCK_SIZE +TRANSACTION_PREALLOC_SIZE +TX_ISOLATION +UNIQUE_CHECKS +UPDATABLE_VIEWS_WITH_LIMIT +USERSTAT +VERSION +VERSION_COMMENT +VERSION_COMPILE_MACHINE +VERSION_COMPILE_OS +WAIT_TIMEOUT +WARNING_COUNT diff --git a/mysql-test/suite/percona/percona_server_variables_release.test b/mysql-test/suite/percona/percona_server_variables_release.test new file mode 100644 index 00000000000..b145843ab22 --- /dev/null +++ b/mysql-test/suite/percona/percona_server_variables_release.test @@ -0,0 +1,2 @@ +--source include/have_nodebug.inc +--source percona_server_variables.inc diff --git a/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl-master.opt b/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl-master.opt new file mode 100644 index 00000000000..233b50a1f89 --- /dev/null +++ b/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl-master.opt @@ -0,0 +1 @@ +--slow_query_log_timestamp_always diff --git a/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl.result b/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl.result new file mode 100644 index 00000000000..13684fad10c --- /dev/null +++ b/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl.result @@ -0,0 +1,3 @@ +show global variables like 'slow_query_log_timestamp_always'; +Variable_name Value +slow_query_log_timestamp_always ON diff --git a/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl.test b/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl.test new file mode 100644 index 00000000000..e73c4202869 --- /dev/null +++ b/mysql-test/suite/percona/percona_slow_extended-slow_query_log_timestamp_always-cl.test @@ -0,0 +1 @@ +show global variables like 'slow_query_log_timestamp_always'; diff --git a/mysql-test/suite/percona/percona_slow_extended-use_global_control-master.opt b/mysql-test/suite/percona/percona_slow_extended-use_global_control-master.opt new file mode 100644 index 00000000000..bd62c08c475 --- /dev/null +++ b/mysql-test/suite/percona/percona_slow_extended-use_global_control-master.opt @@ -0,0 +1 @@ +--slow-query-log-file=percona_slow_query_log-control_global_slow.log --long-query-time=1 diff --git a/mysql-test/suite/percona/percona_slow_extended-use_global_control.result b/mysql-test/suite/percona/percona_slow_extended-use_global_control.result new file mode 100644 index 00000000000..699c95e9671 --- /dev/null +++ b/mysql-test/suite/percona/percona_slow_extended-use_global_control.result @@ -0,0 +1,12 @@ +SELECT sleep(2); +sleep(2) +0 +set global log_slow_verbosity=innodb; +set global slow_query_log_use_global_control="log_slow_verbosity,long_query_time"; +SELECT sleep(2); +sleep(2) +0 +set global slow_query_log_use_global_control=''; +set global log_slow_verbosity=''; +FLUSH LOGS; +1 diff --git a/mysql-test/suite/percona/percona_slow_extended-use_global_control.test b/mysql-test/suite/percona/percona_slow_extended-use_global_control.test new file mode 100644 index 00000000000..199b652561c --- /dev/null +++ b/mysql-test/suite/percona/percona_slow_extended-use_global_control.test @@ -0,0 +1,12 @@ +source include/have_xtradb.inc; +SELECT sleep(2); +set global log_slow_verbosity=innodb; +set global slow_query_log_use_global_control="log_slow_verbosity,long_query_time"; +SELECT sleep(2); +set global slow_query_log_use_global_control=''; +set global log_slow_verbosity=''; + +FLUSH LOGS; +--let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-control_global_slow.log +--let grep_pattern = No InnoDB statistics available for this query +--source grep.inc diff --git a/mysql-test/suite/percona/percona_suppress_log_warning_1592.result b/mysql-test/suite/percona/percona_suppress_log_warning_1592.result deleted file mode 100644 index 4715499b08f..00000000000 --- a/mysql-test/suite/percona/percona_suppress_log_warning_1592.result +++ /dev/null @@ -1,28 +0,0 @@ -SET @old_log_warnings = @@log_warnings; -SET @old_suppress_log_warning_1592 = @@suppress_log_warning_1592; -DROP TABLE IF EXISTS t1; -CREATE TABLE t1 (a VARCHAR(36), b VARCHAR(20)); -SET GLOBAL SUPPRESS_LOG_WARNING_1592 = 0; -SET GLOBAL LOG_WARNINGS = 0; -INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); -Warnings: -Note 1592 Statement may not be safe to log in statement format. -SET GLOBAL LOG_WARNINGS = 1; -INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); -Warnings: -Note 1592 Statement may not be safe to log in statement format. -SET GLOBAL SUPPRESS_LOG_WARNING_1592 = 1; -SET GLOBAL LOG_WARNINGS = 0; -INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); -Warnings: -Note 1592 Statement may not be safe to log in statement format. -SET GLOBAL LOG_WARNINGS = 1; -INSERT INTO t1 VALUES(UUID(), 'suppress_1592'); -Warnings: -Note 1592 Statement may not be safe to log in statement format. -DROP TABLE t1; -SET GLOBAL log_warnings = @old_log_warnings; -SET GLOBAL suppress_log_warning_1592 = @old_suppress_log_warning_1592; -# Count the number of times the "Unsafe" message was printed -# to the error log. -Occurrences: 1 diff --git a/mysql-test/suite/percona/percona_xtradb_admin_command.test b/mysql-test/suite/percona/percona_xtradb_admin_command.test index 5dc3fb2b33a..b675c2afa21 100644 --- a/mysql-test/suite/percona/percona_xtradb_admin_command.test +++ b/mysql-test/suite/percona/percona_xtradb_admin_command.test @@ -1,3 +1,3 @@ ---source include/have_innodb.inc +--source include/have_xtradb.inc select * from information_schema.XTRADB_ADMIN_COMMAND; select * from information_schema.XTRADB_ADMIN_COMMAND /*!XTRA_HELLO*/; diff --git a/mysql-test/suite/percona/percona_xtradb_bug317074.result b/mysql-test/suite/percona/percona_xtradb_bug317074.result index 82a98844652..7c1876fb7bf 100644 --- a/mysql-test/suite/percona/percona_xtradb_bug317074.result +++ b/mysql-test/suite/percona/percona_xtradb_bug317074.result @@ -1,4 +1,5 @@ SET @old_innodb_file_format=@@innodb_file_format; +SET @old_innodb_file_format_max=@@innodb_file_format_max; SET @old_innodb_file_per_table=@@innodb_file_per_table; SET GLOBAL innodb_file_format='Barracuda'; SET GLOBAL innodb_file_per_table=ON; diff --git a/mysql-test/suite/percona/percona_xtradb_bug317074.test b/mysql-test/suite/percona/percona_xtradb_bug317074.test index abf5d8ee1f6..5f9db073060 100644 --- a/mysql-test/suite/percona/percona_xtradb_bug317074.test +++ b/mysql-test/suite/percona/percona_xtradb_bug317074.test @@ -1,8 +1,8 @@ --- source include/have_innodb.inc +-- source include/have_xtradb.inc SET @old_innodb_file_format=@@innodb_file_format; +SET @old_innodb_file_format_max=@@innodb_file_format_max; SET @old_innodb_file_per_table=@@innodb_file_per_table; -let $innodb_file_format_check_orig=`select @@innodb_file_format_check`; SET GLOBAL innodb_file_format='Barracuda'; SET GLOBAL innodb_file_per_table=ON; @@ -44,5 +44,5 @@ ALTER TABLE test1 ENGINE=MyISAM; DROP TABLE test1; SET GLOBAL innodb_file_format=@old_innodb_file_format; +SET GLOBAL innodb_file_format_max=@old_innodb_file_format_max; SET GLOBAL innodb_file_per_table=@old_innodb_file_per_table; -eval set global innodb_file_format_check=$innodb_file_format_check_orig; diff --git a/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.result b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.result index c2a15c97e8c..1a447a194e7 100644 --- a/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.result +++ b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.result @@ -1,16 +1,21 @@ SET @old_slow_query_log_file=@@global.slow_query_log_file; SET GLOBAL slow_query_log=on; -SET LOCAL profiling_server=on; -SET LOCAL long_query_time=1; +SET LOCAL log_slow_verbosity='profiling'; +SET LOCAL long_query_time=0; SET GLOBAL slow_query_log_file='MYSQLTEST_VARDIR/percona_bug643149_slow.log';; -SELECT SLEEP(2); -SLEEP(2) -0 -# Time: X X:X:X +SELECT 1; +1 +1 # User@Host: root[root] @ localhost [] -# Thread_id: X Schema: test Last_errno: X Killed: X -# Query_time: X.X Lock_time: X.X Rows_sent: X Rows_examined: X Rows_affected: X Rows_read: X -# Bytes_sent: X Tmp_tables: X Tmp_disk_tables: X Tmp_table_sizes: X -# Profile_starting: X.X Profile_starting_cpu: X.X Profile_checking_permissions: X.X Profile_checking_permissions_cpu: X.X Profile_Opening_tables: X.X Profile_Opening_tables_cpu: X.X Profile_init: X.X Profile_init_cpu: X.X Profile_optimizing: X.X Profile_optimizing_cpu: X.X Profile_executing: X.X Profile_executing_cpu: X.X Profile_User_sleep: X.X Profile_User_sleep_cpu: X.X Profile_end: X.X Profile_end_cpu: X.X Profile_query_end: X.X Profile_query_end_cpu: X.X Profile_freeing_items: X.X Profile_freeing_items_cpu: X.X Profile_logging_slow_query: X.X Profile_logging_slow_query_cpu: X.X +# Thread_id: X Schema: test Last_errno: X Killed: X +# Query_time: X.X Lock_time: X.X Rows_sent: X Rows_examined: X Rows_affected: X Rows_read: X +# Bytes_sent: X Tmp_tables: X Tmp_disk_tables: X Tmp_table_sizes: X +# Profile_starting: X.X Profile_starting_cpu: X.X Profile_Opening_tables: X.X Profile_Opening_tables_cpu: X.X Profile_query_end: X.X Profile_query_end_cpu: X.X Profile_closing_tables: X.X Profile_closing_tables_cpu: X.X Profile_freeing_items: X.X Profile_freeing_items_cpu: X.X Profile_logging_slow_query: X.X Profile_logging_slow_query_cpu: X.X +# Profile_total: X.X Profile_total_cpu: X.X +# User@Host: root[root] @ localhost [] +# Thread_id: X Schema: test Last_errno: X Killed: X +# Query_time: X.X Lock_time: X.X Rows_sent: X Rows_examined: X Rows_affected: X Rows_read: X +# Bytes_sent: X Tmp_tables: X Tmp_disk_tables: X Tmp_table_sizes: X +# Profile_starting: X.X Profile_starting_cpu: X.X Profile_checking_permissions: X.X Profile_checking_permissions_cpu: X.X Profile_Opening_tables: X.X Profile_Opening_tables_cpu: X.X Profile_init: X.X Profile_init_cpu: X.X Profile_optimizing: X.X Profile_optimizing_cpu: X.X Profile_executing: X.X Profile_executing_cpu: X.X Profile_end: X.X Profile_end_cpu: X.X Profile_query_end: X.X Profile_query_end_cpu: X.X Profile_closing_tables: X.X Profile_closing_tables_cpu: X.X Profile_freeing_items: X.X Profile_freeing_items_cpu: X.X Profile_logging_slow_query: X.X Profile_logging_slow_query_cpu: X.X # Profile_total: X.X Profile_total_cpu: X.X SET GLOBAL slow_query_log_file=@old_slow_query_log_file; diff --git a/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.test b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.test index b4a9ac7bc65..fa31b169a19 100644 --- a/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.test +++ b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.test @@ -9,20 +9,19 @@ # If this bug is fixed please # 1. try this test with "let $fixed_bug38124 = 0;" # 2. remove all workarounds if 1. was successful. +--source include/have_profiling.inc let $fixed_bug38124 = 0; SET @old_slow_query_log_file=@@global.slow_query_log_file; SET GLOBAL slow_query_log=on; -SET LOCAL profiling_server=on; -SET LOCAL long_query_time=1; +SET LOCAL log_slow_verbosity='profiling'; +SET LOCAL long_query_time=0; let slogfile=$MYSQLTEST_VARDIR/percona_bug643149_slow.log; --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR --eval SET GLOBAL slow_query_log_file='$slogfile'; ---disable_ps_protocol -SELECT SLEEP(2); ---enable_ps_protocol +SELECT 1; perl; $slogfile= $ENV{'slogfile'}; @@ -31,8 +30,8 @@ perl; die("Unable to read slow query log file $slogfile: $!\n"); while(<FILE>) { next if (!/^#/); + next if (/^# Time:/); s/[0-9]+/X/g; - s/ +/ /g; print; } diff --git a/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc index bed87bd4c22..d55e52d5b64 100644 --- a/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc +++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc @@ -1,95 +1,95 @@ ---source include/percona_query_cache_with_comments_clear.inc +--source percona_query_cache_with_comments_clear.inc let $query=/* with comment first */select * from t1; eval $query; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=# with comment first select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=-- with comment first select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=/* with comment first and "quote" */select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=# with comment first and "quote" select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=-- with comment first and "quote" select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query= /* with comment and whitespaces first */select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query= # with comment and whitespaces first select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query= -- with comment and whitespaces first select * from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $internal=* internal comment *; let $query=select * /$internal/ from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select */$internal/ from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select */$internal/from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $internal=* internal comment with "quote" *; let $query=select * /$internal/ from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select */$internal/ from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select */$internal/from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 ; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 ; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 ; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 /* comment in the end */; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 /* *\/ */; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 /* comment in the end */ ; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 #comment in the end; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 #comment in the end ; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 -- comment in the end; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select * from t1 -- comment in the end ; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc let $query=select ' \' ' from t1; ---source include/percona_query_cache_with_comments_eval.inc +--source percona_query_cache_with_comments_eval.inc diff --git a/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_begin.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_begin.inc index 38bfce20263..6bfd2bfbc83 100644 --- a/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_begin.inc +++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_begin.inc @@ -9,4 +9,4 @@ drop table if exists t1; create table t1 (a int not null); insert into t1 values (1),(2),(3); ---source include/percona_query_cache_with_comments_clear.inc +--source percona_query_cache_with_comments_clear.inc diff --git a/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_eval.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_eval.inc index a409786d554..f0c200245e0 100644 --- a/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_eval.inc +++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_eval.inc @@ -1,7 +1,7 @@ echo -----------------------------------------------------; echo $query; echo -----------------------------------------------------; ---source include/percona_query_cache_with_comments_show.inc +--source percona_query_cache_with_comments_show.inc eval $query; eval $query; ---source include/percona_query_cache_with_comments_show.inc +--source percona_query_cache_with_comments_show.inc diff --git a/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.result b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.result index 348dcef4d30..678ed685a5b 100644 --- a/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.result +++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.result @@ -1,4 +1,4 @@ -set GLOBAL query_cache_size=1355776; +SET GLOBAL query_cache_size=1355776; flush query cache; flush query cache; reset query cache; @@ -8,20 +8,16 @@ CREATE TABLE t(id INT, number INT); INSERT INTO t VALUES (0,1); INSERT INTO t VALUES (1,2); INSERT INTO t VALUES (2,3); +SET SESSION debug="+d,status_waiting_on_query_cache_mutex_sleep"; +SET DEBUG_SYNC='status_waiting_on_query_cache_mutex SIGNAL thread_ready'; SELECT number from t where id > 0; -number -2 -3 -SET SESSION debug="+d,status_wait_query_cache_mutex_sleep"; -SELECT number from t where id > 0; -SET SESSION debug="+d,status_wait_query_cache_mutex_sleep"; -SELECT number from t where id > 0; -SET SESSION debug="+d,status_wait_query_cache_mutex_sleep"; SHOW PROCESSLIST; -Id User Host db Command Time State Info -Id root localhost test Sleep Time NULL -Id root localhost test Query Time Waiting on query cache mutex SELECT number from t where id > 0 -Id root localhost test Query Time Waiting on query cache mutex SELECT number from t where id > 0 -Id root localhost test Query Time NULL SHOW PROCESSLIST +Id User Host db Command Time State Info Rows_sent Rows_examined Rows_read +### root ### test Query ### NULL SHOW PROCESSLIST ### ### ### +### root ### test Query ### Waiting on query cache mutex SELECT number from t where id > 0 ### ### ### +SELECT id, info, state FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id; +id info state +### SELECT id, info, state FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id executing +### SELECT number from t where id > 0 Waiting on query cache mutex DROP TABLE t; -set GLOBAL query_cache_size=0; +SET GLOBAL query_cache_size=0; diff --git a/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.test b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.test index 3bbfe0edca9..1e586ca4e7a 100644 --- a/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.test +++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.test @@ -1,6 +1,7 @@ --source include/have_query_cache.inc --source include/have_debug.inc -set GLOBAL query_cache_size=1355776; +--source include/have_debug_sync.inc +SET GLOBAL query_cache_size=1355776; --source include/percona_query_cache_with_comments_clear.inc -- disable_warnings @@ -10,28 +11,21 @@ CREATE TABLE t(id INT, number INT); INSERT INTO t VALUES (0,1); INSERT INTO t VALUES (1,2); INSERT INTO t VALUES (2,3); -SELECT number from t where id > 0; ---connect (conn0,localhost,root,,) ---connect (conn1,localhost,root,,) ---connect (conn2,localhost,root,,) ---connection conn0 ---error 0, ER_UNKNOWN_SYSTEM_VARIABLE -SET SESSION debug="+d,status_wait_query_cache_mutex_sleep"; -SEND SELECT number from t where id > 0; -SLEEP 1.0; +--connect (conn,localhost,root,,) ---connection conn1 ---error 0, ER_UNKNOWN_SYSTEM_VARIABLE -SET SESSION debug="+d,status_wait_query_cache_mutex_sleep"; +--connection conn +SET SESSION debug="+d,status_waiting_on_query_cache_mutex_sleep"; +SET DEBUG_SYNC='status_waiting_on_query_cache_mutex SIGNAL thread_ready'; SEND SELECT number from t where id > 0; -SLEEP 1.0; ---connection conn2 ---error 0, ER_UNKNOWN_SYSTEM_VARIABLE -SET SESSION debug="+d,status_wait_query_cache_mutex_sleep"; ---replace_column 1 Id 6 Time +--connection default +--replace_column 1 ### 3 ### 6 ### 9 ### 10 ### 11 ### SHOW PROCESSLIST; +--replace_column 1 ### +SELECT id, info, state FROM INFORMATION_SCHEMA.PROCESSLIST ORDER BY id; + +--disconnect conn DROP TABLE t; -set GLOBAL query_cache_size=0; +SET GLOBAL query_cache_size=0; diff --git a/mysql-test/suite/percona/query_response_time-replication.inc b/mysql-test/suite/percona/query_response_time-replication.inc new file mode 100644 index 00000000000..9bd811a9a1b --- /dev/null +++ b/mysql-test/suite/percona/query_response_time-replication.inc @@ -0,0 +1,57 @@ +connection master; + +CREATE TABLE t(id INT); + +connection slave; +SET GLOBAL query_exec_time = 0.1; +--source include/restart_slave_sql.inc + +connection slave; + +SET SESSION query_exec_time=0.1; + +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +--eval SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=$base +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; + +connection master; + +SET SESSION query_exec_time = 0.31; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.32; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.33; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.34; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.35; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.36; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.37; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.38; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.39; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.4; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.1; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.2; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.3; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.5; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 1.4; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 0.5; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.1; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.3; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 2.5; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 3.1; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 4.1; INSERT INTO t VALUES(1); +SET SESSION query_exec_time = 5.1; INSERT INTO t VALUES(1); + +sync_slave_with_master; + +connection slave; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +SHOW QUERY_RESPONSE_TIME; +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; + +SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=default; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=default; + +connection master; +DROP TABLE t; + +sync_slave_with_master; diff --git a/mysql-test/suite/percona/query_response_time-stored.inc b/mysql-test/suite/percona/query_response_time-stored.inc new file mode 100644 index 00000000000..a1fc8912aab --- /dev/null +++ b/mysql-test/suite/percona/query_response_time-stored.inc @@ -0,0 +1,37 @@ +SET SESSION query_exec_time=0.1; + +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +EVAL SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=$base; +FLUSH QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; + +CALL test_f(0.31); +CALL test_f(0.32); +CALL test_f(0.33); +CALL test_f(0.34); +CALL test_f(0.35); +CALL test_f(0.36); +CALL test_f(0.37); +CALL test_f(0.38); +CALL test_f(0.39); +CALL test_f(0.4); +CALL test_f(1.1); +CALL test_f(1.2); +CALL test_f(1.3); +CALL test_f(1.5); +CALL test_f(1.4); +CALL test_f(0.5); +CALL test_f(2.1); +CALL test_f(2.3); +CALL test_f(2.5); +CALL test_f(3.1); +CALL test_f(4.1); +CALL test_f(5.1); + +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; + +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +SHOW QUERY_RESPONSE_TIME; +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; + +SET SESSION query_exec_time=default; diff --git a/mysql-test/suite/percona/query_response_time.inc b/mysql-test/suite/percona/query_response_time.inc new file mode 100644 index 00000000000..734d3f5a262 --- /dev/null +++ b/mysql-test/suite/percona/query_response_time.inc @@ -0,0 +1,43 @@ +SET SESSION query_exec_time=0.1; + +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; +EVAL SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE=$base; +FLUSH QUERY_RESPONSE_TIME; +# Following two queries check works of FLUSH and +# respecting of "QUERY_RESPONSE_TIME_STATS" variable (see launchpad bug #855312) +SHOW QUERY_RESPONSE_TIME; +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; +SET GLOBAL QUERY_RESPONSE_TIME_STATS=1; + +SET SESSION query_exec_time=0.31; SELECT 1; +SET SESSION query_exec_time=0.32; SELECT 1; +SET SESSION query_exec_time=0.33; SELECT 1; +SET SESSION query_exec_time=0.34; SELECT 1; +SET SESSION query_exec_time=0.35; SELECT 1; +SET SESSION query_exec_time=0.36; SELECT 1; +SET SESSION query_exec_time=0.37; SELECT 1; +SET SESSION query_exec_time=0.38; SELECT 1; +SET SESSION query_exec_time=0.39; SELECT 1; +SET SESSION query_exec_time=0.4; SELECT 1; +SET SESSION query_exec_time=1.1; SELECT 1; +SET SESSION query_exec_time=1.2; SELECT 1; +SET SESSION query_exec_time=1.3; SELECT 1; +SET SESSION query_exec_time=1.5; SELECT 1; +SET SESSION query_exec_time=1.4; SELECT 1; +SET SESSION query_exec_time=0.5; SELECT 1; +SET SESSION query_exec_time=2.1; SELECT 1; +SET SESSION query_exec_time=2.3; SELECT 1; +SET SESSION query_exec_time=2.5; SELECT 1; +SET SESSION query_exec_time=3.1; SELECT 1; +SET SESSION query_exec_time=4.1; SELECT 1; +SET SESSION query_exec_time=5.1; SELECT 1; + +SET SESSION query_exec_time=0.1; + +SET GLOBAL QUERY_RESPONSE_TIME_STATS=0; + +SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE'; +SHOW QUERY_RESPONSE_TIME; +SELECT * FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME; + +SET SESSION query_exec_time=default; diff --git a/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.result b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.result index 15cefd67c1e..b98e4a93953 100644 --- a/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.result +++ b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.result @@ -1,21 +1,69 @@ include/master-slave.inc [connection master] +call mtr.add_suppression("Slave SQL: Request to stop slave SQL Thread received while applying a group that has non-transactional changes"); +include/rpl_connect.inc [creating slave_lock] +include/rpl_connect.inc [creating slave_nolock] +[master] DROP TABLE IF EXISTS t; CREATE TABLE t(id INT); -INSERT INTO t SELECT SLEEP(10); +[slave] +SET DEBUG_SYNC='RESET'; +SET GLOBAL DEBUG="+d,after_mysql_insert,after_show_slave_status"; +[master] +INSERT INTO t VALUES(0); +[slave] +check 'SHOW SLAVE STATUS' and 'SHOW SLAVE STATUS NOLOCK' - both should work fine + +[slave_lock] +SHOW SLAVE STATUS; +SET DEBUG_SYNC='now WAIT_FOR signal.after_show_slave_status TIMEOUT 1'; +SIGNAL after SHOW SLAVE STATUS is 'signal.after_show_slave_status' +[slave] +SET DEBUG_SYNC='now SIGNAL signal.empty'; +[slave_nolock] +SHOW SLAVE STATUS NOLOCK; +SET DEBUG_SYNC='now WAIT_FOR signal.after_show_slave_status TIMEOUT 1'; +# should be 'signal.after_show_slave_status' +SIGNAL after SHOW SLAVE STATUS NOLOCK is 'signal.after_show_slave_status' +[slave] +SET DEBUG_SYNC='now SIGNAL signal.continue'; +[slave] +SET DEBUG_SYNC='now SIGNAL signal.empty'; + +[master] +INSERT INTO t VALUES(1); +[slave] +include/rpl_connect.inc [creating slave_stop] +[slave_stop] STOP SLAVE; -Warnings: -Note 1592 Statement may not be safe to log in statement format. -master count(*) -master 1 -slave count(*) -slave 0 +[slave] +check 'SHOW SLAVE STATUS' and 'SHOW SLAVE STATUS NOLOCK' - just NOLOCK version should works fine + +[slave_lock] +SHOW SLAVE STATUS; +SET DEBUG_SYNC='now WAIT_FOR signal.after_show_slave_status TIMEOUT 1'; +SIGNAL after SHOW SLAVE STATUS is 'signal.empty' +[slave] +SET DEBUG_SYNC='now SIGNAL signal.empty'; +[slave_nolock] SHOW SLAVE STATUS NOLOCK; +SET DEBUG_SYNC='now WAIT_FOR signal.after_show_slave_status TIMEOUT 1'; +# should be 'signal.after_show_slave_status' +SIGNAL after SHOW SLAVE STATUS NOLOCK is 'signal.after_show_slave_status' +[slave] +SET DEBUG_SYNC='now SIGNAL signal.continue'; +[slave] +SET DEBUG_SYNC='now SIGNAL signal.empty'; + +[slave_stop] include/wait_for_slave_to_stop.inc START SLAVE; include/wait_for_slave_to_start.inc -slave count(*) -slave 1 +[master] +SET DEBUG_SYNC='RESET'; +[slave] +SET GLOBAL DEBUG=''; +SET DEBUG_SYNC='RESET'; +[master] DROP TABLE t; -STOP SLAVE; -include/wait_for_slave_to_stop.inc +include/rpl_end.inc diff --git a/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.test b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.test index d8ae98262ea..df595214ff7 100644 --- a/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.test +++ b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.test @@ -1,50 +1,90 @@ --source include/master-slave.inc +--source include/have_debug_sync.inc --source include/have_binlog_format_statement.inc +call mtr.add_suppression("Slave SQL: Request to stop slave SQL Thread received while applying a group that has non-transactional changes"); + +--let $rpl_connection_name=slave_lock +--let $rpl_server_number=2 +--source include/rpl_connect.inc + +--let $rpl_connection_name=slave_nolock +--let $rpl_server_number=2 +--source include/rpl_connect.inc + +--let $show_statement= SHOW PROCESSLIST +--let $field= Info + connection master; - --disable_warnings - DROP TABLE IF EXISTS t; - --enable_warnings - CREATE TABLE t(id INT); - sync_slave_with_master; +--echo [master] +--disable_warnings +DROP TABLE IF EXISTS t; +--enable_warnings +CREATE TABLE t(id INT); +sync_slave_with_master; + +connection slave; +--echo [slave] +SET DEBUG_SYNC='RESET'; +SET GLOBAL DEBUG="+d,after_mysql_insert,after_show_slave_status"; connection master; - send INSERT INTO t SELECT SLEEP(10); +--echo [master] +INSERT INTO t VALUES(0); connection slave; - sleep 15; - send STOP SLAVE; +--echo [slave] +--let $condition= 'INSERT INTO t VALUES(0)' +--source include/wait_show_condition.inc + +--echo check 'SHOW SLAVE STATUS' and 'SHOW SLAVE STATUS NOLOCK' - both should work fine +--source include/percona_show_slave_status_nolock.inc connection master; - reap; +--echo [master] +INSERT INTO t VALUES(1); - --disable_query_log - select "master",count(*) from t; - --enable_query_log +connection slave; +--echo [slave] +--let $condition= 'INSERT INTO t VALUES(1)' +--source include/wait_show_condition.inc -connection slave1; - --disable_query_log - select "slave",count(*) from t; - --enable_query_log +--let $rpl_connection_name=slave_stop +--let $rpl_server_number=2 +--source include/rpl_connect.inc - --disable_result_log - SHOW SLAVE STATUS NOLOCK; - --enable_result_log +connection slave_stop; +--echo [slave_stop] +send STOP SLAVE; connection slave; - reap; +--echo [slave] +--let $condition= 'STOP SLAVE' +--source include/wait_show_condition.inc + +--echo check 'SHOW SLAVE STATUS' and 'SHOW SLAVE STATUS NOLOCK' - just NOLOCK version should works fine +--source include/percona_show_slave_status_nolock.inc + + +connection slave_stop; +--echo [slave_stop] +reap; +--source include/wait_for_slave_to_stop.inc +START SLAVE; +--source include/wait_for_slave_to_start.inc - --source include/wait_for_slave_to_stop.inc - START SLAVE; - --source include/wait_for_slave_to_start.inc +connection master; +--echo [master] +SET DEBUG_SYNC='RESET'; - --disable_query_log - select "slave",count(*) from t; - --enable_query_log +connection slave; +--echo [slave] +SET GLOBAL DEBUG=''; +SET DEBUG_SYNC='RESET'; connection master; - DROP TABLE t; +--echo [master] +DROP TABLE t; sync_slave_with_master; -STOP SLAVE; ---source include/wait_for_slave_to_stop.inc +--source include/rpl_end.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter-master.opt index 660c51a0b7c..865dc70ba38 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter-master.opt +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter-master.opt @@ -1 +1 @@ ---slow-query-log-file=percona_slow_query_log-log_slow_filter.log --long-query-time=1 +--slow-query-log-file=percona_slow_query_log-log_slow_filter.log --long-query-time=1 --slow_query_log=OFF diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.result index 19643db3819..2f22ef5457b 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.result @@ -1,4 +1,3 @@ -SET GLOBAL SLOW_QUERY_LOG=OFF; drop table if exists t; # Create test table create table t(id INT PRIMARY KEY) engine=InnoDB; @@ -20,6 +19,7 @@ sleep(2) SELECT sleep(2); sleep(2) 0 +SET GLOBAL SLOW_QUERY_LOG=OFF; drop table if exists t; FLUSH LOGS; 2 diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.test index c9efa2d8a48..292c1651e34 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.test @@ -1,6 +1,4 @@ -source include/have_innodb.inc; - -SET GLOBAL SLOW_QUERY_LOG=OFF; +source include/have_xtradb.inc; --disable_warnings drop table if exists t; @@ -22,6 +20,8 @@ set log_slow_filter=full_join; SELECT sleep(2) union select t2.id from t as t1,t as t2; SELECT sleep(2); +SET GLOBAL SLOW_QUERY_LOG=OFF; + --disable_warnings drop table if exists t; --enable_warnings @@ -29,4 +29,4 @@ drop table if exists t; FLUSH LOGS; --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-log_slow_filter.log --let grep_pattern = Query_time ---source include/grep.inc +--source grep.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.test index 4fb854d6de6..e95ab54af61 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.test @@ -1,4 +1,4 @@ -source include/have_innodb.inc; +source include/have_xtradb.inc; SELECT sleep(2); @@ -9,4 +9,4 @@ SELECT sleep(2); FLUSH LOGS; --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-log_slow_verbosity.log --let grep_pattern = No InnoDB statistics available for this query ---source include/grep.inc +--source grep.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time-master.opt index 8064e04b846..62e1e981558 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time-master.opt +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time-master.opt @@ -1 +1 @@ ---slow-query-log-file=percona_slow_query_log-long_query_time.log --long-query-time=2 +--slow-query-log-file=percona_slow_query_log-long_query_time.log --long-query-time=2 --slow-query-log=OFF diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.result index 0b72a23dd1b..f2da4e4d9d6 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.result @@ -1,3 +1,4 @@ +SET GLOBAL SLOW_QUERY_LOG=ON; SELECT sleep(1); sleep(1) 0 @@ -18,5 +19,6 @@ SELECT sleep(5); sleep(5) 0 set long_query_time=2; +SET GLOBAL SLOW_QUERY_LOG=OFF; FLUSH LOGS; 3 diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.test index 1d4babd6402..716cc7cb0c3 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.test @@ -1,4 +1,6 @@ -source include/have_innodb.inc; +source include/have_xtradb.inc; + +SET GLOBAL SLOW_QUERY_LOG=ON; SELECT sleep(1); SELECT sleep(3); @@ -12,8 +14,10 @@ SELECT sleep(5); set long_query_time=2; +SET GLOBAL SLOW_QUERY_LOG=OFF; + FLUSH LOGS; --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-long_query_time.log --let grep_pattern = Query_time ---source include/grep.inc +--source grep.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended-master.opt index 37a30b1384f..ca486d356f5 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended-master.opt +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended-master.opt @@ -1 +1 @@ ---slow-query-log-file=percona_slow_query_log-microseconds_in_slow_query_log.log --long-query-time=1 +--slow-query-log-file=percona_slow_query_log-microseconds_in_slow_query_log.log --long-query-time=1 --slow_query_log=OFF diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.result index 7eb925618b7..ce27c518efe 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.result @@ -1,11 +1,13 @@ +SET GLOBAL SLOW_QUERY_LOG=ON; SELECT sleep(2); sleep(2) 0 -set global slow_query_log_microseconds_timestamp=ON; +set global slow_query_log_timestamp_precision='microsecond'; SELECT sleep(2); sleep(2) 0 -set global slow_query_log_microseconds_timestamp=OFF; +set global slow_query_log_timestamp_precision='second'; +SET GLOBAL SLOW_QUERY_LOG=OFF; FLUSH LOGS; 1 2 diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.test index 80fa6834150..4b437b21e4c 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.test @@ -1,19 +1,23 @@ -source include/have_innodb.inc; +source include/have_xtradb.inc; + +SET GLOBAL SLOW_QUERY_LOG=ON; SELECT sleep(2); -set global slow_query_log_microseconds_timestamp=ON; +set global slow_query_log_timestamp_precision='microsecond'; SELECT sleep(2); -set global slow_query_log_microseconds_timestamp=OFF; +set global slow_query_log_timestamp_precision='second'; + +SET GLOBAL SLOW_QUERY_LOG=OFF; FLUSH LOGS; --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-microseconds_in_slow_query_log.log --let grep_pattern = # Time: [0-9]+[ ]+[0-9]+:[0-9]+:[0-9]+.[0-9]+ ---source include/grep.inc +--source grep.inc --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-microseconds_in_slow_query_log.log --let grep_pattern = # Time: [0-9]+[ ]+[0-9]+:[0-9]+:[0-9]+ ---source include/grep.inc +--source grep.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit-master.opt index d3f4e7eeb03..c1cf3ebdb30 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit-master.opt +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit-master.opt @@ -1 +1 @@ ---slow-query-log-file=percona_slow_query_log-min_examined_row_limit.log --long-query-time=1 +--slow-query-log-file=percona_slow_query_log-min_examined_row_limit.log --long-query-time=1 --slow-query-log=OFF diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.result index 5c299bd3e5c..1e8bc0723ac 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.result @@ -1,4 +1,3 @@ -SET GLOBAL SLOW_QUERY_LOG=OFF; drop table if exists t; # Create test table create table t(id INT PRIMARY KEY) engine=InnoDB; @@ -20,6 +19,7 @@ sleep(2) SELECT sleep(2); sleep(2) 0 +SET GLOBAL SLOW_QUERY_LOG=OFF; drop table if exists t; FLUSH LOGS; 2 diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.test index 861a8f17cce..ca68658a6c5 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.test @@ -1,6 +1,4 @@ -source include/have_innodb.inc; - -SET GLOBAL SLOW_QUERY_LOG=OFF; +source include/have_xtradb.inc; --disable_warnings drop table if exists t; @@ -22,6 +20,8 @@ set min_examined_row_limit=5; SELECT sleep(2) union select t2.id from t as t1,t as t2; SELECT sleep(2); +SET GLOBAL SLOW_QUERY_LOG=OFF; + --disable_warnings drop table if exists t; --enable_warnings @@ -29,4 +29,4 @@ drop table if exists t; FLUSH LOGS; --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-min_examined_row_limit.log --let grep_pattern = Query_time ---source include/grep.inc +--source grep.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.result index c2292c4d2ac..51993e767c2 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.result @@ -18,3 +18,5 @@ INSERT INTO t SELECT t.id,t.data from t; DROP TABLE IF EXISTS t; FLUSH LOGS; 4 +STOP SLAVE; +include/wait_for_slave_to_stop.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.test index 27e34ec71ad..b0a6c98870c 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.test @@ -1,5 +1,5 @@ -- source include/have_binlog_format_mixed_or_statement.inc --- source include/have_innodb.inc +-- source include/have_xtradb.inc -- source include/master-slave.inc connection master; @@ -45,4 +45,7 @@ connection slave; FLUSH LOGS; --let grep_file = $MYSQLTEST_VARDIR/mysqld.2/mysqld-slow.log --let grep_pattern = InnoDB_IO_r_ops ---source include/grep.inc +--source grep.inc + +STOP SLAVE; +-- source include/wait_for_slave_to_stop.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.result index e96126e34c7..e5f4568dd58 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.result @@ -1,14 +1,10 @@ -# Activate master-slave replication include/master-slave.inc [connection master] -# Make table t for test DROP TABLE IF EXISTS t; CREATE TABLE t(id INT); -# Start slave replication START SLAVE; include/wait_for_slave_to_start.inc INSERT INTO t VALUES (1); -# Read and change log_slow_slave_statements to ON on slave show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements OFF @@ -17,7 +13,6 @@ show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements ON INSERT INTO t VALUES (2); -# Restart slave STOP SLAVE; include/wait_for_slave_to_stop.inc START SLAVE; @@ -29,9 +24,9 @@ long_query_time 1.000000 show global variables like 'long_query_time'; Variable_name Value long_query_time 1.000000 -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_long_query_time OFF +slow_query_log_use_global_control set global long_query_time=0; show variables like 'long_query_time'; Variable_name Value @@ -39,9 +34,9 @@ long_query_time 1.000000 show global variables like 'long_query_time'; Variable_name Value long_query_time 0.000000 -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_long_query_time OFF +slow_query_log_use_global_control INSERT INTO t VALUES (4); show variables like 'long_query_time'; Variable_name Value @@ -49,19 +44,19 @@ long_query_time 1.000000 show global variables like 'long_query_time'; Variable_name Value long_query_time 0.000000 -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_long_query_time OFF -set global use_global_long_query_time=1; +slow_query_log_use_global_control +set global slow_query_log_use_global_control='long_query_time'; show variables like 'long_query_time'; Variable_name Value long_query_time 0.000000 show global variables like 'long_query_time'; Variable_name Value long_query_time 0.000000 -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_long_query_time ON +slow_query_log_use_global_control long_query_time INSERT INTO t VALUES (5); show variables like 'long_query_time'; Variable_name Value @@ -69,11 +64,11 @@ long_query_time 0.000000 show global variables like 'long_query_time'; Variable_name Value long_query_time 0.000000 -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_long_query_time ON +slow_query_log_use_global_control long_query_time set global long_query_time=1; -set global use_global_long_query_time=0; +set global slow_query_log_use_global_control=''; FLUSH LOGS; # Analyse master slow_query_log 0 diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.test index 755b83fa93b..c718b2c3d28 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.test @@ -1,68 +1,62 @@ -- source include/have_binlog_format_mixed_or_statement.inc --- echo # Activate master-slave replication -- source include/master-slave.inc connection master; --- echo # Make table t for test -- disable_warnings DROP TABLE IF EXISTS t; -- enable_warnings CREATE TABLE t(id INT); - --- echo # Start slave replication -- disable_warnings connection slave; START SLAVE; -- source include/wait_for_slave_to_start.inc -- enable_warnings -#-- echo # Make insert(1) on master connection master; INSERT INTO t VALUES (1); sync_slave_with_master; + connection slave; --- echo # Read and change log_slow_slave_statements to ON on slave show variables like 'log_slow_slave_statements'; set global log_slow_slave_statements=ON; show variables like 'log_slow_slave_statements'; -#-- echo # Make insert(2) on master connection master; INSERT INTO t VALUES (2); sync_slave_with_master; connection slave; --- echo # Restart slave + STOP SLAVE; -- source include/wait_for_slave_to_stop.inc START SLAVE; -- source include/wait_for_slave_to_start.inc -#-- echo # Make insert(3) on master connection master; INSERT INTO t VALUES (3); sync_slave_with_master; + connection slave; show variables like 'long_query_time'; show global variables like 'long_query_time'; -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; set global long_query_time=0; show variables like 'long_query_time'; show global variables like 'long_query_time'; -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; -#-- echo # Make insert(4) on master connection master; INSERT INTO t VALUES (4); sync_slave_with_master; + connection slave; show variables like 'long_query_time'; show global variables like 'long_query_time'; -show global variables like 'use_global_long_query_time'; -set global use_global_long_query_time=1; +show global variables like 'slow_query_log_use_global_control'; +set global slow_query_log_use_global_control='long_query_time'; show variables like 'long_query_time'; show global variables like 'long_query_time'; -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; #-- echo # Make insert(5) on master connection master; @@ -71,9 +65,9 @@ sync_slave_with_master; connection slave; show variables like 'long_query_time'; show global variables like 'long_query_time'; -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; set global long_query_time=1; -set global use_global_long_query_time=0; +set global slow_query_log_use_global_control=''; connection master; FLUSH LOGS; @@ -85,7 +79,7 @@ while($i) { --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_log_slow_slave_statements-master.log --let grep_pattern = INSERT INTO t VALUES \($k\) - --source include/grep.inc + --source grep.inc dec $i; inc $k; } @@ -100,7 +94,7 @@ while($i) { --let grep_file = $MYSQLTEST_VARDIR/mysqld.2/data/percona_log_slow_slave_statements-slave.log --let grep_pattern = INSERT INTO t VALUES \($k\) - --source include/grep.inc + --source grep.inc dec $i; inc $k; } @@ -108,9 +102,6 @@ set global log_slow_slave_statements=OFF; connection master; DROP TABLE t; - sync_slave_with_master; -connection slave; - STOP SLAVE; -- source include/wait_for_slave_to_stop.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.result index 6563d6d863e..0548dc370b4 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.result @@ -1,16 +1,10 @@ -# Activate master-slave replication include/master-slave.inc [connection master] -# Make table t for test DROP TABLE IF EXISTS t; CREATE TABLE t(id INT); -# Start slave replication START SLAVE; include/wait_for_slave_to_start.inc INSERT INTO t VALUES (1); -# Read information about master binlog -# Sync(1) slave thread -# Read and change log_slow_slave_statements to ON on slave show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements OFF @@ -19,17 +13,25 @@ show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements ON INSERT INTO t VALUES (2); -# Read information about master binlog -# Sync slave(2) thread -# Restart slave +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements ON +set global log_slow_slave_statements=ON; +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements ON STOP SLAVE; include/wait_for_slave_to_stop.inc START SLAVE; include/wait_for_slave_to_start.inc +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements ON +set global log_slow_slave_statements=ON; +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements ON INSERT INTO t VALUES (3); -# Read information about master binlog -# Sync(3) slave thread -# Read and change log_slow_slave_statements to OFF on slave show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements ON @@ -38,17 +40,17 @@ show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements OFF INSERT INTO t VALUES (4); -# Read information about master binlog -# Sync slave(4) thread -# Restart slave +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements OFF STOP SLAVE; include/wait_for_slave_to_stop.inc START SLAVE; include/wait_for_slave_to_start.inc +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements OFF INSERT INTO t VALUES (5); -# Read information about master binlog -# Sync slave(5) thread -# Read and change log_slow_slave_statements to ON on slave show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements OFF @@ -57,16 +59,17 @@ show variables like 'log_slow_slave_statements'; Variable_name Value log_slow_slave_statements ON INSERT INTO t VALUES (6); -# Read information about master binlog -# Sync slave(6) thread -# Restart slave +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements ON STOP SLAVE; include/wait_for_slave_to_stop.inc START SLAVE; include/wait_for_slave_to_start.inc +show variables like 'log_slow_slave_statements'; +Variable_name Value +log_slow_slave_statements ON INSERT INTO t VALUES (7); -# Read information about master binlog -# Sync slave(7) thread FLUSH LOGS; # Analyse master slow_query_log 1 @@ -87,7 +90,5 @@ FLUSH LOGS; 1 set global log_slow_slave_statements=OFF; DROP TABLE t; -# Read information about master binlog -# Sync slave(8) thread STOP SLAVE; include/wait_for_slave_to_stop.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.test index bdf37533933..88c74bab69b 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.test @@ -1,126 +1,98 @@ --- source include/have_binlog_format_mixed_or_statement.inc --- echo # Activate master-slave replication +-- source include/have_binlog_format_statement.inc -- source include/master-slave.inc connection master; --- echo # Make table t for test -- disable_warnings DROP TABLE IF EXISTS t; -- enable_warnings -CREATE TABLE t(id INT); +CREATE TABLE t(id INT); --- echo # Start slave replication -- disable_warnings connection slave; START SLAVE; -- source include/wait_for_slave_to_start.inc -- enable_warnings -#-- echo # Make insert(1) on master connection master; INSERT INTO t VALUES (1); --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); +sync_slave_with_master; --- echo # Sync(1) slave thread connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; - --- echo # Read and change log_slow_slave_statements to ON on slave show variables like 'log_slow_slave_statements'; set global log_slow_slave_statements=ON; show variables like 'log_slow_slave_statements'; -#-- echo # Make insert(2) on master connection master; INSERT INTO t VALUES (2); --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); +sync_slave_with_master; --- echo # Sync slave(2) thread connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; --- echo # Restart slave +show variables like 'log_slow_slave_statements'; +set global log_slow_slave_statements=ON; +show variables like 'log_slow_slave_statements'; + STOP SLAVE; -- source include/wait_for_slave_to_stop.inc START SLAVE; -- source include/wait_for_slave_to_start.inc -#-- echo # Make insert(3) on master +connection slave; +show variables like 'log_slow_slave_statements'; +set global log_slow_slave_statements=ON; +show variables like 'log_slow_slave_statements'; + connection master; INSERT INTO t VALUES (3); --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); +sync_slave_with_master; --- echo # Sync(3) slave thread connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; --- echo # Read and change log_slow_slave_statements to OFF on slave show variables like 'log_slow_slave_statements'; set global log_slow_slave_statements=OFF; show variables like 'log_slow_slave_statements'; -#-- echo # Make insert(4) on master connection master; INSERT INTO t VALUES (4); --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); +sync_slave_with_master; --- echo # Sync slave(4) thread connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; --- echo # Restart slave +show variables like 'log_slow_slave_statements'; + STOP SLAVE; -- source include/wait_for_slave_to_stop.inc START SLAVE; -- source include/wait_for_slave_to_start.inc -#-- echo # Make insert(5) on master +connection slave; +show variables like 'log_slow_slave_statements'; + connection master; INSERT INTO t VALUES (5); --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); +sync_slave_with_master; --- echo # Sync slave(5) thread connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; --- echo # Read and change log_slow_slave_statements to ON on slave show variables like 'log_slow_slave_statements'; set global log_slow_slave_statements=ON; show variables like 'log_slow_slave_statements'; -#-- echo # Make insert(6) on master connection master; INSERT INTO t VALUES (6); --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); +sync_slave_with_master; --- echo # Sync slave(6) thread connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; --- echo # Restart slave +show variables like 'log_slow_slave_statements'; + STOP SLAVE; -- source include/wait_for_slave_to_stop.inc START SLAVE; -- source include/wait_for_slave_to_start.inc -#-- echo # Make insert(7) on master +connection slave; +show variables like 'log_slow_slave_statements'; + connection master; INSERT INTO t VALUES (7); --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); - --- echo # Sync slave(7) thread -connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; +sync_slave_with_master; connection master; FLUSH LOGS; @@ -132,7 +104,7 @@ while($i) { --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_log_slow_slave_statements-master.log --let grep_pattern = INSERT INTO t VALUES \($k\) - --source include/grep.inc + --source grep.inc dec $i; inc $k; } @@ -147,7 +119,7 @@ while($i) { --let grep_file = $MYSQLTEST_VARDIR/mysqld.2/data/percona_log_slow_slave_statements-slave.log --let grep_pattern = INSERT INTO t VALUES \($k\) - --source include/grep.inc + --source grep.inc dec $i; inc $k; } @@ -155,14 +127,7 @@ set global log_slow_slave_statements=OFF; connection master; DROP TABLE t; - --- echo # Read information about master binlog -let $binlog_file = query_get_value(SHOW MASTER STATUS,File,1); -let $binlog_position = query_get_value(SHOW MASTER STATUS,Position,1); - --- echo # Sync slave(8) thread -connection slave; -let $sync_result = `SELECT MASTER_POS_WAIT('$binlog_file',$binlog_position)`; +sync_slave_with_master; STOP SLAVE; -- source include/wait_for_slave_to_stop.inc diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl-master.opt index 597ad08f268..c3ebcd95326 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl-master.opt +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl-master.opt @@ -1 +1 @@ ---slow_query_log_microseconds_timestamp +--slow_query_log_timestamp_precision='microsecond' diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.result index 4f3357f95bb..5355922bb45 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.result @@ -1,3 +1,3 @@ -show global variables like 'slow_query_log_microseconds_timestamp'; +show global variables like 'slow_query_log_timestamp_precision'; Variable_name Value -slow_query_log_microseconds_timestamp ON +slow_query_log_timestamp_precision microsecond diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.test index d568f4eb816..8f6291e9897 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.test @@ -1 +1 @@ -show global variables like 'slow_query_log_microseconds_timestamp'; +show global variables like 'slow_query_log_timestamp_precision'; diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-master.opt index 5e6a2405b02..16b6ca5b714 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-master.opt +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-master.opt @@ -1 +1 @@ ---slow-query-log-file=percona_slow_query_log-use_global_long_query_time.log --long-query-time=2 --use_global_log_slow_control=long_query_time --use_global_long_query_time=1 +--slow-query-log-file=percona_slow_query_log-use_global_long_query_time.log --long-query-time=2 --slow_query_log_use_global_control=long_query_time --slow-query-log=OFF diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.result index c0333e4b59b..e89edf0430f 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.result +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.result @@ -1,3 +1,4 @@ +SET GLOBAL SLOW_QUERY_LOG=ON; SELECT sleep(1); sleep(1) 0 @@ -8,7 +9,7 @@ SELECT sleep(5); sleep(5) 0 set global long_query_time=4; -set global use_global_long_query_time=1; +set global slow_query_log_use_global_control='long_query_time'; SELECT sleep(1); sleep(1) 0 @@ -19,41 +20,27 @@ SELECT sleep(5); sleep(5) 0 set global long_query_time=2; -set global use_global_long_query_time=0; +set global slow_query_log_use_global_control=''; +SET GLOBAL SLOW_QUERY_LOG=OFF; FLUSH LOGS; 3 -show global variables like 'use_global_log_slow_control'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_log_slow_control none -show global variables like 'use_global_long_query_time'; +slow_query_log_use_global_control +set global slow_query_log_use_global_control='long_query_time'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_long_query_time OFF -set global use_global_log_slow_control = long_query_time; -show global variables like 'use_global_log_slow_control'; +slow_query_log_use_global_control long_query_time +set global slow_query_log_use_global_control='log_slow_filter,long_query_time'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_log_slow_control long_query_time -show global variables like 'use_global_long_query_time'; +slow_query_log_use_global_control log_slow_filter,long_query_time +set global slow_query_log_use_global_control='log_slow_filter'; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_long_query_time ON -set global use_global_log_slow_control = log_slow_filter; -show global variables like 'use_global_log_slow_control'; +slow_query_log_use_global_control log_slow_filter +set global slow_query_log_use_global_control=''; +show global variables like 'slow_query_log_use_global_control'; Variable_name Value -use_global_log_slow_control log_slow_filter -show global variables like 'use_global_long_query_time'; -Variable_name Value -use_global_long_query_time OFF -set global use_global_long_query_time = ON; -show global variables like 'use_global_log_slow_control'; -Variable_name Value -use_global_log_slow_control log_slow_filter,long_query_time -show global variables like 'use_global_long_query_time'; -Variable_name Value -use_global_long_query_time ON -set global use_global_long_query_time = OFF; -show global variables like 'use_global_log_slow_control'; -Variable_name Value -use_global_log_slow_control log_slow_filter -show global variables like 'use_global_long_query_time'; -Variable_name Value -use_global_long_query_time OFF -set global use_global_log_slow_control = long_query_time; +slow_query_log_use_global_control +set global slow_query_log_use_global_control='long_query_time'; diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.test index a3d74036bfe..61b2dabd23d 100644 --- a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.test +++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.test @@ -1,41 +1,40 @@ -source include/have_innodb.inc; +source include/have_xtradb.inc; + +SET GLOBAL SLOW_QUERY_LOG=ON; SELECT sleep(1); SELECT sleep(3); SELECT sleep(5); set global long_query_time=4; -set global use_global_long_query_time=1; +set global slow_query_log_use_global_control='long_query_time'; SELECT sleep(1); SELECT sleep(3); SELECT sleep(5); set global long_query_time=2; -set global use_global_long_query_time=0; +set global slow_query_log_use_global_control=''; + +SET GLOBAL SLOW_QUERY_LOG=OFF; FLUSH LOGS; --let grep_file = $MYSQLTEST_VARDIR/mysqld.1/data/percona_slow_query_log-use_global_long_query_time.log --let grep_pattern = Query_time ---source include/grep.inc +--source grep.inc -show global variables like 'use_global_log_slow_control'; -show global variables like 'use_global_long_query_time'; +show global variables like 'slow_query_log_use_global_control'; -set global use_global_log_slow_control = long_query_time; -show global variables like 'use_global_log_slow_control'; -show global variables like 'use_global_long_query_time'; +set global slow_query_log_use_global_control='long_query_time'; +show global variables like 'slow_query_log_use_global_control'; -set global use_global_log_slow_control = log_slow_filter; -show global variables like 'use_global_log_slow_control'; -show global variables like 'use_global_long_query_time'; +set global slow_query_log_use_global_control='log_slow_filter,long_query_time'; +show global variables like 'slow_query_log_use_global_control'; -set global use_global_long_query_time = ON; -show global variables like 'use_global_log_slow_control'; -show global variables like 'use_global_long_query_time'; +set global slow_query_log_use_global_control='log_slow_filter'; +show global variables like 'slow_query_log_use_global_control'; -set global use_global_long_query_time = OFF; -show global variables like 'use_global_log_slow_control'; -show global variables like 'use_global_long_query_time'; +set global slow_query_log_use_global_control=''; +show global variables like 'slow_query_log_use_global_control'; -set global use_global_log_slow_control = long_query_time; +set global slow_query_log_use_global_control='long_query_time'; diff --git a/mysql-test/suite/percona/userstat_bug602047.result b/mysql-test/suite/percona/userstat_bug602047.result index bc14ca3362a..966439b817d 100644 --- a/mysql-test/suite/percona/userstat_bug602047.result +++ b/mysql-test/suite/percona/userstat_bug602047.result @@ -1,6 +1,5 @@ DROP TABLE IF EXISTS t1; -SET @userstat_running_old= @@userstat_running; -SET GLOBAL userstat_running=ON; +SET GLOBAL userstat=ON; CREATE TABLE t1 ( id int(10), PRIMARY KEY (id)) ENGINE=InnoDB; INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); SELECT COUNT(*) FROM t1; @@ -12,5 +11,5 @@ ROWS_READ SELECT ROWS_READ FROM information_schema.index_statistics WHERE TABLE_NAME='t1'; ROWS_READ 10 -SET GLOBAL userstat_running= @userstat_running_old; +SET GLOBAL userstat=OFF; DROP TABLE t1; diff --git a/mysql-test/suite/percona/userstat_bug602047.test b/mysql-test/suite/percona/userstat_bug602047.test index 37c08d32bf0..31fc36b80e2 100644 --- a/mysql-test/suite/percona/userstat_bug602047.test +++ b/mysql-test/suite/percona/userstat_bug602047.test @@ -1,13 +1,12 @@ ---source include/have_innodb.inc +--source include/have_xtradb.inc --disable_warnings DROP TABLE IF EXISTS t1; --enable_warnings -SET @userstat_running_old= @@userstat_running; -SET GLOBAL userstat_running=ON; +SET GLOBAL userstat=ON; CREATE TABLE t1 ( id int(10), PRIMARY KEY (id)) ENGINE=InnoDB; INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); SELECT COUNT(*) FROM t1; SELECT ROWS_READ FROM information_schema.table_statistics WHERE TABLE_NAME='t1'; SELECT ROWS_READ FROM information_schema.index_statistics WHERE TABLE_NAME='t1'; -SET GLOBAL userstat_running= @userstat_running_old; +SET GLOBAL userstat=OFF; DROP TABLE t1; |