[Namazu-win32-users-ja 1238] Re: mknmzの処理が中断する

Toru Ishizuka ishizuka @ o-plans.co.jp
2010年 8月 24日 (火) 16:04:42 JST


寺西様

 お世話になります 石塚です

 検証環境を作るのに時間がかかってしまいましたが、

 ActivePerl    5.8.9.827
 NKF           2.07.1.1
 File-MMagic   1.27
 Text-Kakasi   2.04.1.1
 Search-Namazu 0.96.2

 の環境で、再度実行しましたが、結果変わらずでした。

 コードを追ってみたのですが、

 mknmzの1449行目で実行している(File::Find::)find()が正
常に動作しておりませんでした。
 具体的にはfind()の第一引数に渡しているサブルーチン
wanted_closure()に渡されるパス名がおかしくなり、無限に
wanted_closure()が呼ばれ続け無限ループになっています。

 例えば

 C:\dir1\dir2\dir3

というパス名がわたるはずが、
 C:\dir1\dir2\dir3
 C:\dir1\dir2\dir3dir3     実際には存在しない
 C:\dir1\dir2\dir3dir3dir3   実際には存在しない
 C:\dir1\dir2\dir3dir3dir3dir3 実際には存在しない
  :
 以下繰り返し
  :
という感じになっています。
 別のパターンとして
 C:\dir1\dir2\di
 のようにパス名が途中で切れるという事象もありました。こ
の場合、無限ループにはならず終了はしますが。インデックス
作成対象ファイルが取得できないため、やはりインデックスは
作成されません。

 find()のみのサンプルコードを書いて実行しましたが、それ
でも再現しましたので、mknmzの問題というよりはfind()関数
の問題のようです。

 find()を使わないようにコードを修正して確認したところ、
正常にインデックスが作成されましたので、フィルタ等は大丈
夫のようです。

 このような事象に対してパッチ等がありましたらご教授いた
だきたく。

 よろしくお願いします。
  

On Thu, 01 Jul 2010 07:01:39 +0900
Tadamasa Teranishi <yw3t-trns @ asahi-net.or.jp> wrote:

> 寺西です。
> 
> とにかく最新版にバージョンアップしてから出直しくださいな。
> # 2.0.17 って論外ですが。
> 
> Toru Ishizuka wrote:
> > 
> > F:\xxxx\namazu\bat>mknmz -C
> > Use of uninitialized value in concatenation (.) or string at D:\xxxx\namazu\b
> > in/mknmz line 250.
> 
> 設定きちんとしましょう。
> 
> > 読み込んだ設定ファイル: D:/xxxx/namazu/etc/namazu/mknmzrc
> > システム: MSWin32
> > Namazu: 2.0.17
> 
> どんなけ古いバージョン使っているのですか...。
> 
> > File-MMagic: 1.15
> 
> これも論外に古いな。
> 
> > Supported media types:   (40)
> > Unsupported media types: (12) marked with minus (-) probably missing application
> >  in your $path.
> 
> 途中からメッセージが英文になっている...。
> # この mknmz は、ぼろぼろなんじゃ。ちゃんとインストールしましょう。
> 
> >   application/excel: excel.pl
> 
> xlhtml 使っているのなら、そっちの問題では?
> -- 
> =====================================================================
> 寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns @ asahi-net.or.jp
> http://www.asahi-net.or.jp/~yw3t-trns/index.htm
> Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E
> _______________________________________________
> Namazu-win32-users-ja mailing list
> Namazu-win32-users-ja @ namazu.org
> http://www.namazu.org/cgi-bin/mailman/listinfo/namazu-win32-users-ja

-- 
==    Oplans Corporation     = No.1 Shimoda Bldg.2F           ==
==       Consultant          = 2-10-1 Yayoicho, Nakano-ku     ==
==   << Tohru Ishizuka >>    = Tokyo, 164-0013 Japan          ==
==  ishizuka @ o-plans.co.jp   = Voice: +81-3-5534-8801         ==




Namazu-win32-users-ja メーリングリストの案内