Namazu-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: インデックス更新時に文書数およびキーワード数が正しく更新されない
- From: Satoru Takabayashi <satoru-t@xxxxxxxxxxxxxxxxxx>
- Date: Sat, 05 Aug 2000 13:29:18 +0900
- X-ml-name: namazu-users-ja
- X-mail-count: 00748
- References: <398B643A.BFC5957E@osa.att.ne.jp>
NISHIHARA Yoshiaki <nisihara@xxxxxxxxxxxxx> wrote:
>mknmzを使用して新規にインデックスを作成した場合は、インデックス対象の
>文書数およびキーワード数がが正しくカウントされるのですが、その後
>--updateオプションを使用してインデックスを差分更新していくと、
>2回目の差分更新以降、文書数およびキーワード数が正しくカウント
>されません。下記に添付したNMZ.logでは、新規作成以降2回しか
>更新していないのでわかりにくいのですが、どうやら
>(今回追加された文書数orキーワード数)−(前回追加された文書数orキーワー
>ド数)
>を前回の総文書数or総キーワード数に足しこんで、
>今回の総文書数or総キーワード数としているようです。
たしかに変ですね。おそらく NMZ.status ファイルの更新に失敗し
ているのだと思います。 NMZ.log の内容と一緒に NMZ.status ファ
イルの内容を見せてもらえませんか?
あてずっぽうですが、mknmz の get_status という関数を次のよう
に修正すると、もしかしたら解決するかもしれません。
sub get_status($) {
my ($key) = @_;
my $fh = util::fopen($var::NMZ{'status'});
return undef unless defined $fh;
while (defined(my $line = <$fh>)) {
if ($line =~ /^$key\s+(.*)$/) {
util::dprint("status: $key = $1\n");
$fh->close; # この行を追加
return $1;
}
}
$fh->close; # この行を追加
return undef;
}
# こんなことをしなくても勝手に閉じてくれると思うのだけど
-- Satoru Takabayashi