Commit 5ffab995 authored by Gleb Shchepa's avatar Gleb Shchepa

manual merge 5.1-->5.5 (bug 11829681)

parents da19291f c64d72f3
...@@ -4012,6 +4012,15 @@ DROP TABLE t1; ...@@ -4012,6 +4012,15 @@ DROP TABLE t1;
# #
CREATE VIEW v1 AS SELECT 1 IN (1 LIKE 2,0) AS f; CREATE VIEW v1 AS SELECT 1 IN (1 LIKE 2,0) AS f;
DROP VIEW v1; DROP VIEW v1;
#
# Bug 11829681 - 60295: ERROR 1356 ON VIEW THAT EXECUTES FINE AS A QUERY
#
CREATE TABLE t1 (a INT);
CREATE VIEW v1 AS SELECT s.* FROM t1 s, t1 b HAVING a;
SELECT * FROM v1;
a
DROP VIEW v1;
DROP TABLE t1;
# ----------------------------------------------------------------- # -----------------------------------------------------------------
# -- End of 5.1 tests. # -- End of 5.1 tests.
# ----------------------------------------------------------------- # -----------------------------------------------------------------
......
...@@ -3979,6 +3979,18 @@ DROP TABLE t1; ...@@ -3979,6 +3979,18 @@ DROP TABLE t1;
CREATE VIEW v1 AS SELECT 1 IN (1 LIKE 2,0) AS f; CREATE VIEW v1 AS SELECT 1 IN (1 LIKE 2,0) AS f;
DROP VIEW v1; DROP VIEW v1;
--echo #
--echo # Bug 11829681 - 60295: ERROR 1356 ON VIEW THAT EXECUTES FINE AS A QUERY
--echo #
CREATE TABLE t1 (a INT);
CREATE VIEW v1 AS SELECT s.* FROM t1 s, t1 b HAVING a;
SELECT * FROM v1;
DROP VIEW v1;
DROP TABLE t1;
--echo # ----------------------------------------------------------------- --echo # -----------------------------------------------------------------
--echo # -- End of 5.1 tests. --echo # -- End of 5.1 tests.
--echo # ----------------------------------------------------------------- --echo # -----------------------------------------------------------------
......
...@@ -6479,7 +6479,7 @@ void Item_ref::print(String *str, enum_query_type query_type) ...@@ -6479,7 +6479,7 @@ void Item_ref::print(String *str, enum_query_type query_type)
{ {
THD *thd= current_thd; THD *thd= current_thd;
append_identifier(thd, str, (*ref)->real_item()->name, append_identifier(thd, str, (*ref)->real_item()->name,
(*ref)->real_item()->name_length); strlen((*ref)->real_item()->name));
} }
else else
(*ref)->print(str, query_type); (*ref)->print(str, query_type);
......
...@@ -548,6 +548,10 @@ class Item { ...@@ -548,6 +548,10 @@ class Item {
*/ */
Item *next; Item *next;
uint32 max_length; /* Maximum length, in bytes */ uint32 max_length; /* Maximum length, in bytes */
/*
TODO: convert name and name_length fields into String to keep them in sync
(see bug #11829681/60295 etc).
*/
uint name_length; /* Length of name */ uint name_length; /* Length of name */
int8 marker; int8 marker;
uint8 decimals; uint8 decimals;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment