お知らせ¶
Release 5.06 - 2015-08-31¶
改良¶
- Supported MariaDB 10.1 that is built as embedded server. [MDEV-8508][GitHub#66] [Reported by Sergei Golubchik]
- [rpm][mysql55-mroonga] Updated build target MySQL version. [groonga-dev,03421] [Reported by Hiroshi Kagami]
修正¶
- [rpm][percona-server-56-mroonga] Fixed a crash bug. [GitHub#70] [Patch by GMO Media, Inc.]
- Fixed a crash bug when any opening table exists on shutdown. [GitHub#71] [Reported by GMO Media, Inc.]
感謝¶
GMOメディア株式会社さん
Sergei Golubchikさん
各務さん
5.05リリース - 2015/07/29¶
改良¶
修正¶
マルチカラムインデックスで範囲検索(例:
WHERE date < '2015-07-01'
内の<
)を使った場合に検索結果が減る場合がある不具合を修正しました。[groonga-dev,03332] [GitHub#65] [foamcentimeさんが報告][ストレージモード] メモリーリークを修正しました。[MDEV-8520] [Elena Stepanovaさんが報告]
感謝¶
foamcentimeさん
Elena Stepanovaさん
Sergei Golubchikさん
5.04リリース - 2015/06/29¶
改良¶
[rpm][mysql56-community-mroonga][percona-server-56-mroonga] インストール時にmysqldが動いていない場合は起動するようにしました。(これは5.03-2で入った変更です) [GitHub#58] [GMOメディア株式会社さんがパッチ提供]
[mariadb10.1] APIの変更に追従しました。
[mariadb] DDL内でカスタムパラメーターをサポートしました。この機能はMariaDBでのみ使うことができます。
FULLTEXT IDNEX
でTOKENIZER
パラメーターをサポート:CREATE TABLE diaries ( id int PRIMARY KEY AUTO_INCREMENT, body text, FULLTEXT INDEX body_index (body) TOKENIZER='TokenBigramSplitSymbolAlphaDigit' ) ENGINE = Mroonga COMMENT = 'engine "InnoDB"' DEFAULT CHARSET = utf8;
FULLTEXT IDNEX
と通常のINDEX
でNORMALIZER
パラメーターをサポート:CREATE TABLE memos ( id INT NOT NULL PRIMARY KEY, content TEXT NOT NULL, FULLTEXT INDEX (content) NORMALIZER='NormalizerAuto' ) ENGINE = Mroonga COMMENT = 'engine "InnoDB"' DEFAULT CHARSET = utf8;
FULLTEXT IDNEX
でTOKEN_FILTERS
パラメーターをサポート:CREATE TABLE memos ( content VARCHAR(64) NOT NULL, FULLTEXT INDEX (content) TOKEN_FILTERS='TokenFilterStopWord,TokenFilterStopWord' ) ENGINE = Mroonga COMMENT = 'engine "InnoDB"' DEFAULT CHARSET = utf8;
FULLTEXT IDNEX
と通常のINDEX
でFLAGS
パラメーターをサポート:CREATE TABLE memos ( content VARCHAR(64) NOT NULL, FULLTEXT INDEX (content) FLAGS='WITH_POSITION|WITH_WEIGHT' ) ENGINE = Mroonga COMMENT = 'engine "InnoDB"' DEFAULT CHARSET = utf8;
フィールドで
GROONGA_TYPE
パラメーターをサポート:CREATE TABLE tags ( name VARCHAR(64) PRIMARY KEY ) ENGINE = Mroonga COMMENT = 'engine "InnoDB"' DEFAULT CHARSET = utf8 COLLATE = utf8_bin; CREATE TABLE bugs ( id INT UNSIGNED PRIMARY KEY, tag VARCHAR(64) GROONGA_TYPE='tags' ) ENGINE = Mroonga COMMENT = 'engine "InnoDB"' DEFAULT CHARSET = utf8;
[ストレージモード]
STRICT_TRANS_TABLES
のときに、不正な日付をエラーにするようにしました。 [groonga-dev,03299] [GMOメディア株式会社さんが提案]これは後方互換性のない変更です。例:
準備(共通):
mysql> CREATE TABLE timestamps ( -> id INT PRIMARY KEY AUTO_INCREMENT, -> create_dt DATETIME -> ) ENGINE = Mroonga DEFAULT CHARSET = utf8; Query OK, 0 rows affected (0.09 sec) mysql> SET sql_mode=''; Query OK, 0 rows affected (0.01 sec) mysql> INSERT INTO timestamps (create_dt) VALUES ("2001-00-00 00:00:00"); Query OK, 1 row affected, 1 warning (0.00 sec) mysql> SHOW WARNINGS; +---------+------+------------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------------+ | Warning | 1265 | Data truncated for column 'create_dt' at row 1 | +---------+------+------------------------------------------------+ 1 row in set (0.00 sec) mysql> SELECT * FROM timestamps; +----+---------------------+ | id | create_dt | +----+---------------------+ | 1 | 2001-01-01 00:00:00 | +----+---------------------+ 1 row in set (0.00 sec) mysql> SET sql_mode='STRICT_TRANS_TABLES'; Query OK, 0 rows affected (0.01 sec)
変更前(5.03以前):
mysql> INSERT INTO timestamps (create_dt) VALUES ("2002-00-00 00:00:00"); ERROR 1265 (01000): Data truncated for column 'create_dt' at row 1 mysql> SELECT * FROM timestamps; +----+---------------------+ | id | create_dt | +----+---------------------+ | 1 | 2001-01-01 00:00:00 | | 2 | 2002-01-01 00:00:00 | +----+---------------------+ 2 rows in set (0.00 sec)
変更後(5.04以降):
mysql> INSERT INTO timestamps (create_dt) VALUES ("2002-00-00 00:00:00"); ERROR 22003: Out of range value for column 'create_dt' at row 1 mysql> SELECT * FROM timestamps; +----+---------------------+ | id | create_dt | +----+---------------------+ | 1 | 2001-01-01 00:00:00 | +----+---------------------+ 1 row in set (0.00 sec)
カスタムトークナイザー使用時のキーワードを
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.03リリース - 2015/05/29¶
改良¶
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さん
村上さん
5.02リリース - 2015/04/29¶
改良¶
[doc] リリース手順 を更新しました。
[ストレージ] 範囲指定のレコード数を見積もる際のパフォーマンスを改善しました。以前のバージョンでは、Mroongaは実際のレコード数をカウントします。そのため、レコード数が増えるとパフォーマンスに影響していました。この恩恵を受けるにはGroonga 5.0.2以降が必要です。 [groonga-dev,03150] [嶋田さんが報告]
[実験的] mroonga_max_n_records_for_estimate サーバー変数を追加しました。この変数はレコード数を見積る際の最大レコード数を制限するのに使います。対象となるレコードが多いときでも、見積もる際のコストを抑えることができます。
[rpm][centos] 最新のMySQL 5.6でビルドするようにしました。
[ラッパーモード] Mroongaの
ORDER BY LIMIT
最適化で主キーのソートに対応しました。 [Tsugunori Nashiroさんが報告]Debian 8.0 (Jessie)に対応しました。
Ubuntu 15.04 Vivid Vervetに対応しました。
修正¶
[doc] Windows版パッケージへのリンクが古いのを修正しました。 [METAL_GEAR_mkIIさんが報告]
[ストレージモード][mysql56]
ORDER BY
のカラム指定が重複しているときにクラッシュする問題を修正しました。ORDER BY LIMIT
の最適化を適用するケースでSQLのORDER BY
カラム指定が重複しているときに発生します。この問題はMySQL 5.5には影響しません。 [GitHub#50] [GMOメディア株式会社さんが報告]
感謝¶
嶋田さん
Tsugunori Nashiroさん
METAL_GEAR_mkIIさん
GMOメディア株式会社さん
5.01リリース - 2015/03/29¶
改良¶
[ストレージモード]
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さん
5.00リリース - 2015/02/09¶
5.00になりました!
改良¶
[appveyor] WindowsでのCIを AppVeyor で行うようになりました。Windowsでビルドに失敗したのがすぐにわかるようになりました。groonga-mysql-commit@lists.sourceforge.jpを購読するとビルドの状態を知ることができます。
[rpm][centos] CentOS 7でMySQL 5.6.23向けにビルドするようにしました。[groonga-dev,03083] [青地さんが報告]
修正¶
[cmake] ビッグエンディアンのサポートを明示的に無効にしました。
感謝¶
青地さん
過去のリリース¶
- 4.10リリース - 2015-01-29
- 4.09リリース - 2014-12-29
- 4.08リリース - 2014/11/29
- 4.07リリース - 2014/10/29
- 4.06リリース - 2014/09/29
- 4.05リリース - 2014/08/29
- 4.04リリース - 2014/07/29
- 4.03リリース - 2014/05/29
- 4.02リリース - 2014/04/29
- 4.01リリース - 2014/03/29
- 4.00リリース - 2014/02/29
- 3.12リリース - 2014/01/29
- 3.11リリース - 2013/12/29
- 3.10リリース - 2013/11/29
- 3.09リリース - 2013/10/29
- 3.08リリース - 2013/9/29
- 3.07リリース - 2013/8/29
- 3.06リリース - 2013/7/29
- 3.05リリース - 2013/6/29
- 3.04リリース - 2013/5/29
- 3.03リリース - 2013/4/29
- 3.02リリース - 2013/3/29
- 3.01リリース - 2013/2/28
- 3.00リリース - 2013/2/9
- 2.10リリース - 2012/12/29
- 2.09リリース - 2012/11/29
- 2.08リリース - 2012/10/29
- 2.07リリース - 2012/09/29
- 2.06リリース - 2012/08/29
- 2.05リリース - 2012/07/29
- 2.04リリース - 2012/06/29
- 2.03リリース - 2012/05/29
- 2.02リリース - 2012/04/29
- 2.01リリース - 2012/03/29
- 2.00リリース - 2012/02/29
- 1.20リリース - 2012/01/29
- 1.11リリース - 2011/12/29
- 1.0.1リリース - 2011/11/29
- 1.0.1リリース - 2011/10/29
- 1.0.0 リリース - 2011/09/29
- バージョン0.xのお知らせ