Masafumi Yokoyama
yokoy****@clear*****
Wed Jan 6 18:23:09 JST 2016
ありがとうございます。データベースクラスのメソッドなので対象は明確かと思って 省略してしまいましたが、明示的に書いたほうがいいですね。 On 2016年01月06日 17:00, Hiroshi Hatake wrote: > データベースに関するインデックスの再作成なので、 > >> + * Recreates all index columns. >> > > ではなく、 > > Recreates all index columns in the database. > > のように対象範囲を明確に書いた方が良いと思いました。 > > -- > Hiroshi Hatake <hatake �� clear-code.com <mailto:hatake �� clear-code.com>> > > > > 2016/01/05 18:36、Masafumi Yokoyama <null+groonga �� clear-code.com > <mailto:null+groonga �� clear-code.com>> のメール: > >> Author >> Masafumi Yokoyama <yokoyama �� clear-code.com >> <mailto:yokoyama �� clear-code.com>> >> Date >> 2016-01-05 18:36:52 +0900 (Tue, 05 Jan 2016) >> New Revision >> 32098f790cddd154e29ec624e23d806d530a888f >> <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f> >> Message >> Add Groonga::Database#reindex to bind grn_obj_reindex() >> >> GitHub:#110 <https://github.com/ranguba/rroonga/issues/110> >> Modified files >> >> * ext/groonga/rb-grn-database.c >> <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3> >> * test/test-database.rb >> <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96> >> >> Modified: ext/groonga/rb-grn-database.c (+32 -0) >> =================================================================== >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3> >> 1 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L1> >> 2 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L2> >> 3 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L3> >> >> 4 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L4> >> 5 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L5> >> 6 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L6> >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L622> >> 623 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L623> >> 624 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L624> >> 625 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L625> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> 626 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L626> >> 627 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L627> >> 628 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L628> >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L656> >> 657 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L657> >> 658 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L658> >> 659 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L659> >> >> 660 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3L660> >> >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3> >> 1 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R1> >> 2 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R2> >> 3 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R3> >> 4 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R4> >> 5 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R5> >> 6 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R6> >> 7 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R7> >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R623> >> 624 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R624> >> 625 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R625> >> 626 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R626> >> 627 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R627> >> 628 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R628> >> 629 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R629> >> 630 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R630> >> 631 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R631> >> 632 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R632> >> 633 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R633> >> 634 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R634> >> 635 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R635> >> 636 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R636> >> 637 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R637> >> 638 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R638> >> 639 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R639> >> 640 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R640> >> 641 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R641> >> 642 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R642> >> 643 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R643> >> 644 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R644> >> 645 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R645> >> 646 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R646> >> 647 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R647> >> 648 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R648> >> 649 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R649> >> 650 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R650> >> 651 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R651> >> 652 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R652> >> 653 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R653> >> 654 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R654> >> 655 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R655> >> 656 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R656> >> 657 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R657> >> 658 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R658> >> 659 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R659> >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R687> >> 688 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R688> >> 689 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R689> >> 690 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R690> >> 691 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R691> >> 692 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-e4003bbc32cd7803a6a6f37bac0736c3R692> >> >> @@ -1,6 +1,7 @@ >> /* -*- coding: utf-8; mode: C; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ >> /* >> Copyright (C) 2009-2015 Kouhei Sutou <kou �� clear-code.com <mailto:kou �� clear-code.com>> >> + Copyright (C) 2016 Masafumi Yokoyama <yokoyama �� clear-code.com <mailto:yokoyama �� clear-code.com>> >> >> This library is free software; you can redistribute it and/or >> modify it under the terms of the GNU Lesser General Public >> @@ -623,6 +624,36 @@rb_grn_database_unmap (VALUE self) >> return Qnil; >> } >> >> +/* >> + * Recreates all index columns. >> + * >> + * This method is useful when your index column is broken. >> + * >> + * @example >> + * database.reindex >> + * >> + * @overload reindex >> + * @return [void] >> + * >> + * @since 5.1.1 >> + */ >> +static VALUE >> +rb_grn_database_reindex (VALUE self) >> +{ >> + grn_rc rc; >> + grn_ctx *context; >> + grn_obj *database; >> + >> + rb_grn_database_deconstruct(SELF(self), &database, &context, >> + NULL, NULL, NULL, NULL); >> + >> + rc = grn_obj_reindex(context, database); >> + rb_grn_context_check(context, self); >> + rb_grn_rc_check(rc, self); >> + >> + return Qnil; >> +} >> + >> void >> rb_grn_init_database (VALUE mGrn) >> { >> @@ -657,4 +688,5 @@rb_grn_init_database (VALUE mGrn) >> rb_define_method(rb_cGrnDatabase, "defrag", rb_grn_database_defrag, -1); >> rb_define_method(rb_cGrnDatabase, "recover", rb_grn_database_recover, 0); >> rb_define_method(rb_cGrnDatabase, "unmap", rb_grn_database_unmap, 0); >> + rb_define_method(rb_cGrnDatabase, "reindex", rb_grn_database_reindex, 0); >> } >> >> Modified: test/test-database.rb (+40 -0) >> =================================================================== >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96L236> >> 237 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96L237> >> 238 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96L238> >> 239 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96L239> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> 240 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96L240> >> 241 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96L241> >> 242 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96L242> >> >> ... <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R236> >> 237 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R237> >> 238 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R238> >> 239 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R239> >> 240 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R240> >> 241 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R241> >> 242 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R242> >> 243 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R243> >> 244 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R244> >> 245 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R245> >> 246 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R246> >> 247 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R247> >> 248 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R248> >> 249 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R249> >> 250 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R250> >> 251 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R251> >> 252 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R252> >> 253 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R253> >> 254 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R254> >> 255 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R255> >> 256 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R256> >> 257 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R257> >> 258 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R258> >> 259 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R259> >> 260 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R260> >> 261 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R261> >> 262 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R262> >> 263 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R263> >> 264 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R264> >> 265 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R265> >> 266 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R266> >> 267 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R267> >> 268 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R268> >> 269 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R269> >> 270 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R270> >> 271 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R271> >> 272 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R272> >> 273 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R273> >> 274 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R274> >> 275 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R275> >> 276 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R276> >> 277 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R277> >> 278 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R278> >> 279 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R279> >> 280 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R280> >> 281 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R281> >> 282 <https://github.com/ranguba/rroonga/commit/32098f790cddd154e29ec624e23d806d530a888f#diff-3064b36bb21ee9928d29f06a53e90c96R282> >> >> @@ -237,6 +237,46 @@class DatabaseTest < Test::Unit::TestCase >> @database.plugin_paths) >> end >> >> + def test_reindex >> + setup_database >> + Groonga::Schema.define do |schema| >> + schema.create_table("Memos", >> + :type => :array) do |table| >> + table.column("content", "Text") >> + end >> + schema.create_table("Terms", >> + :type => :patricia_trie, >> + :key_type => "ShortText", >> + :default_tokenizer => "TokenBigram", >> + :normalizer => "NormalizerAuto") do |table| >> + table.index("Memos.content") >> + end >> + end >> + >> + memos = context["Memos"] >> + memos.add(:content => "This is a memo") >> + >> + terms = context["Terms"] >> + terms.delete("this") >> + >> + assert_equal([ >> + "a", >> + "is", >> + "memo", >> + ], >> + terms.collect(&:_key).sort) >> + >> + @database.reindex >> + >> + assert_equal([ >> + "a", >> + "is", >> + "memo", >> + "this", >> + ], >> + terms.collect(&:_key).sort) >> + end >> + >> class RemoveTest < self >> setup :setup_database >> >> >> _______________________________________________ >> Groonga-commit mailing list >> Groonga-commit �� lists.osdn.me <mailto:Groonga-commit �� lists.osdn.me> >> http://lists.osdn.me/mailman/listinfo/groonga-commit > > > > _______________________________________________ > Groonga-commit mailing list > Groonga-commit �� lists.osdn.me > http://lists.osdn.me/mailman/listinfo/groonga-commit > -- 横山 昌史 <Masafumi Yokoyama> E-mail: yokoyama �� clear-code.com 株式会社クリアコード 〒170-0005 東京都豊島区南大塚3-29-9 Tel: 03-5927-9440 Web: http://www.clear-code.com/