[Commits] 8adcb55df8e: MDEV-19266: Crash in EITS code when enabling 128 indexes
revision-id: 8adcb55df8e892f866ec930f3e6df30bd5a1d9ad (mariadb-10.4.4-22-g8adcb55df8e) parent(s): 682b360c343c5a6f61282d07a4a904b5bb281b12 author: Sergei Petrunia committer: Sergei Petrunia timestamp: 2019-04-17 13:56:54 +0300 message: 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). --- sql/opt_range.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sql/opt_range.cc b/sql/opt_range.cc index 5ab3d70214d..ed9cd541f70 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -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) { 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); } result_keys.set_bit(key_no);
participants (1)
-
Sergei Petrunia