Commit da562b7e authored by ram@gw.mysql.r18.ru's avatar ram@gw.mysql.r18.ru

A fix (bug #7281: RAND(RAND) crashes server).

parent 9f5f5953
...@@ -124,3 +124,5 @@ id select_type table type possible_keys key key_len ref rows Extra ...@@ -124,3 +124,5 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used 1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
Warnings: Warnings:
Note 1003 select degrees(pi()) AS `degrees(pi())`,radians(360) AS `radians(360)` Note 1003 select degrees(pi()) AS `degrees(pi())`,radians(360) AS `radians(360)`
select rand(rand);
ERROR 42S22: Unknown column 'rand' in 'field list'
...@@ -51,3 +51,10 @@ SELECT ASIN(1.2-0.2); ...@@ -51,3 +51,10 @@ SELECT ASIN(1.2-0.2);
#select floor(log(16)/log(2)); #select floor(log(16)/log(2));
explain extended select degrees(pi()),radians(360); explain extended select degrees(pi()),radians(360);
#
# Bug #7281: problem with rand()
#
--error 1054
select rand(rand);
...@@ -1091,7 +1091,8 @@ double Item_func_round::val() ...@@ -1091,7 +1091,8 @@ double Item_func_round::val()
bool Item_func_rand::fix_fields(THD *thd, struct st_table_list *tables, bool Item_func_rand::fix_fields(THD *thd, struct st_table_list *tables,
Item **ref) Item **ref)
{ {
Item_real_func::fix_fields(thd, tables, ref); if (Item_real_func::fix_fields(thd, tables, ref))
return TRUE;
used_tables_cache|= RAND_TABLE_BIT; used_tables_cache|= RAND_TABLE_BIT;
if (arg_count) if (arg_count)
{ // Only use argument once in query { // Only use argument once in query
......
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