Namazu-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
mknmz: Cannot compress negative numbers
- From: Hiroyuki KUROSAKI <hkuro@xxxxxxxxxxxxxxxx>
- Date: Sat, 15 Jul 2000 09:51:38 +0900 (JST)
- X-ml-name: namazu-users-ja
- X-mail-count: 00701
はじめまして。黒崎と申します。よろしくお願いします。
Namazu 2.0.4 の mknmz で、36642個のファイル群のインデックスを作る
とき、30192個めまで行ったところで次のようなエラーメッセージが出て
テンポラリファイルを残したまま終了してしまいました。
> インデックスを書き出しています...Cannot compress negative numbers at /usr/local/bin/mknmz line 2245.
ちなみに2245行目付近は次のようなコードになっています。
> sub adjust_first_docid ($$) {
> my ($record, $last_docid) = @_;
> my (@data) = unpack 'w*', $record;
>
> my $val = $data[0];
> $data[0] = $data[0] - $last_docid;
> my $adjusted = $val - $last_docid;
> $record = pack 'w*', @data;
$data[0] < $last_docid のために $data[0] が負になったからのようです。
namazu-users-ja のアーカイブを見たところ、同様の事例がありましたが、
解決方法にはたどりつけませんでした。
たとえば
$data[0] = ($data[0] > $last_docid) ? ($data[0] - $last_docid) : ($last_docid - $data[0]);
のようにしたら、他で問題が起こりますでしょうか。
--
Hiroyuki KUROSAKI
<hkuro@xxxxxxxxxxxxxxxx>
Institute for Japanese Culture and Classics
Kokugakuin University, Japan