List:Commits« Previous MessageNext Message »
From:Horst Hunger Date:November 27 2008 2:51pm
Subject:bzr commit into mysql-5.1 branch (horst:2713) Bug#37766
View as plain text  
#At file:///work/bzr/mysql-5.1-37766-1/

 2713 Horst Hunger	2008-11-27
      Fix for Bug#37766: Inserted review results.
      Reason for the failing test was that "SELECT count(*) from mysql.general_log;" was not always
      the same number. That was fixed by "...count(*)>4..." as the minimal fulfilled condition.
      As Bug 35371 was fixed the testcase with "log_output = 'FILE'" was enabled and changed to have
      always the same result.
modified:
  mysql-test/r/log_output_func.result
  mysql-test/t/log_output_func.test

=== modified file 'mysql-test/r/log_output_func.result'
--- a/mysql-test/r/log_output_func.result	2008-04-10 13:14:28 +0000
+++ b/mysql-test/r/log_output_func.result	2008-11-27 14:51:48 +0000
@@ -1,13 +1,11 @@
+SET @start_value= @@global.log_output;
+SET @start_general_log= @@global.general_log;
+SET @start_general_log_file= @@global.general_log_file;
 '#--------------------FN_DYNVARS_065_01-------------------------#'
 SET @@global.log_output = 'NONE';
 'connect (con1,localhost,root,,,,)'
-'connection con1'
-SELECT @@global.log_output;
-@@global.log_output
-NONE
 SET @@global.log_output = 'TABLE,FILE';
 'connect (con2,localhost,root,,,,)'
-'connection con2'
 SELECT @@global.log_output;
 @@global.log_output
 FILE,TABLE
@@ -18,7 +16,7 @@ SET @@global.log_output = 'NONE';
 TRUNCATE TABLE mysql.general_log;
 DROP TABLE IF EXISTS t1;
 CREATE TABLE t1(a INT);
-INSERT INTO t1 value(1);
+INSERT INTO t1 VALUE(1);
 SELECT 'abc';
 abc
 abc
@@ -29,25 +27,33 @@ count(*)
 SET @@global.log_output = 'TABLE';
 TRUNCATE TABLE mysql.general_log;
 DROP TABLE IF EXISTS t1;
-create table t1(a int);
-INSERT INTO t1 value(1);
+CREATE TABLE t1(a int);
+INSERT INTO t1 VALUE(1);
 SELECT 'abc';
 abc
 abc
-SELECT count(*) from mysql.general_log;
-count(*)
-5
-'Bug#35371: Changing general_log file is crashing server'
-'SET @@global.general_log_file = @log_file;'
+SELECT count(*)>4 FROM mysql.general_log;
+count(*)>4
+1
+SET @@global.general_log = 'OFF';
+FLUSH LOGS;
+SET @@global.general_log_file = 'MYSQLTEST_VARDIR/run/mytest.log';
+SET @@global.general_log = 'ON';
 SET @@global.log_output = 'FILE';
 TRUNCATE TABLE mysql.general_log;
 DROP TABLE IF EXISTS t1;
-create table t1(a int);
-INSERT INTO t1 value(1);
+CREATE TABLE t1(a INT);
+INSERT INTO t1 VALUE(1);
 SELECT 'abc';
 abc
 abc
-SELECT count(*) from mysql.general_log;
+SELECT count(*) FROM mysql.general_log;
 count(*)
 0
 DROP TABLE t1;
+connection default;
+SET @@global.general_log= 'OFF';
+SET @@global.general_log_file= @start_general_log_file;
+SET @@global.log_output= @start_value;
+SET @@global.general_log= @start_general_log;
+SET @@global.general_log= 'ON';

=== modified file 'mysql-test/t/log_output_func.test'
--- a/mysql-test/t/log_output_func.test	2008-04-10 13:14:28 +0000
+++ b/mysql-test/t/log_output_func.test	2008-11-27 14:51:48 +0000
@@ -10,12 +10,13 @@
 #                                                                             #
 # Creation Date: 2008-03-08                                                   #
 # Author:  Rizwan                                                             #
+# Modified: HHunger 2008-08-29 
 #                                                                             #
 # Description: Test Cases of Dynamic System Variable log_output               #
 #              that checks the behavior of this variable                      #
 #                                                                             #
-# Reference: http://dev.mysql.com/doc/refman/5.1/en/                          #
-#  server-system-variables.html                                               #
+# Reference:                                                                  #
+# http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html         #
 #                                                                             #
 ###############################################################################
 
