Yasuhiro Horimoto 2019-01-28 16:00:20 +0900 (Mon, 28 Jan 2019) Revision: 1c35cb28b1ca1b6fb35e7097a654bed1eb8c7447 https://github.com/groonga/groonga.org/commit/1c35cb28b1ca1b6fb35e7097a654bed1eb8c7447 Message: blog ja: add release announce for 8.1.1 Added files: ja/_posts/2019-01-29-groonga-8.1.1.md Added: ja/_posts/2019-01-29-groonga-8.1.1.md (+268 -0) 100644 =================================================================== --- /dev/null +++ ja/_posts/2019-01-29-groonga-8.1.1.md 2019-01-28 16:00:20 +0900 (a41503584) @@ -0,0 +1,268 @@ +--- +layout: post.ja +title: Groonga 8.1.1リリース +description: Groonga 8.1.1をリリースしました! +published: false +--- + +## Groonga 8.1.1リリース + +[Groonga 8.1.1](/ja/docs/news.html#release-8-1-1)をリリースしました! + +それぞれの環境毎のインストール方法: [インストール](/ja/docs/install.html) + +### 変更内容 + +主な変更点は以下の通りです。 + +* [logical_select](/ja/docs/reference/commands/logical_select.html) 新しい引数 `--load_table`、 `--load_columns`、 `--load_values` を追加しました。 + +* [groonga実行ファイル](/ja/docs/reference/executables/groonga.html) 新しいオプション `--log-flags` を追加しました。 + +* インデックスの更新エラー発生時にメモリリークする問題を修正しました。 + +* [ノーマライザー](/ja/docs/reference/normalizers.html) ステートレスなノーマライザーとステートフルなノーマライザーを同時に使用した時に、それらが誤った結果を返すバグを修正しました。 + + * ステートレスなノーマライザーとは、以下です。 + + * ``unify_kana`` + * ``unify_kana_case`` + * ``unify_kana_voiced_sound_mark`` + * ``unify_hyphen`` + * ``unify_prolonged_sound_mark`` + * ``unify_hyphen_and_prolonged_sound_mark`` + * ``unify_middle_dot`` + + * ステートフルなノーマライザーとは、以下です。 + + * ``unify_katakana_v_sounds`` + * ``unify_katakana_bu_sound`` + * ``unify_to_romaji`` + +### [logical_select](/ja/docs/reference/commands/logical_select.html) 新しい引数 `--load_table`、 `--load_columns`、 `--load_values` を追加しました。 + +`logical_select` の結果を `--load_table` で指定したテーブルへ格納できます。 + +`--load_values` オプションは、 `logical_select` の結果のカラムを指定します。 + +`--load_columns` オプションは、 `--load_table` で指定したテーブルのカラムを指定します。 + +このようにして、`--load_values` で指定したカラムの値を、 `--load_columns` で指定したカラムへ格納できます。 + +例えば以下のように、 `--load_table` で指定したLogsテーブルに `logical_select` の結果の`_id` と `timestamp` を格納できます。 + +``` +table_create Logs_20150203 TABLE_HASH_KEY ShortText +column_create Logs_20150203 timestamp COLUMN_SCALAR Time + +table_create Logs_20150204 TABLE_HASH_KEY ShortText +column_create Logs_20150204 timestamp COLUMN_SCALAR Time + +table_create Logs TABLE_HASH_KEY ShortText +column_create Logs original_id COLUMN_SCALAR UInt32 +column_create Logs timestamp_text COLUMN_SCALAR ShortText + +load --table Logs_20150203 +[ +{ + "_key": "2015-02-03:1", + "timestamp": "2015-02-03 10:49:00" +}, +{ + "_key": "2015-02-03:2", + "timestamp": "2015-02-03 12:49:00" +} +] + +load --table Logs_20150204 +[ +{ + "_key": "2015-02-04:1", + "timestamp": "2015-02-04 00:00:00" +} +] + +logical_select \ + --logical_table Logs \ + --shard_key timestamp \ + --load_table Logs \ + --load_columns "original_id, timestamp_text" \ + --load_values "_id, timestamp" +[ + [ + 0, + 0.0, + 0.0 + ], + [ + [ + [ + 3 + ], + [ + [ + "_id", + "UInt32" + ], + [ + "_key", + "ShortText" + ], + [ + "timestamp", + "Time" + ] + ], + [ + 1, + "2015-02-03:1", + 1422928140.0 + ], + [ + 2, + "2015-02-03:2", + 1422935340.0 + ], + [ + 1, + "2015-02-04:1", + 1422975600.0 + ] + ] + ] +] +select --table Logs +[ + [ + 0, + 0.0, + 0.0 + ], + [ + [ + [ + 3 + ], + [ + [ + "_id", + "UInt32" + ], + [ + "_key", + "ShortText" + ], + [ + "original_id", + "UInt32" + ], + [ + "timestamp_text", + "ShortText" + ] + ], + [ + 1, + "2015-02-03:1", + 1, + "1422928140000000" + ], + [ + 2, + "2015-02-03:2", + 2, + "1422935340000000" + ], + [ + 3, + "2015-02-04:1", + 1, + "1422975600000000" + ] + ] + ] +] +``` + +### [groonga実行ファイル](/ja/docs/reference/executables/groonga.html) 新しいオプション `--log-flags` を追加しました。 + +Groongaのログに出力する項目を指定できます。 + +以下のような項目を出力できます。 + +* タイムスタンプ +* ログメッセージ +* ロケーション(ログが出力された場所) +* プロセスID +* スレッドID + +以下のように接頭辞を指定できます。 + +* `+` + + * この接頭辞は、"フラグを追加する"という意味です。 + +* `-` + + * この接頭辞は、"フラグを削除する"という意味です。 + +* 接頭辞無しは、"存在するフラグを置き換える"という意味です。 + +具体的には、以下のようにフラグを指定できます。 + +* `none` + + * ログに何も出力しません。 + +* `time` + + * ログにタイムスタンプを出力します。 + +* `message` + + * ログにメッセージを出力します。 + +* `location` + + * ログの出力場所(ファイル名、行数、関数名)とプロセスIDを出力します。 + +* `process_id` + + * ログにプロセスIDを出力します。 + +* `pid` + + * このフラグは、 `process_id` のエイリアスです。 + +* `thread_id` + + * ログにスレッドIDをを出力します。 + +* `all` + + * このフラグは、 `none` と `default` フラグ以外の全てのフラグを指定します。 + +* `default` + + * ログにタイムスタンプとメッセージを出力します。 + +`|` を使って、複数のログフラグを指定することもできます。 + +例えば以下のように、プロセスIDとスレッドIDを追加で出力できます。 + +``` +実行コマンド +% groonga --log-path groonga.log --log-flags "+pid|+thread_id" db/test.db + +結果のフォーマット +Timestamp|Log level|process id|thread id: Log message + +結果 +2019-01-29 08:53:03.587000|n|2344|3228: grn_init: <8.1.1-xx-xxxxxxxx> +``` + +### さいごに + +8.1.0からの詳細な変更点は[8.1.1リリース 2019-01-29](/ja/docs/news.html#release-8-1-1)を確認してください。 + +それでは、Groongaでガンガン検索してください! -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20190128/458157e1/attachment-0001.html>