お知らせ - 1系#
1.20リリース - 2012/01/29#
注意
このリリースは後方互換性がありません。アップグレードするにはデータベースをダンプ・リストアする必要があります。
このリリースでは、データベースの再作成が必要な変更点が2つあります。
ストレージエンジン名を"groonga"から"mroonga"へ改名。
MySQLのDATE、DATETIME、TIMESTAMP型にgroongaが提供する時間の値を使うようにした。
"CREATE TABLE" SQL内の"ENGINE=groonga"を変更するためにダンプしたデータベースを変更する必要があります。以下が更新手順です。
mroongaを使っているデータベースをダンプします:
% mysqldump MY_MROONGA_DATABASE > database-groonga.dump
ダンプファイル中のストレージエンジンを変更します:
% sed -e 's/^) ENGINE=groonga/) ENGINE=mroonga/' database-groonga.dump > database-mroonga.dump
CREATE TABLE
の ENGINE=groonga
だけが ENGINE=mroonga
に変更されていることを確認します。 @@ ... @@
行に CREATE TABLE
が含まれているかを確認します。この行が CREATE TABLE
を含んでいたら、その変更はほぼ間違いなく CREATE TABLE
用の変更です:
% diff -up database-groonga.dump database-mroonga.dump
--- database-groonga.dump 2012-01-29 16:53:20.732624670 +0900
+++ database-mroonga.dump 2012-01-29 16:54:47.608420981 +0900
@@ -29,7 +29,7 @@ CREATE TABLE `diaries` (
PRIMARY KEY (`id`),
FULLTEXT KEY `title_index` (`title`),
FULLTEXT KEY `body_index` (`body`)
-) ENGINE=groonga DEFAULT CHARSET=utf8;
+) ENGINE=mroonga DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
--
既存のデータベースを削除します:
% mysql -u root -e 'DROP DATABASE MY_MROONGA_DATABASE'
"mroonga"ストレージエンジンにアップグレードします。Debian GNU/LinuxやUbuntuでは apt-get
を使います。CentOSやFedoraでは yum
を使います。
apt-get:
% sudo apt-get install -y mysql-server-mroonga
yum:
% sudo yum remove -y mysql-mroonga
% sudo yum install -y mysql-mroonga
注意
yum install
の前に yum remove
を実行することを忘れてはいけません。もし、 yum remove
を実行することを忘れると、MySQLのシステムテーブルを壊してしまうかもしれません。
データベースを作り直します:
% mysql -u root -e 'CREATE DATABASE MY_MROONGA_DATABASE'
修正したダンプファイルを使ってデータベースを復旧します:
% mysql -u root MY_MROONGA_DATABASE < database-mroonga.dump
これで1.20を使うことができるようになりました。
改良#
MySQL 5.5.20に対応。
MySQL 5.1.61に対応。
groonga 1.3.0以降を必須にした。
[非互換] ストレージエンジン名を"groonga"から"mroonga"に変更。
UTF8_BINコレーションに対応。 [#1150]
strict-aliasingの警告が出ないようにした。 [@issmさんが報告]
DECIMALに対応した。 [#1249] [@Kiskeさんが報告]
[storage mode] HA_KEYREAD_ONLY対応。インデックス内のカラム値のアクセスが高速になるはず。 [#1212]
[ストレージモード] float値のマルチカラムインデックスに対応。
[ストレージモード] double値のマルチカラムインデックスに対応。
[ストレージモード] enum型とset型をより適切なgroongaのデータ型に対応付けるようにした。
[ラッパーモード] REPAIR TABLE対応。
[ストレージモード] viewでの
count(*)
に対応。 [#1255] [Takahiro Nagaiさんが報告][非互換] DATE、DATETIME、TIMESTAMP型の値にgroongaが提供する時間の値を使うようにした。
修正#
[debian] replacesとbreaksのmysql-server-groongaのバージョンを修正。 [@ytaka5さんが報告]
[doc] 実行結果が間違っていた問題を修正。 [Hidekazu Tanakaさんが報告]
[ラッパーモード] メモリリークを修正。 [montywiさんが報告]
感謝#
@ytaka5さん
Hidekazu Tanakaさん
@issmさん
montywiさん
@Kiskeさん
1.11リリース - 2011/12/29#
改良#
MySQL 5.5.19に対応。
MySQL 5.6.4に対応。
MySQL 5.6.3対応をやめた。
Fedora 16に対応。
Fedora 15対応をやめた。
警告strict-aliasingをでないようにした。 [groonga-dev,00659] [かずひこさんが報告]
utf8, binary, ascii, latin1, cp932, sjis, eucjpms, ujis, koi8r charsetに対応。 [#1160] [nobodyさんが報告]
[wrapper mode] 削除をロールバックした後に削除できなくなる問題を修正。 [#1224] [宍倉功一さんが報告]
修正#
[storage mode] 主キーがないテーブルで全文検索すると結果が空になる問題を修正。 [#1193] [かずひこさんが報告]
コンパイラの-Wno-というフラグの検出に失敗していた問題を修正。 [Arnaud Fontaineさんがパッチを作成]
[wrapper mode] 全件カウント時にインデックスが使われない問題を修正。 [#1196][groonga-dev,0653] [金岡勲さんが報告]
感謝#
かずひこさん
Arnaud Fontaineさん
金岡勲さん
nobodyさん
宍倉功一さん
1.0.1リリース - 2011/11/29#
このリリースからプロジェクト名と製品名を「groognaストレージエンジン」から「mroonga」に変更しました。
MariaDB対応とバグ修正が主な変更点のリリース。
改良#
「groonga storage engine」から「mroonga」に改名。 #1170
groonga_libgroonga_version変数およびgroonga_version変数の追加。 #1158
information_schema.plugins.plugin_versionがmroongaのバージョンを返すようにした。 #1157
groonga_log_file変数の追加。 #1178 [nobodyさんが提案]
FLUSH STATUSがgroonga_*ステータス変数をリセットするようにした。 #1166 [かずひこさんが報告]
TRUNCATE TABLEに対応。 #1151 [Takahiro Nagaiさんが提案]
ALTER TABLEに対応。 #1168
MariaDB 5.2.9に対応。 #1152 [Kazuhikoさんが報告]
MariaDB 5.3.2-betaに対応。 #1152 [かずひこさんが報告]
[rpm] ドキュメントのパッケージを分離。
文字列のシステム変数のメモリ確保方法を改良。
PLUGIN_LICENSE_GPLを使うようにした。 [Kazuhikoさんが提案]
MeCab関連の設定を削除。
FOUND_ROWS()とSQL_CALC_FOUND_ROWSに対応。 #1163 [Horikoshi Yukiさんが報告]
'-'を含むテーブル名に対応。 #1165 [nobodyさんが報告]
MySQL 5.1上でテーブルを作りなおさないインデックス変更に対応。
[deb] i386対応。
[rpm] i386対応。
修正#
[ストレージモード] TEXT型に対するREPLACE INTOが動作しないバグの修正。 #1153 [Kazuhikoさんが報告]
[ラッパーモード] LOCK TABLE内のINSERTがInnoDBで動かないバグの修正。 #1154 [Kazuhikoさんが報告]
ORDERとLIMITの両方を使うと結果が正しくないバグの修正。 #1161 [Horikoshi Yukiさんが報告]
FORCE INDEXで存在しないキーを指定するクラッシュするバグを修正。 #1181 [Takahiro Nagaiさんが報告]
感謝#
かずひこさん
Horikoshi Yukiさん
nobodyさん
Takahiro Nagaiさん
1.0.1リリース - 2011/10/29#
位置情報検索の対応を強化とストレージモードでの動的なインデックス変更の対応強化が目玉のリリース。
改良#
[ストレージモード][ラッパーモード] flush tables によるデータベースの再オープンに対応。
[ラッパーモード] 位置情報インデックスに対応。(ただし、カラムに保存できる型はPointのみ対応。インデックスを利用した位置検索はMBRContainsのみ対応。)
[ベンチマーク] groongaのデータベースには実際に書き込むかどうかを指定する groonga_dry_write 変数の追加。ベンチマーク時などボトルネック処理の確認用。
CentOS 6用のインストールドキュメントにMySQLのバージョン番号を追加。 [@yoshi_kenさんが提案]
[位置情報検索] 不必要な処理をなるべくしないようにして高速化。
mysql_configがfast mutexesを有効にしていると報告しても、それを無視する --disable-fast-mutexes configureオプションを追加。
[ストレージモード] create index に対応。
[ストレージモード] drop index に対応。
[ストレージモード] 全文検索用のマルチカラムインデックスに対応。
D プラグマに対応。
MySQL 5.5.17に対応。
MySQL 5.6.3-m6に対応。
groonga 1.2.7に対応。(1.2.6以下のサポートを削除。)
Ubuntu 11.10 Oneiric Ocelotに対応。
修正#
booleanモードでクエリの先頭に + を指定すると何もヒットしなくなる問題を修正。 [西山はじめさんが報告]
[Fedora] パッケージの依存関係を修正。 [Takahiro Nagaiさんが報告]
[Fedora] プラグインをロードするとシンボルが見つからずエラーになる問題を修正。 [Takahiro Nagaiさんが報告]
[ストレージモード] マルチカラムインデックスに varchar を使うとインデックスが正常に作成されない問題を修正。 #1143 [Takahiro Nagaiさんが報告]
感謝#
@yoshi_kenさん
西山はじめさん
Takahiro Nagaiさん
1.0.0 リリース - 2011/09/29#
初回リリースから約1年経って、初のメジャーリリース!
改良#
[ラッパーモード] drop index対応。 #1040
[ストレージモード] GEOMETRY対応。(ただし、カラムに保存できる型はPointのみ対応。インデックスを利用した位置検索はMBRContainsのみ対応。) #1041
[ストレージモード] マルチカラムインデックスに対応。 #455
[ストレージモード][ラッパーモード] 全文検索用パーサー(トークナイザー)のカスタマイズに対応。 #592
configureにデフォルトの全文検索用パーサーを指定する --with-default-parser オプションを追加。
実行時にデフォルトの全文検索用パーサーを指定する groonga_default_parser 変数を追加。
[ラッパーモード] ストレージモードで実装している order と limit が指定された場合に必要のないレコードを返さないようにする高速化に対応。
[ストレージモード] 1つの select 中での複数の match against 指定に対応。
[非互換][ストレージモード] _score カラムの削除。代わりにMySQL標準の書き方である match against を使ってください。
[ラッパーモード] プライマリキーの更新に対応。
MySQL 5.5.16に対応。
CentOS 6に対応。
groonga 1.2.6に対応。(1.2.5以下のサポートを削除。)
修正#
[Ubuntu] Lucid上でインストールエラーが発生する問題を修正。 (Isao Sugimotoさんが報告)
auto_incrementを使った場合にテキストデータが壊れる問題を修正。 (@zaubermaerchenさんが報告) #1072
[Ubuntu] Lucid上でテーブルを削除するとクラッシュする問題を修正。 #1063 (Isao Sugimotoさんが報告)
MySQLと同じビルドオプションを使っていなかった問題を修正。 GitHub#4 (groongaのGitHubのIssues) (Tomohiro MITSUMUNEさんが報告)
感謝#
Isao Sugimotoさん
@zaubermaerchenさん
Tomohiro MITSUMUNEさん