ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Opened 9 years ago

Closed 9 years ago

Last modified 8 years ago

#2854 closed defect (fixed)

PostgresSQLにて、ID=1だけ登録時間がマイクロ秒まで記録される

Reported by: imamura623 Owned by: mori
Priority: minor Milestone: OpenPNE2.13.4
Component: 指定しない Version: 2.14.x
Keywords: Cc:

Description (last modified by kudo)

■現象

PostgreSQLのセットアップSQLを実行すると、登録された時刻がマイクロ秒を含んでしまう。

■原因

PostgreSQL の NOW() 関数をそのまま使用しているため。

■修正内容

既にDBに登録されている、以下のフィールドに含まれる時刻をマイクロ秒を含まない形に変換するためのアップデートSQLを追加。

  • c_image.filename が 'skin_no_image.gif', 'skin_no_logo.gif', 'skin_no_ logo_small.gif', 'r_1_regular.gif', 'r_2_silver.gif', 'r_3_gold.gif', 'r_4_platinum.gif' のいずれかであるレコードの c_image.r_datetime
  • c_member.c_member_id が 1 であるレコードの c_member.r_date と c_member.u_datetime

新規セットアップ用のSQLについては、別チケットで作成するもののため、ここでは修正しない。

■関連情報

元のDescription

http://sns.openpne.jp/?m=pc&a=page_fh_diary&target_c_diary_id=18110 より転記

OpenPNE2.10.7(?)で、Postgresで運用。

ID=1だけ、c_memberの日時がマイクロ秒まで登録されます

SELECT r_date, u_datetime FROM c_member;
r_date | u_datetime
----------------------------+----------------------------
2008-07-23 17:58:44.257311 | 2008-07-23 17:58:44.257311
2008-07-24 09:15:07 | 2008-07-24 09:15:07
2008-07-24 11:35:10 | 2008-07-24 11:35:10
2008-07-24 11:45:01 | 2008-07-24 11:45:01

登録日を時間まで表示させたらおかしなことになって気がつきました・・・・

管理画面メンバー一覧では、年月日までしか出さないから?問題ないようです。

SETUPモジュールで登録すると、こうなるのでしょうか。。(ID=1は未ログインです)

Change History (20)

comment:1 Changed 9 years ago by cake

c_memberにID=1の情報は、セットアップSQLで入るようになっていました

setup/sql/postgre74/install-212-insert_data.sql 39行目

INSERT INTO c_member VALUES (nextval('c_member_c_member_id_seq'),'OpenPNE君',0,0,0,'private','public',,,,,'0000-01-01 00:00:00',NOW(),,0,1,1,1,0,1,'public',0,0,0,0,NOW());

comment:2 Changed 9 years ago by kiwa

Keywords: 再現待ち removed

Cakeさんの検証があるので、修正に回してよいとおもいます。

comment:3 Changed 9 years ago by kiwa

念のためMySQL版のインストールSQLを試したところ、問題はありませんでした。

mysql> SELECT r_date, u_datetime FROM c_member;
+---------------------+---------------------+
| r_date              | u_datetime          |
+---------------------+---------------------+
| 2008-06-13 10:52:03 | 2008-06-13 10:52:03 |
+---------------------+---------------------+
1 row in set (0.00 sec)

comment:4 Changed 9 years ago by mori

Owner: changed from nobody to mori
Status: newassigned

担当します。

comment:5 Changed 9 years ago by mori

Description: modified (diff)
Keywords: 確認中 added
Version: 2.10.x & 2.12.x & 2.13.x2.13.x

以下のリビジョンで修正しました。

comment:6 Changed 9 years ago by mori

Keywords: OpenPNE2.10.12 OpenPNE2.13.4 added
Milestone: OpenPNE2.12.6

comment:7 Changed 9 years ago by ebihara

Keywords: OpenPNE2.10.12 OpenPNE2.13.4 確認中 removed
Milestone: OpenPNE2.12.6OpenPNE2.13.4

開発版のみの対応なのでマイルストンを変更します。

comment:8 Changed 9 years ago by ebihara

Keywords: 確認中 added

間違ってキーワード消しちゃってました。

comment:9 Changed 9 years ago by mori

Milestone: OpenPNE2.13.4OpenPNE2.12.6

comment:10 Changed 9 years ago by mori

Keywords: OpenPNE2.10.12 OpenPNE2.13.4 確認中 added; 確認中 removed

comment:11 Changed 9 years ago by ebihara

Keywords: 確認中 added; OpenPNE2.10.12 OpenPNE2.13.4 確認中 removed
Milestone: OpenPNE2.12.6OpenPNE2.13.4

comment:12 Changed 9 years ago by ebihara

Keywords: 差し戻し added; 確認中 removed
Owner: changed from mori to nobody
Status: assignednew

既存の c_member_id = 1 のメンバーに対しても対応をおこなうべきかと思います。

comment:13 Changed 9 years ago by ebihara

Owner: changed from nobody to ebihara
Status: newassigned

修正に関しては海老原が引き受けます。修正後、 mori さんに再度アサインします。

comment:14 Changed 9 years ago by ebihara

Description: modified (diff)
Keywords: 確認中 added; 差し戻し removed
Owner: changed from ebihara to mori
Status: assignednew

インストール用のSQLは別に作成するため、 r8900 は取り消しました。

r8946 で、DBに既に登録された、マイクロ秒を含む時刻を修正するためのアップデートSQLを追加しました。

comment:15 Changed 9 years ago by ogawa

Keywords: 差し戻し added; 確認中 removed

c_siteadmin.r_date は timestamp 型ではなく、date 型ですが問題ないでしょうか。

comment:16 Changed 9 years ago by ebihara

Description: modified (diff)
Keywords: 確認中 added; 差し戻し removed

date型に対して NOW() の結果を挿入しても、 TO_TIMESTAMP() の結果を挿入しても、 date型として適正な値に丸められるようでした。

従って、r8946 の c_siteadmin.r_date に対するSQL文は実行しても実行しなくてもいいようなので、r9016 で削除しました。

comment:17 Changed 9 years ago by ogawa

Keywords: テスト待ち added; 確認中 removed

comment:18 Changed 9 years ago by kiwa

Keywords: テスト待ち removed
Resolution: fixed
Status: newclosed

確認しました。問題ありません。

comment:19 Changed 9 years ago by kiwa

Summary: 【Postgres】ID=1だけ、登録時間がマイクロ秒まで記録PostgresSQLにて、ID=1だけ登録時間がマイクロ秒まで記録される

comment:20 Changed 8 years ago by kudo

Description: modified (diff)
Note: See TracTickets for help on using tickets.