MariaDBにnバンドルnされていないnMroonga

: author

須藤功平

: institution

クリアコード

: content-source

MyNA会 2014年4月

: date

2014/04/14

: allotted-time

5m

: theme

.

話すこと

* @yoku0825さんおめでとう!
* MariaDBとMroongaのこと

MariaDBとMroongaの現状1

* MariaDB 10.0.10: 2014-03-31
* Mroonga 4.0.1: 2014-03-29
  * ↑の組み合わせでビルドできない
  * 10.0.9からAPIが変わった…

MariaDBとMroongaの現状2

* MariaDB 10.0.10: 2014-03-31
* Mroonga master
  * ↑の組み合わせでビルドできる
  * API変更に対応

OSC 2011.DBn(2011/11/05)

MariaDBバンドル予定!

第2回nMariaDB/MySQLnコミュニティnイベントnin Tokyon(2014/02/18)

Mroongaはn本当にnバンドルnされるの?

MariaDB 10.0.9にnバンドルnするよ!

MariaDB 10.0.10nリリース!n(GA)n(2014/03/31)

MariaDB 10.0.10

Mroongaをn バンドルしてn いない

バンドルに必要なこと

* MariaDBのソースツリーへ統合
  * ビルドシステムに組み込む\n
    (('note:storage/以下にぶち込んでビルドできるようにする'))
* 各種環境でテストが通ること
  * MariaDBはbuildbotを使っている
  * 古い環境とかWindowsとかもある

終わった作業

* ソースツリーへ統合
  * CMake対応
  * Groongaバンドル版Mroongaの作成
  * MariaDBの\n
    ビルドシステムの作法に対応

ビルドシステムの作法

((‘tag:center’))↓が動くようにする

if(WITH_MROONGA_STORAGE_ENGINE)
  mysql_add_plugin(mroonga ...)
endif()

残作業

* 各種環境でテストが通ること
  * OK: 新しめのGNU/Linux
  * OK: Windows(('note:(ビルドテストのみ)'))
  * NG: 古い環境(('note:(もう解決したかも)'))
  * NG: 夏時間中の環境
  * NG: プラグインが消せない(('note:(なぜ?)'))

バンドル対応

((‘tag:center’))((‘tag:x-large’))コスト高い

* 開発環境と似ている環境
  * 問題なし
* 開発環境と違う環境
  * 問題発生
  * テスト用に環境を用意(('note:(面倒)'))
  * 慣れない環境でデバッグ(('note:(大変)'))

バンドル希望の理由

* Windowsのパッケージを\n
  自分たちで作りたくなかった
  * 自動化できない
  * 環境がない
  * = メンテナンスコスト高い

あれ?

コストをn 下げたかったのにn むしろ上がっているかも…

まとめ

* MariaDB 10.0.10
  * Mroongaをバンドルしていない
  * Mroonga 4.0.1を使えない
  * Mroonga masterは使える
* バンドル
  * 各種環境への対応が大変
  * 手伝いたい人いません?

参考1

* チケット:\n
  [MDEV-5222] Mroonga storage engine\n
  (('note:https://mariadb.atlassian.net/browse/MDEV-5222'))
* リポジトリ:\n
  lp:~maria-captains/maria/10.0-mroonga\n
  (('note:https://code.launchpad.net/~maria-captains/maria/10.0-mroonga'))

参考2

* buildbot\n
  (('note:https://buildbot.askmonty.org/buildbot/grid?branch=10.0-mroonga'))