summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mysql-test/r/cast.result3
-rw-r--r--mysql-test/t/cast.test1
-rw-r--r--mysql-test/t/mysqldump.test8
-rw-r--r--sql/sql_union.cc1
-rw-r--r--sql/sql_yacc.yy12
5 files changed, 11 insertions, 14 deletions
diff --git a/mysql-test/r/cast.result b/mysql-test/r/cast.result
index 24d33e79411..893452290b2 100644
--- a/mysql-test/r/cast.result
+++ b/mysql-test/r/cast.result
@@ -33,6 +33,9 @@ cast("2001-1-1" as DATE) cast("2001-1-1" as DATETIME)
select cast("1:2:3" as TIME);
cast("1:2:3" as TIME)
01:02:03
+select CONVERT("2004-01-22 21:45:33",DATE);
+CONVERT("2004-01-22 21:45:33",DATE)
+2004-01-22
set names binary;
select cast(_latin1'test' as char character set latin2);
cast(_latin1'test' as char character set latin2)
diff --git a/mysql-test/t/cast.test b/mysql-test/t/cast.test
index cb5f10515bd..e1cfe5760ee 100644
--- a/mysql-test/t/cast.test
+++ b/mysql-test/t/cast.test
@@ -13,6 +13,7 @@ select cast(5 as unsigned) -6.0;
select cast("A" as binary) = "a", cast(BINARY "a" as CHAR) = "A";
select cast("2001-1-1" as DATE), cast("2001-1-1" as DATETIME);
select cast("1:2:3" as TIME);
+select CONVERT("2004-01-22 21:45:33",DATE);
#
# Character set convertion
diff --git a/mysql-test/t/mysqldump.test b/mysql-test/t/mysqldump.test
index 1299d73eb99..93b0dd4a75d 100644
--- a/mysql-test/t/mysqldump.test
+++ b/mysql-test/t/mysqldump.test
@@ -28,12 +28,12 @@ INSERT INTO t1 VALUES (-9e999999);
# The following replaces is here because some systems replaces the above
# double with '-inf' and others with MAX_DOUBLE
--replace_result (-1.79769313486232e+308) (RES) (NULL) (RES)
---exec $MYSQL_DUMP --skip-comments test t1
+--exec $MYSQL_DUMP --skip-comments test t1
DROP TABLE t1;
CREATE TABLE t1(a int, b text, c varchar(3));
INSERT INTO t1 VALUES (1, "test", "tes"), (2, "TEST", "TES");
---exec $MYSQL_DUMP --skip-all --skip-comments -X test t1
+--exec $MYSQL_DUMP --skip-all --skip-comments -X test t1
DROP TABLE t1;
#
@@ -42,7 +42,7 @@ DROP TABLE t1;
CREATE TABLE t1 (`a"b"` char(2));
INSERT INTO t1 VALUES ("1\""), ("\"2");
---exec $MYSQL_DUMP --skip-all --skip-comments -X test t1
+--exec $MYSQL_DUMP --skip-all --skip-comments -X test t1
DROP TABLE t1;
#
@@ -51,5 +51,5 @@ DROP TABLE t1;
CREATE TABLE t1 (a VARCHAR(255)) DEFAULT CHARSET koi8r;
INSERT INTO t1 VALUES (_koi8r x'C1C2C3C4C5');
---exec $MYSQL_DUMP --skip-comments test t1
+--exec $MYSQL_DUMP --skip-comments test t1
DROP TABLE t1;
diff --git a/sql/sql_union.cc b/sql/sql_union.cc
index 260903c9dd1..1cb01c6b3ef 100644
--- a/sql/sql_union.cc
+++ b/sql/sql_union.cc
@@ -146,6 +146,7 @@ int st_select_lex_unit::prepare(THD *thd_arg, select_result *sel_result,
for (;sl; sl= sl->next_select())
{
+ sl->options|= SELECT_NO_UNLOCK;
JOIN *join= new JOIN(thd_arg, sl->item_list,
sl->options | thd_arg->options | additional_options,
tmp_result);
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 02a677038cb..d4cbd01dc17 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -664,7 +664,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize);
%type <ha_rkey_mode> handler_rkey_mode
-%type <cast_type> cast_type cast_type_finalize
+%type <cast_type> cast_type
%type <udf_type> udf_func_type
@@ -3082,11 +3082,7 @@ in_sum_expr:
$$= $3;
};
-cast_type_init:
- { Lex->charset= NULL; Lex->length= (char*)0; }
- ;
-
-cast_type_finalize:
+cast_type:
BINARY { $$=ITEM_CAST_BINARY; }
| CHAR_SYM opt_len opt_binary { $$=ITEM_CAST_CHAR; }
| NCHAR_SYM opt_len { $$=ITEM_CAST_CHAR; Lex->charset= national_charset_info; }
@@ -3099,10 +3095,6 @@ cast_type_finalize:
| DATETIME { $$=ITEM_CAST_DATETIME; }
;
-cast_type:
- cast_type_init cast_type_finalize { $$= $2; }
- ;
-
expr_list:
{ Select->expr_list.push_front(new List<Item>); }
expr_list2