[pgcluster: 474] Re: リカバリー中に更新系クエリを発行するとエラーになる
mitani
mitani_hiroshima @ ybb.ne.jp
2004年 8月 10日 (火) 00:17:40 JST
三谷@広島です.
> ・リカバリー処理中に、ロードバランサー経由でinsert文を発行すると、
> エラーになりリカバリーされない.
> #insert文を発行しなければ正常にリカバリーされます.
手元の環境で追試しましたが,同様の現象を確認できませんでした.
> DEBUG(PGRset_queue): msgsnd query[insert into test (name) values('c')]
rtn:0
> DEBUG(PGRreplicate_packet_send): cmdSts=Q
> DEBUG(PGRreplicate_packet_send): cmdType=I
> DEBUG(PGRreplicate_packet_send): port=5432
> DEBUG(PGRreplicate_packet_send): pid=29795
> DEBUG(PGRreplicate_packet_send): from_host=serverA
頂いたログを見ると,レプリケーション中に受けたINSERTのクエリーが
Server Aから来ているようです.
ロードバランサに対してクエリーを投げた場合,リカバリー中であればServer B
がクエリーを受けるはずです.
# 手元の環境では,そうなっていました.
> ERROR(getTransactionTbl): PGRsend_replicate_packet_to_server to master
error
> DEBUG(getTransactionTbl): send_queue return status -1
> ERROR(getTransactionTbl): PGRsend_queue failed
となっていますので,キューに保存しておいたクエリーの送信がエラーになって
いるようです.
リカバリー中にロードバランサにクエリーを投げた手順を教えて頂けませんでしょ
うか.
よろしくお願いします.
--
mitani <mitani_hiroshima @ ybb.ne.jp>
pgcluster メーリングリストの案内