Pgpool-II 4.4.10 文書 | |||
---|---|---|---|
前のページ | 上に戻る | 付録 A. リリースノート | 次のページ |
リリース日: 2017-03-17
pcp_promote_nodeを使ってノード0の昇格に失敗する不具合を修正しました。(Yugo Nagata)
失敗したときのエラーメッセージは以下のとおりです。
FATAL: invalid pgpool mode for process recovery request DETAIL: specified node is already primary node, can't promote node id 0
ストリーミングレプリケーションモードでは、Pgpool-IIがプライマリノードを何らかの理由で「スタンバイ」とみなしていました。たとえば、Pgpool-IIが起動中で、pg_ctl promoteを手動で実行したとき、Pgpool-IIはプライマリノードが存在しないと認識します。
この状態の不一致は、pcp_promote_nodeコマンドによって直されるはずですが、昇格させたいノードがマスターノード(最初のアライブノード)である場合、上記のように失敗しました。 失敗した理由は次のとおりです。ステータスを変更する前に、pcp_promote_nodeコマンドがPRIMARY_NODE_IDのノードIDと比較することによって、指定されたノードが既にプライマリであるかどうかをチェックします。ただし、プライマリが存在しない場合Pgpool-IIのビューでは、PRIMARY_NODE_IDが0に設定されます。これはMASTER_NODE_IDと同じです。したがって、マスタノードを昇格させるように指定する場合、pcp_promote_nodeはこのノードが既にプライマリであるとのエラーを返して終了しました。
これを修正するには、pcp_promote_nodeは指定したノードがプライマリーノードであるかどうかをチェックするとき、PRIMARY_NODE_IDではなくREAL_PRIMARY_NODE_IDを使うように修正しました。REAL_PRIMARY_NODE_IDはプライマリが存在しない場合、-1に設定されます。
READMEに最新リリースノートへのリンクを追加しました。(Bo Peng)
特定の場合に、Pgpool-IIが終了したときに共有メモリセグメントを解放しない不具合を修正しました。 (bug 272) (Tatsuo Ishii)
シグナルハンドラがpool_log/pool_errorを呼び出さないように修正しました。(Tatsuo Ishii)
詳しくは[pgpool-hackers: 1950]をご参照ください。
特定に場合にwatchdogがデエスカレーションに失敗する不具合を修正しました。 (bug 249)(Muhammad Usama)
WNOHANGオプションなしでwaitpid()
システムコールを使用するように修正しました。
authentication_timeoutが有効な場合、connection_life_timeが正しく処理されない不具合を修正しました。(Yugo Nagata)
クライアント接続直後に発生しうる認証タイムアウトを修正しました。(Yugo Nagata)