ReleaseNote
Masafumi Yokoyama edited this page Jun 29, 2015
·
42 revisions
Hi,
Mroonga 5.04 has been released!
Mroonga is a MySQL storage engine that supports fast
fulltext search and geolocation search. It is CJK ready.
It uses Groonga as a storage and fulltext search engine.
http://mroonga.org/docs/news.html#release-5-04
http://mroonga.org/en/blog/2015/06/29/release.html
Document: http://mroonga.org/docs/
Install: http://mroonga.org/docs/install.html
Upgrade: http://mroonga.org/docs/upgrade.html
## Topics
* Improve parameter names (there is compatibility to 6.XX)
* [storage] Improve handling of invalid datetime in `STRICT_TRANS_TABLES` mode (incompatible)
### Improve parameter names (there is compatibility to 6.XX)
The following parameter names are modified. The old value are deprecated but they will be usable on Mroonga 6.XX. They may be removed at Mroonga 7.00.
* Changed keyword to use custom tokenizer to tokenizer from parser.
* In index comment: `parser` -> `tokenizer`.
* Server variable: `mroonga_default_parser` -> `mroonga_default_tokenizer`.
* Renamed parameter name for flags of index column.
* `index_flags` -> `flags`.
* [storage] Renamed parameter name for column's Groonga type.
* `type` -> `groonga_type`.
### [storage] Report error for invalid datetime in `STRICT_TRANS_TABLES` mode (incompatible)
In storage mode, the behavior was changed when `STRICT_TRANS_TABLES` is specified to `sql_mode`.
To insert is success with a warning if an invalid date (such as day 0) is specified until previous versions of Mroonga (5.02 or earlier). But a warning is handled as an error when `STRICT_TRANS_TABLES` mode in MySQL. Mroonga storage mode adjusts to MySQL way.
It's incompatible change, but the previous behavior is a bug. If you don't use `STRICT_TRANS_TABLES` mode, it doesn't effect to you. For more information:
* 5. Limitations — Mroonga v5.04 documentation
http://mroonga.org/docs/reference/limitations.html#limitations-about-the-value-of-columns
## Changes
### Improvements
* [rpm][mysql56-community-mroonga][percona-server-56-mroonga]
Start mysqld when mysqld is not running within rpm-installation.
(This topic is at 5.03-2) [GitHub#58] [Patch by GMO Media, Inc.]
* [mariadb10.1] Followed recent API changes.
* [mariadb] Supported custom parameters in DDL.
This feature can be used only with MariaDB.
* [storage] Report error for invalid datetime related value on `STRICT_TRANS_TABLES`.
[groonga-dev,03299] [Suggested by GMO Media, Inc.]
* Changed keyword to use custom tokenizer to `tokenizer` from `parser`.
* In index comment: `parser` -> `tokenizer`.
* Server variable: `mroonga_default_parser` -> `mroonga_default_tokenizer`.
* `parser` and `mroonga_default_parser` are deprecated but they are
available at least Mroonga 6.XX.
* Renamed parameter name for flags of index column.
* `index_flags` -> `flags`.
* `index_flags` is deprecated but it will be usable on Mroonga 6.XX. It
may be removed at Mroonga 7.00.
* [storage] Show error message when nonexistent Groonga type is specified to column.
* [storage] Renamed parameter name for column's Groonga type.
* `type` -> `groonga_type`.
* `type` is deprecated but it will be usable on Mroonga 6.XX. It may be
removed at Mroonga 7.00.
### Thanks
* GMO Media, Inc.
今日は肉の日(6/29)ですね。Mroonga 5.04をリリースしました!
http://mroonga.org/ja/docs/news.html#release-5-04
ドキュメント:
http://mroonga.org/ja/docs/
インストールガイド:
http://mroonga.org/ja/docs/install.html
アップグレード方法:
http://mroonga.org/ja/docs/upgrade.html
今回のリリースのハイライトは以下のとおりです。
* トークナイザーなどのパラメーター名を改善(6.XXまでは互換性あり)
* [ストレージモード] `STRICT_TRANS_TABLES`のときの不正な日付の扱いを改善(非互換)
### トークナイザーなどのパラメーター名を改善(6.XXまでは互換性あり)
以下のパラメーター名が変更になりました。旧パラメーター名はMroonga6系(6.XX)までは使うことができますが、2017年2月にリリース予定の7.00で削除される予定です。すぐに影響はありませんが、早めの変更をおすすめします。
* トークナイザー指定時のキーワードを`parser`から`tokenizer`に変更
* インデックスコメント: `parser` -> `tokenizer`
* サーバー変数: `mroonga_default_parser` -> `mroonga_default_tokenizer`
* インデックスカラムのflagsのパラメーター名を`index_flags`から`flags`に変更
* Groongaのカラムの型のパラメーター名を`type`から`groonga_type`に変更
### [ストレージモード] `STRICT_TRANS_TABLES`のときの不正な日付の扱いを改善(非互換)
ストレージモードのときに、`sql_mode`に`STRICT_TRANS_TABLES`が指定されたときの挙動が変更になりました。
今までは、不正な日付(0月0日など)が指定された場合でもワーニングとなってレコードの挿入は成功していました。しかし、MySQL全体としては`STRICT_TRANS_TABLES`が指定された場合はワーニングがエラーになるという挙動なので、それに合わせてMroongaのストレージモードでもエラーにするようにしました。レコードの挿入も失敗するようになります。
これは非互換な変更ですが、今までの挙動が問題だったので修正しました。
なお、`STRICT_TRANS_TABLES`でない場合の挙動は変わっていません。0月0日のような日付は1月1日として扱われます。詳細はリファレンスをご覧ください。(近いうちに、`STRICT_TRANS_TABLES`の場合の記述を追加したいと思っています)
* 5. 制限事項 — Mroonga v5.04 documentation
http://mroonga.org/ja/docs/reference/limitations.html#limitations-about-the-value-of-columns
## 変更点
5.03からの変更点は以下の通りです。
http://mroonga.org/ja/docs/news.html#release-5-04
### 改良
* [rpm][mysql56-community-mroonga][percona-server-56-mroonga] インストール時にmysqldが動いていない場合は起動するようにしました。(これは5.03-2で入った変更です) [GitHub#58] [GMOメディア株式会社さんがパッチ提供]
* [mariadb10.1] APIの変更に追従しました。
* [mariadb] DDL内でカスタムパラメーターをサポートしました。この機能はMariaDBでのみ使うことができます。
* [ストレージモード] STRICT_TRANS_TABLES のときに、不正な日付をエラーにするようにしました。 [groonga-dev,03299] [GMOメディア株式会社さんが提案]
* カスタムトークナイザー使用時のキーワードを parser から tokenizer へ変更しました。
* インデックスコメント: parser -> tokenizer
* サーバー変数: mroonga_default_parser -> mroonga_default_tokenizer
* parser と mroonga_default_parser は非推奨ですが、Mroonga 6.XXまでは使うことができます。
* インデックスカラムのflagsのパラメーター名を変更しました。
* index_flags -> flags
* index_flags は非推奨ですが、Mroonga 6.XXまでは使うことができます。Mroonga 7.00で削除される予定です。
* [ストレージモード] カラムに対してGroongaに存在しない型を指定した場合にエラーメッセージを表示するようにしました。
* Groongaのカラムの型のパラメーター名を変更しました。
* type -> groonga_type
* type は非推奨ですが、Mroonga 6.XXまでは使うことができます。Mroonga 7.00で削除される予定です。
### 感謝
* GMOメディア株式会社さん
5/29にMroonga 5.03をリリースしました。
今回のリリースのハイライトは以下のとおりです。
* 全文検索結果のソート処理で FT_SORTED フラグをサポート
http://mroonga.org/ja/blog/2015/05/29/release.html
変更点の一覧を知るにはニュースを確認してください。
http://mroonga.org/ja/docs/news.html#release-5-03
ドキュメント:
http://mroonga.org/ja/docs/
インストールガイド:
http://mroonga.org/ja/docs/install.html
アップグレード方法:
http://mroonga.org/ja/docs/upgrade.html
## Mroongaとは
Mroongaは全文検索エンジンであるGroongaをベースとしたMySQLの
ストレージエンジンで、Tritonnの後継プロダクトです。高速な全
文検索・位置情報検索ができることが特長で、いろいろなWebサー
ビスで使われています。
Mroonga - 利用者のみなさん
http://mroonga.org/ja/users/
Mroongaは国産のストレージエンジンで、日本語もバッチリ使えま
す。MySQLで日本語のテキストを全文検索したい場合はMroongaを
試してみてください。
Hi,
Mroonga 5.03 has been released!
Mroonga is a MySQL storage engine that supports fast
fulltext search and geolocation search. It is CJK ready.
It uses Groonga as a storage and fulltext search engine.
http://mroonga.org/docs/news.html#release-5-03
http://mroonga.org/en/blog/2015/05/29/release.html
Document: http://mroonga.org/docs/
Install: http://mroonga.org/docs/install.html
Upgrade: http://mroonga.org/docs/upgrade.html
Topics
* Supported FT_SORTED flag in Mroonga
## Supported FT_SORTED flag in Mroonga
In this release, Mroonga has been supported FT_SORTED flag.
FT_SORTED flag means that Mroonga must sort search result set, then
return it to MySQL. MySQL just returns it as response because
result set is already sorted by storage engine - Mroonga.
In the previous versions of Mroonga had not implemented this feature.
It improves compatibility with MySQL and may be able to reduce
redundant sorting in MySQL.
# Changes
## Improvements
* mariadb10.1: Followed recent API changes.
* Supported FT_SORTED flag which is internally used in MySQL.
It improves compatibility with MySQL and can reduces redundant sorting in MySQL.
* mysql57: Followed recent API changes.
## Fixes
* [storage] Fixed a bug that unique index doesn't work for invalid datetime.
This bug is occurred when invalid datetime is inserted. The unique index is
created for invalid datetime instead of actual truncated datetime.
[groonga-dev,03219] [Reported by Hiroshi Kagami]
* [multiple column key] Fixed a potential bug that decoding value is broken.
This bug may occurs because proper byte order conversion between network and
host is missing on decoding.
* [windows] Fixed a bug that needless groonga-normalizer-mysql plugin search
is ran when it is embedded into Mroonga. [GitHub#53] [Reported by torinky]
* Fixed wrong keyword length when query includes Pragma. This bug causes that
it doesn't hit expected search results. [GitHub#54] [Patch by Naoya Murakami]
* [storage] Fixed a bug that unique check is ignored for multiple connections.
[groonga-dev,03243] [Reported by Hiroshi Kagami]
## Thanks
* Hiroshi Kagami
* torinky
* Naoya Murakami
今日は肉の日(5/29)ですね。Mroonga 5.03をリリースしました!
http://mroonga.org/ja/docs/news.html#release-5-03
ドキュメント:
http://mroonga.org/ja/docs/
インストールガイド:
http://mroonga.org/ja/docs/install.html
アップグレード方法:
http://mroonga.org/ja/docs/upgrade.html
今回のリリースのハイライトは以下のとおりです。
* 全文検索結果のソート処理で FT_SORTED フラグをサポート
## 全文検索結果のソート処理で FT_SORTED フラグをサポート
全文検索結果をストレージエンジンからMySQLに返すときに、ソート済みであ
ることを示すFT_SORTEDに対応していると、MySQL側ではストレージエンジン側で
ソートされているので、MySQL側で余計なソートをせずにそのまま返せるとい
う仕組みがあります。
Mroongaはこれまでその仕組みに実は対応していませんでした。
今回のリリースでは、FT_SORTEDフラグがついている場合には、Mroonga側で
適合順にソートしてからMySQLに結果を返すようにしました。
これにより、よりストレージエンジンとして正しい振舞いをするようになりま
した。
ただし、これにより MATCH AGAINSTで特にORDER BY等を指定していないケース
ではもしかすると全文検索結果が従来と異なることがあるかも知れません。
もし、ソート順に関して期待と異なる結果が返ってくることがあれば、フィー
ドバックをもらえると問題の解決につなげられるので嬉しいです。
# 変更点
5.02からの変更点は以下の通りです。
http://mroonga.org/ja/docs/news.html#release-5-03
## 改良
* mariadb10.1: APIの変更に追従しました。
* MySQLの内部で使われている FT_SORTED フラグに対応しました。
これにより、全文検索時のMySQLとの互換性が向上し、MySQLで行っていた冗長なソート処理を減らせる可能性があります。
* mysql57: APIの変更に追従しました。
## 修正
* [ストレージモード] 不正なdatetimeに対してユニークインデックスが正しく機能しない不具合を修正しました。
この不具合は不正なdatetimeを挿入したときに発生します。
ユニークインデックスが実際に挿入される値ではなく、補正前の不正な値で作成されてしまうためです。
[groonga-dev,03219] [各務さんが報告]
* [マルチカラムキー] デコードした値が壊れるかもしれない潜在的な不具合を修正しました。
この不具合はバイトオーダーの変換をデコードのときにしていないことが起因で発生する可能性があります。
* [windows] Mroongaに groonga-normalizer-mysql が組込まれていると、不必要な groonga-normalizer-mysql
プラグインの検索が実行される不具合を修正しました。 [GitHub#53] [torinkyさんが報告]
* クエリに Pragma が含まれているときに、キーワードの長さを間違えてしまい、正しく検索できない不具合を修正しました。
[GitHub#54] [村上さんがパッチ提供]
* [ストレージモード] 複数接続時にユニーク制約が無視されてしまう不具合を修正しました。
[groonga-dev,03243] [各務さんが報告]
## 感謝
* 各務さん
* torinkyさん
* 村上さん
4/29にMroonga 5.02をリリースしました。
今回のリリースのハイライトは以下のとおりです。
* Debian 8.0 (Jessie)とUbuntu 15.04 (Vivid Vervet)のサポート
* 範囲検索でレコード数を見積る際のパフォーマンスを改善
http://mroonga.org/ja/blog/2015/04/29/release.html
変更点の一覧を知るにはニュースを確認してください。
http://mroonga.org/ja/docs/news.html#release-5-02
ドキュメント:
http://mroonga.org/ja/docs/
インストールガイド:
http://mroonga.org/ja/docs/install.html
アップグレード方法:
http://mroonga.org/ja/docs/upgrade.html
## Mroongaとは
Mroongaは全文検索エンジンであるGroongaをベースとしたMySQLの
ストレージエンジンで、Tritonnの後継プロダクトです。高速な全
文検索・位置情報検索ができることが特長で、いろいろなWebサー
ビスで使われています。
Mroonga - 利用者のみなさん
http://mroonga.org/ja/users/
Mroongaは国産のストレージエンジンで、日本語もバッチリ使えま
す。MySQLで日本語のテキストを全文検索したい場合はMroongaを
試してみてください。
Hi,
Mroonga 5.02 has been released!
Mroonga is a MySQL storage engine that supports fast
fulltext search and geolocation search. It is CJK ready.
It uses Groonga as a storage and fulltext search engine.
http://mroonga.org/docs/news.html#release-5-02
http://mroonga.org/en/blog/2015/04/29/release.html
Document: http://mroonga.org/docs/
Install: http://mroonga.org/docs/install.html
Upgrade: http://mroonga.org/docs/upgrade.html
Topics
* Supported Debian 8.0 (Jessie) and Ubuntu 15.04 (Vivid Vervet)
* Improved performance to estimate the number of records in range
## Supported Debian 8.0 (Jessie) and Ubuntu 15.04 (Vivid Vervet)
In this release, Debian 8.0 (Jessie) and Ubuntu 15.04 (Vivid Vervet)
are supported.
See following the URL to install Mroonga:
Debian 8.0 (Jessie)
http://mroonga.org/docs/install/debian.html#jessie
Ubuntu 15.04 (Vivid Vervet)
http://mroonga.org/docs/install/ubuntu.html
mroonga.org introduces install procedure for MySQL package, but as you
know, Debian 8.0 (Jessie) and Ubutnu 15.04 supports MariaDB 10.0.x
from distribution's official package.
* Debian 8.0 supportes MariaDB 10.0.16
* Ubuntu 15.04 supports MariaDB 10.0.17
MariaDB 10.0.x bundles Mroonga as a plugin, you can enable Mroonga
plugin after installing MariaDB at once. (Note that MariaDB bundled
Mroonga version is a bit old, use the packages of mroonga.org provides
if you want to use the latest version of Mroonga.)
Here is the install procedure about Mroonga:
INSTALL PLUGIN Mroonga SONAME 'ha_mroonga.so';
CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so';
CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so';
CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so';
CREATE FUNCTION mroonga_escape RETURNS STRING SONAME 'ha_mroonga.so';
## Improved performance to estimate the number of records in range
In this release, we improved the performance by restructuring logics
to calculate statistical information.
In the previous versions, Mroonga returns the real number of target
records in range instead of estimated one. It affects the performance
if there are huge number of records in range.
It is nonsense that calculating statistical information affects to total execution
time, so it is changed to return estimated the number of records in range.
It significantly improves performance of Mroonga.
If Mroonga executes query too slow in range search, and "show profile"
indicates that statistics occupies most of execution time, that's it.
We recommends to upgrade to Mroonga 5.02.
Additionally, we added "mroonga_max_n_records_for_estimate" server
environment variable. It limits to max estimated records in range.
The default value of this variable is 1000. Note that the value of
this variable affects whether which index is used or not.
# Changes
## Improvements
## Fixes
## Thanks
- Debian 8.0,Ubutnu 15.04サポートの件を追加
- Debian 8.0だとMariaDB 10.0.16が使えるのでちょっと古いけどMroonga使えるよということも
- レコード数の見積もりに関してパフォーマンスが改善された旨を書く
今日は肉の日(4/29)ですね。Mroonga 5.02をリリースしました!
http://mroonga.org/ja/docs/news.html#release-5-02
ドキュメント:
http://mroonga.org/ja/docs/
インストールガイド:
http://mroonga.org/ja/docs/install.html
アップグレード方法:
http://mroonga.org/ja/docs/upgrade.html
今回のリリースのハイライトは以下のとおりです。
* Debian 8.0 (Jessie)とUbuntu 15.04 (Vivid Vervet)のサポート
* 範囲検索でレコード数を見積る際のパフォーマンスを改善
## Debian 8.0 (Jessie)とUbuntu 15.04のサポート
4/25にリリースされたばかりのDebian 8.0 (Jessie)と4/23にリリースされた
Ubuntu 15.04 (Vivid Vervet)に対応しました。
インストール手順については次のURLを参照してください。
Debian 8.0 (Jessie)の場合
http://mroonga.org/ja/docs/install/debian.html#jessie
Ubuntu 15.04 (Vivid Vervet)の場合
http://mroonga.org/ja/docs/install/ubuntu.html
mroonga.orgで案内しているMroongaのパッケージはMySQL向けになっています
が、Debian 8.0 (Jessie)とUbutnu 15.04ではMariaDBの10.0.xがディストリ
ビューションの公式パッケージとしてインストールできます。
* Debian 8.0ではMariaDB 10.0.16をインストール可能
* Ubuntu 15.04ではMariaDB 10.0.17をインストール可能
MariaDB 10.0.xではMroongaのプラグインがバンドルされているので、MariaDB
をインストール後に、プラグインを有効にすればすぐに使えるようになります。
(バンドルされたMroongaはちょっと古いバージョンなので、最新のMroongaを使いたいなら
mroonga.orgで案内しているパッケージを使ってください)
プラグインのインストールには次のSQLを実行します。
INSTALL PLUGIN Mroonga SONAME 'ha_mroonga.so';
CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so';
CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so';
CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so';
CREATE FUNCTION mroonga_escape RETURNS STRING SONAME 'ha_mroonga.so';
## 範囲検索でレコード数を見積る際のパフォーマンスを改善
今回のリリースでは、統計情報を計算するときの仕組みを見直してパフォーマンスを
改善しました。
これまで統計情報を計算するときに、Mroongaでは「見積り」ではなくて律儀
に「本物」の件数を返していました。そのため、ヒット数が多いとそれなりに
時間がかかってしまうという問題がありました。
そもそも、統計情報を計算しているのは「高速に実行するための情報集め」な
ので、そこで時間がかかってしまい、全体の処理が遅くなってしまっていては
本末転倒です。そこで、「ざっくりとした見積り」の件数を返すようにしまし
た。これによりパフォーマンスが改善しています。
もし範囲検索で極端に遅く、show profileで確認したときにstatisticsが結構
な割り合いを占めているケースでは上記の問題に遭遇している可能性があります。
Mroongaを最新版にすることをおすすめします。
また、これにあわせて、mroonga_max_n_records_for_estimate というサーバー
変数を追加しました。これは、さきほどのざっくりとした見積りの件数の最大
値を指定するものです。デフォルトでは1000件です。この値はクエリを最適化
するにあたって、どのインデックスが使われるかに影響します。
# 変更点
5.01からの変更点は以下の通りです。
http://mroonga.org/ja/docs/news.html#release-5-02
## 改良
## 修正
## 感謝
TODO:
- 次回はMroongaブログのアナウンスのURLを掲載する。
3/29にMroonga 5.01をリリースしました。
http://mroonga.org/ja/docs/news.html#release-5-01
今回のリリースのハイライトは以下です。
* utf8_unicode_520_ciとutf8mb4_unicode_520_ciをサポート
* CentOS 6/7でPercona Serverをサポート
* [実験的] MySQL 5.7のサポートを開始
ドキュメント:
http://mroonga.org/ja/docs/
インストールガイド:
http://mroonga.org/ja/docs/install.html
アップグレード方法:
http://mroonga.org/ja/docs/upgrade.html
## Mroongaとは
Mroongaは全文検索エンジンであるGroongaをベースとしたMySQLの
ストレージエンジンで、Tritonnの後継プロダクトです。高速な全
文検索・位置情報検索ができることが特長で、いろいろなWebサー
ビスで使われています。
Mroonga - 利用者のみなさん
http://mroonga.org/ja/users/
Mroongaは国産のストレージエンジンで、日本語もバッチリ使えま
す。MySQLで日本語のテキストを全文検索したい場合はMroongaを
試してみてください。
Hi,
Mroonga 5.01 has been released!
Mroonga is a MySQL storage engine that supports fast
fulltext search and geolocation search. It is CJK ready.
It uses groonga as a storage and fulltext search engine.
http://mroonga.org/docs/news.html#release-5-01
http://mroonga.org/en/blog/2015/03/29/release.html
Document: http://mroonga.org/docs/
Install: http://mroonga.org/docs/install.html
Upgrade: http://mroonga.org/docs/upgrade.html
Topics
* Supported utf8_unicode_520_ci and utf8mb4_unicode_520_ci
* Supported Percona Server on CentOS 6/7
* [Experimental] Start to support MySQL 5.7
## Supported utf8_unicode_520_ci and utf8mb4_unicode_520_ci
You can specify utf8_unicode_520_ci or utf8mb4_unicode_520_ci to COLLATION.
But the feature depends on groonga-normalizer-mysql(*1) 1.0.9 (the latest version).
(*1) https://github.com/groonga/groonga-normalizer-mysql
utf8_unicode_520_ci and utf8mb4_unicode_520_ci are the UCA 5.2.0 version of
utf8_unicode_ci and utf8mb4_unicode_ci. utf8_unicode_520_ci and utf8mb4_unicode_520_ci
are not supported in groonga-normalizer-mysql of 1.0.8 and earlier versions so
they were replacing with the default normalizer (NormalizerAuto). Since the latest
version, MySQL compatible normalizer (NormalizerMySQLUnicode520CI) is used so
the behavior is close to MySQL.
Please update Mroonga carefully if you use utf8_unicode_520_ci or utf8mb4_unicode_520_ci,
because the behavior changes at using COLLATION by such as the database reconstruction and
column addition.
The following link will help you to specify COLLATION:
4.3.4. How to specify the normalizer — Mroonga v5.01 documentation
http://mroonga.org/docs/tutorial/storage.html#how-to-specify-the-normalizer
## Supported Percona Server on CentOS 6/7
We support Percona Server(*2) that is a MySQL compatible database server. We
provide Mroonga with Percona Server packages for CentOS 6 and 7. Please see
documentation(*3) for how to install.
(*2) http://www.percona.com/software/percona-server
(*3) http://mroonga.org/docs/install/centos.html
## [Experimental] Start to support MySQL 5.7
We start to support MySQL 5.7 but it is not official support because MySQL 5.7
is development stage. It may include updated InnoDB FTS feature from MySQL 5.6.
We are happy if you tell us the result of evaluation of Mroonga and InnoDB FTS.
We welcome your feedback!
# Changes
## Improvements
* [storage] Supported ``PARTITION BY RANGE``. Note that this feature is not supported on MariaDB 10.
This limitation is derived from MariaDB 10 architecture about removing .par file.
* [mysql56] Disabled in-place ``ALTER TABLE`` for ``PRIMARY KEY``. This change is derived from Groonga's limitation because Groonga doesn't support to change table key type. [Reported by Hiromitsu KATO]
* Dropped Visual Studio 2010 and Visual Studio 2012 support. Use Visual Studio 2013 or later to build Mroonga. [GitHub#45]
* [windows] Added Visual Studio 2015 build support.
* Supported to specify options by table comment when primary key is using hash by ``PRIMARY KEY (...) USING HASH``.
[GitHub#46] [Patch by Naoya Murakami]
* Supported index column flags by index comment. You can specify ``NONE``, ``WITH_POSITION``, ``WITH_SECTION`` and ``WITH_WEIGHT`` as index column flags. Use ``FULLTEXT INDEX (...) COMMENT 'index_flags "WITH_POSITION|WITH_SECTION"'`` for example. [GitHub#47] [Patch by Naoya Murakami]
* Supported to build with MySQL 5.7.
* [rpm][centos] Supported Percona Server 5.6.x on CentOS 6/7. [Tested on CentOS 6 by Yoshino]
* Supported ``utf8_unicode_520_ci`` and ``utf8mb4_unicode_520_ci``. To support these collations, Mroonga now requires `groonga-normalizer-mysql <https://github.com/groonga/groonga-normalizer-mysql>`_ 1.0.9.
## Fixes
* Changed to store score in float. This backward incompatible change is derived from the Groonga DB API change in Groonga 5.0.1. There may be a case the value of score is different.
* Added missing error check when failed to create multiple column index in in-place ``ALTER TABLE``.
* [mariadb] Fixed crash bug when ``SET`` variable is used. This bug depends on MariaDB version. (<= 5.5.41 and <= 10.0.16)
* [rpm][centos] Fixed release number for CentOS 7. [GitHub#44] [Reported by CharAz]
* [mariadb55] Fixed install failure after installing and uninstalling Mroonga.
## Thanks
* Hiromitsu KATO
* Naoya Murakami
* Yoshino
* CharAz
- MySQL 5.7はビルドできるようになったよ、という案内をする。なので試してフィードバックをもらいたい旨を書いておこう。
- InnoDB FTSと比較してみてね、というのもいれておきたい(すとうさん曰く)
今日は肉の日(3/29)ですね。Mroonga 5.01をリリースしました!
http://mroonga.org/ja/docs/news.html#release-5-01
ドキュメント:
http://mroonga.org/ja/docs/
インストールガイド:
http://mroonga.org/ja/docs/install.html
アップグレード方法:
http://mroonga.org/ja/docs/upgrade.html
今回のリリースのハイライトは以下です。
* utf8_unicode_520_ciとutf8mb4_unicode_520_ciをサポート
* CentOS 6/7でPercona Serverをサポート
* [実験的] MySQL 5.7のサポートを開始
## utf8_unicode_520_ciとutf8mb4_unicode_520_ciをサポート
COLLATION(照合順序)にutf8_unicode_520_ciとutf8mb4_unicode_520_ciを指定できるよ
うになりました。ただし、これらを使うためにはgroonga-normalizer-mysql(*)の
最新バージョン(1.0.9)が必要です。
(*) https://github.com/groonga/groonga-normalizer-mysql
utf8_unicode_520_ciとutf8mb4_unicode_520_ciは、utf8_unicode_ciとutf8mb4_unicode_ci
のUCA 5.2.0版です。1.0.8以前のgroonga-normalizer-mysqlは対応しておらず、未対応の
場合に使われるノーマライザー(NormalizerAuto)にフォールバックしていました。この
バージョンからはMySQL互換のノーマライザー(NormalizerMySQLUnicode520CI)が使われ
るようになるため、よりMySQLに近い挙動になります。
今までutf8_unicode_520_ciやutf8mb4_unicode_520_ciを使っていた方は、データベースを
作り直したり新しくカラムを追加したりしてCOLLATIONが使われるタイミングで挙動が変わ
るので注意してアップデートしてください。
照合順序の指定方法については、以下のリンク先を参考にしてください。
4.3.4. ノーマライザーの指定方法 — Mroonga v5.01 documentation
http://mroonga.org/ja/docs/tutorial/storage.html#how-to-specify-the-normalizer
MroongaでMySQL互換の照合順序を使うには - Qiita
http://qiita.com/groonga/items/41d12f16b091426d2158
## CentOS 6/7でPercona Serverをサポート
MySQLと非常に高い互換性を持つMySQLの派生プロダクトであるPercona Serverをサポート
しました。CentOSの6と7向けにパッケージを提供しています。インストール方法はドキュメ
ント(*)をご覧ください。
(*) http://mroonga.org/ja/docs/install/centos.html
## [実験的] MySQL 5.7のサポートを開始
MySQL 5.7のサポートを開始しました。ただし、MySQL 5.7はまだ評価版という扱いなので、
正式サポートではありません。MySQL 5.6から追加されている全文検索機能のInnoDB FTSが
改良されていたりするようなので、興味がある方はMroongaと両方試してベンチマークなど
を取ってもらえるととてもうれしいです。
みなさんからのフィードバックをお待ちしています!
# 変更点
5.00からの変更点は以下の通りです。
http://mroonga.org/ja/docs/news.html#release-5-01
## 改良
* [ストレージモード] PARTITION BY RANGE をサポートしました。この機能は MariaDB 10.xではサポートしていません。これはMariaDB 10.xが.parファイルを削除する仕様に由来する制限です。
* [mysql56] PRIMARY KEY に対してコピーせずに ALTER TABLE できなくしました。この変更はGroongaの制限によるものです。Groongaではテーブルのキーの変更をサポートしていません。 [加藤さんが報告]
* Visual Studio 2010 と Visual Studio 2012 のサポートをやめました。Visual Studio 2013 以降をMroongaのビルドに使ってください。 [GitHub#45]
* [windows] Visual Studio 2015でビルドできるようにしました。
* プライマリーキーに PRIMARY KEY (...) USING HASH を指定しているときに、そのテーブルのコメントにオプションを指定できるようにしました。[GitHub#46] [村上さんがパッチ提供]
* インデックスカラムのフラグをインデックスのコメントに指定できるようにしました。 NONE や WITH_POSITION 、 WITH_SECTION や WITH_WEIGHT がインデックスカラムのフラグとして使えます。[GitHub#47] [村上さんがパッチ提供]
* MySQL 5.7でビルドできるようになりました。
* [rpm][centos] CentOS 6とCentOS 7でPercona Server 5.6.xをサポートしました。[吉野さんがCentOS 6でテスト]
* utf8_unicode_520_ci と utf8mb4_unicode_520_ci をサポートしました。これらの照合順序をサポートするために、Mroongaは groonga-normalizer-mysql 1.0.9 以降を必要とするようになりました。
## 修正
* スコアを浮動小数点で保持するように変更しました。この変更は非互換な変更で、GroongaのDB APIがGroonga 5.0.1で変更されたことに伴います。スコアの値がこれまでと違ってしまうことがあるかも知れません。
* ALTER TABLE で複数のカラムインデックスを作成するのに失敗したときのエラーチェックがなかったので追加しました。
* [mariadb] SET variableしたときにクラッシュする不具合を修正しました。この不具合はMariaDBのバージョンに依存します。 (<= 5.5.41 と <= 10.0.16)
* [rpm][centos] CentOS 7でパッケージのリリースバージョンを修正しました。[GitHub#44] [CharAzさんが報告]
* [mariadb55] インストール、アンインストールしてから再度インストールしようとすると失敗するのを修正しました。
## 感謝
* 加藤さん
* 村上さん
* 吉野さん
* CharAzさん