summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <igor@olga.mysql.com>2007-01-23 17:04:01 -0800
committerunknown <igor@olga.mysql.com>2007-01-23 17:04:01 -0800
commitbf12442461aff3b6a187e9ea49539632c3e68f4f (patch)
tree00ce7c251075258c92aaefee828e076bc7b78c0d
parentacef88bee3bb91c2f28af504b69816038fd06977 (diff)
parent5d9d6493102c2427bf939293587117d9d7dff898 (diff)
downloadmariadb-git-bf12442461aff3b6a187e9ea49539632c3e68f4f.tar.gz
Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into olga.mysql.com:/home/igor/mysql-5.0-opt sql/item_func.cc: Auto merged
-rw-r--r--mysql-test/r/fulltext_left_join.result23
-rw-r--r--mysql-test/t/fulltext_left_join.test28
2 files changed, 51 insertions, 0 deletions
diff --git a/mysql-test/r/fulltext_left_join.result b/mysql-test/r/fulltext_left_join.result
index 68a424fa3a5..fdf11c14cc4 100644
--- a/mysql-test/r/fulltext_left_join.result
+++ b/mysql-test/r/fulltext_left_join.result
@@ -67,3 +67,26 @@ id d e m_id f
4 bword aword NULL NULL
5 aword and bword NULL 5
drop table t1,t2;
+CREATE TABLE t1 (
+id int(10) NOT NULL auto_increment,
+link int(10) default NULL,
+name mediumtext default NULL,
+PRIMARY KEY (id),
+FULLTEXT (name)
+);
+INSERT INTO t1 VALUES (1, 1, 'string');
+INSERT INTO t1 VALUES (2, 0, 'string');
+CREATE TABLE t2 (
+id int(10) NOT NULL auto_increment,
+name mediumtext default NULL,
+PRIMARY KEY (id),
+FULLTEXT (name)
+);
+INSERT INTO t2 VALUES (1, 'string');
+SELECT t1.*, MATCH(t1.name) AGAINST('string') AS relevance
+FROM t1 LEFT JOIN t2 ON t1.link = t2.id
+WHERE MATCH(t1.name, t2.name) AGAINST('string' IN BOOLEAN MODE);
+id link name relevance
+1 1 string 0
+2 0 string 0
+DROP TABLE t1,t2;
diff --git a/mysql-test/t/fulltext_left_join.test b/mysql-test/t/fulltext_left_join.test
index 7c22f49ed8c..5942ce119ee 100644
--- a/mysql-test/t/fulltext_left_join.test
+++ b/mysql-test/t/fulltext_left_join.test
@@ -58,4 +58,32 @@ insert into t2 values (1, 'bword'), (3, 'aword'), (5, '');
select * from t1 left join t2 on m_id = id where match(d, e, f) against ('+aword +bword' in boolean mode);
drop table t1,t2;
+#
+# BUG#25637: LEFT JOIN with BOOLEAN FULLTEXT loses left table matches
+# (this is actually the same bug as bug #14708)
+#
+
+CREATE TABLE t1 (
+ id int(10) NOT NULL auto_increment,
+ link int(10) default NULL,
+ name mediumtext default NULL,
+ PRIMARY KEY (id),
+ FULLTEXT (name)
+);
+INSERT INTO t1 VALUES (1, 1, 'string');
+INSERT INTO t1 VALUES (2, 0, 'string');
+CREATE TABLE t2 (
+ id int(10) NOT NULL auto_increment,
+ name mediumtext default NULL,
+ PRIMARY KEY (id),
+ FULLTEXT (name)
+);
+INSERT INTO t2 VALUES (1, 'string');
+
+SELECT t1.*, MATCH(t1.name) AGAINST('string') AS relevance
+ FROM t1 LEFT JOIN t2 ON t1.link = t2.id
+ WHERE MATCH(t1.name, t2.name) AGAINST('string' IN BOOLEAN MODE);
+
+DROP TABLE t1,t2;
+
# End of 4.1 tests