2011年5月26日

[pgsql-jp: 40800] Re:tuple offset out of range エラー

JPUG / SRA OSS, Inc. の高塚と申します。

> tuple offset out of range:4101 と言うエラーなんですが、
ビットマップインデックススキャンのときに出るエラーですね。

> Vacucm FULL ANALYZE も実行してみましたが、変わりありません。
どちらかというと REINDEX DATABASE を試すほうが良いです。

> 現在は、この組み合わせのときだけ実行しないという、対処療法で
対処療法としては
enable_bitmapscan = off
も考えられます。

インデックス破損が原因ならマイナーバージョンアップを検討するのが
よさそうです。いくつか問題があったと思います。

ご参考になれば。

On Thu, 26 May 2011 10:57:02 +0900
貴志順司 <jkishi@xxxxx> wrote:

> 貴志といいます。お教えください。
>
> tuple offset out of range:4101 と言うエラーなんですが、
> "tuple offset out of range"でググっても、日本語での結果が
> 見つかりません。英語では少し見つかりましたが、翻訳して読ん
> でも意味がわかりませんでした。
>
> バージョンは、
> PostgreSQL 8.1.8 on i686-redhat-linux-gnu, compiled by GCC
> gcc (GCC) 4.1.1 20070105 (Red Hat 4.1.1-51)
>
> psqlで、以下のSQL文を発行すると上記のエラーになります。
>
> select * from uriage_shousai_tb s
> inner join uriage_denpyou_tb u on s.uriage_denpyou_id = u.myid
> where u.tantou_id = 25 AND u.tokuisaki_id = 4;
>
> 対象のデータは10件存在します。
> 奇妙なのは、u.tantou_id = 25 AND u.tokuisaki_id = 4
> のときだけと言うことです。25と4の組み合わせ以外は正常に
> 終了します。対象データがあっても無くても。
>
> Vacucm FULL ANALYZE も実行してみましたが、変わりありません。
>
>
> また、ちょっとバージョンが違いますが、上記データベースのダンプ
> をリストアしたものでは、エラーになりませんでした。
> PostgreSQL 8.1.10 on i686-pc-linux-gnu, compiled by GCC
> gcc (GCC) 4.1.2 20070626 (Red Hat 4.1.2-13)
>
>
> 何故、この組み合わせだけ!なんでしょうか・・・
> 不思議ですね。
> よろしくお願いします。
> ただし、ネットにつながっていない遠方にあるサーバーなので、
> アドバイスいただいてもすぐに試すことができません。
> ご了承ください。
> 現在は、この組み合わせのときだけ実行しないという、対処療法で
> 凌いでいます。
>

______________________________________________________________________
日本PostgreSQLユーザ会 事務局 (担当 高塚) http://www.postgresql.jp
〒171-0022 東京都豊島区南池袋2-32-8 8F SRA OSS 内
TEL: 03-5979-2729 FAX: 03-5979-2702


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




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