1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

Merge bb-10.2-ext into 10.3

This commit is contained in:
Marko Mäkelä
2017-06-27 08:14:45 +03:00
82 changed files with 3033 additions and 269 deletions

View File

@@ -6901,8 +6901,9 @@ void st_select_lex::collect_grouping_fields(THD *thd)
from cond.
*/
void st_select_lex::check_cond_extraction_for_grouping_fields(Item *cond,
Item_processor check_processor)
void
st_select_lex::check_cond_extraction_for_grouping_fields(Item *cond,
TABLE_LIST *derived)
{
cond->clear_extraction_flag();
if (cond->type() == Item::COND_ITEM)
@@ -6915,7 +6916,7 @@ void st_select_lex::check_cond_extraction_for_grouping_fields(Item *cond,
Item *item;
while ((item=li++))
{
check_cond_extraction_for_grouping_fields(item, check_processor);
check_cond_extraction_for_grouping_fields(item, derived);
if (item->get_extraction_flag() != NO_EXTRACTION_FL)
{
count++;
@@ -6936,10 +6937,12 @@ void st_select_lex::check_cond_extraction_for_grouping_fields(Item *cond,
item->clear_extraction_flag();
}
}
else
cond->set_extraction_flag(cond->walk(check_processor,
0, (uchar *) this) ?
NO_EXTRACTION_FL : FULL_EXTRACTION_FL);
else
{
int fl= cond->excl_dep_on_grouping_fields(this) ?
FULL_EXTRACTION_FL : NO_EXTRACTION_FL;
cond->set_extraction_flag(fl);
}
}