mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-6950 Bad results with joins comparing DATE/DATETIME and INT/DECIMAL/DOUBLE/ENUM/VARCHAR columns
MDEV-6971 Bad results with joins comparing TIME and DOUBLE/DECIMAL columns Disallow using indexes on non-temporal columns to optimize ref access, range access and table elimination when the counterpart's cmp_type is TIME_RESULT, e.g.: SELECT * FROM t1 WHERE indexed_int_column=time_expression; Only index on a temporal column can be used to optimize temporal comparison operations.
This commit is contained in:
@@ -8252,6 +8252,8 @@ get_mm_leaf(RANGE_OPT_PARAM *param, COND *conf_func, Field *field,
|
||||
!(conf_func->compare_collation()->state & MY_CS_BINSORT &&
|
||||
(type == Item_func::EQUAL_FUNC || type == Item_func::EQ_FUNC)))
|
||||
goto end;
|
||||
if (value->cmp_type() == TIME_RESULT && field->cmp_type() != TIME_RESULT)
|
||||
goto end;
|
||||
|
||||
if (key_part->image_type == Field::itMBR)
|
||||
{
|
||||
|
Reference in New Issue
Block a user