diff options
author | unknown <svoj@mysql.com/june.mysql.com> | 2007-04-02 17:26:39 +0500 |
---|---|---|
committer | unknown <svoj@mysql.com/june.mysql.com> | 2007-04-02 17:26:39 +0500 |
commit | 3c763afc9c39420f9a2f14c51fe20ddf745f7976 (patch) | |
tree | 7b8a8a1a27c95d2b8683bbbbd112223c46b6e0b2 /sql/item_func.h | |
parent | cd4670a7aa270c655dd9a7a45d0c1e05b6f25dd0 (diff) | |
download | mariadb-git-3c763afc9c39420f9a2f14c51fe20ddf745f7976.tar.gz |
BUG#25729 - boolean full text search is confused by NULLs produced by
LEFT JOIN
Fixed that in certain situations MATCH ... AGAINST returns false hits
for NULLs produced by LEFT JOIN when there is no fulltext index
available.
mysql-test/r/fulltext_left_join.result:
A test case for BUG#25729.
mysql-test/t/fulltext_left_join.test:
A test case for BUG#25729.
sql/item_func.cc:
concat_ws(NULL) returns empty string instead of NULL. There is not much
sense to calculate relevance for empty strings, thus return 0 immediately
if we got NULL or empty string from concat_ws.
sql/item_func.h:
Item_func_match::concat renamed to concat_ws.
Diffstat (limited to 'sql/item_func.h')
-rw-r--r-- | sql/item_func.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sql/item_func.h b/sql/item_func.h index 68591f9c6f5..3f87d210431 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -1308,12 +1308,12 @@ public: FT_INFO *ft_handler; TABLE *table; Item_func_match *master; // for master-slave optimization - Item *concat; // Item_func_concat_ws - String value; // value of concat + Item *concat_ws; // Item_func_concat_ws + String value; // value of concat_ws String search_value; // key_item()'s value converted to cmp_collation Item_func_match(List<Item> &a, uint b): Item_real_func(a), key(0), flags(b), - join_key(0), ft_handler(0), table(0), master(0), concat(0) { } + join_key(0), ft_handler(0), table(0), master(0), concat_ws(0) { } void cleanup() { DBUG_ENTER("Item_func_match"); @@ -1321,7 +1321,7 @@ public: if (!master && ft_handler) ft_handler->please->close_search(ft_handler); ft_handler= 0; - concat= 0; + concat_ws= 0; DBUG_VOID_RETURN; } enum Functype functype() const { return FT_FUNC; } |