Commit ccf0277e authored by Alexey Kopytov's avatar Alexey Kopytov

Automerge.

parents b5bd54fa 36e234a8
...@@ -1713,4 +1713,15 @@ f1 f2 f3 f4 f1 = f2 ...@@ -1713,4 +1713,15 @@ f1 f2 f3 f4 f1 = f2
NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
drop table t1; drop table t1;
# #
# Bug #54465: assert: field_types == 0 || field_types[field_pos] ==
# MYSQL_TYPE_LONGLONG
#
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1), (2);
SELECT MAX((SELECT 1 FROM t1 ORDER BY @var LIMIT 1)) m FROM t1 t2, t1
ORDER BY t1.a;
m
1
DROP TABLE t1;
#
End of 5.1 tests End of 5.1 tests
...@@ -1082,6 +1082,20 @@ select a.f1 as a, b.f4 as b, a.f1 > b.f4 as gt, ...@@ -1082,6 +1082,20 @@ select a.f1 as a, b.f4 as b, a.f1 > b.f4 as gt,
from t1 a, t1 b; from t1 a, t1 b;
select *, f1 = f2 from t1; select *, f1 = f2 from t1;
drop table t1; drop table t1;
--echo #
--echo # Bug #54465: assert: field_types == 0 || field_types[field_pos] ==
--echo # MYSQL_TYPE_LONGLONG
--echo #
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (1), (2);
SELECT MAX((SELECT 1 FROM t1 ORDER BY @var LIMIT 1)) m FROM t1 t2, t1
ORDER BY t1.a;
DROP TABLE t1;
--echo # --echo #
--echo End of 5.1 tests --echo End of 5.1 tests
...@@ -417,26 +417,6 @@ void Item_sum::mark_as_sum_func() ...@@ -417,26 +417,6 @@ void Item_sum::mark_as_sum_func()
} }
void Item_sum::make_field(Send_field *tmp_field)
{
if (args[0]->type() == Item::FIELD_ITEM && keep_field_type())
{
((Item_field*) args[0])->field->make_field(tmp_field);
/* For expressions only col_name should be non-empty string. */
char *empty_string= (char*)"";
tmp_field->db_name= empty_string;
tmp_field->org_table_name= empty_string;
tmp_field->table_name= empty_string;
tmp_field->org_col_name= empty_string;
tmp_field->col_name= name;
if (maybe_null)
tmp_field->flags&= ~NOT_NULL_FLAG;
}
else
init_make_field(tmp_field, field_type());
}
void Item_sum::print(String *str, enum_query_type query_type) void Item_sum::print(String *str, enum_query_type query_type)
{ {
/* orig_args is not filled with valid values until fix_fields() */ /* orig_args is not filled with valid values until fix_fields() */
......
...@@ -339,7 +339,6 @@ class Item_sum :public Item_result_field ...@@ -339,7 +339,6 @@ class Item_sum :public Item_result_field
forced_const= TRUE; forced_const= TRUE;
} }
virtual bool const_item() const { return forced_const; } virtual bool const_item() const { return forced_const; }
void make_field(Send_field *field);
virtual void print(String *str, enum_query_type query_type); virtual void print(String *str, enum_query_type query_type);
void fix_num_length_and_dec(); void fix_num_length_and_dec();
......
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