#At file:///home/svoj/devel/bzr-mysql/mysql-5.1-bugteam-push/ based on revid:joro@stripped
2801 Sergey Vojtovich 2009-02-12 [merge]
Merge 5.0-bugteam -> 5.1-bugteam.
modified:
mysql-test/r/fulltext.result
mysql-test/t/fulltext.test
sql/item_func.cc
=== modified file 'mysql-test/r/fulltext.result'
--- a/mysql-test/r/fulltext.result 2009-01-15 18:11:25 +0000
+++ b/mysql-test/r/fulltext.result 2009-02-12 10:10:07 +0000
@@ -531,3 +531,7 @@ SELECT MATCH(a) AGAINST('aaa1* aaa14 aaa
MATCH(a) AGAINST('aaa1* aaa14 aaa15 aaa16' IN BOOLEAN MODE)
2
DROP TABLE t1;
+CREATE TABLE t1(a TEXT);
+SELECT GROUP_CONCAT(a) AS st FROM t1 HAVING MATCH(st) AGAINST('test' IN BOOLEAN MODE);
+ERROR HY000: Incorrect arguments to AGAINST
+DROP TABLE t1;
=== modified file 'mysql-test/t/fulltext.test'
--- a/mysql-test/t/fulltext.test 2009-01-15 18:11:25 +0000
+++ b/mysql-test/t/fulltext.test 2009-02-12 10:10:07 +0000
@@ -454,3 +454,11 @@ INSERT INTO t1 VALUES('aaa15');
SELECT MATCH(a) AGAINST('aaa1* aaa14 aaa16' IN BOOLEAN MODE) FROM t1;
SELECT MATCH(a) AGAINST('aaa1* aaa14 aaa15 aaa16' IN BOOLEAN MODE) FROM t1;
DROP TABLE t1;
+
+#
+# BUG#36737 - having + full text operator crashes mysql
+#
+CREATE TABLE t1(a TEXT);
+--error ER_WRONG_ARGUMENTS
+SELECT GROUP_CONCAT(a) AS st FROM t1 HAVING MATCH(st) AGAINST('test' IN BOOLEAN MODE);
+DROP TABLE t1;
=== modified file 'sql/item_func.cc'
--- a/sql/item_func.cc 2009-01-23 18:18:02 +0000
+++ b/sql/item_func.cc 2009-02-12 10:10:07 +0000
@@ -5371,7 +5371,10 @@ bool Item_func_match::fix_fields(THD *th
if (item->type() == Item::REF_ITEM)
args[i]= item= *((Item_ref *)item)->ref;
if (item->type() != Item::FIELD_ITEM)
- key=NO_SUCH_KEY;
+ {
+ my_error(ER_WRONG_ARGUMENTS, MYF(0), "AGAINST");
+ return TRUE;
+ }
}
/*
Check that all columns come from the same table.
| Thread |
|---|
| • bzr commit into mysql-5.1-bugteam branch (svoj:2801) | Sergey Vojtovich | 12 Feb |