[pgsql-jp: 41800] Re: ERROR: could not create relation "pg_toast_toast_XXXX"の回避策について

FASYS)小川 智康 tomoyasu.ogawa @ keinet.ne.jp
2015年 7月 9日 (木) 09:51:23 JST


小川です。

高塚さま、ご回答ありがとうございました。

やはりバージョンアップかリプレースするのが無難なようですね。
お客様都合もありなかなか難しいのですが・・・
ご意見、参考させていただきます。
ありがとうございました。



On Wed, 8 Jul 2015 20:14:54 +0900
TAKATSUKA Haruka <harukat @ postgresql.jp> wrote:

> 高塚と申します。
> なかなか古いバージョンですね。
> 
> 解消策としては、ダンプを取ってデータを退避して、
> データベースクラスタを作り直すことをやってみたいです。
> 
> (コマンド例)
> # su - postgres
> $ pg_dumpall > all.dump
> $ cp $PGDATA/*.conf  /tmp/conf_backup/
> $ mv $PGDATA  "${PGDATA}.bak"
> $ initdb -E  EUC_JP --no-locale
> $ cp /tmp/conf_backup/*.conf  $PGDATA/
> $ pg_ctl start
> $ psql -f all.dump
> 
> 現象は、既存ファイルが新たに作ろうとした TOASTテーブル用のファイルと名前が
> ぶつかっているということのようですが、原因は何でしょう。もし、7.4.2 が
> リリースされていたころからずっと使っていたなら OID の周回かもしれませんね。
> (そうであるなら、解決策はやっぱりデータベースクラスタの作り直しです)
> 
> 何かの既知バグかもしれませんが、7.4.30 までリリースノートを見ていくのは大変です。
> 目をつぶってデータベースクラスタ作り直し、さらに可能なら 7.4.30 にバージョンアップ、
> さらに可能なら 9.x にバージョンアップをしたいところです。
> 
> 
> On Wed, 08 Jul 2015 16:17:59 +0900
> FASYS)小川 智康 <tomoyasu.ogawa @ keinet.ne.jp> wrote:
> 
> > 
> > 初めて質問させていただきます。小川と申します。
> > 
> > Red Hat Enterprise Linux ES release 3/Postgres7.4.2にて、
> > pg_toast関連のエラーが発生し、対処に憂慮しております。
> > 
> > 大まかなシステムの仕組みとしては
> > 設問を自由に作成できるアンケートのようなシステムを構築し、
> > お客様の回答内容を日次でバッチ処理して集計するというものになります。
> > 
> > お客様の回答内容は、1設問ごとに1レコードずつ
> > 「アンケート番号、お客様番号、設問番号、回答内容」といった形式で
> > テーブルに記録しております。
> > 
> > そしてバッチの集計処理にて、1アンケートごとに
> > 集計用のテンポラリテーブルを作成し、
> > 1お客様毎に1レコードずつ記録する形式にしてから
> > CSV出力を行い、
> > 次のアンケートの集計を行う前にテンポラリテーブルを削除する
> > という処理を行っております。
> > (上記処理をアンケートの数だけループ処理しており、
> >  現在は1回のバッチ処理にて5000ほどの集計処理を行っております)
> > 
> > 最近になり、3日間ほどですがこのテンポラリテーブルを作成する箇所で
> > postgresエラーが検知され処理に失敗しているのですが、
> > その原因・対処が分からないため、アドバイス頂きたく存じます。
> > 
> > 以下エラーメッセージの内容になります。
> > 
> > pg_query(): Query failed: ERROR:  could not create relation "pg_toast_1558545": File exists
> > 
> > 
> > 一度このエラーが発生すると、それ以降最後の集計分まで同じエラーが続いております。
> > 
> > pg_toastの仕組みについては多少勉強しましたが、
> > このエラーに対する回避策まではつかむことができず、
> > 前例や解決手段がないものかご教示頂けたら幸いでございます。
> > 
> > 以上お手数ですがよろしくお願いいたします。
> 
> ______________________________________________________________________
>  日本PostgreSQLユーザ会  高塚 遙  http://www.postgresql.jp 
> 




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