groonga storage engineでマルチカラムインデックスをつくってみたいけど迷走中
groonga storage engineでマルチカラム(複合)インデックスをつくろうとしたら、なかなかうまくいきません。
カラム名制約
第一に、カラム名の制約があり、接頭語に_(アンダーバー)を入れるなというエラー。
#1005 - name can't start with '_' and 0-9, and contains only 0-9, A-Z, a-z, or _:
インデックス項目制約
テーブルを新たに作成しなおして、
CREATE TABLE `new_table` ( ・・・・ FULLTEXT INDEX (hoge,fuga) ) ENGINE = groonga DEFAULT CHARSET utf8;
とやって、Djangoからテーブルを作成しようとすると、
#python ./manage.py syncdb Creating table newtable Installing custom SQL for hoge.newtable model Failed to install custom SQL for hoge.newtable model: (1070, 'Too many key parts specified; max 1 parts allowed') Installing index for hoge.newtable model Failed to install index for hoge.newtable model: (1146, "Table 'huga.hogenew_table' doesn't exist")
となります。
「1070, 'Too many key parts specified; max 1 parts allowed'」とでるけど、これがgroonga storage engineの問題か、
MySQLの問題か、groongaのみで発生している問題かで切り分けが出来ず、迷走中。
困り申した。。。
追伸
個別にインデックスを作って、OR検索でつなぐと、なんか期待する結果が得られないです。
(後半のクエリー結果のみ出力されます)
ここも謎です。。。