From ff59a22d043777c61c468cd198e22477db49aa63 Mon Sep 17 00:00:00 2001 From: unknown <serg@serg.mysql.com> Date: Fri, 5 Jan 2001 23:31:34 +0100 Subject: [PATCH] sql_select.cc check for cond==NULL in add_ft_keys() fulltext_left_join.result BitKeeper file /usr/home/serg/Abk/mysql/mysql-test/r/fulltext_left_join.result fulltext_left_join.test BitKeeper file /usr/home/serg/Abk/mysql/mysql-test/t/fulltext_left_join.test mysql-test/t/fulltext_left_join.test: edited sql/sql_select.cc: check for cond==NULL in add_ft_keys() --- mysql-test/r/fulltext_left_join.result | 5 +++++ mysql-test/t/fulltext_left_join.test | 25 +++++++++++++++++++++++++ sql/sql_select.cc | 3 +++ 3 files changed, 33 insertions(+) create mode 100644 mysql-test/r/fulltext_left_join.result create mode 100644 mysql-test/t/fulltext_left_join.test diff --git a/mysql-test/r/fulltext_left_join.result b/mysql-test/r/fulltext_left_join.result new file mode 100644 index 0000000000..04244e309e --- /dev/null +++ b/mysql-test/r/fulltext_left_join.result @@ -0,0 +1,5 @@ +match(t1.texte,t1.sujet,t1.motsclefs) against('droit') +0 +0 +0.67003110026735 +0 diff --git a/mysql-test/t/fulltext_left_join.test b/mysql-test/t/fulltext_left_join.test new file mode 100644 index 0000000000..bbe2beb7d0 --- /dev/null +++ b/mysql-test/t/fulltext_left_join.test @@ -0,0 +1,25 @@ +# +# Test for bug from Jean-Cédric COSTA <jean-cedric.costa@ensmp.fr> +# + +CREATE TABLE t1 ( + id VARCHAR(255) NOT NULL PRIMARY KEY, + sujet VARCHAR(255), + motsclefs TEXT, + texte MEDIUMTEXT, + FULLTEXT(sujet, motsclefs, texte) +); +INSERT INTO t1 VALUES('123','toto','essai','test'); +INSERT INTO t1 VALUES('456','droit','penal','lawyer'); +INSERT INTO t1 VALUES('789','aaaaa','bbbbb','cccccc'); +CREATE TABLE t2 ( + id VARCHAR(255) NOT NULL, + author VARCHAR(255) NOT NULL +); +INSERT INTO t2 VALUES('123', 'moi'); +INSERT INTO t2 VALUES('123', 'lui'); +INSERT INTO t2 VALUES('456', 'lui'); + +select match(t1.texte,t1.sujet,t1.motsclefs) against('droit') + from t1 left join t2 on t2.id=t1.id; + diff --git a/sql/sql_select.cc b/sql/sql_select.cc index fdd4541cfc..8e11d60fb6 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -1329,6 +1329,9 @@ add_ft_keys(DYNAMIC_ARRAY *keyuse_array, { Item_func_match *cond_func=NULL; + if (!cond) + return; + if (cond->type() == Item::FUNC_ITEM) { Item_func *func=(Item_func *)cond, -- 2.30.9