Kouhei Sutou
kou****@clear*****
2016年 2月 29日 (月) 23:41:25 JST
須藤です。 今日は4年に一度のうるう肉の日ですね! PGroonga 1.0.3をリリースしました! http://groonga.org/ja/blog/2016/02/09/pgroonga-1.0.3.html ## アップグレード方法 1.0.3は1.0.2と互換性があります。 http://pgroonga.github.io/ja/upgrade/#compatible-case の 手順でアップグレードしてください。 ## 変更点 1.0.2のアナウンスもできていなかったのでそちらもあわせて紹介 します。 * [Windows] ベースとするPostgreSQLを9.4.5から9.5.1にアップグレードしました。 * [Windows] バンドルするGroongaを6.0.0にアップグレードしました。 * [Windows] mrubyを有効にしました。 * [Windows] LZ4をバンドルしました。 * [RPM] PostgreSQL 9.5をサポートしました。 * [jsonb] シーケンシャルスキャンをサポートしました。 * オペレータークラスpgroonga.text_full_text_search_ops_v2 を追加しました。これは実験的なオペレータークラスです。 後方互換性が壊れる可能性がありますが、新しい機能が入って います。 現在サポートされているオペレーターは以下です。 * LIKE * ILIKE * &@: pgroonga.text_full_text_searchの%%と同等。 * &?: pgroonga.text_full_text_searchの@@と同等。 * &@>: 右側の複数のテキストのどれかが&@によってtrueを返す場合、trueを返す。 * &?>: 右側の複数のテキストのどれかが&?によってtrueを返す場合、trueを返す。 * &`: スクリプト構文を使う演算子(シーケンシャルスキャンでは使えない) * 複合主キーをサポートしました。 * VACUUMやANALYZEで有効なテーブルが削除される不具合を修正 しました。この問題はREINDEXを使った後に起きていました。 * マルチバイト文字のテーブル名・カラム名をサポートしました。 (サポートしているエンコーディングはUTF-8のみ) ## 新しいオペレータークラスと互換性について PGroongaのバージョンが1系の間は基本的に互換性を維持します。 ただし、このリリースで追加した pgroonga.text_full_text_search_ops_v2のように pgroonga.XXX_ops_v2というオペレータークラスを導入し、これら は基本的に非互換とします。 これらのオペレータークラスを使っている人は基本的にアップグレー ドに以下をしてもらいます。 * インデックス削除 * PGroonga削除 * PGroongaアップグレード * PGroongaインストール * インデックス作成 そして、PGroongaのバージョンが2系になるタイミングで非互換に なります。これは、pgroonga.XXX_ops_v2から最後の「_v2」がと れて既存のpgroonga.XXX_opsを置き換えるからです。 このときはすべてのユーザーが↑のようにアップグレードする必要 があります。 新機能をオペレーター追加で実現しているうちは↑のように運用し ようと思っています。落ち着いたらメジャーバージョンアップでも なるべく互換性を保つようにしようと思っています。 それでは、PostgreSQLで日本語全文検索をしたい場合はPGroongaを 試してみてください。 -- 須藤 功平 <kou****@clear*****> 株式会社クリアコード <http://www.clear-code.com/> Groongaベースの全文検索システムを総合サポート: http://groonga.org/ja/support/ パッチ採用 - プログラミングが楽しい人向けの採用プロセス: http://www.clear-code.com/recruitment/ リーダブルコードワークショップ: http://www.clear-code.com/services/code-reader/readable-code-workshop.html