diff options
author | unknown <sergefp@mysql.com> | 2006-05-06 13:15:00 +0400 |
---|---|---|
committer | unknown <sergefp@mysql.com> | 2006-05-06 13:15:00 +0400 |
commit | c13144722aaf7892a64d6fdeffc130dcda041ab3 (patch) | |
tree | 73272c9d7a5faf37a7090ebfec3c556662b7c988 /Docs/Makefile.am | |
parent | 31ecb598829584944e0ea1ab6c775cfc6c51df39 (diff) | |
download | mariadb-git-c13144722aaf7892a64d6fdeffc130dcda041ab3.tar.gz |
BUG#16798: Inapplicable ref_or_null query plan and bad query result on random occasions
The bug was as follows: When merge_key_fields() encounters "t.key=X OR t.key=Y" it will
try to join them into ref_or_null access via "t.key=X OR NULL". In order to make this
inference it checks if Y<=>NULL, ignoring the fact that value of Y may be not yet known.
The fix is that the check if Y<=>NULL is made only if value of Y is known (i.e. it is a
constant).
TODO: When merging to 5.0, replace used_tables() with const_item() everywhere in merge_key_fields().
mysql-test/r/innodb_mysql.result:
Testcase for BUG16798
mysql-test/t/innodb_mysql.test:
Testcase for BUG16798
sql/sql_select.cc:
BUG#16798: Inapplicable ref_or_null query plan and bad query result on random occasions
In merge_key_fields() don't call val->is_null() if the value of val is not known.
Diffstat (limited to 'Docs/Makefile.am')
0 files changed, 0 insertions, 0 deletions