お知らせ - 1系 — Mroonga vmrn_version documentation

本文へスキップ
`Ctrl`+`K`

# お知らせ - 1系

## 1.20リリース - 2012/01/29

注意

このリリースは後方互換性がありません。アップグレードするにはデータベースをダンプ・リストアする必要があります。

このリリースでは、データベースの再作成が必要な変更点が2つあります。

1. ストレージエンジン名を"groonga"から"mroonga"へ改名。

2. 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さん