summaryrefslogtreecommitdiff
path: root/mysql-test/suite/percona
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/percona')
-rw-r--r--mysql-test/suite/percona/disabled.def1
-rw-r--r--mysql-test/suite/percona/have_response_time_distribution.require2
-rw-r--r--mysql-test/suite/percona/innodb_fix_misc_bug51325.result13
-rw-r--r--mysql-test/suite/percona/innodb_fix_misc_bug51325.test13
-rw-r--r--mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error-master.opt (renamed from mysql-test/suite/percona/percona_log_connection_error-master.opt)0
-rw-r--r--mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.result (renamed from mysql-test/suite/percona/percona_log_connection_error.result)0
-rw-r--r--mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.test (renamed from mysql-test/suite/percona/percona_log_connection_error.test)0
-rw-r--r--mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.result (renamed from mysql-test/suite/percona/percona_bug643149.result)0
-rw-r--r--mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.test (renamed from mysql-test/suite/percona/percona_bug643149.test)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc (renamed from mysql-test/suite/percona/percona_query_cache_with_comments.inc)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc.backup88
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.result (renamed from mysql-test/suite/percona/percona_query_cache_with_comments.result)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.test (renamed from mysql-test/suite/percona/percona_query_cache_with_comments.test)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_begin.inc (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_begin.inc)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_clear.inc (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_clear.inc)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_crash.result (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_crash.result)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_crash.test (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_crash.test)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_disable.result (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_disable.result)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_disable.test (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_disable.test)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_end.inc (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_end.inc)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_eval.inc (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_eval.inc)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_prepared_statements.result (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_prepared_statements.result)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_prepared_statements.test (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_prepared_statements.test)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_show.inc (renamed from mysql-test/suite/percona/percona_query_cache_with_comments_show.inc)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.result (renamed from mysql-test/suite/percona/percona_status_wait_query_cache_mutex.result)0
-rw-r--r--mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.test (renamed from mysql-test/suite/percona/percona_status_wait_query_cache_mutex.test)0
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.result70
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.test57
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.result313
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.test90
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.result567
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.test68
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_flush.inc1
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_show.inc8
-rw-r--r--mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_sleep.inc19
-rw-r--r--mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.result (renamed from mysql-test/suite/percona/percona_show_slave_status_nolock.result)0
-rw-r--r--mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.test (renamed from mysql-test/suite/percona/percona_show_slave_status_nolock.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/grep.inc (renamed from mysql-test/suite/percona/grep.inc)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined-master.opt1
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.result18
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.test6
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2-master.opt1
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.result12
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.test4
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow-master.opt1
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow.result12
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow.test12
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_filter-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.result (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_filter.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.test (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_filter.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl.result (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl.test (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl-master.opt1
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.result3
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.test1
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl.result (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl.test (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.result (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.test (renamed from mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-long_query_time-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.result (renamed from mysql-test/suite/percona/percona_slow_extended-long_query_time.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.test (renamed from mysql-test/suite/percona/percona_slow_extended-long_query_time.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-microseconds_in_slow_extended-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.result (renamed from mysql-test/suite/percona/percona_slow_extended-microseconds_in_slow_extended.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.test (renamed from mysql-test/suite/percona/percona_slow_extended-microseconds_in_slow_extended.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-min_examined_row_limit-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.result (renamed from mysql-test/suite/percona/percona_slow_extended-min_examined_row_limit.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.test (renamed from mysql-test/suite/percona/percona_slow_extended-min_examined_row_limit.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats-slave.opt (renamed from mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats-slave.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.result (renamed from mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.test (renamed from mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time-slave.opt (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time-slave.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.result (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time.test (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-slave.opt (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements-slave.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.result (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.test (renamed from mysql-test/suite/percona/percona_slow_extended-slave_statements.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-slow_query_log_microseconds_timestamp-cl-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.result (renamed from mysql-test/suite/percona/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.test (renamed from mysql-test/suite/percona/percona_slow_extended-slow_query_log_microseconds_timestamp-cl.test)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl-master.opt1
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.result3
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.test1
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-master.opt (renamed from mysql-test/suite/percona/percona_slow_extended-use_global_long_query_time-master.opt)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.result (renamed from mysql-test/suite/percona/percona_slow_extended-use_global_long_query_time.result)0
-rw-r--r--mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time.test (renamed from mysql-test/suite/percona/percona_slow_extended-use_global_long_query_time.test)0
-rw-r--r--mysql-test/suite/percona/sql_no_fcache.patch/percona_sql_no_fcache.result (renamed from mysql-test/suite/percona/percona_sql_no_fcache.result)0
-rw-r--r--mysql-test/suite/percona/sql_no_fcache.patch/percona_sql_no_fcache.test (renamed from mysql-test/suite/percona/percona_sql_no_fcache.test)0
94 files changed, 1387 insertions, 0 deletions
diff --git a/mysql-test/suite/percona/disabled.def b/mysql-test/suite/percona/disabled.def
index c20f5f3860d..1dafa2e2daa 100644
--- a/mysql-test/suite/percona/disabled.def
+++ b/mysql-test/suite/percona/disabled.def
@@ -36,3 +36,4 @@ 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
diff --git a/mysql-test/suite/percona/have_response_time_distribution.require b/mysql-test/suite/percona/have_response_time_distribution.require
new file mode 100644
index 00000000000..fd7196830ff
--- /dev/null
+++ b/mysql-test/suite/percona/have_response_time_distribution.require
@@ -0,0 +1,2 @@
+Variable_name Value
+have_response_time_distribution YES
diff --git a/mysql-test/suite/percona/innodb_fix_misc_bug51325.result b/mysql-test/suite/percona/innodb_fix_misc_bug51325.result
new file mode 100644
index 00000000000..c63a33accdd
--- /dev/null
+++ b/mysql-test/suite/percona/innodb_fix_misc_bug51325.result
@@ -0,0 +1,13 @@
+DROP TABLE IF EXISTS t1;
+SET GLOBAL innodb_file_per_table=ON;
+SHOW VARIABLES LIKE 'innodb_lazy_drop_table';
+Variable_name Value
+innodb_lazy_drop_table 0
+SET GLOBAL innodb_lazy_drop_table=1;
+SHOW VARIABLES LIKE 'innodb_lazy_drop_table';
+Variable_name Value
+innodb_lazy_drop_table 1
+CREATE TABLE t1 (a INT) ENGINE=InnoDB;
+DROP TABLE t1;
+SET GLOBAL innodb_lazy_drop_table=default;
+SET GLOBAL innodb_file_per_table=default;
diff --git a/mysql-test/suite/percona/innodb_fix_misc_bug51325.test b/mysql-test/suite/percona/innodb_fix_misc_bug51325.test
new file mode 100644
index 00000000000..78d6e60046a
--- /dev/null
+++ b/mysql-test/suite/percona/innodb_fix_misc_bug51325.test
@@ -0,0 +1,13 @@
+# Test for 'innodb_lazy_drop_table' variable
+--source include/have_innodb.inc
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+SET GLOBAL innodb_file_per_table=ON;
+SHOW VARIABLES LIKE 'innodb_lazy_drop_table';
+SET GLOBAL innodb_lazy_drop_table=1;
+SHOW VARIABLES LIKE 'innodb_lazy_drop_table';
+CREATE TABLE t1 (a INT) ENGINE=InnoDB;
+DROP TABLE t1;
+SET GLOBAL innodb_lazy_drop_table=default;
+SET GLOBAL innodb_file_per_table=default;
diff --git a/mysql-test/suite/percona/percona_log_connection_error-master.opt b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error-master.opt
index 4658d62af60..4658d62af60 100644
--- a/mysql-test/suite/percona/percona_log_connection_error-master.opt
+++ b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error-master.opt
diff --git a/mysql-test/suite/percona/percona_log_connection_error.result b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.result
index 3c6c67f770c..3c6c67f770c 100644
--- a/mysql-test/suite/percona/percona_log_connection_error.result
+++ b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.result
diff --git a/mysql-test/suite/percona/percona_log_connection_error.test b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.test
index 677da047354..677da047354 100644
--- a/mysql-test/suite/percona/percona_log_connection_error.test
+++ b/mysql-test/suite/percona/log_connection_error.patch/percona_log_connection_error.test
diff --git a/mysql-test/suite/percona/percona_bug643149.result b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.result
index 1a447a194e7..1a447a194e7 100644
--- a/mysql-test/suite/percona/percona_bug643149.result
+++ b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.result
diff --git a/mysql-test/suite/percona/percona_bug643149.test b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.test
index fa31b169a19..fa31b169a19 100644
--- a/mysql-test/suite/percona/percona_bug643149.test
+++ b/mysql-test/suite/percona/profiling_slow.patch/percona_bug643149.test
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc
index d55e52d5b64..d55e52d5b64 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments.inc
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc
diff --git a/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc.backup b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.inc.backup
new file mode 100644
index 00000000000..4b5b31e9239
--- /dev/null
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/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_cache_with_comments.result b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.result
index 169fdf80fef..169fdf80fef 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments.result
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.result
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments.test b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.test
index 0b93441f364..0b93441f364 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments.test
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments.test
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_begin.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_begin.inc
index 6bfd2bfbc83..6bfd2bfbc83 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_begin.inc
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_begin.inc
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_clear.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_clear.inc
index 728a19a3c97..728a19a3c97 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_clear.inc
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_clear.inc
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_crash.result b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_crash.result
index 32bd3645ec4..32bd3645ec4 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_crash.result
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_crash.result
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_crash.test b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_crash.test
index e125c75c3de..e125c75c3de 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_crash.test
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_crash.test
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_disable.result b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_disable.result
index a13a44d9a1c..a13a44d9a1c 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_disable.result
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_disable.result
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_disable.test b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_disable.test
index ad59ac3566c..ad59ac3566c 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_disable.test
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_disable.test
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_end.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_end.inc
index d5356359d7e..d5356359d7e 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_end.inc
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_end.inc
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_eval.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_eval.inc
index f0c200245e0..f0c200245e0 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_eval.inc
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_eval.inc
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_prepared_statements.result b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_prepared_statements.result
index 9b28b7f0b62..9b28b7f0b62 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_prepared_statements.result
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_prepared_statements.result
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_prepared_statements.test b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_prepared_statements.test
index 78cb7220aff..78cb7220aff 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_prepared_statements.test
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_prepared_statements.test
diff --git a/mysql-test/suite/percona/percona_query_cache_with_comments_show.inc b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_show.inc
index 71aa5211cfd..71aa5211cfd 100644
--- a/mysql-test/suite/percona/percona_query_cache_with_comments_show.inc
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_query_cache_with_comments_show.inc
diff --git a/mysql-test/suite/percona/percona_status_wait_query_cache_mutex.result b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.result
index f951428abc7..f951428abc7 100644
--- a/mysql-test/suite/percona/percona_status_wait_query_cache_mutex.result
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.result
diff --git a/mysql-test/suite/percona/percona_status_wait_query_cache_mutex.test b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.test
index 35e2d0ac549..35e2d0ac549 100644
--- a/mysql-test/suite/percona/percona_status_wait_query_cache_mutex.test
+++ b/mysql-test/suite/percona/query_cache_enhance.patch/percona_status_wait_query_cache_mutex.test
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.result b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.result
new file mode 100644
index 00000000000..950cdbf7532
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.result
@@ -0,0 +1,70 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+SET SESSION debug="+d,response_time_distribution_log_only_more_300_milliseconds";
+DROP TABLE IF EXISTS t;
+CREATE TABLE t(id INT);
+SELECT * from t;
+id
+SELECT * from t;
+id
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1;
+Warnings:
+Warning 1292 Truncated incorrect query_response_time_range_base value: '1'
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 10
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=ON;
+INSERT INTO t SELECT SLEEP(0.4);
+Warnings:
+Note 1592 Statement may not be safe to log in statement format.
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+0
+INSERT INTO t SELECT SLEEP(0.4);
+Warnings:
+Note 1592 Statement may not be safe to log in statement format.
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+0
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+2
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+3
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 2;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+FLUSH QUERY_RESPONSE_TIME;
+INSERT INTO t SELECT SLEEP(0.4);
+Warnings:
+Note 1592 Statement may not be safe to log in statement format.
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+0
+INSERT INTO t SELECT SLEEP(0.4);
+Warnings:
+Note 1592 Statement may not be safe to log in statement format.
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+0
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+2
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count)
+3
+DROP TABLE IF EXISTS t;
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=OFF;
+SET SESSION debug="-d,response_time_distribution_log_only_more_300_milliseconds";
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.test b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.test
new file mode 100644
index 00000000000..b215d3b45b2
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-replication.test
@@ -0,0 +1,57 @@
+--source include/have_response_time_distribution.inc
+--source include/master-slave.inc
+--source include/have_binlog_format_statement.inc
+--source include/have_debug.inc
+SET SESSION debug="+d,response_time_distribution_log_only_more_300_milliseconds";
+
+connection master;
+-- disable_warnings
+DROP TABLE IF EXISTS t;
+-- enable_warnings
+CREATE TABLE t(id INT);
+SELECT * from t;
+
+sync_slave_with_master;
+
+connection slave;
+SELECT * from t;
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=ON;
+
+connection master;
+INSERT INTO t SELECT SLEEP(0.4);
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+INSERT INTO t SELECT SLEEP(0.4);
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+sync_slave_with_master;
+
+connection slave;
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 2;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+source include/percona_query_response_time_flush.inc;
+
+connection master;
+INSERT INTO t SELECT SLEEP(0.4);
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+INSERT INTO t SELECT SLEEP(0.4);
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+sync_slave_with_master;
+
+connection slave;
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+SELECT SUM(INFORMATION_SCHEMA.QUERY_RESPONSE_TIME.count) FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+
+connection master;
+DROP TABLE IF EXISTS t;
+sync_slave_with_master;
+connection slave;
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=OFF;
+SET SESSION debug="-d,response_time_distribution_log_only_more_300_milliseconds";
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.result b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.result
new file mode 100644
index 00000000000..6ca471867ab
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.result
@@ -0,0 +1,313 @@
+SET SESSION debug="+d,response_time_distribution_log_only_more_300_milliseconds";
+CREATE FUNCTION test_f()
+RETURNS CHAR(30) DETERMINISTIC
+BEGIN
+DECLARE first VARCHAR(5);
+DECLARE second VARCHAR(5);
+DECLARE result VARCHAR(20);
+SELECT SLEEP(1.11) INTO first;
+SET first= 'Hello';
+SET second=', ';
+SET result= CONCAT(first,second);
+SET result= CONCAT(result,'world!');
+RETURN result;
+END/
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1;
+Warnings:
+Warning 1292 Truncated incorrect query_response_time_range_base value: '1'
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 2;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+FLUSH QUERY_RESPONSE_TIME;
+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;
+count query_count query_total not_zero_region_count region_count
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+44
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000003
+ 0.000007
+ 0.000015
+ 0.000030
+ 0.000061
+ 0.000122
+ 0.000244
+ 0.000488
+ 0.000976
+ 0.001953
+ 0.003906
+ 0.007812
+ 0.015625
+ 0.031250
+ 0.062500
+ 0.125000
+ 0.250000
+ 0.500000
+ 1.000000
+ 2.000000
+ 4.000000
+ 8.000000
+ 16.000000
+ 32.000000
+ 64.000000
+ 128.000000
+ 256.000000
+ 512.000000
+ 1024.000000
+ 2048.000000
+ 4096.000000
+ 8192.000000
+ 16384.000000
+ 32768.000000
+ 65536.000000
+ 131072.000000
+ 262144.000000
+ 524288.000000
+ 1048576.00000
+ 2097152.00000
+ 4194304.00000
+ 8388608.00000
+TOO LONG
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+test_f()
+Hello, world!
+SELECT test_f();
+test_f()
+Hello, world!
+SELECT test_f();
+test_f()
+Hello, world!
+SELECT test_f();
+test_f()
+Hello, world!
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+4 4 4 1 44
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+44
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000003
+ 0.000007
+ 0.000015
+ 0.000030
+ 0.000061
+ 0.000122
+ 0.000244
+ 0.000488
+ 0.000976
+ 0.001953
+ 0.003906
+ 0.007812
+ 0.015625
+ 0.031250
+ 0.062500
+ 0.125000
+ 0.250000
+ 0.500000
+ 1.000000
+ 2.000000
+ 4.000000
+ 8.000000
+ 16.000000
+ 32.000000
+ 64.000000
+ 128.000000
+ 256.000000
+ 512.000000
+ 1024.000000
+ 2048.000000
+ 4096.000000
+ 8192.000000
+ 16384.000000
+ 32768.000000
+ 65536.000000
+ 131072.000000
+ 262144.000000
+ 524288.000000
+ 1048576.00000
+ 2097152.00000
+ 4194304.00000
+ 8388608.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 10
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+test_f()
+Hello, world!
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+1 1 1 1 14
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+14
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000010
+ 0.000100
+ 0.001000
+ 0.010000
+ 0.100000
+ 1.000000
+ 10.000000
+ 100.000000
+ 1000.000000
+ 10000.000000
+ 100000.000000
+ 1000000.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 10
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 7;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 7
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+test_f()
+Hello, world!
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+1 1 1 1 17
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+17
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000008
+ 0.000059
+ 0.000416
+ 0.002915
+ 0.020408
+ 0.142857
+ 1.000000
+ 7.000000
+ 49.000000
+ 343.000000
+ 2401.000000
+ 16807.000000
+ 117649.000000
+ 823543.000000
+ 5764801.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 7
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 156;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 156
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+test_f()
+Hello, world!
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+1 1 1 1 7
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+7
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000041
+ 0.006410
+ 1.000000
+ 156.000000
+ 24336.000000
+ 3796416.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 156
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1000;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 1000
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+test_f()
+Hello, world!
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+1 1 1 1 6
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+6
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.001000
+ 1.000000
+ 1000.000000
+ 1000000.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 1000
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1001;
+Warnings:
+Warning 1292 Truncated incorrect query_response_time_range_base value: '1001'
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 1000
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE =10;
+DROP FUNCTION test_f;
+SET SESSION debug="-d,response_time_distribution_log_only_more_300_milliseconds";
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.test b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.test
new file mode 100644
index 00000000000..01651aae928
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time-stored.test
@@ -0,0 +1,90 @@
+--source include/have_response_time_distribution.inc
+--source include/have_debug.inc
+SET SESSION debug="+d,response_time_distribution_log_only_more_300_milliseconds";
+
+delimiter /;
+CREATE FUNCTION test_f()
+RETURNS CHAR(30) DETERMINISTIC
+BEGIN
+ DECLARE first VARCHAR(5);
+ DECLARE second VARCHAR(5);
+ DECLARE result VARCHAR(20);
+ SELECT SLEEP(1.11) INTO first;
+ SET first= 'Hello';
+ SET second=', ';
+ SET result= CONCAT(first,second);
+ SET result= CONCAT(result,'world!');
+ RETURN result;
+END/
+delimiter ;/
+
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 2;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+source include/percona_query_response_time_show.inc;
+
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+SELECT test_f();
+SELECT test_f();
+SELECT test_f();
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 7;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 156;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1000;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT test_f();
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1001;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE =10;
+
+DROP FUNCTION test_f;
+SET SESSION debug="-d,response_time_distribution_log_only_more_300_milliseconds";
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.result b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.result
new file mode 100644
index 00000000000..7599c9f0263
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.result
@@ -0,0 +1,567 @@
+SET SESSION debug="+d,response_time_distribution_log_only_more_300_milliseconds";
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1;
+Warnings:
+Warning 1292 Truncated incorrect query_response_time_range_base value: '1'
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 2;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+FLUSH QUERY_RESPONSE_TIME;
+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;
+count query_count query_total not_zero_region_count region_count
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+44
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000003
+ 0.000007
+ 0.000015
+ 0.000030
+ 0.000061
+ 0.000122
+ 0.000244
+ 0.000488
+ 0.000976
+ 0.001953
+ 0.003906
+ 0.007812
+ 0.015625
+ 0.031250
+ 0.062500
+ 0.125000
+ 0.250000
+ 0.500000
+ 1.000000
+ 2.000000
+ 4.000000
+ 8.000000
+ 16.000000
+ 32.000000
+ 64.000000
+ 128.000000
+ 256.000000
+ 512.000000
+ 1024.000000
+ 2048.000000
+ 4096.000000
+ 8192.000000
+ 16384.000000
+ 32768.000000
+ 65536.000000
+ 131072.000000
+ 262144.000000
+ 524288.000000
+ 1048576.00000
+ 2097152.00000
+ 4194304.00000
+ 8388608.00000
+TOO LONG
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT SLEEP(0.31);
+SLEEP(0.31)
+0
+SELECT SLEEP(0.32);
+SLEEP(0.32)
+0
+SELECT SLEEP(0.33);
+SLEEP(0.33)
+0
+SELECT SLEEP(0.34);
+SLEEP(0.34)
+0
+SELECT SLEEP(0.35);
+SLEEP(0.35)
+0
+SELECT SLEEP(0.36);
+SLEEP(0.36)
+0
+SELECT SLEEP(0.37);
+SLEEP(0.37)
+0
+SELECT SLEEP(0.38);
+SLEEP(0.38)
+0
+SELECT SLEEP(0.39);
+SLEEP(0.39)
+0
+SELECT SLEEP(0.40);
+SLEEP(0.40)
+0
+SELECT SLEEP(1.1);
+SLEEP(1.1)
+0
+SELECT SLEEP(1.2);
+SLEEP(1.2)
+0
+SELECT SLEEP(1.3);
+SLEEP(1.3)
+0
+SELECT SLEEP(1.5);
+SLEEP(1.5)
+0
+SELECT SLEEP(1.4);
+SLEEP(1.4)
+0
+SELECT SLEEP(0.5);
+SLEEP(0.5)
+0
+SELECT SLEEP(2.1);
+SLEEP(2.1)
+0
+SELECT SLEEP(2.3);
+SLEEP(2.3)
+0
+SELECT SLEEP(2.5);
+SLEEP(2.5)
+0
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+10 19 15 4 44
+1 19 15 4 44
+5 19 15 4 44
+3 19 15 4 44
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+44
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000003
+ 0.000007
+ 0.000015
+ 0.000030
+ 0.000061
+ 0.000122
+ 0.000244
+ 0.000488
+ 0.000976
+ 0.001953
+ 0.003906
+ 0.007812
+ 0.015625
+ 0.031250
+ 0.062500
+ 0.125000
+ 0.250000
+ 0.500000
+ 1.000000
+ 2.000000
+ 4.000000
+ 8.000000
+ 16.000000
+ 32.000000
+ 64.000000
+ 128.000000
+ 256.000000
+ 512.000000
+ 1024.000000
+ 2048.000000
+ 4096.000000
+ 8192.000000
+ 16384.000000
+ 32768.000000
+ 65536.000000
+ 131072.000000
+ 262144.000000
+ 524288.000000
+ 1048576.00000
+ 2097152.00000
+ 4194304.00000
+ 8388608.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 2
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 10
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT SLEEP(0.31);
+SLEEP(0.31)
+0
+SELECT SLEEP(0.32);
+SLEEP(0.32)
+0
+SELECT SLEEP(0.33);
+SLEEP(0.33)
+0
+SELECT SLEEP(0.34);
+SLEEP(0.34)
+0
+SELECT SLEEP(0.35);
+SLEEP(0.35)
+0
+SELECT SLEEP(0.36);
+SLEEP(0.36)
+0
+SELECT SLEEP(0.37);
+SLEEP(0.37)
+0
+SELECT SLEEP(0.38);
+SLEEP(0.38)
+0
+SELECT SLEEP(0.39);
+SLEEP(0.39)
+0
+SELECT SLEEP(0.40);
+SLEEP(0.40)
+0
+SELECT SLEEP(1.1);
+SLEEP(1.1)
+0
+SELECT SLEEP(1.2);
+SLEEP(1.2)
+0
+SELECT SLEEP(1.3);
+SLEEP(1.3)
+0
+SELECT SLEEP(1.5);
+SLEEP(1.5)
+0
+SELECT SLEEP(1.4);
+SLEEP(1.4)
+0
+SELECT SLEEP(0.5);
+SLEEP(0.5)
+0
+SELECT SLEEP(2.1);
+SLEEP(2.1)
+0
+SELECT SLEEP(2.3);
+SLEEP(2.3)
+0
+SELECT SLEEP(2.5);
+SLEEP(2.5)
+0
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+11 19 17 2 14
+8 19 17 2 14
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+14
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000010
+ 0.000100
+ 0.001000
+ 0.010000
+ 0.100000
+ 1.000000
+ 10.000000
+ 100.000000
+ 1000.000000
+ 10000.000000
+ 100000.000000
+ 1000000.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 10
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 7;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 7
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT SLEEP(0.31);
+SLEEP(0.31)
+0
+SELECT SLEEP(0.32);
+SLEEP(0.32)
+0
+SELECT SLEEP(0.33);
+SLEEP(0.33)
+0
+SELECT SLEEP(0.34);
+SLEEP(0.34)
+0
+SELECT SLEEP(0.35);
+SLEEP(0.35)
+0
+SELECT SLEEP(0.36);
+SLEEP(0.36)
+0
+SELECT SLEEP(0.37);
+SLEEP(0.37)
+0
+SELECT SLEEP(0.38);
+SLEEP(0.38)
+0
+SELECT SLEEP(0.39);
+SLEEP(0.39)
+0
+SELECT SLEEP(0.40);
+SLEEP(0.40)
+0
+SELECT SLEEP(1.1);
+SLEEP(1.1)
+0
+SELECT SLEEP(1.2);
+SLEEP(1.2)
+0
+SELECT SLEEP(1.3);
+SLEEP(1.3)
+0
+SELECT SLEEP(1.5);
+SLEEP(1.5)
+0
+SELECT SLEEP(1.4);
+SLEEP(1.4)
+0
+SELECT SLEEP(0.5);
+SLEEP(0.5)
+0
+SELECT SLEEP(2.1);
+SLEEP(2.1)
+0
+SELECT SLEEP(2.3);
+SLEEP(2.3)
+0
+SELECT SLEEP(2.5);
+SLEEP(2.5)
+0
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+11 19 17 2 17
+8 19 17 2 17
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+17
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.000008
+ 0.000059
+ 0.000416
+ 0.002915
+ 0.020408
+ 0.142857
+ 1.000000
+ 7.000000
+ 49.000000
+ 343.000000
+ 2401.000000
+ 16807.000000
+ 117649.000000
+ 823543.000000
+ 5764801.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 7
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 156;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 156
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT SLEEP(0.31);
+SLEEP(0.31)
+0
+SELECT SLEEP(0.32);
+SLEEP(0.32)
+0
+SELECT SLEEP(0.33);
+SLEEP(0.33)
+0
+SELECT SLEEP(0.34);
+SLEEP(0.34)
+0
+SELECT SLEEP(0.35);
+SLEEP(0.35)
+0
+SELECT SLEEP(0.36);
+SLEEP(0.36)
+0
+SELECT SLEEP(0.37);
+SLEEP(0.37)
+0
+SELECT SLEEP(0.38);
+SLEEP(0.38)
+0
+SELECT SLEEP(0.39);
+SLEEP(0.39)
+0
+SELECT SLEEP(0.40);
+SLEEP(0.40)
+0
+SELECT SLEEP(1.1);
+SLEEP(1.1)
+0
+SELECT SLEEP(1.2);
+SLEEP(1.2)
+0
+SELECT SLEEP(1.3);
+SLEEP(1.3)
+0
+SELECT SLEEP(1.5);
+SLEEP(1.5)
+0
+SELECT SLEEP(1.4);
+SLEEP(1.4)
+0
+SELECT SLEEP(0.5);
+SLEEP(0.5)
+0
+SELECT SLEEP(2.1);
+SLEEP(2.1)
+0
+SELECT SLEEP(2.3);
+SLEEP(2.3)
+0
+SELECT SLEEP(2.5);
+SLEEP(2.5)
+0
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+11 19 17 2 7
+8 19 17 2 7
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+7
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000041
+ 0.006410
+ 1.000000
+ 156.000000
+ 24336.000000
+ 3796416.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 156
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1000;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 1000
+FLUSH QUERY_RESPONSE_TIME;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+SELECT SLEEP(0.31);
+SLEEP(0.31)
+0
+SELECT SLEEP(0.32);
+SLEEP(0.32)
+0
+SELECT SLEEP(0.33);
+SLEEP(0.33)
+0
+SELECT SLEEP(0.34);
+SLEEP(0.34)
+0
+SELECT SLEEP(0.35);
+SLEEP(0.35)
+0
+SELECT SLEEP(0.36);
+SLEEP(0.36)
+0
+SELECT SLEEP(0.37);
+SLEEP(0.37)
+0
+SELECT SLEEP(0.38);
+SLEEP(0.38)
+0
+SELECT SLEEP(0.39);
+SLEEP(0.39)
+0
+SELECT SLEEP(0.40);
+SLEEP(0.40)
+0
+SELECT SLEEP(1.1);
+SLEEP(1.1)
+0
+SELECT SLEEP(1.2);
+SLEEP(1.2)
+0
+SELECT SLEEP(1.3);
+SLEEP(1.3)
+0
+SELECT SLEEP(1.5);
+SLEEP(1.5)
+0
+SELECT SLEEP(1.4);
+SLEEP(1.4)
+0
+SELECT SLEEP(0.5);
+SLEEP(0.5)
+0
+SELECT SLEEP(2.1);
+SLEEP(2.1)
+0
+SELECT SLEEP(2.3);
+SLEEP(2.3)
+0
+SELECT SLEEP(2.5);
+SLEEP(2.5)
+0
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+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;
+count query_count query_total not_zero_region_count region_count
+11 19 17 2 6
+8 19 17 2 6
+SELECT COUNT(*) as region_count FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+region_count
+6
+SELECT time FROM INFORMATION_SCHEMA.QUERY_RESPONSE_TIME;
+time
+ 0.000001
+ 0.001000
+ 1.000000
+ 1000.000000
+ 1000000.00000
+TOO LONG
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 1000
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1001;
+Warnings:
+Warning 1292 Truncated incorrect query_response_time_range_base value: '1001'
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+Variable_name Value
+query_response_time_range_base 1000
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE =10;
+SET SESSION debug="-d,response_time_distribution_log_only_more_300_milliseconds";
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.test b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.test
new file mode 100644
index 00000000000..6dd0f54abf5
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time.test
@@ -0,0 +1,68 @@
+--source include/have_response_time_distribution.inc
+--source include/have_debug.inc
+SET SESSION debug="+d,response_time_distribution_log_only_more_300_milliseconds";
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 2;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+source include/percona_query_response_time_show.inc;
+
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+source include/percona_query_response_time_sleep.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 10;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+source include/percona_query_response_time_sleep.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 7;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+source include/percona_query_response_time_sleep.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 156;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+source include/percona_query_response_time_sleep.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1000;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+source include/percona_query_response_time_flush.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=1;
+source include/percona_query_response_time_sleep.inc;
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+
+source include/percona_query_response_time_show.inc;
+
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE = 1001;
+SHOW GLOBAL VARIABLES where Variable_name like 'QUERY_RESPONSE_TIME_RANGE_BASE';
+
+SET GLOBAL ENABLE_QUERY_RESPONSE_TIME_STATS=0;
+SET GLOBAL QUERY_RESPONSE_TIME_RANGE_BASE =10;
+SET SESSION debug="-d,response_time_distribution_log_only_more_300_milliseconds";
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_flush.inc b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_flush.inc
new file mode 100644
index 00000000000..44bb320fe13
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_flush.inc
@@ -0,0 +1 @@
+FLUSH QUERY_RESPONSE_TIME;
diff --git a/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_show.inc b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_show.inc
new file mode 100644
index 00000000000..709abf9872e
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/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/response-time-distribution.patch/percona_query_response_time_sleep.inc b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_sleep.inc
new file mode 100644
index 00000000000..40688b173b0
--- /dev/null
+++ b/mysql-test/suite/percona/response-time-distribution.patch/percona_query_response_time_sleep.inc
@@ -0,0 +1,19 @@
+SELECT SLEEP(0.31);
+SELECT SLEEP(0.32);
+SELECT SLEEP(0.33);
+SELECT SLEEP(0.34);
+SELECT SLEEP(0.35);
+SELECT SLEEP(0.36);
+SELECT SLEEP(0.37);
+SELECT SLEEP(0.38);
+SELECT SLEEP(0.39);
+SELECT SLEEP(0.40);
+SELECT SLEEP(1.1);
+SELECT SLEEP(1.2);
+SELECT SLEEP(1.3);
+SELECT SLEEP(1.5);
+SELECT SLEEP(1.4);
+SELECT SLEEP(0.5);
+SELECT SLEEP(2.1);
+SELECT SLEEP(2.3);
+SELECT SLEEP(2.5);
diff --git a/mysql-test/suite/percona/percona_show_slave_status_nolock.result b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.result
index 1d6114a001e..1d6114a001e 100644
--- a/mysql-test/suite/percona/percona_show_slave_status_nolock.result
+++ b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.result
diff --git a/mysql-test/suite/percona/percona_show_slave_status_nolock.test b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.test
index dcb2eb26a3e..dcb2eb26a3e 100644
--- a/mysql-test/suite/percona/percona_show_slave_status_nolock.test
+++ b/mysql-test/suite/percona/show_slave_status_nolock.patch/percona_show_slave_status_nolock.test
diff --git a/mysql-test/suite/percona/grep.inc b/mysql-test/suite/percona/slow_extended.patch/grep.inc
index c9c823fa695..c9c823fa695 100644
--- a/mysql-test/suite/percona/grep.inc
+++ b/mysql-test/suite/percona/slow_extended.patch/grep.inc
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined-master.opt
new file mode 100644
index 00000000000..b6f54503c34
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined-master.opt
@@ -0,0 +1 @@
+--use_global_long_query_time --log_slow_verbosity="full"
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.result
new file mode 100644
index 00000000000..d51e0722fa2
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.result
@@ -0,0 +1,18 @@
+show variables like 'use_global_long_query_time';
+Variable_name Value
+use_global_long_query_time ON
+show variables like 'use_global_log_slow_control';
+Variable_name Value
+use_global_log_slow_control long_query_time
+show variables like 'log_slow_verbosity';
+Variable_name Value
+log_slow_verbosity microtime,query_plan,innodb
+show global variables like 'use_global_long_query_time';
+Variable_name Value
+use_global_long_query_time ON
+show global variables like 'log_slow_verbosity';
+Variable_name Value
+log_slow_verbosity microtime,query_plan,innodb
+show global variables like 'use_global_log_slow_control';
+Variable_name Value
+use_global_log_slow_control long_query_time
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.test
new file mode 100644
index 00000000000..9a4d57a3efc
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined.test
@@ -0,0 +1,6 @@
+show variables like 'use_global_long_query_time';
+show variables like 'use_global_log_slow_control';
+show variables like 'log_slow_verbosity';
+show global variables like 'use_global_long_query_time';
+show global variables like 'log_slow_verbosity';
+show global variables like 'use_global_log_slow_control';
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2-master.opt
new file mode 100644
index 00000000000..267fe17fabe
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2-master.opt
@@ -0,0 +1 @@
+--use_global_log_slow_control="long_query_time"
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.result
new file mode 100644
index 00000000000..e66a7dc1968
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.result
@@ -0,0 +1,12 @@
+show variables like 'use_global_long_query_time';
+Variable_name Value
+use_global_long_query_time ON
+show variables like 'use_global_log_slow_control';
+Variable_name Value
+use_global_log_slow_control long_query_time
+show global variables like 'use_global_long_query_time';
+Variable_name Value
+use_global_long_query_time ON
+show global variables like 'use_global_log_slow_control';
+Variable_name Value
+use_global_log_slow_control long_query_time
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.test
new file mode 100644
index 00000000000..2c79c137844
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-combined2.test
@@ -0,0 +1,4 @@
+show variables like 'use_global_long_query_time';
+show variables like 'use_global_log_slow_control';
+show global variables like 'use_global_long_query_time';
+show global variables like 'use_global_log_slow_control';
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow-master.opt
new file mode 100644
index 00000000000..bd62c08c475
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow-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/slow_extended.patch/percona_slow_extended-control_global_slow.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow.result
new file mode 100644
index 00000000000..f91d1af2fb3
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow.result
@@ -0,0 +1,12 @@
+SELECT sleep(2);
+sleep(2)
+0
+set global log_slow_verbosity=innodb;
+set global use_global_log_slow_control="log_slow_verbosity,long_query_time";
+SELECT sleep(2);
+sleep(2)
+0
+set global use_global_log_slow_control=none;
+set global log_slow_verbosity=microtime;
+FLUSH LOGS;
+1
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow.test
new file mode 100644
index 00000000000..bbf90f8ec9b
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-control_global_slow.test
@@ -0,0 +1,12 @@
+source include/have_innodb.inc;
+SELECT sleep(2);
+set global log_slow_verbosity=innodb;
+set global use_global_log_slow_control="log_slow_verbosity,long_query_time";
+SELECT sleep(2);
+set global use_global_log_slow_control=none;
+set global log_slow_verbosity=microtime;
+
+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 include/grep.inc
diff --git a/mysql-test/suite/percona/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 865dc70ba38..865dc70ba38 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_filter-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_filter.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.result
index 2f22ef5457b..2f22ef5457b 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_filter.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.result
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_filter.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.test
index 292c1651e34..292c1651e34 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_filter.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_filter.test
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl-master.opt
index 4368453928a..4368453928a 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl.result
index c5653429327..c5653429327 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl.result
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl.test
index 47bd960feb5..47bd960feb5 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_sp_statements-cl.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_sp_statements-cl.test
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl-master.opt
new file mode 100644
index 00000000000..8595eaf73d2
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl-master.opt
@@ -0,0 +1 @@
+--log_slow_timestamp_every
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.result
new file mode 100644
index 00000000000..119bc26a743
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.result
@@ -0,0 +1,3 @@
+show global variables like 'log_slow_timestamp_every';
+Variable_name Value
+log_slow_timestamp_every ON
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.test
new file mode 100644
index 00000000000..f1d058b9ba4
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_timestamp_every-cl.test
@@ -0,0 +1 @@
+show global variables like 'log_slow_timestamp_every';
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl-master.opt
index d8809c36981..d8809c36981 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl.result
index eb8228efb08..eb8228efb08 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl.result
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl.test
index 740c4deaebd..740c4deaebd 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-cl.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-cl.test
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-master.opt
index 19ae9c117f0..19ae9c117f0 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.result
index 1e7db10c8bd..1e7db10c8bd 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.result
diff --git a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.test
index e95ab54af61..e95ab54af61 100644
--- a/mysql-test/suite/percona/percona_slow_extended-log_slow_verbosity.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-log_slow_verbosity.test
diff --git a/mysql-test/suite/percona/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 62e1e981558..62e1e981558 100644
--- a/mysql-test/suite/percona/percona_slow_extended-long_query_time-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-long_query_time.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.result
index f2da4e4d9d6..f2da4e4d9d6 100644
--- a/mysql-test/suite/percona/percona_slow_extended-long_query_time.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.result
diff --git a/mysql-test/suite/percona/percona_slow_extended-long_query_time.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.test
index 716cc7cb0c3..716cc7cb0c3 100644
--- a/mysql-test/suite/percona/percona_slow_extended-long_query_time.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-long_query_time.test
diff --git a/mysql-test/suite/percona/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 ca486d356f5..ca486d356f5 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/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 ce27c518efe..ce27c518efe 100644
--- a/mysql-test/suite/percona/percona_slow_extended-microseconds_in_slow_extended.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.result
diff --git a/mysql-test/suite/percona/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 4b437b21e4c..4b437b21e4c 100644
--- a/mysql-test/suite/percona/percona_slow_extended-microseconds_in_slow_extended.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-microseconds_in_slow_extended.test
diff --git a/mysql-test/suite/percona/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 c1cf3ebdb30..c1cf3ebdb30 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/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 1e8bc0723ac..1e8bc0723ac 100644
--- a/mysql-test/suite/percona/percona_slow_extended-min_examined_row_limit.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.result
diff --git a/mysql-test/suite/percona/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 ca68658a6c5..ca68658a6c5 100644
--- a/mysql-test/suite/percona/percona_slow_extended-min_examined_row_limit.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-min_examined_row_limit.test
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats-master.opt
index 286a9c4484d..286a9c4484d 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats-slave.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats-slave.opt
index 286a9c4484d..286a9c4484d 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats-slave.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats-slave.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.result
index 51993e767c2..51993e767c2 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.result
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.test
index b0a6c98870c..b0a6c98870c 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_innodb_stats.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_innodb_stats.test
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time-master.opt
index 49038530c56..49038530c56 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time-slave.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time-slave.opt
index 648f309f744..648f309f744 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_statements-and-use_global_long_query_time-slave.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-and-use_global_long_query_time-slave.opt
diff --git a/mysql-test/suite/percona/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 e5f4568dd58..e5f4568dd58 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/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 c718b2c3d28..c718b2c3d28 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_statements-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-master.opt
index ebf25ddd37d..ebf25ddd37d 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_statements-master.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-master.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_statements-slave.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-slave.opt
index 96cd9004493..96cd9004493 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_statements-slave.opt
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements-slave.opt
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_statements.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.result
index 0548dc370b4..0548dc370b4 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_statements.result
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.result
diff --git a/mysql-test/suite/percona/percona_slow_extended-slave_statements.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.test
index 88c74bab69b..88c74bab69b 100644
--- a/mysql-test/suite/percona/percona_slow_extended-slave_statements.test
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-slave_statements.test
diff --git a/mysql-test/suite/percona/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 c3ebcd95326..c3ebcd95326 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/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 5355922bb45..5355922bb45 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/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 8f6291e9897..8f6291e9897 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl-master.opt b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl-master.opt
new file mode 100644
index 00000000000..cf93591c365
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl-master.opt
@@ -0,0 +1 @@
+--use_global_long_query_time
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.result b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.result
new file mode 100644
index 00000000000..d554a64bdb4
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.result
@@ -0,0 +1,3 @@
+show global variables like 'use_global_long_query_time';
+Variable_name Value
+use_global_long_query_time ON
diff --git a/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.test b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.test
new file mode 100644
index 00000000000..662aee24ebe
--- /dev/null
+++ b/mysql-test/suite/percona/slow_extended.patch/percona_slow_extended-use_global_long_query_time-cl.test
@@ -0,0 +1 @@
+show global variables like 'use_global_long_query_time';
diff --git a/mysql-test/suite/percona/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 16b6ca5b714..16b6ca5b714 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/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 e89edf0430f..e89edf0430f 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/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 61b2dabd23d..61b2dabd23d 100644
--- a/mysql-test/suite/percona/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
diff --git a/mysql-test/suite/percona/percona_sql_no_fcache.result b/mysql-test/suite/percona/sql_no_fcache.patch/percona_sql_no_fcache.result
index bc1413fb96d..bc1413fb96d 100644
--- a/mysql-test/suite/percona/percona_sql_no_fcache.result
+++ b/mysql-test/suite/percona/sql_no_fcache.patch/percona_sql_no_fcache.result
diff --git a/mysql-test/suite/percona/percona_sql_no_fcache.test b/mysql-test/suite/percona/sql_no_fcache.patch/percona_sql_no_fcache.test
index 1ed8be2196b..1ed8be2196b 100644
--- a/mysql-test/suite/percona/percona_sql_no_fcache.test
+++ b/mysql-test/suite/percona/sql_no_fcache.patch/percona_sql_no_fcache.test