Commit 0e330318 authored by unknown's avatar unknown
Browse files

Merge shellback.(none):/home/msvensson/mysql/mysql-5.0-maint

into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint-new


mysql-test/r/mysql.result:
  Auto merged
mysql-test/t/mysql.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
parents a4f01a94 04502c3f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -9,3 +9,4 @@
451ab499rgdjXyOnUDqHu-wBDoS-OQ
45214442pBGT9KuZEGixBH71jTzbOA
45214a07hVsIGwvwa-WrO-jpeaSwVw
452a92d0-31-8wSzSfZi165fcGcXPA
+15 −0
Original line number Diff line number Diff line
@@ -388,6 +388,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))
+13 −1
Original line number Diff line number Diff line
@@ -49,6 +49,16 @@ typedef long my_time_t;
#define TIME_NO_ZERO_DATE	(TIME_NO_ZERO_IN_DATE*2)
#define TIME_INVALID_DATES	(TIME_NO_ZERO_DATE*2)

#define MYSQL_TIME_WARN_TRUNCATED    1
#define MYSQL_TIME_WARN_OUT_OF_RANGE 2

/* Limits for the TIME data type */
#define TIME_MAX_HOUR 838
#define TIME_MAX_MINUTE 59
#define TIME_MAX_SECOND 59
#define TIME_MAX_VALUE (TIME_MAX_HOUR*10000 + TIME_MAX_MINUTE*100 + \
                        TIME_MAX_SECOND)

enum enum_mysql_timestamp_type
str_to_datetime(const char *str, uint length, MYSQL_TIME *l_time,
                uint flags, int *was_cut);
@@ -61,7 +71,9 @@ ulonglong TIME_to_ulonglong(const MYSQL_TIME *time);


my_bool str_to_time(const char *str,uint length, MYSQL_TIME *l_time,
                    int *was_cut);
                    int *warning);

int check_time_range(struct st_mysql_time *time, int *warning);

long calc_daynr(uint year,uint month,uint day);
uint calc_days_in_year(uint year);
+2 −2
Original line number Diff line number Diff line
@@ -324,7 +324,7 @@ pthread_handler_t thr_find_all_keys(void *arg)
  if (info->sort_info->got_error)
    goto err;

  if (info->keyinfo->flag && HA_VAR_LENGTH_KEY)
  if (info->keyinfo->flag & HA_VAR_LENGTH_KEY)
  {
    info->write_keys=write_keys_varlen;
    info->read_to_buffer=read_to_buffer_varlen;
@@ -516,7 +516,7 @@ int thr_write_keys(MI_SORT_PARAM *sort_param)
  {
    if (got_error)
      continue;
    if (sinfo->keyinfo->flag && HA_VAR_LENGTH_KEY)
    if (sinfo->keyinfo->flag & HA_VAR_LENGTH_KEY)
    {
      sinfo->write_keys=write_keys_varlen;
      sinfo->read_to_buffer=read_to_buffer_varlen;
+14 −0
Original line number Diff line number Diff line
@@ -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
Loading