MINAGAWA Sho
minag****@iij*****
2014年 8月 19日 (火) 19:04:43 JST
IIJの皆川と申します。 複数テキストファイルのインデクシングをC APIを用いて実施したときに、 インデクシング処理が終了しない事象を確認致しましたのでご報告致します。 テキストデータのインデクシングを実施するために、 grn_column_index_update()を実行したところ、 制御が返却されないことがありました。 デバッガで制御を追ったところ、ii.cのbuffer_new()関数の 3381~3403行目のループを繰り返しており、 チャンクへの書き出しが完了しても必要なバッファサイズが確保できないようです。 3730~3737行目や3882~3888行目で行われているような、 確保されたサイズの確認を行う分岐がもれているのではないかと 思いましたがいかがでしょうか。 ※特定の複数テキストデータを 特定の順番にインデクシングした場合に発生しております。 ※現象の発生するテキストデータの傾向などは特定出来ておりませんが、 インデクシングが終了しなくなった時点に処理中のデータは、 サイズが大きく(33MB程度)出現トークンに偏りもあるようなデータで、 インデクス中にポスティング数超過の警告ログが頻繁に発生します。 ※再現を確認しているテキストデータには公開不可能な情報が含まれており、 大変恐縮ですが検体としての提供ができません。 以上です。 ご査収の程お願い致します。 -------------------------------------------------------- 株式会社インターネットイニシアティブ プロダクト本部 アプリケーション開発部 サービス開発課 皆川 祥 <minag****@iij*****> --------------------------------------------------------