[pgsql-jp: 41228] Re: PostgreSQL 9.1.2 でレプリケーション競合エラーについて

kasaharatt @ nttdata.co.jp kasaharatt @ nttdata.co.jp
2012年 10月 2日 (火) 14:29:25 JST


笠原です。

> > ERROR:  クライアント接続に想定外のEOFがありました
> > 詳細:  符号化方式"UTF8"で無効なバイトシーケンスです: 0x8e
> UTF8にマッピング不可能な文字コードを扱おうとしているように見えます。
> SJISあたりのデータを、client_encoding=UTF8の状況下で挿入したりしていませんか?
> 
> 扱うデータのエンコーディングに合わせてclient_encodingを指定してみて下さい。
すいません、これは違いそうです。
忘れてくださいませ・・


> -----Original Message-----
> From: pgsql-jp-bounces @ ml.postgresql.jp
> [mailto:pgsql-jp-bounces @ ml.postgresql.jp] On Behalf Of
> kasaharatt @ nttdata.co.jp
> Sent: Tuesday, October 02, 2012 1:55 PM
> To: tmasuda @ mitcc.biz; pgsql-jp @ ml.postgresql.jp
> Subject: [pgsql-jp: 41227] Re: PostgreSQL 9.1.2 でレプリケーション競合
> エラーについて
> 
> 笠原と申します。
> 
> > 【エラーメッセージ】
> > ERROR:  リカバリーで競合が発生したためステートメントをキャンセルして
> います
> > 詳細:  削除されるべきバージョンの行をユーザクエリが参照しなければな
> らなかった可能性がありました。
> こちらは、マスタ側にてVACUUMやHOTでクリーンナップされた古い行を、スタ
> ンバイで参照していた
> 影響で出ていると思います。
> # 通常のクエリの結果以外にも、メンテナンスの結果もレプリケーションでス
> タンバイに流されます。
> 競合については下記のページを参照してください。
> http://www.postgresql.jp/document/9.1/html/hot-standby.html
> 
> 以下のパラメータ値を引き上げてみて下さい。値は調整が必要なため、まずは
> 100程度から開始して、様子見しつつ増減すると良いかもしれません。
> vacuum_defer_cleanup_age
> 
> これは、マスタ側にて通常クリーンナップされる不要領域を、意図的に残存さ
> せておく
> 際に制御します。これにより、マスタでは通常より不要領域が残りやすくなり
> ますが
> クリーンナップ処理とスタンバイの参照が競合する確率は減らせます。
> 
> 詳しくは下記のページを参照してください。
> http://www.postgresql.jp/document/9.1/html/runtime-config-replication.
> html#RUNTIME-CONFIG-REPLICATION-MASTER
> 
> > ERROR:  クライアント接続に想定外のEOFがありました
> > 詳細:  符号化方式"UTF8"で無効なバイトシーケンスです: 0x8e
> UTF8にマッピング不可能な文字コードを扱おうとしているように見えます。
> SJISあたりのデータを、client_encoding=UTF8の状況下で挿入したりしていま
> せんか?
> 
> 扱うデータのエンコーディングに合わせてclient_encodingを指定してみて下
> さい。
> 
> > -----Original Message-----
> > From: pgsql-jp-bounces @ ml.postgresql.jp
> > [mailto:pgsql-jp-bounces @ ml.postgresql.jp] On Behalf Of Tsuyoshi Masuda
> > Sent: Tuesday, October 02, 2012 11:02 AM
> > To: pgsql-jp @ ml.postgresql.jp
> > Subject: [pgsql-jp: 41226] PostgreSQL 9.1.2 でレプリケーション競合エ
>> > ーについて
> >
> > いつも大変お世話になっております。MITCC増田と申します。
> >
> > PostgreSQL 9.1.2(centos版) のレプリケーション環境にて次のような
> > エラーメッセージが頻繁にログに出力され、データ取得できない問題があり
>> > す。
> > どなたか回避方法をご存じの方がいらっしゃいましたら、
> > ご教示頂けませんでしょうか?
> >
> > ちなみに、pg_basebackupで最新化した直後は、
> > しばらくこのエラーは発生しません。
> >
> > 【エラーメッセージ】
> > ERROR:  リカバリーで競合が発生したためステートメントをキャンセルして
>> > ます
> > 詳細:  削除されるべきバージョンの行をユーザクエリが参照しなければな
>> > なかっ
> > た可能性がありました。
> >
> > ERROR:  クライアント接続に想定外のEOFがありました
> > 詳細:  符号化方式"UTF8"で無効なバイトシーケンスです: 0x8e
> >
> > 【環境】
> > [マスタ]->[スレーブ]
> >
> > 【マスタ側設定】
> > postgresql.conf
> > #-----------------------------
> > # REPLICATION OPTIONS MASTER
> > #-----------------------------
> > wal_level = hot_standby
> > archive_mode = off
> > wal_keep_segments = 32
> > max_wal_senders = 4
> > application_name = 'pg_master_db'
> >
> > 【スレーブ側設定】
> > postgresql.conf
> > #----------------------------
> > # REPLICATION OPTIONS SLAVE
> > #----------------------------
> > wal_level = hot_standby
> > archive_mode = off
> > wal_keep_segments = 32
> > max_wal_senders = 4
> > application_name = 'pg_slave_db'
> > hot_standby = on
> >
> > recovery.conf
> >
> > #----------------------------
> > # REPLICATION OPTIONS
> > #----------------------------
> > standby_mode = 'on'
> > primary_conninfo = 'host=pg_master_db port=5432
> > application_name=pg_slave_db'
> >
> > 以上、宜しくお願い致します。
> >
> >



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