[groonga-dev,00253] Re: grn_snip_open()のflagの値によっては不適切にtagが挿入される

Back to archive index

Ryo Onodera onode****@clear*****
2009年 10月 26日 (月) 15:19:20 JST


小野寺です。

説明ありがとうございます。たしかにそうなると私が調べたflagsの組み合わせ
と動作の違いのつじつまが合いますね。

しかしせっかく作ったので現状の動作が正しいという前提でこのパッチを修正
し、pushしたいと考えています。よろしいでしょうか?

P.S. たったいまgroongaリポジトリの方に、別件のテストを綺麗にするコミット
を二つ程、初pushさせてもらいました。こちらこそ今後もよろしくお願いしま
す。

On Mon, 2009-10-26 at 14:53 +0900, morit****@razil***** wrote:
> 森です。
> 
> すみません。これは想定通りの動作です。
> 
> 正規化処理の都合で、tagは空白よりも手前に挿入されてしまいます。
> 
> これで実用上問題がある場合は、GRN_SNIP_SKIP_LEADING_SPACESを指定します。
> 
> GRN_SNIP_SKIP_LEADING_SPACESを指定すると、空白をとばしてtagを挿入しますが、
> 動作は遅くなってしまいます。
> 
> 以上よろしくお願いします。
> 
> >>> Ryo Onodera さんは書きました:
> > 小野寺です。
> > 
> > grn_snip_open()に渡すflagsの値によって、不適切な場所にtagが挿入されてし
> > まうバグを発見しました。cutterの出力の抜粋になりますが、具体的には出力が
> > 次の様になってしまいます。
> > 
> > expected: <Groonga is an [[embeddable]] fulltext 
> >   actual: <Groonga is an[[ embeddable]] fulltext
> > 
> > 詳しく調べるために、grn_snip_open()に渡せる3つのflagの組み合わせ8通り全
> > てを試すテストを書いたところ、GRN_SNIP_NORMALIZEが他のフラグと組み合わさ
> > れた時の挙動が怪しいです。GRN_SNIP_NORMALIZEが有効でない残り4通りの挙動
> > は全て同じで上のexpected:と同じになります。
> > 
> > GRN_SNIP_NORMALIZE単体あるいはGRN_SNIP_NORMALIZEとGRN_SNIP_COPY_TAGの時
> > に、このバグは発生します。
> > 
> > しかしGRN_SNIP_NORMALIZEの他にGRN_SNIP_SKIP_LEADING_SPACESが組み合わされ
> > た時は、このバグは発生しません。
> > 
> > なぜこうなるかの原因は特定できていません。そして、これがテストを追加する
> > コミットです。
> > 
> > add test_proper_tag_insertion()
> > http://github.com/ryoqun/groonga/commit/6eca72392c307cc4e3af825db35c14700c51384c
> > 
> > -- 
> > 小野寺 諒 <onode****@clear*****>
> > 株式会社クリアコード (http://www.clear-code.com/)
> > 
> > _______________________________________________
> > groonga-dev mailing list
> > groon****@lists*****
> > http://lists.sourceforge.jp/mailman/listinfo/groonga-dev
> > 
> --
> morita




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