Pgpool-II 4.0.6 文書 | |||
---|---|---|---|
前のページ | 上に戻る | 付録 A. リリースノート | 次のページ |
リリース日: 2017-09-05
ストリーミングレプリケーションモード/拡張クエリで発生する可能性のあるハングアップを修正しました。 (Tatsuo Ishii)
エラーが発生すると、Pgpool-IIはフロントエンドから送られてきたSyncメッセージを読み取ります。しかし、タイミングによってはまれにSyncメッセージがまだ送出されていないことがあり、syncが送られるまで待つように修正しました。
watchdogが新しいノードを追加しようとした時にmasterに拒否される問題を修正しました。 (Yugo Nagata)
watchdogの間の認証の際に、秒を元にした文字列が使われていたため、watchdogノードの間で秒単位の時刻同期ができていないときに、この問題が発生します。修正は、単に秒を元にした文字列を認証キーに使わないようにしました。
これは3.5.6, 3.6.3で追加された問題です。
Test: 001.load_balance のテストスクリプトを修正しました。(Tatsuo Ishii)
ネイティブレプリケーションモードのみで実行される一部のテストが、ストリーミングレプリケーションモードでも実行されていたので、修正しました。
拡張クエリでslonyモードが動かなくなっていたのを修正しました。(Tatsuo Ishii)
slonyモードの場合、応答がバックエンドから返されたときに、進行中フラグがリセットされず、バックエンドからの次のメッセージ待ち状態になり、ハングアップしていました。
ストリーム書き込みモジュールのバグを修正しました。(Tatsuo Ishii)
要求された長さが残りの書き込みバッファサイズを超えた場合に発生するpool_write_noerror()
の不具合を修正しました。この不具合はバッファオーバーランの問題につながる可能性がありました。
書き込みバッファがいっぱいになると、pool_flush_it()
を呼び出し、バッファをフラッシュし、要求されたデータを直接書き込むように修正しました。
さらに、pool_unread()
のパフォーマンスが向上しました。
Test: レグレッションテストスクリプトを修正しました。(Muhammad Usama)
Doc: ロードバランスに関するドキュメントを修正しました。(Yugo Nagata)
コアダンプが発生する可能性があったのと、一時テーブルの扱いに関するバグを修正しました。(Tatsuo Ishii)
pool_unread()
の不具合を修正しました。(Tatsuo Ishii)
pool_unread()
がrealloc()
を呼び出すときに、バッファサイズが更新されませんでした。これにより、メモリ破損や予期しないデータの読み取りが発生する可能性がありました。
空文字のクエリの処理を修正しました。(bug 328) (Tatsuo Ishii)
空文字のクエリ (空文字列またはコメントクエリ) が送信されると、コマンド完了メッセージがフロントエンドに返されていました。この動作は正しくありません。空文字クエリのレスポンスをフロントエンドに返すように修正しました。
ストリーミングレプリケーションモード/拡張クエリで発生するクエリキャッシュのバグを修正しました。(Tatsuo Ishii)
ストリーミングレプリケーションモード/拡張クエリで発生するメモリリークを修正しました。(bug 324)(Tatsuo Ishii)
Test: テスト 005.jdbc の Java プログラムを修正しました。(Tatsuo Ishii)
workerプロセスが間違った DB ノードをフェイルオーバーさせる不具合を修正しました。 (bug 303) (Tatsuo Ishii)
workerプロセスが間違った DB ノードをフェイルオーバーさせる可能性がありました。原因は、POLL_CONNECTIO構造体のdb_node_idメンバがこのプロセスで初期化されていなかったからです (子プロセスでは適切に初期化されていました)。
この問題を解決するには、ノード ID をセットする関数 pool_set_db_node_id()
を追加し、make_persistent_db_connection()
内で呼び出すように修正しました。
SETコマンド発行時の不要なトランザクションの開始を修正しました。(Tatsuo Ishii)
ヘルスチェックアラームを無効にした状態で Failover()
関数を実行するように修正しました。(Muhammad Usama)
詳細は [pgpool-general: 5621] をご参照ください。
ストリーミングレプリケーションモード/拡張クエリの場合、フロントエンドが 'S' (同期) メッセージを送信する前に、バックエンドからエラーレスポンスを受信するときに発生するハングアップを修正しました。
さらに、以下の修正を行いました。
- ストリーミングレプリケーションモードで ErrorResponse3()
関数が意図的にエラークエリをバックエンドに送信しないように修正しました。
- クエリが進行中でクエリコンテキストが存在する場合のみ、virtual_master_node_idを返すように pool_virtual_master_db_node_id()
関数を修正しました。
配布物にpgpool.serviceが含まれるように修正しました。(Yugo Nagata)
Test: ビルド時のログがファイルに出力されるように修正しました。 (Tatsuo Ishii)
Test: メモリリークのレグレッションテストを追加しました。(Tatsuo Ishii)