[pgsql-jp: 30158] テーブルの2重登録について

TFL)久村 孝之 hisamura.takayuki @ tfl.fujitsu.com
2003年 6月 9日 (月) 15:48:08 JST


こんにちは。久村と申します。

データベースにテーブルが2重に登録されるという現象が発生してい
ます。
環境は次の通りです。
 OS        :Linux 2.2.19-6.2.16
 PostgreSQL:7.2.1

操作は、コマンド「psql testdb < create_tbl.sql」を2回実行です。
 create_tbl.sqlの内容
   CREATE TABLE T_TEST_TABLE (
     PKey        varchar,
     Dummy       int,
     RegiDate    timestamp DEFAULT CURRENT_TIMESTAMP,
     PRIMARY KEY (PKey)
   );

既存のDBにテーブルを追加しています。
1回目の実行後リブートし、その後2回目を実行です。
作成されたテーブルの状態を確認すると次のようになっています。

 testdb=# ¥d
           List of relations
         Name         | Type  | Owner
 ---------------------+-------+-------
  t_test_table        | table | root
  t_test_table        | table | root
 (2 rows)

 testdb=# ¥d t_test_table
                                    Table ”t_test_table”
    Column   |           Type           |                     Modifiers
 ------------+--------------------------+-------------------------------
  pkey       | character varying        | not null
  pkey       | character varying        | not null
  dummy      | integer                  |
  dummy      | integer                  |
  regidate   | timestamp with time zone | default (’now’
::text)::timestamp(6) with time zone
  regidate   | timestamp with time zone | default (’now’
::text)::timestamp(6) with time zone
 Primary key: t_test_table_pkey,
              t_test_table_pkey

  ↑ 見づらくてごめんなさい

この状態となってから、さらに同一のテーブルを追加しようと
しましたが、
「Relation ’t_test_table’ already exists」となり、通常通り
の動作をしています。
テーブルを削除しようとすると、
「Cannot insert a duplicate key into unique index
  pg_class_relname_index」となり、制御情報との整合性が取
れなくなっているような動作です。

恐らく1回目の実行で何かが発生したものと思われますが、他
社にてバッチで作業してもらったため、実行時のメッセージな
どは取得できていません。PostgreSQLのログも出力しない設定
でした。
こちらでも、再現できない状態です。
現象が発生したディスクのコピーは保持しています。

結果の情報しかなく恐縮ですが、どなたかこのような現象が発
生する要因をご存知でしたら、お教えください。

よろしくお願いいたします。

以上
---------------------------------------------------------------------
久村 孝之
e-mail:hisamura.takayuki @ tfl.fujitsu.com
---------------------------------------------------------------------




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