[Namazu-devel-ja 1352] Cannot handle date (49, 21, 03, 29, 8, 2099) at .. pl/time.pl

藤原 誠/ Makoto Fujiwara makoto @ ki.nu
2006年 11月 2日 (木) 10:22:27 JST


>                                           千葉市中央区長洲
>                                                    藤原 誠
皆様、いつも大変ありがとうございます。

遅ればせながら namazu-2.0.17RC2 の確認中です。
その時に、標題のような
  Cannot handle date (49, 21, 03, 29, 8, 2099) at .. pl/time.pl
という問題がありましたので、お知らせします。
 (1) 再現方法 
     ( NetBSD/pkgsrc/textproc/namazu2 に変更を加え make install)
 (2) 問題のメール。実物です。ただし @ や . のところだけ変更し、
     内容も test の一行にしています。
 (3) 問題 (実行例)
 (4) 修正方法
等です。
ちょっとしたことで止ってしまうのは困る、という問題です。
以前に同じ話題があったら、ごめんなさい。
---
(藤原)
-------------- next part --------------
(1) pkgsrc/textproc/namazu2 を次のように変更します。
-----------------------------------------------------------------
ttyp0:makoto @ s900 10:02:01/061102(...textproc/namazu2)> cvs diff
cvs diff: Diffing .
Index: Makefile
===================================================================
RCS file: /e/cvsync/cvsync/pkgsrc/textproc/namazu2/Makefile,v
retrieving revision 1.31
diff -u -r1.31 Makefile
--- Makefile    19 Jul 2006 19:14:39 -0000      1.31
+++ Makefile    2 Nov 2006 00:40:36 -0000
@@ -1,8 +1,10 @@
 # $NetBSD: Makefile,v 1.31 2006/07/19 19:14:39 jlam Exp $
 
-DISTNAME=      namazu-2.0.16
+DISTNAME=      namazu-2.0.17RC2
+PKGNAME=       namazu-2.0.17
 CATEGORIES=    japanese textproc www
 MASTER_SITES=  http://www.namazu.org/stable/
+MASTER_SITES=  http://www.namazu.org/test/
 
 MAINTAINER=    pkgsrc-users @ NetBSD.org
 HOMEPAGE=      http://www.namazu.org/index.html.en
Index: distinfo
===================================================================
RCS file: /e/cvsync/cvsync/pkgsrc/textproc/namazu2/distinfo,v
retrieving revision 1.9
diff -u -r1.9 distinfo
--- distinfo    12 Mar 2006 14:36:54 -0000      1.9
+++ distinfo    2 Nov 2006 01:01:55 -0000
@@ -4,3 +4,5 @@
 RMD160 (namazu-2.0.16.tar.gz) = 13ce0d0e1a80f4677164c5e5c5d525dc2089c236
 Size (namazu-2.0.16.tar.gz) = 1185299 bytes
 SHA1 (patch-ab) = 5052026e67ffb0a235c8a4ba996cb4438bf7b622
+SHA1 (namazu-2.0.17RC2.tar.gz) = d3edfd23dc1277bce0ce0f05750b778b396c8d1f
+RMD160 (namazu-2.0.17RC2.tar.gz) = f8a5f69661f30c79eae4b311d6f4efc047735e63
cvs diff: Diffing patches
ttyp0:makoto @ s900 10:05:36/061102(...textproc/namazu2)> 

-------------- next part --------------
From mail at 163 com  Fri Sep 29 04:23:50 2006
Return-Path: <mail at 163 com>
Received: from komekome bay prug or jp (komekome ki nu [218 44 234 237])
	by mail ki nu (8 13 3/8 13 3) with ESMTP id k8SJNnFk008915
	for <makoto at ki nu>; Fri, 29 Sep 2006 04:23:49 +0900 (JST)
Received: from 163 com ([219 136 135 166])
	by komekome bay prug or jp (8 13 5/8 13 5) with ESMTP id k8SJNOAB011382
	for <makoto at komekome bay prug or jp>; Fri, 29 Sep 2006 04:23:29 +0900 (JST)
Message-Id: <200609281923 k8SJNOAB011382 at komekome bay prug or jp>
From: =?GB2312?B?1cW4u7nz?= <mail at 163 com>
Subject: =?GB2312?B?uePW3cGqtLTKtdK109DP3rmry74=?=
To: makoto at komekome bay prug or jp
Content-Type: text/plain;charset="GB2312"
Date: Tue, 29 Sep 2099 03:21:49 +0800
X-Priority: 2
X-Mailer: Foxmail 4.2 [cn]

test
-------------- next part --------------
(3) 実行例
ttyp1:makoto @ s900 10:10:53/061102(~/software/NAMAZU)> rm -rf /tmp/O
ttyp1:makoto @ s900 10:10:55/061102(~/software/NAMAZU)> mkdir  /tmp/O
ttyp1:makoto @ s900 10:10:59/061102(~/software/NAMAZU)> mknmz -O /tmp/O rfc822-date
検索対象のファイルを調べています...
1個のファイルがインデックス作成の対象として見つかりました
Day too big - 47388 > 24855
Sec too small - 47388 < 74752
Sec too big - 47388 > 11647
Cannot handle date (49, 21, 03, 29, 8, 2099) at /usr/pkg/share/namazu/pl/time.pl line 245
ttyp1:makoto @ s900 10:11:12/061102(~/software/NAMAZU)> 
-------------- next part --------------
--- pl/time.pl-orig	2006-11-01 12:27:34.000000000 +0900
+++ pl/time.pl	2006-11-02 09:09:08.000000000 +0900
@@ -26,6 +26,8 @@
 package time;
 use strict;
 use Time::Local;
+# http://www.rfs.jp/sb/perl/04/01.html
+use Time::Local  qw(timegm_nocheck); 
 
 #
 # get timezone :
@@ -242,7 +244,7 @@
         $year += 2000 if ($year < 50);
         $year += 1900 if (50 <= $year && $year <= 99);
 
-	my $mtime = timegm($sec, $min, $hour, $mday, $month, $year);
+	my $mtime = timegm_nocheck($sec, $min, $hour, $mday, $month, $year);
 
         my $offset;
         if ($timezone =~ /([+-])(\d{2})([0-5][0-9])/) {
-------------- next part --------------
ttyp1:makoto @ s900 10:13:50/061102(~/software/NAMAZU)> rm -rf /tmp/O
ttyp1:makoto @ s900 10:13:54/061102(~/software/NAMAZU)> mkdir /tmp/O
ttyp1:makoto @ s900 10:14:06/061102(~/software/NAMAZU)> mknmz -O /tmp/O rfc822-date
検索対象のファイルを調べています...
1個のファイルがインデックス作成の対象として見つかりました
1/1 - /amd/u/home/makoto/software/NAMAZU/rfc822-date/2807 [message/rfc822]
インデックスを書き出しています...
[基本]
日付:                Thu Nov  2 10:14:14 2006
追加された文書の数:  1
サイズ (bytes):      800
合計の文書数:        1
追加キーワード数:    39
合計キーワード数:    39
わかち書き:          module_kakasi -ieuc -oeuc -w
経過時間 (秒):       4
ファイル/秒:         0.25
システム:            netbsd
Perl:                5.008008

Namazu:              2.0.17RC2

ttyp1:makoto @ s900 10:14:14/061102(~/software/NAMAZU)> 


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