Namazu-devel-ja(旧)


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

ASSERTION ERROR!: NMZ.r (154544) and NMZ.t (170386) are not consistent!



>                                            千葉市中央区長洲
>                                                    藤原  誠
namazu-devel-ja にしようか namazu-users-ja にしようか迷ったの
ですが、bug report ということで devel に送ります。(良かったでしょうか)

ASSERTION ERROR!: NMZ.r (154544) and NMZ.t (170386) 
are not consistent! at /usr/local/share/namazu/pl/util.pl line 226.

  という問題が起きています。ちょっと長くなりますが、以下に経過と、調べ
たことを書きます。何を調べてどうすれば解決するでしょうか。
(それとももう一度同じことをやって見ると、問題がなくなる可能性も
あるでしょうか)

【経過】
2001/01/13 日頃から、MH 形式の メールが置いてある ~/Mail を mknmz して
いまして、全部一度にやるとどうなるか分らないので、--mtime -10 のように
して、日数で新しい方から少しづつ索引を作って見ました。

例えば、次のようにしました。日付と入力した文字です。
01/13 mknmz -c -f ~/.mknmzrc-Mail --mtime  -10 --verbose -O /export/namazu/Mail .
      (この間四回くらい)
01/15 mknmz -c -f ~/.mknmzrc-Mail --mtime  -730 --verbose -O /export/namazu/Mail .
01/18 mknmz -c -f ~/.mknmzrc-Mail --mtime -1000 --verbose -O /export/namazu/Mail .
01/19 mknmz -c -f ~/.mknmzrc-Mail --mtime -1??? --verbose -O /export/namazu/Mail .
      (日数不明)
1/19(金)は、朝から mknmz をしていたが、帰って来て見たら、機械が
(画面も真暗で) 止っていました。(強制再起動しました)

そうして、この後にもう一度同じようにすると、

@@ 適合:        /amd/host/export/home/makoto/Mail/inbox/4980
@@ 適合:        /amd/host/export/home/makoto/Mail/inbox/4981
@@ 適合:        /amd/host/export/home/makoto/Mail/inbox/4982
@@ 対象の探索を終了: Sun Jan 21 22:16:53 2001
@@ 対象譜数: 170526 (走査性能: 経過秒: 1069, 譜/秒: 159.5)
@@   潜在: 175875, 不許可: 0, 拒絶: 267, 除外: 23
@@   MTIME 古すぎ: 5059, MTIME 新しすぎ: 0
ASSERTION ERROR!: NMZ.r (154544) and NMZ.t (170386) 
are not consistent! at /usr/local/share/namazu/pl/util.pl line 226.
となって、止ってしまいます。

【調べたこと】
NMZ.log, *.t, *.r は次のようなものです。
makoto@nazuha ■21:53:24/010122(...namazu/Mail)> ls -l NMZ.r NMZ.t NMZ.log
-rw-r--r--  1 makoto  wheel     2792 Jan 18 04:02 NMZ.log
-rw-r--r--  1 makoto  wheel  9014691 Jan 19 13:33 NMZ.r
-rw-r--r--  1 makoto  wheel   681548 Jan 19 13:16 NMZ.t
makoto@nazuha ■21:53:32/010122(...namazu/Mail)> 

他の索引の大きさと時刻情報は
http://www.ki.nu/~makoto/diary/attach/2001-01-22-NMZ
で見えると思います。

ここから先、少し調べて見ました。
http://www.namazu.org/ml/namazu-ring/msg00940.html 
     size が 0 のものがあったり 
http://www.namazu.org/ml/namazu-dev/msg01007.html 
     譜の名前に改行が入っていた
http://www.namazu.org/ml/namazu-dev/msg01016.html 
りすると、こういう問題が起きたことがあったようですが、
今は、その問題はないはずです。

さて以前は 
http://www.namazu.org/ml/namazu-dev/msg01016.html 
を見ると、
sort NMZ.r | uniq -c | sort -nr | head -3
とやって見ているので、同じようなことを試して見ます。すると、

