[groonga-dev,01434] Re: Windows用mroongaのテストのお願い

Back to archive index

Kazuhiko kazuh****@fdiar*****
2013年 5月 23日 (木) 16:32:28 JST


On 23/05/2013 08:36, Kouhei Sutou wrote:
>> >  INSTALL PLUGIN mroonga SONAME 'ha_mroonga.dll';
>> >  CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.dll';
>> >  CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.dll';
>> >  CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.dll';
>>
>> >インストーラーでここまでやれた方がいいなぁと思いつつ、そこま
>> >では手が届いていません。
(snip)
>> >MariaDBは、デフォルトでHandlerSocketプラグインが梱包されています。
>> >コマンドでINSTALL PLUGIN 構文を打つか、設定ファイル.cnfに
>> >記述するだけでHandlerSocketを有効にすることができます。
(snip)
> よさそうなんですが、この方法だとCREATE FUNCTIONに対応できな
> いんですよね。。。(磯部さんもうっすら書きかけていますが。)
> 
> インストーラーの挙動をみるとどこかでinstall_dbを実行している
> ようなので、そのタイミングに紛れ込ませたいなぁと思っていまし
> た。

うちでは、プラグインの登録自体は設定ファイルでやって、その上で「初期設定
用SQL」でこんな感じにやっています。

DROP FUNCTION IF EXISTS last_insert_grn_id;
CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so';

"DROP FUNCTION IF EXISTS" があるので、すでにそのUDFがあってもCREATE
FUNCTIONでエラーにならずに再登録してくれます。まあ、「既にあったらCREATE
FUNCTIONしない」というのが本来やるべきことかも知れませんが、それはSQLだ
けでは書けなさそうだし、登録しなおす方が、もし例えばRETURNSの型が変わっ
てもOKというメリットがあるかも。

かずひこ




groonga-dev メーリングリストの案内
Back to archive index