[pgcluster: 718] Re: pgreplicateが固まります

Seiryu Fumio BX7S-SIRY @ asahi-net.or.jp
2005年 3月 10日 (木) 22:09:47 JST


こんにちは、清流です。

> 清流さんの環境と違うのは,マシンのスペックですね.
> 私の環境はPentium3の800MHz, RAM 512MBという貧弱なマシンです.
> 早いマシンでないと出ない不具合なのかもしれません...

なるほど。
私の環境だけで発生するとなると、Dualプロセッサなのが原因ですかねー。
クラスタ組むのであれば、通常は安いPCマシンを使用しますから、
今まで誰も不具合が出なかったのかもしれません。

> pgFoundryに1.0.9の最新版など,最新版をアップしていますので,
> 念のため,こちらのバージョンでも試して見て頂けませんでしょうか.

はい、1.0.9をインストールして試してみましたが、同じエラーが出ました。
ちょっと気になって、pgreplicate.conf 内のクラスターの順番を逆にしてみたところ、
今度は db-cl1 でのみエラーが起こるようになりました。

さらに 1.3.0c で試してみたのですが、begin; end; は成功しました。
ただ連続insertを db-cl2 から実行したところ、
数百レコードぐらい登録したところで、以下のようなエラーが表示され、
以後insertなどはできませんでした。

  ERROR:  This query is not permitted when all replication servers fell down 

db-rp1 で ps ax を見てみると、pgreplicate はありませんでした。
そのときの pgreplicate のデバッグログを以下に貼り付けます。

db-cl1 からは各種SQLを同時に5つとか実行してみましたが、
問題ありませんでした。

それでは、よろしくお願いします。

------------------------------------------------------------------------------
DEBUG:sem_unlock[1]
DEBUG:replicate_loop():replicate_loop selected
DEBUG:PGRreplicate_packet_send():cmdSts=Q
DEBUG:PGRreplicate_packet_send():cmdType=I
DEBUG:PGRreplicate_packet_send():rlog=0
DEBUG:PGRreplicate_packet_send():request_id=4
DEBUG:PGRreplicate_packet_send():replicate_id=0
DEBUG:PGRreplicate_packet_send():port=5432
DEBUG:PGRreplicate_packet_send():pid=18610
DEBUG:PGRreplicate_packet_send():from_host=db-cl2
DEBUG:PGRreplicate_packet_send():dbName=test
DEBUG:PGRreplicate_packet_send():userName=root
DEBUG:PGRreplicate_packet_send():recieve sec=1110455223
DEBUG:PGRreplicate_packet_send():recieve usec=761247
DEBUG:PGRreplicate_packet_send():query_size=70
DEBUG:PGRreplicate_packet_send():query=INSERT INTO session_id VALUES ( 'g-3', 'aaa', '192.168.0.1', 1000, 1 )
DEBUG:sem_lock[1]
DEBUG:PGRreturn_result():PGRreturn_result[3,1110455223,742133,230,1]
DEBUG:PGRreturn_result():wait for answer
DEBUG:send_sync_data():sync_command(SELECT PGR_SYSTEM_COMMAND_FUNCTION(3,1110455223,742133,230,1) )
DEBUG:answer[PGR_QUERY_DONE_NOTICE_CMD]
DEBUG:read_answer():QUERY DONE
DEBUG:PGRreturn_result():status of PGRreturn_result[0]
DEBUG:sem_unlock[1]
DEBUG:replicate_loop():replicate_loop selected
DEBUG:PGRreplicate_packet_send():cmdSts=Q
DEBUG:PGRreplicate_packet_send():cmdType=I
DEBUG:PGRreplicate_packet_send():rlog=0
DEBUG:PGRreplicate_packet_send():request_id=228
DEBUG:PGRreplicate_packet_send():replicate_id=0
DEBUG:PGRreplicate_packet_send():port=5432
DEBUG:PGRreplicate_packet_send():pid=17874
DEBUG:PGRreplicate_packet_send():from_host=db-cl1
DEBUG:PGRreplicate_packet_send():dbName=test
DEBUG:PGRreplicate_packet_send():userName=root
DEBUG:PGRreplicate_packet_send():recieve sec=1110455223
DEBUG:PGRreplicate_packet_send():recieve usec=780622
DEBUG:PGRreplicate_packet_send():query_size=72
DEBUG:PGRreplicate_packet_send():query=INSERT INTO session_id VALUES ( 'b-227', 'aaa', '192.168.0.1', 1000, 1 )
DEBUG:sem_lock[1]

 ok. stop all child processes

 ok. stop all child processes

 ok. stop all child processes

 ok. stop all child processes
.......
 ok. stop all child processes
------------------------------------------------------------------------------

----
Seiryu Fumio <BX7S-SIRY @ asahi-net.or.jp>



pgcluster メーリングリストの案内