Loading BitKeeper/etc/collapsed +1 −0 Original line number Diff line number Diff line Loading @@ -9,3 +9,4 @@ 451ab499rgdjXyOnUDqHu-wBDoS-OQ 45214442pBGT9KuZEGixBH71jTzbOA 45214a07hVsIGwvwa-WrO-jpeaSwVw 452a92d0-31-8wSzSfZi165fcGcXPA client/mysql.cc +15 −0 Original line number Diff line number Diff line Loading @@ -386,6 +386,21 @@ int main(int argc,char *argv[]) else status.add_to_history=1; status.exit_status=1; { /* The file descriptor-layer may be out-of-sync with the file-number layer, so we make sure that "stdout" is really open. If its file is closed then explicitly close the FD layer. */ int stdout_fileno_copy; stdout_fileno_copy= dup(fileno(stdout)); /* Okay if fileno fails. */ if (stdout_fileno_copy == -1) fclose(stdout); else close(stdout_fileno_copy); /* Clean up dup(). */ } load_defaults("my",load_default_groups,&argc,&argv); defaults_argv=argv; if (get_options(argc, (char **) argv)) Loading include/my_time.h +15 −5 Original line number Diff line number Diff line Loading @@ -98,14 +98,24 @@ int my_datetime_to_str(const MYSQL_TIME *l_time, char *to); int my_TIME_to_str(const MYSQL_TIME *l_time, char *to); /* The following must be sorted so that simple intervals comes first. (get_interval_value() depends on this) Available interval types used in any statement. 'interval_type' must be sorted so that simple intervals comes first, ie year, quarter, month, week, day, hour, etc. The order based on interval size is also important and the intervals should be kept in a large to smaller order. (get_interval_value() depends on this) Note: If you change the order of elements in this enum you should fix order of elements in 'interval_type_to_name' and 'interval_names' arrays See also interval_type_to_name, get_interval_value, interval_names */ enum interval_type { INTERVAL_YEAR, INTERVAL_QUARTER, INTERVAL_MONTH, INTERVAL_DAY, INTERVAL_HOUR, INTERVAL_MINUTE, INTERVAL_WEEK, INTERVAL_SECOND, INTERVAL_MICROSECOND , INTERVAL_YEAR, INTERVAL_QUARTER, INTERVAL_MONTH, INTERVAL_WEEK, INTERVAL_DAY, INTERVAL_HOUR, INTERVAL_MINUTE, INTERVAL_SECOND, INTERVAL_MICROSECOND, INTERVAL_YEAR_MONTH, INTERVAL_DAY_HOUR, INTERVAL_DAY_MINUTE, INTERVAL_DAY_SECOND, INTERVAL_HOUR_MINUTE, INTERVAL_HOUR_SECOND, INTERVAL_MINUTE_SECOND, INTERVAL_DAY_MICROSECOND, INTERVAL_HOUR_MICROSECOND, Loading mysql-test/r/func_date_add.result +14 −0 Original line number Diff line number Diff line Loading @@ -71,3 +71,17 @@ NULL NULL NULL drop table t1; End of 4.1 tests SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 DAY; CAST('2006-09-26' AS DATE) + INTERVAL 1 DAY 2006-09-27 SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 MONTH; CAST('2006-09-26' AS DATE) + INTERVAL 1 MONTH 2006-10-26 SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 YEAR; CAST('2006-09-26' AS DATE) + INTERVAL 1 YEAR 2007-09-26 SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 WEEK; CAST('2006-09-26' AS DATE) + INTERVAL 1 WEEK 2006-10-03 End of 5.0 tests mysql-test/r/func_time.result +2 −2 Original line number Diff line number Diff line Loading @@ -612,7 +612,7 @@ date_add(date,INTERVAL "1 1:1:1" DAY_SECOND) 2003-01-03 01:01:01 select date_add(date,INTERVAL "1" WEEK) from t1; date_add(date,INTERVAL "1" WEEK) 2003-01-09 00:00:00 2003-01-09 select date_add(date,INTERVAL "1" QUARTER) from t1; date_add(date,INTERVAL "1" QUARTER) 2003-04-02 Loading @@ -621,7 +621,7 @@ timestampadd(MINUTE, 1, date) 2003-01-02 00:01:00 select timestampadd(WEEK, 1, date) from t1; timestampadd(WEEK, 1, date) 2003-01-09 00:00:00 2003-01-09 select timestampadd(SQL_TSI_SECOND, 1, date) from t1; timestampadd(SQL_TSI_SECOND, 1, date) 2003-01-02 00:00:01 Loading Loading
BitKeeper/etc/collapsed +1 −0 Original line number Diff line number Diff line Loading @@ -9,3 +9,4 @@ 451ab499rgdjXyOnUDqHu-wBDoS-OQ 45214442pBGT9KuZEGixBH71jTzbOA 45214a07hVsIGwvwa-WrO-jpeaSwVw 452a92d0-31-8wSzSfZi165fcGcXPA
client/mysql.cc +15 −0 Original line number Diff line number Diff line Loading @@ -386,6 +386,21 @@ int main(int argc,char *argv[]) else status.add_to_history=1; status.exit_status=1; { /* The file descriptor-layer may be out-of-sync with the file-number layer, so we make sure that "stdout" is really open. If its file is closed then explicitly close the FD layer. */ int stdout_fileno_copy; stdout_fileno_copy= dup(fileno(stdout)); /* Okay if fileno fails. */ if (stdout_fileno_copy == -1) fclose(stdout); else close(stdout_fileno_copy); /* Clean up dup(). */ } load_defaults("my",load_default_groups,&argc,&argv); defaults_argv=argv; if (get_options(argc, (char **) argv)) Loading
include/my_time.h +15 −5 Original line number Diff line number Diff line Loading @@ -98,14 +98,24 @@ int my_datetime_to_str(const MYSQL_TIME *l_time, char *to); int my_TIME_to_str(const MYSQL_TIME *l_time, char *to); /* The following must be sorted so that simple intervals comes first. (get_interval_value() depends on this) Available interval types used in any statement. 'interval_type' must be sorted so that simple intervals comes first, ie year, quarter, month, week, day, hour, etc. The order based on interval size is also important and the intervals should be kept in a large to smaller order. (get_interval_value() depends on this) Note: If you change the order of elements in this enum you should fix order of elements in 'interval_type_to_name' and 'interval_names' arrays See also interval_type_to_name, get_interval_value, interval_names */ enum interval_type { INTERVAL_YEAR, INTERVAL_QUARTER, INTERVAL_MONTH, INTERVAL_DAY, INTERVAL_HOUR, INTERVAL_MINUTE, INTERVAL_WEEK, INTERVAL_SECOND, INTERVAL_MICROSECOND , INTERVAL_YEAR, INTERVAL_QUARTER, INTERVAL_MONTH, INTERVAL_WEEK, INTERVAL_DAY, INTERVAL_HOUR, INTERVAL_MINUTE, INTERVAL_SECOND, INTERVAL_MICROSECOND, INTERVAL_YEAR_MONTH, INTERVAL_DAY_HOUR, INTERVAL_DAY_MINUTE, INTERVAL_DAY_SECOND, INTERVAL_HOUR_MINUTE, INTERVAL_HOUR_SECOND, INTERVAL_MINUTE_SECOND, INTERVAL_DAY_MICROSECOND, INTERVAL_HOUR_MICROSECOND, Loading
mysql-test/r/func_date_add.result +14 −0 Original line number Diff line number Diff line Loading @@ -71,3 +71,17 @@ NULL NULL NULL drop table t1; End of 4.1 tests SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 DAY; CAST('2006-09-26' AS DATE) + INTERVAL 1 DAY 2006-09-27 SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 MONTH; CAST('2006-09-26' AS DATE) + INTERVAL 1 MONTH 2006-10-26 SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 YEAR; CAST('2006-09-26' AS DATE) + INTERVAL 1 YEAR 2007-09-26 SELECT CAST('2006-09-26' AS DATE) + INTERVAL 1 WEEK; CAST('2006-09-26' AS DATE) + INTERVAL 1 WEEK 2006-10-03 End of 5.0 tests
mysql-test/r/func_time.result +2 −2 Original line number Diff line number Diff line Loading @@ -612,7 +612,7 @@ date_add(date,INTERVAL "1 1:1:1" DAY_SECOND) 2003-01-03 01:01:01 select date_add(date,INTERVAL "1" WEEK) from t1; date_add(date,INTERVAL "1" WEEK) 2003-01-09 00:00:00 2003-01-09 select date_add(date,INTERVAL "1" QUARTER) from t1; date_add(date,INTERVAL "1" QUARTER) 2003-04-02 Loading @@ -621,7 +621,7 @@ timestampadd(MINUTE, 1, date) 2003-01-02 00:01:00 select timestampadd(WEEK, 1, date) from t1; timestampadd(WEEK, 1, date) 2003-01-09 00:00:00 2003-01-09 select timestampadd(SQL_TSI_SECOND, 1, date) from t1; timestampadd(SQL_TSI_SECOND, 1, date) 2003-01-02 00:00:01 Loading