summaryrefslogtreecommitdiff
path: root/sql/item_cmpfunc.h
diff options
context:
space:
mode:
authorunknown <sergefp@mysql.com>2005-03-11 02:17:03 +0300
committerunknown <sergefp@mysql.com>2005-03-11 02:17:03 +0300
commit7c90fa7b2cb8131bfcf314c1e25538bd1062fa5d (patch)
tree1a23fa03e38a10c027a627f427f5eddeb9044b97 /sql/item_cmpfunc.h
parent44d66d26dc6dbf1e7c90dc3c4cffe7b5d4baba41 (diff)
downloadmariadb-git-7c90fa7b2cb8131bfcf314c1e25538bd1062fa5d.tar.gz
Fix for BUG#8711: "<=>" may have true value for NULL arguments, so make
Item_func_equal::not_null_tables() always return 0. mysql-test/r/join_outer.result: Testcase for BUG#8711 mysql-test/t/join_outer.test: Testcase for BUG#8711 sql/item_cmpfunc.h: Fix for BUG#8711: "<=>" may have true value for NULL arguments, i.e. it can accept NULL-complemented table rows. This differs from assumptions made in Item_func::not_null_tables(), so add Item_func_equal::not_null_tables(). Item_func_equal::not_null_tables_cache value doesn't make sense now, but we still let it be calculated (and ignore it)
Diffstat (limited to 'sql/item_cmpfunc.h')
-rw-r--r--sql/item_cmpfunc.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h
index 8f1aa525190..a1977e76f67 100644
--- a/sql/item_cmpfunc.h
+++ b/sql/item_cmpfunc.h
@@ -78,6 +78,7 @@ public:
Item_func_equal(Item *a,Item *b) :Item_bool_func2(a,b) { };
longlong val_int();
void fix_length_and_dec();
+ table_map not_null_tables() const { return 0; }
enum Functype functype() const { return EQUAL_FUNC; }
enum Functype rev_functype() const { return EQUAL_FUNC; }
cond_result eq_cmp_result() const { return COND_TRUE; }