Commit a7ad7784 authored by msvensson@neptunus.(none)'s avatar msvensson@neptunus.(none)

Manual merge

parents c30095c9 13ec961c
...@@ -910,4 +910,10 @@ a b a b ...@@ -910,4 +910,10 @@ a b a b
1 1 1 2 1 1 1 2
2 1 2 2 2 1 2 2
3 1 NULL NULL 3 1 NULL NULL
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE not(0+(t1.a=30 and t2.b=1));
a b a b
1 1 1 2
2 1 2 2
3 1 NULL NULL
4 2 NULL NULL
DROP TABLE t1,t2; DROP TABLE t1,t2;
...@@ -645,6 +645,7 @@ SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a; ...@@ -645,6 +645,7 @@ SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a;
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE t1.b=1; SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE t1.b=1;
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a
WHERE t1.b=1 XOR (NOT ISNULL(t2.a) AND t2.b=1); WHERE t1.b=1 XOR (NOT ISNULL(t2.a) AND t2.b=1);
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE not(0+(t1.a=30 and t2.b=1));
DROP TABLE t1,t2; DROP TABLE t1,t2;
......
...@@ -371,8 +371,9 @@ void berkeley_cleanup_log_files(void) ...@@ -371,8 +371,9 @@ void berkeley_cleanup_log_files(void)
** Berkeley DB tables ** Berkeley DB tables
*****************************************************************************/ *****************************************************************************/
static const char *ha_bdb_bas_exts[]= { ha_berkeley_ext, NullS };
const char **ha_berkeley::bas_ext() const const char **ha_berkeley::bas_ext() const
{ static const char *ext[]= { ha_berkeley_ext, NullS }; return ext; } { return ha_bdb_bas_exts; }
ulong ha_berkeley::index_flags(uint idx, uint part, bool all_parts) const ulong ha_berkeley::index_flags(uint idx, uint part, bool all_parts) const
......
...@@ -3015,12 +3015,8 @@ int ha_ndbcluster::extra_opt(enum ha_extra_function operation, ulong cache_size) ...@@ -3015,12 +3015,8 @@ int ha_ndbcluster::extra_opt(enum ha_extra_function operation, ulong cache_size)
} }
static const char *ha_ndb_bas_ext[]= { ha_ndb_ext, NullS }; static const char *ha_ndb_bas_exts[]= { ha_ndb_ext, NullS };
const char** { return ha_ndb_bas_exts; }
ha_ndbcluster::bas_ext() const
{
return ha_ndb_bas_ext;
}
/* /*
......
...@@ -1187,6 +1187,8 @@ class Item_cond_and :public Item_cond ...@@ -1187,6 +1187,8 @@ class Item_cond_and :public Item_cond
enum Functype functype() const { return COND_AND_FUNC; } enum Functype functype() const { return COND_AND_FUNC; }
longlong val_int(); longlong val_int();
const char *func_name() const { return "and"; } const char *func_name() const { return "and"; }
table_map not_null_tables() const
{ return abort_on_null ? not_null_tables_cache: and_tables_cache; }
Item* copy_andor_structure(THD *thd) Item* copy_andor_structure(THD *thd)
{ {
Item_cond_and *item; Item_cond_and *item;
...@@ -1234,7 +1236,7 @@ class Item_cond_xor :public Item_cond ...@@ -1234,7 +1236,7 @@ class Item_cond_xor :public Item_cond
enum Type type() const { return FUNC_ITEM; } enum Type type() const { return FUNC_ITEM; }
longlong val_int(); longlong val_int();
const char *func_name() const { return "xor"; } const char *func_name() const { return "xor"; }
table_map not_null_tables() const { return and_tables_cache; } void top_level_item() {}
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment