お知らせ¶
8.01リリース - 2018-03-29¶
In this version, MySQL will be automatically restarted if you had already installed Mroonga. This is because Mroonga requires newer version of Groonga (8.0.1) to fix bugs, but it will not reloaded until MySQL is restarted.
改良¶
- [rpm][centos] Percona Server 5.6.39をサポートしました。 [@iiiiyyyyさんが報告]
- [rpm][centos] Percona Server 5.7.21をサポートしました。
- [rpm][centos] MariaDB 10.2.13をサポートしました。[GitHub#198] [Shota Suzukiさんが報告]
修正¶
- 誤ったキャッシュが使われる不具合を修正しました。複数のデータベースを作成していて、そのどれかに mroonga_command() 経由でアクセスしたときに意図せず誤ったキャッシュが返る問題が発生します。問題を修正するにはGroonga 8.0.1以降が必要です。
- "NOT IN"クエリーが空の結果を返す不具合を修正しました。この不具合は "NOT IN"を複数の引数と一緒に使ったときに発生します。例えば "NOT IN (xxx, xxx)" などです。
- "ORDER BY RAND()" クエリーが誤った結果を返す不具合を修正しました。この不具合は "ORDER BY RAND()" と "LIMIT" を同時に指定したときに発生します。
- ORDER LIMITの最適化が意図せずORDER BY function()にも適用されてしまう不具合を修正しました。
感謝¶
- @iiiiyyyyさん
- Shota Suzukiさん
8.00リリース - 2018-02-09¶
メジャーバージョンアップです! メジャーバージョンアップですが、互換性は壊れていないので、データベースを再構築することなくアップグレードできます。
改良¶
- ハッシュインデックスを作成する際に、使用するリソースを減らすために小さいハッシュを使うようにしました。
- [percona57] ギャップロック検出をサポートしました。 [GitHub#188][Iwoさんの報告]
感謝¶
- Iwoさん
7.11リリース - 2018-01-29¶
改良¶
- [テスト] サブクエリーとORDER BY ... LIMIT最適化のテストケースを追加しました。[GitHub#184] [濵﨑一樹さんが報告]
- [rpm][centos] MariaDB 10.3に対応しました。
- [deb][ubuntu] Ubuntu 17.10向けにMariaDB 10.1のパッケージをサポートしました。
修正¶
- [Mroonga_n_pooling_contexts]
FLUSH STATUS
により値が意図せずリセットされてしまう不具合を修正しました。 - [maradb10.3] 定数の変更によりビルドエラーになっていた問題を修正しました。(
HA_MUST_USE_TABLE_CONDITION_PUSHDOWN
がHA_CAN_TABLE_CONDITION_PUSHDOWN
へと変更) - [macOS] 現状にそぐわないインストール手順を削除し、最新のドキュメントへのリンクに差し替えました。 [天野龍司さんが報告]
- [rpm][centos] MariaDB 10.2.12をサポートしました。[GitHub#186] [Shota Suzukiさんが報告]
- [rpm][centos] Percona Server 5.7.20-19に対応しました。
- [Ubuntu] Ubuntu 17.04(Zesty Zapus)のサポートをやめました。2018年1月13日でサポートが切れた(EOLになった)ためです。
感謝¶
- 濵﨑一樹さん
- 天野龍司さん
- Shota Suzukiさん
7.10リリース - 2017-12-29¶
改良¶
- Groonga 7.1.0が必要になります。Mroonga 7.10にアップグレード後にMySQLを再起動する必要があります。
- [MariaDB 10.3] MariaDB 10.3に対応しました。
- [rpm][centos] MariaDB 10.2.11に対応しました。
- [rpm][centos] MariaDB 10.1.30に対応しました。
- [rpm][centos] Percona Server 5.7.20に対応しました。
- [rpm][centos] Percona Server 5.6.38に対応しました。
- [最適化] マルチカラムインデックスでもカウントスキップ最適化をサポートしました。
- コンディションプッシュダウン(検索条件をMySQLレベルではなくGroongaレベルで処理する最適化)をサポートしました。この最適化関連の変数をいくつか追加しました。
- [Mroonga_condition_push_down]
Mroonga_condition_push_down
を追加しました。 - [mroonga_condition_push_down_type]
mroonga_condition_push_down_type
を追加しました。デフォルト値はONE_FULL_TEXT_SEARCH
です。このときは、WHERE
句の中に1つだけMATCH AGAINST
がある場合にだけコンディションプッシュダウンを使います。従来と同じ挙動です。この値をALL
にすると、常にコンディションプッシュダウンを使います。今のところ、ALL
は実験的な機能です。実際に使って、速くなるか遅くなるかフィードバックして欲しいです。
- [Mroonga_condition_push_down]
- 固定長カラムの値の取得処理を高速化するためにカラムキャッシュ機能をサポートしました。
last_insert_grn_id
関数をmroonga_last_insert_grn_id
関数に改名しました。他のUDFと同じようにmroonga_
プレフィックスが付きました。last_insert_grn_id
は非推奨ですが引き続き使えます。 [GitHub#177] [Ian Gilfillanさんが報告]- [Mroonga_n_pooling_contexts] mroonga_command() 用にプールしているコンテキストの数を確認するためのステータス変数を追加しました。
- [
FLUSH TABLES
] mroonga_command() 用にプールしているコンテキストもクリアーするようになりました。
感謝¶
- Ian Gilfillanさん
7.09リリース - 2017-11-29¶
改良¶
- [rpm][centos] MariaDB 10.2.10に対応。
- [rpm][centos] MariaDB 10.1.29に対応。
- テストを実行するときにsedがなくてもよいようにしました。 [Sergei Golubchikさんがパッチ提供]
- [cmake] Mroongaを無効にしてビルドする場合にはMroonga関連の設定をスキップするようにしました。 [Vladislav Vaintroubさんがパッチ提供]
感謝¶
- Sergei Golubchikさん
- Vladislav Vaintroubさん
7.08リリース - 2017-10-29¶
改良¶
- テーブル作成時に
flags
オプションを指定できるようになりました。 オプションにはTABLE_HASH_KEY
、TABLE_PAT_KEY
、TABLE_DAT_KEY
とKEY_LARGE
が指定できます。 [groonga-dev, 04494] [宮下さんが報告] - [rpm][centos] MySQL 5.6.38-2と5.7.20-15.24に対応。
- [Ubuntu] Ubuntu 17.10 (Artful Aardvark)をサポートしました。
感謝¶
- 宮下さん
7.07リリース - 2017-10-12¶
改良¶
- [mroonga_query_expand]
mroonga_query_expand
UDFを追加しました。同義語テーブルを用意しておけば、クエリに含まれる語の同義語をmroonga_query_expand
で展開できます。この関数を使うためには Groonga 7.0.6以降が必要です。 - [rpm][centos] 最新のPercona Server 5.7.19-17.1をサポートしました。 [tigersun2000さんが報告]
- [rpm][centos] MariaDB 5.5.56-2をサポートしました。 [@akiko_pusuさんが報告]
- [rpm][centos] MariaDB公式が提供するMariaDB 10.1/10.2をサポートしました。
修正¶
"DROP DATABASE" したときに誤ったデータベースが使われてしまう可能性のある不具合を修正しました。この不具合により内部で使っている "mroonga_operations" テーブルが意図せず削除されてしまうため、クラッシュする可能性があります。この不具合は次の2つの条件を満たすと発生します:
- Mroongaを使っているデータベースが複数あること
- "DROP DATABASE" をMroongaのテーブルを作成していないデータベースに対して実行すること
意図しない結果として、 "DROP DATABASE x" は 既存の "y" データベースの "mroonga_operations" テーブルを削除してしまいます。
CHECK TABLEしたあとにクラッシュする不具合を修正しました。 [GitHub#167] [GMOメディア株式会社さんが報告]
[deb][mariadb10] lsb-releaseパッケージへの依存関係を追加しました。preinst や postrm などメンテナスクリプトに必要でした。 [GitHub#169] [すぎうらさんがパッチ提供]
感謝¶
- @tigersun2000さん
- @akiko_pusuさん
- GMOメディア株式会社さん
- すぎうらさん
7.06リリース - 2017-08-29¶
改良¶
- [mroonga_highlight_html()] mroonga_highlight_html の使用方法を追記しました。
- Generated Columnをサポートしました。JSON型のカラムから値を取り出した結果をカラムとして実体化して全文検索できるので便利です。 [GitHub#159,#160,#163] [村上さんがパッチ提供]
- mroonga_enable_operations_recording サーバー変数を追加しました。 [GitHub#158] [村上さんがパッチ提供]
- MariaDB 10.2 と MySQL 5.7 で
VIRTUAL
Generated Columnをサポートしました。 [GitHub#161,#162] [村上さんがパッチ提供] - MariaDB 10.1.26に対応しました。
- [rpm][centos] Percona Server 5.6.36 rel82.1 と 5.7.18-16 をサポートしました。 [Gitter/ja:59894500bc46472974622cbd] [@tigersun2000_twitterさんが報告]
- [rpm][centos] CentOS 7にてMySQL 5.6.37 と MySQL 5.7.19に対応しました。 [groonga-dev,04441] [各務さんが報告]
感謝¶
- 村上さん
- @tigersun2000_twitterさん
- 各務さん
7.05リリース - 2017-07-29¶
改良¶
- Groongaのクエリーログをサポートしました。
mroonga_query_log_file
変数を指定してください。 [GitHub#148] - MariaDB 10.2.7をサポートしました。 [groonga-dev,04397] [かとうさんが報告]
- [mroonga_command()] データベース名が特別な名前( 例えば
db-1
)な場合もサポートしました。データベース名に-
が含まれていても大丈夫です。 - [mroonga_command()] コマンドの自動エスケープに対応しました。Groongaの機能をMroongaから使いやすくなります。
- MariaDB 5.5.57に対応しました。
- [rpm][centos] CentOS 6にてMySQL 5.6.37-2 と MySQL 5.7.19-1に対応しました。 [groonga-dev,04403] [各務さんが報告]
- [Ubuntu] Ubuntu 16.10(Yakkety Yak)のサポートをやめました。2017年7月20日でサポートが切れた(EOLになった)ためです。
- [mroonga_highlight_html()] 対象となるカラムや文字列をハイライトする関数をサポートしました。
修正¶
- 内部的に有効なインデックスが見つからない場合にクラッシュする不具合を修正しました。 [Gitter:groonga/ja:596714a5c101bc4e3a7db4e5] [K Torimotoさんが報告]
感謝¶
- K Torimotoさん
- かとうさん
- 各務さん
7.04リリース - 2017-06-29¶
改良¶
- ヒットしたレコード用に一時テーブルを作成しようとして失敗したときにエラーメッセージをだすようにしました。この種のエラーはインデックスが壊れているときに発生します。
- [Debian GNU/Linux] Debian 9 (stretch)をサポートしました。
修正¶
- 内部で呼び出している関数
grn_table_setoperation
を呼ぶ前のNULL
チェックが抜けているせいでクラッシュする不具合を修正しました。このようなクラッシュはインデックスが壊れているときに発生します。
7.02リリース - 2017-04-29¶
改良¶
修正¶
- [CentOS] MySQL 5.6.36とMySQL 5.7.18でビルドエラーになる問題を修正しました。
- [cmake] Mroongaがバンドルされているがシステムの
libgroonga
を使う場合にlibgroonga
がリンクされていない問題を修正しました。 [GitHub#137] [村上さんがパッチ提供]
感謝¶
- 村上さん
7.01リリース - 2017-03-29¶
改良¶
- [CentOS] EOLのため、CentOS 5のサポートをやめました。
- [ストレージモード]
ALTER TABLE ADD/DROP FOREIGN KEY
をサポートしました。 - [ストレージモード]
ENUM
を使っている場合のORDER LIMIT
最適化をサポートしました。[groonga-dev,04277] [村田さんが報告] - [ストレージ] カラムのZSTD圧縮フラグ(
COMPRESS_ZSTD
)をサポートしました。 [GitHub#133] [村上さんがパッチ提供] - [サーバ変数の一覧] mroonga_libgroonga_support_zstd サーバー変数のドキュメントを追加しました。 [GitHub#133] [村上さんがパッチ提供]
- [インストール] リソースのダウンロードに
https://packages.groonga.org
を推奨するようにしました。
修正¶
- [ストレージモード] log-bin と
COLLATE
が指定されている場合、UPDATE PRIMARY KEY
で更新エラーになる問題を修正しました。 [GitHub#132] [kitoraさんが報告] - 設定していないのに
FOREIGN KEY
が意図せずダンプされる不具合を修正しました。 [groonga-dev,04276] [村田さんが報告]
感謝¶
- kitoraさん
- 村田さん
- 村上さん