[Mew-dist 12711] Re: タイムスタンプを使うimmknmz

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2000年 3月 22日 (水) 18:06:02 JST


From: KOIE Hidetaka (鯉江英隆) <hide at example.com> さん曰く
Subject: [Mew-dist 12709] タイムスタンプを使うimmknmz
Message-ID: <00Mar22.134121jst.29572 at example.com>
Date: Wed, 22 Mar 2000 13:28:32 +0900

鯉江> そこで~/Namazuディレクトリにタイムスタンプ用のファイルを置いて
鯉江> ~/Mailにあるフォルダとlast modified timeの比較をして
鯉江> 高速化するパッチをつくりました。immknmz -tオプションで有効になります。

おぉ、当社比 100倍という感じですね。素晴らしいです。さっそく
cron で動かしている shell script に --timestamp=on を追加しまし
た。:-)

だけど、鯉江さんのパッチだけだと FAT な filesystem でだめだなの
で、追加のパッチもおねがいします。(_ _)

鯉江> ただ mew-summary-ls を実行すると
鯉江> フォルダ(ディレクトリ)のタイムスタンプも更新されるので
鯉江> 無駄にmknmzが走ることがあります。
鯉江> (フォルダのmtimeを更新する理由は忘れてしまいました)

鯉江>     3.リファイル先のフォルダに移動
鯉江>       (自動でscanされる)

ここで、+folder/.mew-cache が書き込まれるから mtime も変わるのだ
と思います。

## 『ファイルが巨大だから無視します』だけの folder は何回も
## mknmz しちゃいますね。だけど、しようが無いところだなぁ。

-- 
白井秀行 (mailto:shirai at example.com)
-------------- next part --------------
*** immknmz.in.orig	Wed Mar 22 15:09:35 2000
--- immknmz.in	Wed Mar 22 15:36:15 2000
***************
*** 118,124 ****
  
          $timestamp = "$nmzfolder/NMZ.stamp";
          if ($opt_timestamp) {
!             if (get_mtime("$msgfolder") < get_mtime("$timestamp")) {
                  print "index of $msgfolder may be up to date.\n" if $opt_verbose;
                  next;
              }
--- 118,130 ----
  
          $timestamp = "$nmzfolder/NMZ.stamp";
          if ($opt_timestamp) {
! 	    my $foldermtime;
! 	    if (&usetouchfile() && -r $msgfolder . "/" . &touchfile()) {
! 		$foldermtime = get_mtime($msgfolder . "/" . &touchfile());
! 	    } else {
! 		$foldermtime = get_mtime("$msgfolder");
! 	    }
!             if ($foldermtime < get_mtime("$timestamp")) {
                  print "index of $msgfolder may be up to date.\n" if $opt_verbose;
                  next;
              }


Mew-dist メーリングリストの案内