[pgsql-jp: 29911] Re: NOW()関数のJDBC 経由時の動作について

sugita @ sra.co.jp sugita @ sra.co.jp
2003年 5月 15日 (木) 22:05:52 JST


  杉田です。

From: 原 啓次 <hara @ quest.co.jp>
Subject: [pgsql-jp: 29908] NOW()関数のJDBC 経由時の動作について
Date: Thu, 15 May 2003 21:25:28 +0900

;;; 環境
;;; Redhat 7.3
;;; PostgreSQL 7.3.2
;;; Apache 1.3.27
;;; JDK 1.3.07
;;; Tomcat 4.1.24
;;; 
;;; 上記環境でServletによる開発を行っております。
;;; INSERT時にPostgreSQLのNOW()という関数を利用しています。
;;; この関数は同一トランザクションでは何回SELECTしても同じ時刻を示すとありました。
;;; そこで、クライアントからpsqlを利用し、beginでトランザクションを開始後に
;;; SELECT NOW();を複数回実行しました。
;;; 結果として同じ時刻を抽出していました。
;;; これは納得したのですが、ServletでWebより実行したケースでは、
;;; commitを発行してトランザクションを複数発生させているにもかかわらず
;;; 現在時刻より30分以上前の値を持ってきていました。
;;; トランザクションのほかに、JDBCのコネクションなど何か原因があるのでしょう
;;; か?

  アプリケーション側のミスの可能性がかなり高いです。全クエリーをサーバ側でモニ
ターし、かつアプリケーション側のクエリーと処理を見直すのが先決と思えます。


Kenji Sugita                                      




pgsql-jp メーリングリストの案内