mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-18755 Assertion `inited==INDEX' failed in handler::ha_index_read_map
When the chosen execution plan accesses a join table employing a range rowid filter a quick select to scan this range has to be built. This quick select is built by a call of SQL_SELECT::test_quick_select(). At this call the function should allow to evaluate only single index range scans. In order to be able to do this a new parameter was added to this function.
This commit is contained in:
@ -1645,7 +1645,8 @@ class SQL_SELECT :public Sql_alloc {
|
||||
{
|
||||
key_map tmp;
|
||||
tmp.set_all();
|
||||
return test_quick_select(thd, tmp, 0, limit, force_quick_range, FALSE, FALSE) < 0;
|
||||
return test_quick_select(thd, tmp, 0, limit, force_quick_range,
|
||||
FALSE, FALSE, FALSE) < 0;
|
||||
}
|
||||
/*
|
||||
RETURN
|
||||
@ -1662,7 +1663,8 @@ class SQL_SELECT :public Sql_alloc {
|
||||
}
|
||||
int test_quick_select(THD *thd, key_map keys, table_map prev_tables,
|
||||
ha_rows limit, bool force_quick_range,
|
||||
bool ordered_output, bool remove_false_parts_of_where);
|
||||
bool ordered_output, bool remove_false_parts_of_where,
|
||||
bool only_single_index_range_scan);
|
||||
};
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user