diff options
author | Vladislav Vaintroub <wlad@mariadb.com> | 2016-06-03 19:22:47 +0000 |
---|---|---|
committer | Vladislav Vaintroub <wlad@mariadb.com> | 2016-06-03 19:22:47 +0000 |
commit | 9ff93656ae072cb95ad7e9404819f2cfbfbda0bc (patch) | |
tree | 1a1fe914a0b6c1fdb26d0bb9d2de5d8c0b1e1c31 | |
parent | 1859caf60b725f81f2ac6091eb44cb848a4a439a (diff) | |
download | mariadb-git-9ff93656ae072cb95ad7e9404819f2cfbfbda0bc.tar.gz |
Fix sporadic failure of set_statement mtr test.
On Windows with low precision (10-16 ms) timer used for timing queries,
the statement "set @@long_query_time=0.01" can log itself a slow if it
spawn more single timer tick.
The fix is to filter this query out from "SELECT FROM mysql.slow_log"
results
-rw-r--r-- | mysql-test/r/set_statement.result | 14 | ||||
-rw-r--r-- | mysql-test/t/set_statement.test | 14 |
2 files changed, 14 insertions, 14 deletions
diff --git a/mysql-test/r/set_statement.result b/mysql-test/r/set_statement.result index ad6f3b7bf2e..adb50afde99 100644 --- a/mysql-test/r/set_statement.result +++ b/mysql-test/r/set_statement.result @@ -1056,7 +1056,7 @@ set statement slow_query_log=default for select @@slow_query_log; truncate table mysql.slow_log; set slow_query_log= 1; set global log_output='TABLE'; -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; sql_text set @@long_query_time=0.01; #should be written @@ -1064,7 +1064,7 @@ select sleep(0.1); sleep(0.1) 0 set @@long_query_time=@save_long_query_time; -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; sql_text select sleep(0.1) #--- @@ -1072,7 +1072,7 @@ select sleep(0.1) set statement long_query_time=0.01 for select sleep(0.1); sleep(0.1) 0 -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; sql_text select sleep(0.1) set statement long_query_time=0.01 for select sleep(0.1) @@ -1083,7 +1083,7 @@ set statement slow_query_log=0 for select sleep(0.1); sleep(0.1) 0 set @@long_query_time=@save_long_query_time; -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; sql_text select sleep(0.1) set statement long_query_time=0.01 for select sleep(0.1) @@ -1092,7 +1092,7 @@ set statement long_query_time=0.01 for select sleep(0.1) set statement long_query_time=0.01,log_slow_filter='full_scan' for select sleep(0.1); sleep(0.1) 0 -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; sql_text select sleep(0.1) set statement long_query_time=0.01 for select sleep(0.1) @@ -1101,7 +1101,7 @@ set statement long_query_time=0.01 for select sleep(0.1) set statement long_query_time=0.01,log_slow_rate_limit=9999 for select sleep(0.1); sleep(0.1) 0 -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; sql_text select sleep(0.1) set statement long_query_time=0.01 for select sleep(0.1) @@ -1110,7 +1110,7 @@ set statement long_query_time=0.01 for select sleep(0.1) set statement long_query_time=0.01,min_examined_row_limit=50 for select sleep(0.1); sleep(0.1) 0 -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; sql_text select sleep(0.1) set statement long_query_time=0.01 for select sleep(0.1) diff --git a/mysql-test/t/set_statement.test b/mysql-test/t/set_statement.test index 5d6206335fb..a91c53c8dee 100644 --- a/mysql-test/t/set_statement.test +++ b/mysql-test/t/set_statement.test @@ -1003,34 +1003,34 @@ truncate table mysql.slow_log; set slow_query_log= 1; set global log_output='TABLE'; -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; set @@long_query_time=0.01; --echo #should be written select sleep(0.1); set @@long_query_time=@save_long_query_time; -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; --echo #--- --echo #should be written set statement long_query_time=0.01 for select sleep(0.1); -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; --echo #--- set @@long_query_time=0.01; --echo #should NOT be written set statement slow_query_log=0 for select sleep(0.1); set @@long_query_time=@save_long_query_time; -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; --echo #--- --echo #should NOT be written set statement long_query_time=0.01,log_slow_filter='full_scan' for select sleep(0.1); -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; --echo #--- --echo #should NOT be written set statement long_query_time=0.01,log_slow_rate_limit=9999 for select sleep(0.1); -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; --echo #--- --echo #should NOT be written set statement long_query_time=0.01,min_examined_row_limit=50 for select sleep(0.1); -select sql_text from mysql.slow_log; +select sql_text from mysql.slow_log where sql_text not like 'set @@long_query_time%'; --echo #--- # # log_slow_verbosity is impossible to check because results are not written |