funa 1g
funa1****@gmail*****
2014年 12月 12日 (金) 18:28:37 JST
ふなとです。
結城さん、ご対応ありがとうございました!
お返事が遅れてしまってすみません。
ビルドできること確認しました。
deleteについては、bundle install時にdroonga-engine 1.1.0
がインストールされていないとされて、こけてしまうため、未確認です……。
重ねてご確認で申し訳ないのですが、DroongaではUInt64のベクターカラムに対してインデックスは設定できないのでしょうか。
下のようなスキーマを設定してみましたが、その下のようなエラーが出て、addメソッドによる登録ができませんでした(loadでも駄目でした)。
スキーマ
{"dataset":"Default","type":"table_create","body":{"name":"TestIndex","flags":"TABLE_HASH_KEY","key_type":"UInt64"}}
{"dataset":"Default","type":"table_create","body":{"name":"Test","flags":"TABLE_HASH_KEY","key_type":"UInt64"}}
{"dataset":"Default","type":"column_create","body":{"table":"Test","name":"ids","flags":"COLUMN_VECTOR","type":"TestIndex"}}
{"dataset":"Default","type":"column_create","body":{"table":"TestIndex","name":"index_ids","flags":"COLUMN_INDEX","type":"Test","source":"ids"}}
エラー
{
"name": "InvalidValue",
"message": "The column \"ids\" cannot store the value [2].",
"detail": {
"table": "Test",
"key": 1,
"values": {
"ids": [
2
]
},
"timeout": 1000,
"type": "droonga-add"
}
}
インデックスカラムを作成する前に、値を登録し、その後、インデックスカラムを作成することはできました。
また、文字列のベクターカラムに対しては、インデックスの生成はうまくいきました。
数値をIDとして使い、絞り込みを行うことを想定しています。
インデックスカラムを上のように指定することで高速化できることを期待していますが、正しくない利用方法でしょうか。
よろしくお願いします。
2014年12月2日 13:50 YUKI Hiroshi <yuki****@clear*****>:
> Droonga開発チームの結城です。
>
> ふなとさん、ご指摘ありがとうございます!
> ご迷惑をおかけして申し訳ありません。
> 取り急ぎ、droonga-http-serverについては、依存関係の記述のみを修正した上
> でバージョン1.1.1としてリリースしました。
> またengineとバージョンが離れてしまいましたね……
>
> また、deleteコマンドの制限事項についても修正しました。
> その際、Groongaでは文字列と数値を相互に変換できる場合に、deleteやloadで
> キーの型が違ってもエラーにはならないという仕様であることを確認できたの
> で、Droongaもそれに合わせるように修正しました。
> こちらの改善は次のリリースで反映されます。
> 今すぐ試される場合には、インストールスクリプトに
>
> $ curl "https://.../install.sh | sudo VERSION=master bash
>
> と環境変数を指定して実行すると、簡単にお試しいただけます。
> ただ、この時インストールスクリプトがroot権限でbundle installを実行してし
> まうので、普段使いの環境では後々困ったことになり得ます。
> 安全を考慮すると、少し手順が増えますが、droonga-engineのリポジトリを
> cloneしてから
>
> $ bundle install
> $ bundle exec rake build
> $ sudo gem install "pkg/*.gem" --no-ri --no-rdoc
>
> としていただく方がおすすめです。
>
>
> funa 1g wrote:
>> こんにちは、ふなとと申します。
>> 先日のGroongaを囲む夕べには参加させていただきました。
>> 大変楽しかったです、ありがとうございました。
>>
>> Droongaを使わせていただいているのですが、二点ほど気になる点を発見しましたので報告いたします。
>>
>> 1. 最新のdroonga-http-server 1.1.0 なのですが、参照している droonga-express のバージョンが、
>> 1.0.9 以上になっているようです。最新のdroonga-expressのリリースが、1.0.8のため、インストールに失敗する状態になっています。
>>
>> 2. APIのdeleteコマンドで、keyが数値の場合に正しく削除がされません。
>> delete.rb 中で、keyがstringとして扱われているようです。
>> 72行目を以下のようにすることで、数値の場合は削除できるようになりますが、
>> 今度はkeyがShortTextの場合に削除できなくなります。
>> > record = table[key.to_i]
>> ruby は 2.1.3 で、実行しています。
>>
>> Droonga楽しみに使わせていただいています。
>> ご対応いただければ幸いです。
>> よろしくお願いします。
>> _______________________________________________
>> groonga-dev mailing list
>> groon****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/groonga-dev
>>
>
> --
> 結城 洋志 <YUKI Hiroshi>
> E-mail: yuki****@clear*****
>
> 株式会社クリアコード
> 〒170-0005 東京都豊島区南大塚3-29-9
> 中野ビル3階
> TEL : 03-5927-9440
> FAX : 03-5927-9441
> WWW : http://www.clear-code.com/
>
> _______________________________________________
> groonga-dev mailing list
> groon****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/groonga-dev