#At file:///work/bzr/mysql-5.1-sys-var/
2738 Horst Hunger 2008-09-16
Fix for bug#36873: Modified due to review results.
modified:
mysql-test/r/wait_timeout_func.result
mysql-test/t/wait_timeout_func.test
=== modified file 'mysql-test/r/wait_timeout_func.result'
--- a/mysql-test/r/wait_timeout_func.result 2008-09-11 18:24:45 +0000
+++ b/mysql-test/r/wait_timeout_func.result 2008-09-16 13:50:00 +0000
@@ -1,6 +1,6 @@
SET @start_value= @@global.wait_timeout;
'#--------------------FN_DYNVARS_186_01-------------------------#'
-SET @start_time= CURTIME();
+SET @start_time= UNIX_TIMESTAMP();
connect (test_con1, localhost, root,,);
SELECT @@session.wait_timeout = @@global.wait_timeout AS 'Expect 1';
Expect 1
@@ -19,14 +19,14 @@ SELECT @@session.wait_timeout = @start_v
Expect 1
1
connect (test_con3, localhost, root,,);
-SELECT @@session.wait_timeout = <session_value> AS 'Expect 1';
+SELECT @@session.wait_timeout = @@global.wait_timeout AS 'Expect 1';
Expect 1
-0
+1
connection default;
SELECT info FROM information_schema.processlist;
info
SELECT info FROM information_schema.processlist
-SELECT TIMEDIFF(@start_time,CURTIME()) >= <global_value> + <session_value>;;
-TIMEDIFF(@start_time,CURTIME()) >= <global_value> + <session_value>;
+SELECT UNIX_TIMESTAMP() - @start_time >= <global_value> + <session_value>;;
+UNIX_TIMESTAMP() - @start_time >= <global_value> + <session_value>;
1
SET @@global.wait_timeout= @start_value;
=== modified file 'mysql-test/t/wait_timeout_func.test'
--- a/mysql-test/t/wait_timeout_func.test 2008-09-11 18:24:45 +0000
+++ b/mysql-test/t/wait_timeout_func.test 2008-09-16 13:50:00 +0000
@@ -31,12 +31,12 @@ SET @start_value= @@global.wait_timeout;
# 1. test of scope session
#######################################################################
-SET @start_time= CURTIME();
+SET @start_time= UNIX_TIMESTAMP();
--echo connect (test_con1, localhost, root,,);
connect (test_con1, localhost, root,,);
connection test_con1;
-# If not explicite changed @@session.wait_timeout equals @@global.wait_timeout.
+# If not explicite changed, @@session.wait_timeout equals @@global.wait_timeout.
SELECT @@session.wait_timeout = @@global.wait_timeout AS 'Expect 1';
# Find a small value <> @@global.wait_timeout.
@@ -67,7 +67,6 @@ SELECT info FROM information_schema.proc
# Find a small value <> @@global.wait_timeout.
let $global_value = $session_value + 1;
-#`SELECT IF(@@global.wait_timeout <> 2 OR @@global.wait_timeout IS NULL, 2, 3)`;
--replace_result $global_value <global_value>
eval SET @@global.wait_timeout= $global_value;
@@ -79,17 +78,20 @@ SELECT @@session.wait_timeout = @start_v
connect (test_con3, localhost, root,,);
connection test_con3;
-# If not explicite changed @@session.wait_timeout equals @@global.wait_timeout.
---replace_result $session_value <session_value>
-eval SELECT @@session.wait_timeout = $session_value AS 'Expect 1';
+# If not explicite changed, @@session.wait_timeout equals @@global.wait_timeout.
+SELECT @@session.wait_timeout = @@global.wait_timeout AS 'Expect 1';
--echo connection default;
connection default;
+# We can be sure that the connections test_con1 and test_con2 must be
+# established because both have already executed a SET @@session.wait_timeout.
+# This means they are or at least were visible within the processlist.
+# Therefore we can now simply wait till both disappear from the processlist.
let $wait_condition= SELECT COUNT(*) = 1 FROM information_schema.processlist;
--source include/wait_condition.inc
SELECT info FROM information_schema.processlist;
--replace_result $global_value <global_value> $session_value <session_value>;
-eval SELECT TIMEDIFF(@start_time,CURTIME()) >= $global_value + $session_value;
+eval SELECT UNIX_TIMESTAMP() - @start_time >= $global_value + $session_value;
SET @@global.wait_timeout= @start_value;
| Thread |
|---|
| • bzr commit into mysql-5.1 branch (horst:2738) Bug#36873 | Horst Hunger | 18 Sep |