mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
MDEV-15087 Item_func::fix_fields:
Assertion `used_tables_cache == 0' failed This bug manifested itself when executing queries over materialized derived tables /vies and with conjunctive always true predicates containing inexpensive single-row subqueries. This bug disappeared after the patch mdev-15035 had been applied.
This commit is contained in:
@ -1368,6 +1368,13 @@ JOIN::optimize_inner()
|
||||
conds= optimize_cond(this, conds, join_list, FALSE,
|
||||
&cond_value, &cond_equal, OPT_LINK_EQUAL_FIELDS);
|
||||
|
||||
if (thd->is_error())
|
||||
{
|
||||
error= 1;
|
||||
DBUG_PRINT("error",("Error from optimize_cond"));
|
||||
DBUG_RETURN(1);
|
||||
}
|
||||
|
||||
if (thd->lex->sql_command == SQLCOM_SELECT &&
|
||||
optimizer_flag(thd, OPTIMIZER_SWITCH_COND_PUSHDOWN_FOR_DERIVED))
|
||||
{
|
||||
@ -1402,13 +1409,6 @@ JOIN::optimize_inner()
|
||||
DBUG_RETURN(1);
|
||||
}
|
||||
|
||||
if (thd->is_error())
|
||||
{
|
||||
error= 1;
|
||||
DBUG_PRINT("error",("Error from optimize_cond"));
|
||||
DBUG_RETURN(1);
|
||||
}
|
||||
|
||||
{
|
||||
having= optimize_cond(this, having, join_list, TRUE,
|
||||
&having_value, &having_equal);
|
||||
|
Reference in New Issue
Block a user