makoto@harry ■15:13:58/010127(...namazu/Mail)> \
sort NMZ.r | uniq -c | sort -nr | head -10
  11 
   2 /amd/host/export/home/makoto/Mail/from/myself/1472
   2 /amd/host/export/home/makoto/Mail/from/myself/1471
   2 /amd/host/export/home/makoto/Mail/from/myself/1470
   2 /amd/host/export/home/makoto/Mail/from/myself/1469
   2 /amd/host/export/home/makoto/Mail/from/myself/1468
   2 /amd/host/export/home/makoto/Mail/from-log
   2 # /amd/host/export/home/makoto/Mail/from-log
   1 /amd/host/export/home/makoto/Mail/webcount/1124
   1 /amd/host/export/home/makoto/Mail/webcount/1123

11 の行の右側が空白なのは何故 ? 
2 のものがいくつもある ? 
  中身が同じものが他にあるから? (事実誤認) 

上で重複しているメールは

  3002 Jan 13 22:49 /home/makoto/Mail/from/myself/1468
  1808 Jan 13 23:26 /home/makoto/Mail/from/myself/1469
  3410 Jan 14 16:37 /home/makoto/Mail/from/myself/1470
  3435 Jan 14 17:38 /home/makoto/Mail/from/myself/1471
  1746 Jan 14 18:09 /home/makoto/Mail/from/myself/1472

となっているので、時間軸で言うと
  メール到着
  1/15 日 mknmz
  1/18 日 mknmz
  1/19 日 mknmz ( NMZ.r and NMZ.t are inconsistent)
となっていて、「索引を作った時のうち二回前に」に読んでいるはずのもの

NMZ.log には次のようにあります。
----------------------------------------------------------------------
[Append]
Date:                Mon Jan 15 20:26:35 2001
Added Documents:     52,750
Size (bytes):        157,647,335
Total Documents:     115,013
Added Keywords:      615,953
Total Keywords:      1,860,912
Wakati:              module_chasen -j -F '%m '
Time (sec):          55,076
File/Sec:            0.96
System:              netbsd
Perl:                5.006
Namazu:              2.0.5

[Append]
Date:                Thu Jan 18 04:02:45 2001
Added Documents:     38,756
Size (bytes):        110,504,046
Total Documents:     153,769
Added Keywords:      437,576
Total Keywords:      2,298,488
Wakati:              module_chasen -j -F '%m '
Time (sec):          82,375
File/Sec:            0.47
System:              netbsd
Perl:                5.006
Namazu:              2.0.5
----------------------------------------------------------------------
1/18 日に作ったはずの索引がいまあるので、試しに
1468 番のメール中の文字列で検索すると、確かに(殆んど同じものが)
二通見つかる。

それは ML に投稿したもので、中身の(かなり同じ)
ものが別の path に入っている。まさかと思うが、そのせいか。
Message-ID で重複を除くしくみは入っていたっけ ?
しかし
1469 番(の中身)は一通しかないものなので、そういう問題ではなさそう。

mknmz -C も付けておきます。
-----------------------------------------------
系: netbsd
Namazu: 2.0.5
Perl: 5.006
NKF: module_nkf
KAKASI: module_kakasi -ieuc -oeuc -w
茶筌: module_chasen -j -F '%m '
わかち書き: module_kakasi -ieuc -oeuc -w
言語: ja
文字コード: euc
CONFDIR: /usr/local/etc/namazu
LIBDIR: /usr/local/share/namazu/pl
FILTERDIR: /usr/local/share/namazu/filter
TEMPLATEDIR: /usr/local/share/namazu/template
対応形式: 
  application/x-bzip2
  application/x-compress
  application/x-gzip
  message/news
  message/rfc822
  text/hnf
  text/html
  text/html; x-type=mhonarc
  text/plain
  text/plain; x-type=rfc
  text/x-roff
-----------------------------------------------
~/.mknmzrc-Mail には
$ON_MEMORY_MAX   = 3000000;
と、
$DENY_FILE .= '|from-log';

$EXCLUDE_PATH   = '';
$EXCLUDE_PATH  .= '|trash';
$EXCLUDE_PATH  .= '|junk';

などがいくつかあります。
--
(藤原)