mirror of
https://github.com/MariaDB/server.git
synced 2025-09-11 05:52:26 +03:00
Proposed fix for #674
This crash happens in rather exotic case when we try to run SELECT DISTINCT some_func(SUM(some_field)) GROUP BY another_field; on a table with single row. Optimizer marks this table as const, sets group=NULL (with remove_const) thus, create_tmp_table makes mistake collecting columns for temporary table and then crashes because the field_count gets less than hidden_columns_count.
This commit is contained in:
@@ -453,6 +453,9 @@ mysql_select(THD *thd,TABLE_LIST *tables,List<Item> &fields,COND *conds,
|
||||
goto err;
|
||||
|
||||
thd->proc_info="preparing";
|
||||
|
||||
select_distinct= select_distinct && (join.const_tables != join.tables);
|
||||
|
||||
if (result->initialize_tables(&join))
|
||||
goto err;
|
||||
if (join.const_table_map != join.found_const_table_map &&
|
||||
|
Reference in New Issue
Block a user