mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Bug #48293: crash with procedure analyse, view with > 10 columns,
having clause... The fix for bug 46184 was not very complete. It was not covering views using temporary tables and multiple tables in a FROM clause. Fixed by reverting the fix for 46184 and making a more general check that is checking at the right execution stage and for all of the non-supported cases. Now PROCEDURE ANALYZE on non-top level SELECT is also forbidden. Updated the analyse.test and subselect.test accordingly.
This commit is contained in:
@ -622,6 +622,18 @@ JOIN::prepare(Item ***rref_pointer_array,
|
||||
MYF(0)); /* purecov: inspected */
|
||||
goto err; /* purecov: inspected */
|
||||
}
|
||||
if (thd->lex->derived_tables)
|
||||
{
|
||||
my_error(ER_WRONG_USAGE, MYF(0), "PROCEDURE",
|
||||
thd->lex->derived_tables & DERIVED_VIEW ?
|
||||
"view" : "subquery");
|
||||
goto err;
|
||||
}
|
||||
if (thd->lex->sql_command != SQLCOM_SELECT)
|
||||
{
|
||||
my_error(ER_WRONG_USAGE, MYF(0), "PROCEDURE", "non-SELECT");
|
||||
goto err;
|
||||
}
|
||||
}
|
||||
|
||||
if (!procedure && result && result->prepare(fields_list, unit_arg))
|
||||
|
Reference in New Issue
Block a user