1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Fixed bug mdev-12360.

The method With_element::check_unrestricted_recursive() icorrectly performed
the check that no recursive reference is not encountered in inner parts of
outer joins. As a result the server reported errors for valid specifications
with outer joins.
This commit is contained in:
Igor Babaev
2017-03-24 22:04:19 -07:00
parent b56262f696
commit 5a4537f092
3 changed files with 89 additions and 0 deletions

View File

@ -1168,6 +1168,8 @@ bool With_element::check_unrestricted_recursive(st_select_lex *sel,
ti.rewind();
while ((tbl= ti++))
{
if (!tbl->is_with_table_recursive_reference())
continue;
for (TABLE_LIST *tab= tbl; tab; tab= tab->embedding)
{
if (tab->outer_join & (JOIN_TYPE_LEFT | JOIN_TYPE_RIGHT))