お知らせ - 10系#
10.11リリース - 2021-01-29#
Improvements#
lexicon_flags
パラメータをサポートしました。このパラメータを使うことで、以下のように(全文検索インデックスではない)
USING HASH
なインデックスにKEY_LARGE
フラグを追加できます。CREATE TABLE memos ( id INT UNSIGNED PRIMARY KEY, title VARCHAR(64) NOT NULL, UNIQUE INDEX (title) USING HASH COMMENT 'lexicon_flags "KEY_LARGE"' ) DEFAULT CHARSET=utf8mb4;
[CentOS] MySQL 5.6.51、5.7.33、MySQL 8.0.23をサポートしました。
Fixes#
[最適化] "WHERE COLUMN IN (SUBQUERY)" が存在する時、 "fast order limit" の最適化が効かない問題を修正しました。
インデックスが付与されたカラムのデータ型を変更する時 インプレースの
ALTER TABLE
が使えない問題を修正しました。この問題は、
ALTER TABLE
をALGORITHM=INPLACE
で実行した時に発生します。したがって、ALTER TABLE
をALGORITHM=COPY
で実行した場合は、発生しません。
10.10リリース - 2020-12-29#
Improvements#
[ストレージモード] テーブルフラグのカスタマイズをサポートしました。[Gitter][Shinichi Takayanagiさんが報告]
今までは、ストレージモードでは、テーブルフラグのカスタマイズをサポートしていませんでした。
このリリースから、以下のようにテーブルフラグのカスタマイズができます。
CREATE TABLE terms ( term VARCHAR(64) NOT NULL PRIMARY KEY ) COMMENT='flags "TABLE_HASH_KEY|KEY_LARGE"' DEFAULT CHARSET=utf8mb4;
カスタマイズ可能な項目については、以下のURLを参照してください。
[Ubuntu] Ubuntu 20.10 (Groovy Gorilla)をサポートしました。
[CentOS] Percona Server 8.0.22をサポートしました。
Thanks#
Shinichi Takayanagiさん
pinpikokunさん [GitHub#373にてパッチ提供]
10.09リリース - 2020-12-04#
Improvements#
[CentOS] MariaDB 10.2.36、10.3.27、10.4.17、10.5.8をサポートしました。
[CentOS] Percona Server 5.6.50、5.7.32、8.0.21をサポートしました。
[CentOS] MySQL 5.6.50、5.7.32、MySQL 8.0.22をサポートしました。
Ubuntu 18.04 LTS以外のMariaDB 10.1のサポートをやめました。
MariaDB 10.1はEOLになったためです。
ただ、Ubuntu 18.04 LTS では、MariaDB10.1をサポートします。
MariaDB 10.1は、Ubuntu 18.04 LTSではまだサポートされているためです。
CentOS 6のサポートをやめました。
CentOS 6はEOLになったためです。
[mroonga_snippet_html()] ノーマライザーのカスタマイズをサポートしました。
table_name
とindex_name
を使用することで、デフォルトのノーマライザー(NormalizerAuto)の代わりにカスタムのノーマライザーを使えます。table_name
には、以下のように、対象のテーブルの名前を指定します。index_name
には、以下のように、対象のテーブル上で指定されたインデックスの名前を指定します。
SET NAMES utf8mb4; CREATE TABLE memos ( content text, fulltext index content_index (content) COMMENT 'normalizer "NormalizerNFKC121(\'unify_kana\', true)"' ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; SELECT mroonga_snippet_html('This is Mroonga(ムルンガ).', 'memos' as table_name, 'content_index' as index_name, 'むるんが') as snippet; snippet <div class="snippet">This is Mroonga(<span class="keyword">ムルンガ</span>).</div>
この変更によって、クエリーによる検索とキーワードによる検索を混在して使うことができます。
例えば以下のように、
AS query
とAS snippet
の両方で指定したキーワードをハイライトできます。SET NAMES utf8mb4; SELECT mroonga_snippet_html('Mroonga has two running modes. One is “storage mode”, that is the default mode, and we use Groonga for both storing data and searching. With this mode, you can have full benefits of Groonga described above, like fast data update, lock-free full text search and geolocation search. But it does not support transactions. Another one is “wrapper mode”, that adds full text search function on other storage engines like MyISAM or InnoDB. With this mode, you can use Groonga’s fast full text search with having the benefits of the storage engine, ex. transaction in InnoDB. But you cannot have benefits from Groonga’s read-lock free characteristic. And you might have the performance bottle neck in the storage engine in updating data.', 'lock storage' AS query, 'update' AS snippet; snippet <div class="snippet"><span class="keyword">storage</span> mode”, that is the default mode, and we use Groonga for both storing data and searching. With this mode, you can have full benefits of Groonga described above, like fast data <span class="keyword">update</span>, <span class="keyword">lock</span>-fr</div><div class="snippet">text search function on other <span class="keyword">storage</span> engines like MyISAM or InnoDB. With this mode, you can use Groonga’s fast full text search with having the benefits of the <span class="keyword">storage</span> engine, ex. transaction in In</div><div class="snippet">noDB. But you cannot have benefits from Groonga’s read-<span class="keyword">lock</span> free characteristic. And you might have the performance bottle neck in the <span class="keyword">storage</span> engine in updating data.</div>
10.07リリース - 2020-10-02#
Improvements#
[CentOS] MariaDB 10.5.5をサポートしました。
カラム圧縮のテストで256byte以上の文字列を使うテストを追加しました。 [GitHub#350][KartikSonejiさんがパッチ提供]
Thanks#
KartikSonejiさん
10.06リリース - 2020-09-02#
Improvements#
注釈
「MariaDB 10.5.5をサポートしました。」 というニュースを削除しました。
当初、「MariaDB 10.5.5をサポートしました。」とアナウンスしましたが、これは誤りでした。Mroonga 10.06はMariaDB10.5でビルドできるようになりましたが、まだ動作しない箇所があります。
[Ubuntu] Ubuntu 19.10 (Eoan Ermine) のサポートをやめました。
[CentOS] Percona Server 8.0.20をサポートしました。
[CentOS] MariaDB 10.1.46、10.2.33、10.3.24、10.4.14をサポートしました。
Debian GNU/Linux へのインストール方法を変更しました。
groonga-archive-keyring
の代わりにgroonga-apt-source
を使うように変更しました。lintian
コマンドが/etc/apt/sources.lists.d/
配下にファイルを置くパッケージはapt-source
を使うよう推奨しているためです。lintian
コマンドはパッケージングに共通のエラーをチェックするためのコマンドです。インストール方法についての詳細は、以下も参照してください。
[CentOS] Percona Server 5.7.31をサポートしました。
10.05リリース - 2020-07-29#
Improvements#
10.03リリース - 2020-05-29#
Improvements#
Fixes#
[Ubuntu] Ubuntu 19.10 (Eoan Ermine)向けMroongaが提供されていなかった問題を修正しました。
10.02リリース - 2020-04-29#
Improvements#
WITH_WEIGHT
フラグをサポートしました。このフラグは10.0.2以降のGroongaが必要です。
このフラグを使用して以下のように重み付きベクターを挿入できます。
CREATE TABLE tags ( name VARCHAR(64) PRIMARY KEY ) DEFAULT CHARSET=utf8mb4; CREATE TABLE bugs ( tags TEXT COMMENT 'flags "COLUMN_VECTOR|WITH_WEIGHT", type "tags"', FULLTEXT INDEX bugs_tags (tags) COMMENT 'table "tags", flags "WITH_WEIGHT"' ) DEFAULT CHARSET=utf8mb4; INSERT INTO bugs VALUES ('{"package": 100, "priority": 5}');
CentOS7のMariaDB 5.5のサポートをやめました。
[CentOS] MySQL 5.6.48, 5.7.30, 8.0.20をサポートしました。
10.01リリース - 2020-03-30#
Improvements#
[CentOS] Percona Server 5.7.29をサポートしました。
Fixes#
以下の条件を満たしたクエリーを送信した際に、Mroongaがクラッシュする問題を修正しました。 [GitHub#303] [pinpikokunさんが報告]
Mroongaの
ORDER_BY_LIMIT
の最適化が有効な時この最適化の条件については、 https://mroonga.org/ja/docs/reference/optimizations.html#order-by-limit を参照してください。
Mroongaを使ったサブクエリーで
ORDER_BY_LIMIT
を使っていない時。
Thanks#
pinpikokunさん