@@ -23,6 +24,10 @@
 # ps-protocol. So, it is switched off.
 --disable_ps_protocol
 
+SET @start_value= @@global.log_output;
+SET @start_general_log= @@global.general_log;
+SET @start_general_log_file= @@global.general_log_file;
+
 --echo '#--------------------FN_DYNVARS_065_01-------------------------#'
 ##################################################################
 # Check if setting log_output is changed in every new connection # 
@@ -32,17 +37,12 @@ SET @@global.log_output = 'NONE';
 # con1 will be default connection from now on
 --echo 'connect (con1,localhost,root,,,,)'
 connect (con1,localhost,root,,,,);
---echo 'connection con1'
-connection con1;
-SELECT @@global.log_output;
 SET @@global.log_output = 'TABLE,FILE';
+
+# Test that the effect is global
 --echo 'connect (con2,localhost,root,,,,)'
 connect (con2,localhost,root,,,,);
---echo 'connection con2'
-connection con2;
 SELECT @@global.log_output;
-disconnect con2;
-
 
 --echo '#--------------------FN_DYNVARS_065_02-------------------------#'
 ####################################################
@@ -52,10 +52,9 @@ disconnect con2;
 --echo 'connection con1'
 connection con1;
 
-
-#=======================================================================
+#===============================================================
 --echo '---Checking general_log when log_output is NONE---'
-#=======================================================================
+#===============================================================
 
 SET @@global.log_output = 'NONE';
 TRUNCATE TABLE mysql.general_log;
@@ -64,13 +63,13 @@ TRUNCATE TABLE mysql.general_log;
 DROP TABLE IF EXISTS t1;
 --enable_warnings
 CREATE TABLE t1(a INT);
-INSERT INTO t1 value(1);
+INSERT INTO t1 VALUE(1);
 SELECT 'abc';
 SELECT count(*) FROM mysql.general_log;
 
-#==============================================================================
+#===============================================================
 --echo '---Checking general_log when log_output is TABLE---'
-#==============================================================================
+#===============================================================
 
 SET @@global.log_output = 'TABLE';
 TRUNCATE TABLE mysql.general_log;
@@ -78,35 +77,49 @@ TRUNCATE TABLE mysql.general_log;
 --disable_warnings
 DROP TABLE IF EXISTS t1;
 --enable_warnings
-create table t1(a int);
-INSERT INTO t1 value(1);
+CREATE TABLE t1(a int);
+INSERT INTO t1 VALUE(1);
 SELECT 'abc';
-SELECT count(*) from mysql.general_log;
+# At least the last 4 statement should be logged.
+SELECT count(*)>4 FROM mysql.general_log;
 
-#===========================================================
+#===============================================================
 # Checking general_log when log_output is FILE
-#===========================================================
-
-#SET @log_file = "mytest.log";
-#SET @@global.general_log = 0;
-#FLUSH LOGS;
-#SET @@global.general_log_file = @log_file;
---echo 'Bug#35371: Changing general_log file is crashing server'
---echo 'SET @@global.general_log_file = @log_file;'
+#===============================================================
 
+SET @@global.general_log = 'OFF';
+FLUSH LOGS;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+eval SET @@global.general_log_file = '$MYSQLTEST_VARDIR/run/mytest.log';
+SET @@global.general_log = 'ON';
 SET @@global.log_output = 'FILE';
 TRUNCATE TABLE mysql.general_log;
 --disable_warnings
 DROP TABLE IF EXISTS t1;
 --enable_warnings
-create table t1(a int);
-INSERT INTO t1 value(1);
+CREATE TABLE t1(a INT);
+INSERT INTO t1 VALUE(1);
 SELECT 'abc';
-SELECT count(*) from mysql.general_log;
+SELECT count(*) FROM mysql.general_log;
 
 DROP TABLE t1;
 
+file_exists $MYSQLTEST_VARDIR/run/mytest.log ;
+
+#==============================================================
+# Clean up
+#==============================================================
+
+--echo connection default;
+connection default;
+SET @@global.general_log= 'OFF';
+SET @@global.general_log_file= @start_general_log_file;
+SET @@global.log_output= @start_value;
+SET @@global.general_log= @start_general_log;
+SET @@global.general_log= 'ON';
+
 --enable_ps_protocol
 ####################################################
-# Endo of functionality Testing for log_output     #
+# End of functionality Testing for log_output      #
 ####################################################
+

Thread
bzr commit into mysql-5.1 branch (horst:2713) Bug#37766Horst Hunger27 Nov