mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Proposed bugfix for #717
Current table is placed into read_tables set of the current join_tab->select so get_mm_parts function thinks that current table's record is read and tries to calculate WHERE condition with the fields of the record. Result of these calculations is unpredictable. Looks funny - outcome of the SELECT depends on the queries executed before. Anyway i think we should have testcase on this part of the code.
This commit is contained in:
@ -2683,7 +2683,7 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
|
||||
(select->quick &&
|
||||
(select->quick->records >= 100L)))) ?
|
||||
2 : 1;
|
||||
sel->read_tables= used_tables;
|
||||
sel->read_tables= used_tables & ~current_map;
|
||||
}
|
||||
if (i != join->const_tables && tab->use_quick != 2)
|
||||
{ /* Read with cache */
|
||||
|
Reference in New Issue
Block a user