Groonga 11.0.7リリース
Groonga 11.0.7をリリースしました!
それぞれの環境毎のインストール方法: インストール
変更内容
主な変更点は以下の通りです。
改良
-
load "[int, int,…]" のような文字列を [int, int,…] のような整数のベクターにキャストするようにしました。
例えば、以下のように、"[1, -2]" のようなベクターを文字列としてロードしたとしても、 [1, -2] のように整数のベクターとして扱います。
table_create Data TABLE_NO_KEY column_create Data numbers COLUMN_VECTOR Int16 table_create Numbers TABLE_PAT_KEY Int16 column_create Numbers data_numbers COLUMN_INDEX Data numbers load --table Data [ {"numbers": "[1, -2]"}, {"numbers": "[-3, 4]"} ] dump --dump_plugins no --dump_schema no load --table Data [ ["_id","numbers"], [1,[1,-2]], [2,[-3,4]] ] column_create Numbers data_numbers COLUMN_INDEX Data numbers select Data --filter 'numbers @ -2' [[0,0.0,0.0],[[[1],[["_id","UInt32"],["numbers","Int16"]],[1,[1,-2]]]]]
この機能は以下の型をサポートします。
- Int8
- UInt8
- Int16
- UInt16
- Int32
- UInt32
- Int64
- UInt64
-
load 文字列として表現されたJSON配列を文字列のベクターとしてロードできるようにしました。
例えば、以下のように "["hello", "world"]" のような文字列として表現されたJSON配列をロードした場合、 ["hello", "world"] のように2つの要素を持つベクターとして扱います。
table_create Data TABLE_NO_KEY [[0,0.0,0.0],true] column_create Data strings COLUMN_VECTOR ShortText [[0,0.0,0.0],true] table_create Terms TABLE_PAT_KEY ShortText --normalizer NormalizerNFKC130 --default_tokenizer TokenNgram [[0,0.0,0.0],true] column_create Terms data_strings COLUMN_INDEX Data strings [[0,0.0,0.0],true] load --table Data [ {"strings": "[\"Hello\", \"World\"]"}, {"strings": "[\"Good-bye\", \"World\"]"} ] [[0,0.0,0.0],2] dump --dump_plugins no --dump_schema no load --table Data [ ["_id","strings"], [1,["Hello","World"]], [2,["Good-bye","World"]] ] column_create Terms data_strings COLUMN_INDEX Data strings select Data --filter 'strings @ "bye"' [ [ 0, 0.0, 0.0 ], [ [ [ 1 ], [ [ "_id", "UInt32" ], [ "strings", "ShortText" ] ], [ 2, [ "Good-bye", "World" ] ] ] ] ]
以前のバージョンでは、 "["hello", "world"]" のような文字列として表現されたJSON配列をロードした場合は、 ["["hello", "world"]"] のような一つの要素を持つベクターとして扱っていました。
-
[Documentation] 以下の項目についてのドキュメントを追加しました。
- column_create WEIGHT_FLOAT32 フラグについてのドキュメントを追加しました。
- NormalizerNFKC121 NormalizerNFKC121 についてのドキュメントを追加しました。
- NormalizerNFKC130 NormalizerNFKC130 についてのドキュメントを追加しました。
- NormalizerTable NormalizerTable についてのドキュメントを追加しました。
-
Groongaが要求する Apache Arrow のバージョンを 3.0.0 に更新しました。
修正
-
テーブル作成時に無効なオプションを持つトークナイザーを指定するとメモリーリークする問題を修正しました。
-
Hashテーブルに新しいエントリーを追加できなくなることがある問題を修正しました。
このバグは、Groonga 11.0.6 でのみ発生し、頻繁にデータを追加、削除すると発生することがあります。 もし、このバグが発生した場合は、以下の手順を実行することで、この問題を解決できます。
- Groongaを11.0.6から11.0.7以降にアップグレードします。
- 元のテーブルと同じスキーマを持つ新しいテーブルを作ります。
- 元のテーブルから新しいテーブルにデータをコピーします。
-
[Windows] メモリー不足によって、新しくファイルのオープンに失敗した時にリソースリークする問題を修正しました。
既知の問題
-
現在Groongaには、ベクターカラムに対してデータを大量に追加、削除、更新した際にデータが破損することがある問題があります。
-
[ブラウザーベースの管理ツール] 現在Groongaには、レコード一覧の管理モードのチェックボックスにチェックを入れても、非管理モードに入力された検索クエリーが送信されるという問題があります。
-
*<
と*>
は、filter条件の右辺にquery()
を使う時のみ有効です。もし、以下のように指定した場合、*<
と*>
は&&
として機能します。'content @ "Groonga" *< content @ "Mroonga"'
-
GRN_II_CURSOR_SET_MIN_ENABLE
が原因でマッチするはずのレコードを返さないことがあります。
さいごに
詳細については、以下のお知らせも参照してください。
それでは、Groongaでガンガン検索してください!