mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Initail merge with MySQL 5.1 (XtraDB still needs to be merged)
Fixed up copyright messages.
This commit is contained in:
@ -931,9 +931,6 @@ static bool fix_fields_part_func(THD *thd, Item* func_expr, TABLE *table,
|
||||
const char *save_where;
|
||||
char* db_name;
|
||||
char db_name_string[FN_REFLEN];
|
||||
bool save_use_only_table_context;
|
||||
uint8 saved_full_group_by_flag;
|
||||
nesting_map saved_allow_sum_func;
|
||||
DBUG_ENTER("fix_fields_part_func");
|
||||
|
||||
if (part_info->fixed)
|
||||
@ -1000,23 +997,26 @@ static bool fix_fields_part_func(THD *thd, Item* func_expr, TABLE *table,
|
||||
of interesting side effects, both desirable and undesirable.
|
||||
*/
|
||||
|
||||
save_use_only_table_context= thd->lex->use_only_table_context;
|
||||
thd->lex->use_only_table_context= TRUE;
|
||||
thd->lex->current_select->cur_pos_in_select_list= UNDEF_POS;
|
||||
saved_full_group_by_flag= thd->lex->current_select->full_group_by_flag;
|
||||
saved_allow_sum_func= thd->lex->allow_sum_func;
|
||||
thd->lex->allow_sum_func= 0;
|
||||
{
|
||||
const bool save_use_only_table_context= thd->lex->use_only_table_context;
|
||||
thd->lex->use_only_table_context= TRUE;
|
||||
thd->lex->current_select->cur_pos_in_select_list= UNDEF_POS;
|
||||
const bool save_agg_field= thd->lex->current_select->non_agg_field_used();
|
||||
const bool save_agg_func= thd->lex->current_select->agg_func_used();
|
||||
const nesting_map saved_allow_sum_func= thd->lex->allow_sum_func;
|
||||
thd->lex->allow_sum_func= 0;
|
||||
|
||||
error= func_expr->fix_fields(thd, (Item**)&func_expr);
|
||||
error= func_expr->fix_fields(thd, (Item**)&func_expr);
|
||||
|
||||
/*
|
||||
Restore full_group_by_flag and allow_sum_func,
|
||||
fix_fields should not affect mysql_select later, see Bug#46923.
|
||||
*/
|
||||
thd->lex->current_select->full_group_by_flag= saved_full_group_by_flag;
|
||||
thd->lex->allow_sum_func= saved_allow_sum_func;
|
||||
|
||||
thd->lex->use_only_table_context= save_use_only_table_context;
|
||||
/*
|
||||
Restore agg_field/agg_func and allow_sum_func,
|
||||
fix_fields should not affect mysql_select later, see Bug#46923.
|
||||
*/
|
||||
thd->lex->current_select->set_non_agg_field_used(save_agg_field);
|
||||
thd->lex->current_select->set_agg_func_used(save_agg_func);
|
||||
thd->lex->allow_sum_func= saved_allow_sum_func;
|
||||
thd->lex->use_only_table_context= save_use_only_table_context;
|
||||
}
|
||||
|
||||
context->table_list= save_table_list;
|
||||
context->first_name_resolution_table= save_first_table;
|
||||
@ -6575,7 +6575,7 @@ void set_key_field_ptr(KEY *key_info, const uchar *new_buf,
|
||||
|
||||
void mem_alloc_error(size_t size)
|
||||
{
|
||||
my_error(ER_OUTOFMEMORY, MYF(0), size);
|
||||
my_error(ER_OUTOFMEMORY, MYF(0), static_cast<int>(size));
|
||||
}
|
||||
|
||||
#ifdef WITH_PARTITION_STORAGE_ENGINE
|
||||
|
Reference in New Issue
Block a user