[pgpool-general-jp: 787] pgpool-II 3.0 beta2リリース
Tatsuo Ishii
ishii @ sraoss.co.jp
2010年 8月 25日 (水) 14:38:12 JST
pgpool-IIユーザの皆様
pgpool Development Groupからのお知らせです。
8/18に pgpool-II 3.0 beta1/pgpoolAdmin 3.0 beta1をリリース致しましたが、
現在までに見つかった不具合などを修正して beta2 として本日リリースしま
した。
http://pgfoundry.org/frs/download.php/2781/pgpool-II-3.0-beta2.tar.gz
http://pgfoundry.org/frs/download.php/2782/pgpoolAdmin-3.0-beta2.tar.gz
pgpool-II 3.0 beta1からbeta2への主な変更点は以下の通りです。
- insert_lockが有効で、テーブルにシリアル型が含まれている場合、テーブ
ルロックではなく、該当シーケンスを行ロックするようにしました。以前は
テーブルロックをしていましたが、auto vacuumとロックが衝突したりして
性能が低下する問題がありました(Tatsuo)
- レプリケーションモードで white_function_list と black_function_list
が有効でなかったのを修正しました(Kitagawa)
- insert_lockがチェックするテーブル名において、スキーマを考慮するよう
にしました(Tatsuo)
- バージョン2プロトコルにおいて多くのバグを修正しました(Kitagawa)
- パラレルモードの多くのバグを修正しました(Kitagawa)
- pgpool_switch_xlog がログファイルの存在だけでなく、サイズもチェック
するようになりました(Kitagawa)
- コマンド引数のロングオプションが、getoptを持たないプラットフォームで
も動作するようにしました(Guillaume Lelarge)
pgpoolAdmin 3.0 beta1からbeta2への変更点は以下の通りです。
- 「切り離し」ボタンがノードステータス画面に表示されなくなるバグを修正
しました(Tatsuo)
pgpool-II 3.0の新機能などに関しては重複になりますが、以前のアナウンス
を再掲致します。なお、3.0の正式リリースは9月上旬を予定しております。
--------------------------------------------------------------------
PostgreSQL 9.0のリリースを控え、一足先に 9.0 対応した pgpool-II 3.0の
ベータテストを開始しましたのでお知らせします。
pgpool-II 3.0では、PostgreSQL 9.0の期待の新機能である組み込みレプリケー
ションに完全対応した他、トランザクション内のSELECTが負荷分散できるよう
になるなど、従来のバージョンのPostgreSQLと組み合わせる場合にもメリット
が出るような多くの改良と機能追加が行なわれています。
また、併せて専用GUI管理ツールである pgpoolAdmin も3.0のベータ版を今回
リリース致しました。
今後は、pgpool-IIは3.0を中心に開発を進めて参ります。できるだけ多くの方
にベータテストに参加いただき、3.0系列の完成度を上げる作業にご協力いた
だくようにお願い致します。お気づきの点は、このMLか、pgfoundryのML(英語)
でご連絡下さい。
pgpool-II 3.0 beta1は、PostgreSQL 9.0 beta4のほか、PostgreSQL 8.4や、
それ以前のバージョンとの組み合わせでも動作検証を行なっています。
pgpool-II 3.0 は、以前のバージョンの pgpool-II と互換性ができるだけ保
たれるように作られています。もし非互換部分がありましたらご一報下さい。
付属ユーティリティpcpコマンドの一部で出力フォーマットとが変更されている
ところがあります。また、2.3以前のpgpoolAdmin はpgpool-II 3.0とは組合わ
せての使用はできません。pgpoolAdminも3.0にアップグレードしてください。
ダウンロードは以下から可能です。
http://pgfoundry.org/frs/download.php/2778/pgpool-II-3.0-beta1.tar.gz
http://pgfoundry.org/frs/download.php/2777/pgpoolAdmin-3.0-beta1.tar.gz
以下、リリースノートを添付します。
-------------------------------------------------------------------
3.0(umiyameboshi) 2010/09/xx
このバージョンは3.0系列の最初の版で、2.2系や2.3系からの「メジャーバー
ジョンアップ」にあたります。 PostgreSQL 9.0の新機能であるStreaming
Replication/Hot Standby構成に対応するなど、多くの機能が追加されると共
に、内部構造が整理されて見通しが良くなって保守性が向上しています。
マスタースレーブモード全般で多くの改善がなされています。
* 明示的なトランザクション内のSELECTが負荷分散できるようになりました
* 不必要なDBノードにparse/bindメッセージが送られなくなりロック競合が減りました
* 不必要な内部トランザクションの起動がなくなり、オーバヘッドが軽減しています
* 一時テーブルを意識せずに安全に使えるようになりました
* 書き込みを伴う関数呼び出しを行なうSELECTをマスター(primay)でのみ
実行するように制御できるようになりました
レプリケーションモードにおいても、書き込みを伴う関数呼び出しを行なう
SELECTを負荷分散するかどうかの制御できるようになるなどの改良が加えられ
ています。
新機能
* PostgreSQL 9.0の新機能であるStreaming Replication/Hot
Standby(SR+HS)構成に対応しました(Tatsuo, Kitagawa)。 pgpool-IIは
基本的にはmaster/slave modeとして動作しますが、その際に
"master_slve_sub_mode" という新しい設定項目に"stream"を設定する
ことにより、SR+HS構成に最適な動作をします。たとえば、更新クエリ
はPrimaryサーバにのみ送信し、SELECTはPrimaryとStandbyサーバに負
荷分散することが可能です。そのほか、Standbyサーバをオンラインリ
カバリで復旧したり、PrimaryとStandbyのレプリケーション同期を監視
し、遅れが大きいようならPrimaryにのみSELECTを送信させるようにす
ることも可能です。詳細はStreaming Replicationへの対応"をご覧下さ
い。
o オンラインリカバリがStreaming Replication対応で動作してい
るmaster/slaveモードに対応しました(Tatsuo)
o Streaming Replicationモード用の新しい設定項目
"delay_threshold" が追加され、レプリケーションの遅れが監視で
きるようになりました(Tatsuo)
o show pool_statusで、Streaming Replicationにおけるレプリケー
ションの遅延が確認できるようになりました(Tatsuo)
o Streaming Replicationにおけるレプリケーションの遅延のログ
を制御する新しい設定項目"log_standby_delay"が追加されました
(Tatsuo)
* pcp_proc_infoコマンドの出力結果に、PostgreSQLバックエンドプロセ
スのプロセスIDとフロントエンドからの接続があるかどうかが追加さ
れました(Tatsuo)
* 関数呼び出しを伴うSELECTを制御する設定項目white_function_listと
back_function_listが追加されました(Tatsuo) マスタースレーブモー
ドにおいて、システムカタログを検索するSELECTは、整合性を保つため
に常にマスター(primary)で実行されるようになりました(Tatsuo)
* マスタースレーブモードにおいて、一時テーブルを検索するSELECTは、
整合性を保つために常にマスター(primary)で実行されるようになりま
した(Tatsuo)
* マスタスレーブモードで、明示的なトランザクション内で実行されない
SQLコマンドにおいて、自動的にトランザクションを開始することを止
めました。これは不必要でした。これによって、パフォーマンスが向上
しています(Tatsuo)
* マスタスレーブモードで、明示的なトランザクション内で実行される
SELECTコマンドが負荷分散できるようになりました(Tatsuo, Kitagawa)
* マスタスレーブモードで、必要なDBノードにのみコマンドが送られるよ
うになりました。これにより、たとえばパースコマンドが不必要なDBノー
ドにおいてもロックを取ってしまうようなことがなくなりました
(Tatsuo, Kitagawa)
* pgpoolの起動時に、ステータスファイルを無視するオプションが追加さ
れました(Tatsuo)
* PostgreSQL 9.0のVACUUMの新しい書式をpgpool-IIのパーサがサポート
しました(Tatsuo)
* フェイルオーバ/フェイルバックコマンドで、"%H"という特殊変数が利
用できるようになりました。これは、新しいマスターノードのホスト名
を表します(Tatsuo)
* failover_if_affected_tuples_mismatch という設定項目が追加されま
した(Tatsuo) 従来、レプリケーションモードでUPDATE/DELETEの結果行
数が異なると、トランザクションをアボートしてセッションを強制切断
していました。 failover_if_affected_tuples_mismatch を trueに設
定すると、この現象が起きたときに、不一致のあったDBノードを切り放
して縮退運転に入るようになります。
* レプリケーションモードでDBノード間でUPDATE/DELETEの結果行数の不
一致が検出された際に、各DBノードにおける結果行数がログに記録され
るようになりました(Tatsuo)
* レプリケーションモードとマスタスレーブモードで、md5認証がサポー
トされました(Tatsuo)
* オンラインリカバリで、強制的にフロントエンドへの接続を切断して直
ちにセカンドステージに入ることができるようになりました。そのため
には、client_idle_limit_in_recovery に -1 を設定します(Tatsuo)
* RAWモードにおいて、DBノードが1個だけしか存在しない状態でDBがエラー
を起したためにDBノードを切り放したあとでDBノードが回復した場合に、
pgpool-IIを再起動することになしにDBノードを利用できるようになり
ました(Tatsuo)
* pcpコマンドにおいて、ロングオプションがサポートされました
(Guillaume Lelarge)
* debug_level という設定項目が追加され、pgpool.confの再読み込みに
よってデバッグメッセージの出力をオン/オフできるようになりました
(Tatsuo)
* pgpool.confで、postgresql.confと同じ真偽値表現が利用できるように
なりました。従来は、true/false, 1/0しか使えませんでした
(Kitagawa)
バグ修正
* 型が時刻データ以外の列の場合、デフォルト値にnow()が含まれていて
も書き換えを行なわないようにしました。今までは無条件に書き換えを
行なっていたため、書き換えの結果、INSERT文などがエラーになってい
ました(Tatsuo)
* タイムスタンプの書き換え処理対象となるテーブルのスキーマが無視さ
れないようにしました(Tatsuo)
* pcpコマンドのタイムアウトの扱いにおけるバグが修正されました
(Tatsuo)
* SSLが有効な状態で、大量のデータ通信が起るとハングする問題が修正
されました(Tatsuo)
* DBノードが1個だけしか存在しない状態でDBがエラーを起したた際に、
間違ったDBノードがフェイルオーバするバグを修正しました(Tatsuo)
_______________________________________________
pgpool-general-jp mailing list
pgpool-general-jp @ sraoss.jp
http://www.sraoss.jp/mailman/listinfo/pgpool-general-jp
pgpool-general-jp メーリングリストの案内