Kouhei Sutou
kou****@clear*****
2014年 1月 14日 (火) 14:24:52 JST
須藤です。 In <CANM+****@mail*****> "[groonga-dev,02052] Re: Mroonga、Groongaにおける空レコードの検索について" on Sun, 12 Jan 2014 01:03:51 +0900, Naoya Murakami <visio****@gmail*****> wrote: > 空レコード(not null)をGroonga、およびMroongaで検索することができません。 > 空レコードを検索できるようにできませんでしょうか? とりあえず、Groongaではできるようにしました! Mroongaの方は確認するまで少々お待ちください! 背景を少し説明すると。。。 Groongaのテーブルは転置索引のキー管理にも使われています。 また、Groongaのテーブルには空のキーを登録することができない という事実もあります。 これらを組み合わせると、空の値を転置索引のキーにできないとい うことです。 今回のケースは空のタグで転置索引を使って検索しようとしていま す。Groongaは空の値をキーとして使えないので転置索引を使うこ とができないため、何もヒットしませんでした。 なので、検索クエリーが空のときは転置索引を使わずに検索するよ うにしました。よって、レコード数が多いときに空の値で検索する ときは注意してください。 > また、空レコードを否定で検索すると、Mroongaの方では、レコードが2重に返ってきます。 これは、バグっぽい匂いがプンプンしますね。。。 -- 須藤 功平 <kou****@clear*****> 株式会社クリアコード <http://www.clear-code.com/> (03-6231-7270) Groongaサポート: http://groonga.org/ja/support/ パッチ採用はじめました: http://www.clear-code.com/recruitment/ コミットへのコメントサービスはじめました: http://www.clear-code.com/services/commit-comment.html