mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Fixed LP bug #800184.
The function key_and() erroneously called SEL_ARG::increment_use_count() when SEL_ARG::incr_refs() should had been called. This could lead to wrong values of use_count for some SEL_ARG trees.
This commit is contained in:
@ -8565,8 +8565,8 @@ key_and(RANGE_OPT_PARAM *param, SEL_ARG *key1, SEL_ARG *key2, uint clone_flag)
|
||||
continue;
|
||||
SEL_ARG *next=key_and(param, e1->next_key_part, e2->next_key_part,
|
||||
clone_flag);
|
||||
e1->increment_use_count(1);
|
||||
e2->increment_use_count(1);
|
||||
e1->incr_refs();
|
||||
e2->incr_refs();
|
||||
if (!next || next->type != SEL_ARG::IMPOSSIBLE)
|
||||
{
|
||||
SEL_ARG *new_arg= e1->clone_and(e2);
|
||||
|
Reference in New Issue
Block a user