From: Date: February 19 2007 9:37am Subject: bk commit into 4.1 tree (thek:1.2594) BUG#23240 List-Archive: http://lists.mysql.com/commits/20064 X-Bug: 23240 Message-Id: <200702190837.l1J8bbLG029284@kpdesk.mysql.com> Below is the list of changes that have just been committed into a local 4.1 repository of thek. When thek does a push these changes will be propagated to the main repository and, within 24 hours after the push, to the public repository. For information on how to access the public repository see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html ChangeSet@stripped, 2007-02-19 09:37:34+01:00, thek@stripped +4 -0 Bug#23240 --init-file statements with NOW() reports '1970-01-01 11:00:00'as the date time - Starting time of a query sent by file bootstrapping wasn't initialized and starting time defaulted to 0. This later used value by the Now- item and is translated to 1970-01-01 11:00:00. - marking the time with thd->set_time() before the call to mysql_parse resolves this issue. mysql-test/r/init_file.result@stripped, 2007-02-19 09:37:32+01:00, thek@stripped +7 -0 Appended test case mysql-test/std_data/init_file.dat@stripped, 2007-02-19 09:37:32+01:00, thek@stripped +8 -0 Appended test case mysql-test/t/init_file.test@stripped, 2007-02-19 09:37:32+01:00, thek@stripped +9 -0 Appended test case sql/sql_parse.cc@stripped, 2007-02-19 09:37:32+01:00, thek@stripped +1 -0 Bug#23240 --init-file statements with NOW() reports '1970-01-01 11:00:00'as the date time - Starting time of a query sent by file bootstrapping wasn't initialized and starting time defaulted to 0. This later used value by the Now- item and is translated to 1970-01-01 11:00:00. - marking the time with thd->set_time() before the call to mysql_parse resolves this issue. # This is a BitKeeper patch. What follows are the unified diffs for the # set of deltas contained in the patch. The rest of the patch, the part # that BitKeeper cares about, is below these diffs. # User: thek # Host: kpdesk.mysql.com # Root: /home/thek/dev/bug23240/my41-bug23240 --- 1.490/sql/sql_parse.cc 2007-02-19 09:37:37 +01:00 +++ 1.491/sql/sql_parse.cc 2007-02-19 09:37:37 +01:00 @@ -1175,6 +1175,7 @@ extern "C" pthread_handler_decl(handle_b free_root(thd->mem_root,MYF(MY_KEEP_PREALLOC)); break; } + thd->set_time(); mysql_parse(thd,thd->query,length); close_thread_tables(thd); // Free tables if (thd->is_fatal_error) --- 1.1/mysql-test/r/init_file.result 2007-02-19 09:37:37 +01:00 +++ 1.2/mysql-test/r/init_file.result 2007-02-19 09:37:37 +01:00 @@ -1,2 +1,9 @@ +INSERT INTO init_file.startup VALUES ( NOW() ); +SELECT * INTO @X FROM init_file.startup limit 0,1; +SELECT * INTO @Y FROM init_file.startup limit 1,1; +SELECT YEAR(@X)-YEAR(@Y); +YEAR(@X)-YEAR(@Y) +0 +DROP DATABASE init_file; ok End of 4.1 tests --- 1.3/mysql-test/std_data/init_file.dat 2007-02-19 09:37:37 +01:00 +++ 1.4/mysql-test/std_data/init_file.dat 2007-02-19 09:37:37 +01:00 @@ -1 +1,9 @@ select * from mysql.user as t1, mysql.user as t2, mysql.user as t3; + +# +# Bug#23240 --init-file statements with NOW() reports '1970-01-01 11:00:00'as the date time +# +CREATE DATABASE IF NOT EXISTS init_file; +CREATE TABLE IF NOT EXISTS init_file.startup ( startdate DATETIME ); +INSERT INTO init_file.startup VALUES ( NOW() ); + --- 1.7/mysql-test/t/init_file.test 2007-02-19 09:37:37 +01:00 +++ 1.8/mysql-test/t/init_file.test 2007-02-19 09:37:37 +01:00 @@ -6,5 +6,14 @@ # mysql-test/t/init_file-master.opt for the actual test # +# +# Bug#23240 --init-file statements with NOW() reports '1970-01-01 11:00:00'as the date time +# +INSERT INTO init_file.startup VALUES ( NOW() ); +SELECT * INTO @X FROM init_file.startup limit 0,1; +SELECT * INTO @Y FROM init_file.startup limit 1,1; +SELECT YEAR(@X)-YEAR(@Y); +DROP DATABASE init_file; + --echo ok --echo End of 4.1 tests