Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

nmz_free_field_cache() のバグ修正



竹迫です。

[namazu-devel-ja] missing cache in 'nmz/field.c - nmz_get_field_data()'
http://www.namazu.org/ml/namazu-devel-ja/msg02680.html
http://www.namazu.org/ml/namazu-devel-ja/msg02698.html

上記スレッドから始まる話題で、いわきりさんより提供していただいた
パッチを namazu-2.0.12 に適用してみたところ、以下の条件で
検索結果が正常に表示されないケースがありました。

■ 再現条件
-----------
* namazu-2.0.12 + いわきりさんパッチ

複数のインデックスを同時に指定して検索したとき、
それぞれのインデックスに検索結果が存在し、かつ、
検索結果のインデックス上の idxid と docid の値が等しい場合のみ、
Namazu の field_cache が嘘の結果を返すことがある。

■ 修正箇所
-----------
ソースコードを1行1行、目を凝らして見てはじめて気が付きました。
http://cvs.namazu.org/namazu/nmz/field.c.diff?r1=1.34&r2=1.35

この修正を cvs の HEAD と stable-2-0 に commit しました。

テストプログラムは後日追加しておきます。

--
  株式会社ドリーム・アーツ
    竹迫 良範  <takesako@xxxxxxxxxx>