Commit 02a38fd2 authored by Oleksandr Byelkin's avatar Oleksandr Byelkin

MDEV-8624: MariaDB hangs on query with many logical condition

Made no_rows_in_result()/restore_to_before_no_rows_in_result() not looking
annecessary deep with walk() method.
parent f804b74f
This diff is collapsed.
This diff is collapsed.
......@@ -377,17 +377,17 @@ class Item_func :public Item_result_field
void no_rows_in_result()
{
bool_func_call_args info;
info.original_func_item= this;
info.bool_function= &Item::no_rows_in_result;
walk(&Item::call_bool_func_processor, FALSE, (uchar*) &info);
for (uint i= 0; i < arg_count; i++)
{
args[i]->no_rows_in_result();
}
}
void restore_to_before_no_rows_in_result()
{
bool_func_call_args info;
info.original_func_item= this;
info.bool_function= &Item::restore_to_before_no_rows_in_result;
walk(&Item::call_bool_func_processor, FALSE, (uchar*) &info);
for (uint i= 0; i < arg_count; i++)
{
args[i]->no_rows_in_result();
}
}
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment