mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-19266: Crash in EITS code when enabling 128 indexes
Do not attempt to set param->table->with_impossible_ranges if the range optimizer is using pseudo-indexes (which is true when we are computing EITS selectivity estimates or doing partition pruning).
This commit is contained in:
@ -9044,7 +9044,11 @@ int and_range_trees(RANGE_OPT_PARAM *param, SEL_TREE *tree1, SEL_TREE *tree2,
|
|||||||
if (key && key->type == SEL_ARG::IMPOSSIBLE)
|
if (key && key->type == SEL_ARG::IMPOSSIBLE)
|
||||||
{
|
{
|
||||||
result->type= SEL_TREE::IMPOSSIBLE;
|
result->type= SEL_TREE::IMPOSSIBLE;
|
||||||
param->table->with_impossible_ranges.set_bit(param->real_keynr[key_no]);
|
if (param->using_real_indexes)
|
||||||
|
{
|
||||||
|
param->table->with_impossible_ranges.set_bit(param->
|
||||||
|
real_keynr[key_no]);
|
||||||
|
}
|
||||||
DBUG_RETURN(1);
|
DBUG_RETURN(1);
|
||||||
}
|
}
|
||||||
result_keys.set_bit(key_no);
|
result_keys.set_bit(key_no);
|
||||||
|
Reference in New Issue
Block a user