namazu-ml(ring)


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

Re: y2k problem



<199906190140.KAA29362@xxxxxxxxxxxxxx>の記事において
satoru-t@xxxxxxxxxxxxxxxxxxさんは書きました。

>> >2000年問題には対応していますでしょうか?
>> 
>> たぶん問題ないんじゃないでしょうか。 (断定はできない)
>> 
>> どなたかマシンの時刻を変えて適当に実験してもらえません?

  ちょっと試してみました。

  vmwareは実マシンと仮想マシンで別の時間を設定できるようなので、これを
用いて2000年の環境を作成し、いくつかの実験をしてみました。

実行環境:
Debian GNU/Linux 2.1 on vmware build 179
perl 5.004_04
Namazu 1.3.0.8
chasen 1.5.1

1. タイムスタンプ

Namazuをインストールしたときに同時にインストールされる文章ファイルは、
インストール時のタイムスタンプ(実験環境では2000年6月23日)となるので、
その文章ファイルに対してインデックスを作成する。

結果:

NMZ.field.dateには以下のように正しくファイルのタイムスタンプが記録され
た。

Fri, 23 Jun 2000 15:54:46
Fri, 23 Jun 2000 15:54:46
Fri, 23 Jun 2000 15:54:46
Fri, 23 Jun 2000 15:54:46
Fri, 23 Jun 2000 15:54:46
Fri, 23 Jun 2000 15:54:46
Fri, 23 Jun 2000 15:54:46

2. ソート

touchコマンドで人為的に2000年以前と2000年以降のタイムスタンプをもつファ
イルを作成し、インデックスを作成。namazu -l/-eでソート結果が正しくなる
かどうかを確認。

結果:

昇順、降順ともに正しくソートされた。

3. メールのDateフィールド

適当にDateフィールドの値を設定したメールを用意し、インデックスを作成、
namazu -e/-lを実行してソート結果が正しくなるかどうかを確認。

結果:

年が4桁で記録されているものについては正しく動作する。しかし、2桁で記録
されているものについては奇妙な動作をする。

手元で実験したデータでインデックスを作成すると、NMZ.field.dateは以下の
ようになる。

Wed, 13 Jan 2000 17:33:10 +0900 (JST)
Wed, 17 Mar 99 09:28:18 JST
Wed, 17 Mar 99 09:38:37 JST
Wed, 17 Mar 99 09:39:23 JST
Wed, 17 Mar 99 09:36:52 JST
Wed, 17 Mar 99 09:44:05 JST
Wed, 17 Mar 99 09:46:56 JST

このデータに対してnamazu -lを行うと、以下の並びで結果が返される。

Wed, 17 Mar 99 09:46:56 JST
Wed, 17 Mar 99 09:44:05 JST
Wed, 17 Mar 99 09:36:52 JST
Wed, 17 Mar 99 09:39:23 JST
Wed, 17 Mar 99 09:38:37 JST
Wed, 17 Mar 99 09:28:18 JST
Wed, 13 Jan 2000 17:33:10 +0900 (JST)

namazu -eの場合は以下の並びで結果が返される。

Date: Wed, 13 Jan 2000 17:33:10 +0900 (JST)
Date: Wed, 17 Mar 99 09:28:18 JST
Date: Wed, 17 Mar 99 09:38:37 JST
Date: Wed, 17 Mar 99 09:39:23 JST
Date: Wed, 17 Mar 99 09:36:52 JST
Date: Wed, 17 Mar 99 09:44:05 JST
Date: Wed, 17 Mar 99 09:46:56 JST

  RFC822によれば年は2桁となるのですが、これを修正するInternet Draftが
draft-ietf-drums-msg-fmt-07.txtとして出ているようです。これによると、2
桁の年が00〜49の場合は2000年台として、50〜99の場合は1900年台として扱う
ことになっています。

  この点を修正する必要があるのではないでしょうか。
-- 
野首 貴嗣
E-mail: knok@xxxxxxxxxxxxx (private)
        nokubi@xxxxxxxxx (official)