お知らせ¶
9.10リリース - 2019-11-29¶
改良¶
修正¶
WSL上のUbuntu 18.04でパッケージインストール時に dpkg --configure が失敗する問題を修正しました。 [GitHub#282][ochaochaocha3さんがパッチ提供]
感謝¶
ochaochaocha3さん
9.09リリース - 2019-10-30¶
注釈
今回のバージョンからパフォーマンスが低下しているかもしれません。もし、以前よりパフォーマンスが低下していたら、是非、再現手順を報告してほしいです。
修正¶
MySQL 8.0.18向けのパッケージのビルドエラーを修正しました。
9.08リリース - 2019-09-27¶
改良¶
修正¶
[Debian GNU/Linux] Debian 10(buster) に mariadb-server-10.3-mroonga をインストールできない問題を修正しました。
感謝¶
kajiysさん
bizlevelさん
9.07リリース - 2019-08-29¶
改良¶
[Debian GNU/Linux] Debian 10(buster)のインストールドキュメントを追加しました。
[CentOS] MariaDB 10.1.41、10.2.26、10.3.17、10.4.7をサポートしました。
[サーバ変数の一覧]
mroonga_query_log_file
のドキュメントを追加しました。[Ubuntu] Mroongaのアンインストール方法についてのドキュメントを追加しました。 [GitHub#135][ryfjwrさんがパッチ提供]
[ストレージモード] 正規表現検索の使い方についてのドキュメントを追加しました。
MariaDB 10.0のサポートをやめました。
[CentOS] Percona Server 5.6.45、5.7.27をサポートしました。
[CentOS] CentOS 6でMariaDB 10.x のサポートをやめました。
感謝¶
ryfjwrさん
9.05リリース - 2019-07-30¶
修正¶
[CentOS]
mysql80-comunity-release
のパッケージ名が間違っていたのを修正しました。[groonga-dev,04759][各務さんが報告][ストレージモード] ユニークインデックスを更新する際の不具合を修正しました。以下の条件を満たすとキーの重複エラーが発生します。
ユニークインデックスをマルチカラムに対して作成する。
ユニークキーのカラムの一部が更新される。
すでにユニークインデックスを作成している場合には、作成したインデックスにゴミが残っている可能性があるので該当するテーブルを再作成してください。ダンプ・リストアするか、
ALTER TABLE (TABLE_NAME) FORCE
で再作成することをおすすめします。[mysql8.0]
TIMESTAMP
型をサポートしました。[groonga-dev,04763][各務さんが報告]
感謝¶
各務さん
9.03リリース - 2019-05-29¶
改良¶
[ストレージモード] サンプルの
COMMENT
ではtokenizer "XXX"` を使うようにしました。``default_tokenizer "XXX"
は9.01から非推奨なためです。[Windows] MariaDB 10.1と10.2のzipパッケージを再びサポートしました。
[CentOS] MariaDB 10.3.14と10.3.15をサポートしました。
[Debian GNU/Linux] インストール手順をコピペしやすくしました。
COMMENT 'flags "INDEX_LARGE"'
というように指定するINDEX_LARGE
フラグをサポートしました。[CentOS] MariaDB 10.2.24をサポートしました。
[CentOS] MariaDB 10.1.40をサポートしました。
[Ubuntu] Ubuntu 19.04 (Disco Dingo)をサポートしました。
[CentOS] Percona Server 5.6.44をサポートしました。
[CentOS] MySQL 5.6.44と5.7.26をサポートしました。
9.01リリース - 2019-03-29¶
改良¶
[ストレージ] トークナイザーのオプション指定をサポートしました。
例えば、 COMMENT にトークナイザーのオプションを
CREATE TABLE foo (...) COMMENT='tokenizer "TokenNgram('n', 4)"'
などと指定できます。
[mariadb] テーブルのパラメーターとして "tokenizer" をサポートしました。
例えば、 トークナイザーを
CREATE TABLE foo (...) TOKENIZER='TokenNgram("n", 4)'
などと指定できます。
[ストレージ] コメントのトークナイザーのパラメータとして
tokenizer
をサポートしました。default_tokenizer
は非推奨になりました。
[mariadb] テーブルのパラメーターとして "normalizer" をサポートしました。
例えば、ノーマライザーを
CREATE TABLE foo (...) NORMALIZER='NormalizerNFKC100("unify_kana", true)'
などと指定できます。
[mariadb] テーブルのパラメータとして "token_filters" をサポートしました。
例えば、トークンフィルターを
CREATE TABLE foo (...) TOKEN_FILTERS='TokenFilterNFKC100("unify_katakana_v_sounds", "true")'
などと指定できます。
インデックスのパラメーターとして "LEXICON" をサポートしました。
例えば、
FULLTEXT INDEX foo (bar) LEXICON='terms'
やFULLTEXT INDEX foo (bar) COMMENT 'lexicon "terms"'
などと指定できます。
[appveyor] Mroongaを有効にしたパッケージのビルドをサポートしました。[GitHub#230]
[CentOS] Percona Server 5.7.25-28をサポートしました。
[CentOS] MariaDB 10.3.13をサポートしました。
[CentOS] MariaDB 10.2.23をサポートしました。
9.00リリース - 2019-02-09¶
メジャーバージョンアップです! メジャーバージョンアップですが、互換性は壊れていないので、データベースを再構築することなく9.00へアップグレードできます。
Groonga 9.0.0 にて、 TokenPattern
、 TokenTable
トークナイザーと NormalizerNFKC100
に remove_blank
をサポートしました。Groonga 9.0.0 にアップグレードすることで、Mroonga 9.00からこれらを使えます。
改良¶
[CentOS] Percona Server 5.7.24-27をサポートしました。
[CentOS] Percona Server 5.6.43 rel84.3をサポートしました。
[rpm][centos] MariaDB 10.3.12に対応しました。
[rpm][centos] MariaDB 10.2.21に対応しました。
[rpm][centos] Percona Server 5.7.24-27をサポートしました。
[rpm][centos] Percona Server 5.6.43 rel84.3に対応しました。
[rpm][centos] MySQL 5.7.25をサポートしました。
[rpm][centos] MySQL 5.6.43をサポートしました。
8.09リリース - 2018-11-29¶
改良¶
[Ubuntu] Ubuntu 18.10 (Cosmic Cuttlefish)をサポートしました。
[Windows] MariaDB 10.3.10をサポートしました。
[CentOS] MariaDB 10.2.19をサポートしました。
[CentOS] MariaDB 10.1.37をサポートしました。
[CentOS] Percona Server 5.7.23-25をサポートしました。
[rpm][centos] MariaDB 10.3.11に対応しました。
[rpm][centos] MySQL 5.6.42をサポートしました。
[rpm][centos] MySQL 5.7.24をサポートしました。
訂正:
以下の情報を削除しました。
"MySQL 8をサポートしました。"
すみません。Mroonga 8.09のリリース情報に誤りがありました。MySQL 8はサポートしていません。まだ対応中となります。
8.07リリース - 2018-09-29¶
改良¶
トークナイザーの
off
オプションは非推奨になりました。かわりにnone
オプションを使ってください。2016年9月27にリリースされたMariaDB 10.2.2以前のMariaDB 10.2系サポートをやめました。
8.06リリース - 2018-08-29¶
今回のリリースでは、Mroongaをすでにインストールしていて、かつGroonga 8.0.4以降をインストールしていない場合、MySQLが自動的に再起動されます。Mroonga 8.06が必要としているGroonga 8.0.4以降が、MySQLが再起動されるまで有効にならないためです。
改良¶
Groonga 8.0.4以降が必要になります。
groonga-normalizer-mysql 1.1.3以降が必要になります。
utf8mb4_0900族の照合順序をサポートしました。
トークナイザーのオプションをサポートしました。
例:
tokenizer "TokenNgram(\'loose_symbol\', true)"
参考: http://groonga.org/ja/docs/news.html#release-8-0-2-2018-04-29
Groongaのデフォルトのロガーを使うようにしました。
[Windows] ベースにしているMariaDBを10.1.33から10.3.9にアップデートしました。
注意: MariaDB 10.3にアップグレードする前に、既存のMariaDB 10.1のデータベースをダンプする必要があります。そのあと、アップグレード後にリストアしてください。
[Debian GNU/Linux] Debian 8 (jessie) のサポートをやめました。
[Ubuntu] Ubuntu 17.10 (Artful Aardvark) のサポートをやめました。
[WIP] MySQL 8に対応中です。
ストレージモードはほぼ完了しています。(JSON型はまだ動きません)
ラッパーモードは対応中です。
修正¶
[ストレージモード] マルチレンジリードで誤った結果が返される場合がある問題を修正。[GitHub#211][colt27さんが報告]
感謝¶
colt27さん
8.03リリース - 2018-05-29¶
改良¶
修正¶
[Ubuntu] Ubntu 14.04 LTS(Trusty)でインストールに失敗していた問題を修正しました(8.02にバックポート済み)。[GitHub#202,#205][Masato Hiraiさんが報告]
感謝¶
Masato Hiraiさん
8.02リリース - 2018-04-29¶
改良¶
[Ubuntu] Ubuntu 18.04 LTS (Bionic Beaver)をサポートしました。
[Debian GNU/Linux] Jessieでi386をサポートしました。
意味のない「duplicated unique id」というエラーログを表示しないようにしました。 [GitHub#197]
[developer][test] --record オプションをサポートしました。
[CentOS] groonga-release-X.X.X の代わりに groonga-release-latest を使うようにしました。
[インストールチェック] バージョンチェックの方法を追記しました。
[CentOS][percona] 5.6.34未満と5.7.21未満からのアップグレードをサポートしました。 [groonga-dev,04599][木下崇さんが報告][三谷さんが調査]
[CentOS] MySQL 5.6.40と5.7.22をサポートしました。
[CentOS] Percona Server 5.7.21-21をサポートしました。
修正¶
ORDER BY の中に ORDER BY 1 + 1, id, content のような複雑な条件があるとクラッシュするバグを修正しました。
コンディションプッシュダウンが有効になっているときに AND (x = 1 OR x = 2) などがSQLに含まれていると MATCH AGAINST 条件が無視されるバグを修正しました。 [Gitter/ja:5ae014842b9dfdbc3ac7ce1f][colt27さんが報告]
カラムキャッシュのメモリリークを修正しました。
感謝¶
木下崇さん
三谷さん
colt27さん
8.01リリース - 2018-03-29¶
今回のリリースで、Mroongaをすでにインストールしている場合にはMySQLが自動的に再起動されます。これはMroongaが必要としている新しいバージョンのGroonga 8.0.1が、MySQLが再起動されるまで有効にならないためです。
改良¶
[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さんが報告]
[rpm][centos] MariaDB 10.2.14に対応しました。
修正¶
誤ったキャッシュが使われる不具合を修正しました。複数のデータベースを作成していて、そのどれかに mroonga_command() 経由でアクセスしたときに意図せず誤ったキャッシュが返る問題が発生します。問題を修正するにはGroonga 8.0.1以降が必要です。
"NOT IN"クエリーが空の結果を返す不具合を修正しました。この不具合は "NOT IN"を複数の引数と一緒に使ったときに発生します。例えば "NOT IN (xxx, xxx)" などです。
コンディションプッシュダウンが有効なときに"NOT IN"で結果から除外することができない不具合を修正しました。
"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
は実験的な機能です。実際に使って、速くなるか遅くなるかフィードバックして欲しいです。
固定長カラムの値の取得処理を高速化するためにカラムキャッシュ機能をサポートしました。
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さん
村田さん
村上さん