Hironori Matsubara
t0392****@gmail*****
2016年 3月 4日 (金) 13:43:38 JST
松原と申します。 (数ヶ月前は質問でお世話になりました) このたび使用している環境で、MySQLの構文エラーとなるものがあり、 不具合なのか相談させていただければと思いました。 ■事象 mroongaで、MATCH() AGAINST() 構文を使うとき、 AGAINST() の中に mroonga_escape() を使うと構文エラーになる ■再現例 ドキュメントにあるようなSQLを実行したところ、MySQLの構文エラーとなりました。 http://mroonga.org/ja/docs/reference/udf/mroonga_escape.html mysql> CREATE TABLE `symbols` ( `id` int(11) NOT NULL, `content` text, PRIMARY KEY (`id`), FULLTEXT KEY `idx_content` (`content`) ) ENGINE=Mroonga; mysql> SELECT * FROM `symbols` WHERE MATCH(`content`) AGAINST(mroonga_escape("+hello_world()", "()") IN BOOLEAN MODE); ERROR 1210 (HY000): Incorrect arguments to AGAINST ※AGAINST() の外でのmroonga_escape()には問題ありませんでした mysql> SELECT mroonga_escape("+hello_world()", "()") FROM dual; | +hello_world\(\) | ■環境 ・CentOS 7.2 x86_64 (最新) ・MySQL 5.6.29 (Oracle社レポジトリ) ・groonga 6.0.0, mroonga 6.00 (groongaレポジトリ) ※5.10では発生しませんでした ※5.12で発生を確認し、6.00でも解消しませんでした 私のミスや、何か思い違いをしていたら申し訳ありません…! 何かわかりましたら、どうぞよろしくお願いします。