Kouhei Sutou
kou****@clear*****
2012年 2月 24日 (金) 15:32:02 JST
須藤です。 In <20120****@ist*****> "Re: [groonga-dev,00704] Re: MeCabとの組合わせについて" on Fri, 24 Feb 2012 14:49:23 +0900 (JST), Masaharu YOSHIOKA <yoshi****@ist*****> wrote: > MeCabでのトークナイズは問題ありません。対象となっているデータは、主に日 > 本語の1845文字のデータで、途中にエラーを起こすような文字があるのか確認 > するために、部分文字列を作成して、登録をしてみました。 > > その結果、特定の文字を使いするとエラーが起きるという状況ではなく、1380 > 文字程度より長くなると、エラーが起きるという状況でした。エラーを起こす > 文字数が一貫しないのは、UTF-8で、ASCII文字を含むデータであるためではな > いか(ある一定のバイト数以上で問題が起きる)とも考えられます。 > > 確認のため、適当な文字列の繰り返しで作成した長い文字列でも問題が起こる > ことも確認しています。 確認ありがとうございます。 こちらでもMeCabの挙動を確認してみました。 どうやらmecab-0.993に問題があるようです。 groongaではmecab_sparse_tostr3()というAPIを使っているのです が、この関数がうまく動かないケースがあるようです。 (これについてはMeCabの開発者に報告しています。) そのため、groongaのリポジトリの方のコードは↑の関数を使わな いように修正しました。これで、次のリリースからはmecab-0.993 でも動くようになります。(あるいは、↑の問題が修正された MeCabがリリースされたら動くようになります。) なので、とりあえず、mecab-0.98を使ってもらえますか? -- 須藤 功平 <kou****@clear*****> 株式会社クリアコード <http://www.clear-code.com/> (03-6231-7270) プログラミングが好きなソフトウェア開発者を募集中: http://www.clear-code.com/recruitment/