[pgsql-jp: 41905] Re: 重複キーのデータが生成される

TAKATSUKA Haruka harukat @ postgresql.jp
2016年 10月 24日 (月) 19:42:23 JST


高塚と申します。

これは、主キーのインデックスが壊れていると見られます。
インデックスが破損する何らか PostgreSQLバグに当たってしまったかもしれません。
「ごく稀にインデックスが壊れる」という障害はこれまでもいくつか報告され、
修正されています。機会をみて REINDEX を実行してください。

# 今月リリース予定の次マイナーバージョンにも
#  In the worst case, this could result in a corrupt btree index ...
#  .... situation is believed to be rare.
# という件がありました(ただし、それは 9.5.x 以降の件でしたが)。



On Mon, 24 Oct 2016 10:33:04 +0900
水口(ヴァンガードネットワークス) <mizuguchi @ vanguard.ne.jp> wrote:

> 環境:POSTGRESQL 9.4.8(windows)
> 下記の様なテーブルを作成し
> プログラムの状態を管理のために利用しています
> 2つの項目をそのまま主キーに設定しているのですが
> あるタイミングで重複キーエラーが発生したので
> データを確認した所下記の様なレコードが2件存在していました
> 重複キーのエラーが発生する事自体は、作成したプログラムにバグがあると思います
>> 主キーに設定されているにも関わらず、データビューで確認すると同じデータが
> 存在していました
> もしかしてpostgresのバグでしょうか?何か情報ありましたら教えてください。
> 
> 
> 【エラーのデータの内容】
> "192.168.111.12";0
> "192.168.111.12";0
> 
> 【テーブル構造】
> CREATE TABLE card_rw_stats
> (
>   ipaddress character varying(40) NOT NULL, -- 利用端末
>   thread_status smallint NOT NULL DEFAULT 0, -- 状態
>   CONSTRAINT pk_card_rw_thread PRIMARY KEY (ipaddress, thread_status)
> )
> WITH (
>   OIDS=FALSE
> );


______________________________________________________________________
 日本PostgreSQLユーザ会  高塚 遙  http://www.postgresql.jp 



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