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

Back to archive index

morit****@razil***** morit****@razil*****
2009年 10月 26日 (月) 14:53:12 JST


森です。

すみません。これは想定通りの動作です。

正規化処理の都合で、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