« MovableType3.1日本語版提供開始 | メイン | Windows Media Player 10 »

2004年10月20日

[ blog ]

Template.pm

MovableType3.11-jaにアップグレードして色々いじってみたのだが、なんかテンプレートの保存をしようとすると

オブジェクトの保存に失敗しました: Update failed on SQL error ERROR: date/time field value out of range: "0000-00-00 00:00:00"
Use of uninitialized value in unpack at /var/www/hogehoge/lib/MT/ObjectDriver/DBI/postgres.pm line 13.
Argument "" isn't numeric in sprintf at /var/www/hogehoge/lib/MT/ObjectDriver/DBI/postgres.pm line 13.

って言うエラーが出るようになってしまった。
postgres.pmの該当する行には、

sub ts2db {
sprintf '%04d-%02d-%02d %02d:%02d:%02d', unpack 'A4A2A2A2A2A2', $_[1];
}

ってのがあって、どうもここに正しい値が渡ってないという事は分かるんだけど、この関数どこから呼んだときに問題が起こるのかが分からない。
エントリーの追加のときとかはエラーが出てないのでテンプレートの変更に関する記述を重点的に調べればいいのだろうけど・・・
PostgresSQLのエラーログにも確かにそういうエラーが出ているけどこれだけではなんとも。

とりあえずlibディレクトリをだけを3.01に戻してみてエラーが出ないことを確認。やはりlib/MT/Template.pm、lib/MT/TemplateMap.pm、lib/MT/Template/Content.pmが怪しいよなと言うことで、1つずつバージョンを変えてみて原因特定作業をすすめる。
その結果悪いのはlib/MT/Template.pmであると。(TemplateMap.pmは変更されてなかった)
diffをとると

4c4
< # $Id: Template.pm,v 1.45 2004/08/25 02:06:40 ezra Exp $
---
> # $Id: Template.pm,v 1.42 2004/04/29 02:42:57 ezra Exp $
29c29
<         'rebuild_me', 'build_dynamic'
---
>         'rebuild_me',
35d34
<         build_dynamic => 1,
37d35
<     audit => 1,

これもまた1つずつ試してみた結果、最終的に

    audit => 1,

をコメントアウトすることで問題解決。まずは一安心と言うところだが、この行ってコメントアウトしちゃって問題ないんでしょうか・・・

根本的な解決方法を教えてくださった方がいるのでそちらの方法を結局採用。
2004/11/01追記

投稿者 散財人 : 2004年10月20日 04:20

Google Search Result

  • Text::Template.pm : Text::Template.pm (current version: 1.44; last updated 2003-04-29). Text::Template
    is a module for filling in templates. A template is a file or a string ...
  • HTML::Template - Perl module to use HTML Templates from CGI ... : in. All, Modules, Distributions, Authors. permalink · Sam Tregar > HTML-Template-2.9 >
    HTML::Template. Download: HTML-Template-2.9.tar.gz ...
  • template pm : package HTML::Template; $HTML::Template::VERSION = '2.4'; =head1 NAME HTML::Template -
    Perl module to use HTML Templates from CGI scripts =head1 SYNOPSIS ...

Trackback Pings

このエントリーのトラックバックURL:
http://www.sanzai.net/mt-tb.cgi/167

このリストは、次のエントリーを参照しています: Template.pm:

» MT3.1のPostgreSQL不具合その2? from やなぎもの糯
さてそろそろ本腰を入れてCSSをいじろうと思ったら エラーが発生してCSSの保存ができないではないですか! 内容は↓ date/time field valu... [続きを読む]

トラックバック時刻: 2004年10月25日 21:15

» PostgreSQL派の災難 from mega green oasis +
Movable Type 3.01D-ja → 3.11-ja にアップデートし... [続きを読む]

トラックバック時刻: 2004年10月31日 04:08

» MovableType+PostgreSQLで3.11にバージョンアップするとテンプレート修正でエラー from waterbird.jp BLOG
タイトル長いなぁ。 先日MTを3.11にバージョンアップしたのですが、基本的には問題ないと思っていた。 ところが、テンプレートを直そうとしたら オブジェクトの保... [続きを読む]

トラックバック時刻: 2004年11月16日 15:25

コメント

コメントしてください




保存しますか?