2010年2月 1日

[pgsql-jp: 40159] Re:pg_dumpでエラーが発生する


<konuma.suguru@xxxxx> wrote:

> pg_dump: ERROR: could not open relation with OID 4294967295
> s_shihyoでpg_dumpを実行した場合は、上と同様のエラーとなります。

4294967295 = 0xFFFFFFFF ですね。OID が周回するほど大量に消費されているような
状況で無い限り、データの破損(ハードウェア or PostgreSQL のバグ)が疑えます。

テーブル s_shihyo に関連付けられたデータファイルが失われているか、
迷子になっていると思われます。

データを諦めるならば、そのテーブルを削除し、他のデータだけ救うことになります。
エラーで削除ができない場合には、DELETE FROM pg_class WHERE ... などで
無理やり消すことになるかもしれません。

迷子になっているファイルを探すのであれば、
SELECT relname, relfilenode FROM pg_class WHERE relkind IN ('r', 'i', 't');
などのSQLで $PGDATA/base/<dbid> 以下に「存在すべきファイル」の
一覧を取得して、一致しないファイルを人手で調査することになるでしょうか。

------------------------------------------------------------
NTT オープンソース ソフトウェア センタ
板垣貴裕 <itagaki.takahiro@xxxxx>

投稿者 xml-rpc : 2010年2月 1日 14:37
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/92972
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。