Pgpool-II 4.5.4 文書 | |||
---|---|---|---|
前のページ | 上に戻る | 付録 A. リリースノート | 次のページ |
リリース日: 2023-05-18
マルチステートメントのクエリを判定するために、psqlscanのソースコードをPgpool-IIにインポートしました。(Tatsuo Ishii)
psqlscanは、PostgreSQLソースツリー内のモジュールです。 これは本質的にPostgreSQL SQLスキャナのサブセットですが、各SQLステートメントの終わりの検出に特化しています。 したがって、これを使用してクエリ文字列内のSQLステートメントの数をカウントできます。
議論: https://www.pgpool.net/pipermail/pgpool-hackers/2023-February/04291.html 議論: https://www.pgpool.net/pipermail/pgpool-hackers/2023-April/004320.html
複数のステートメントを幅広く使用できるようにしました。 (Tatsuo Ishii)
このコミットは、複数のステートメント (マルチステートメント) に関するPgpool-IIの長年の制限を排除しました。
議論: https://www.pgpool.net/pipermail/pgpool-hackers/2023-February/004287.html
内部クエリでスキーマ修飾を使用するように変更しました。(Tatsuo Ishii)
関数やキャストなどの一部のオブジェクトは、「pg_catalog.」スキーマ修飾を使用していませんでした。 これによって直ちにセキュリティ上の懸念が生じるわけではありませんが、スキーマ修飾を使用することは常に良い習慣ですので、変更しました。
prefer_lower_delay_standbyの不具合を修正しました。(bug 798) (Tatsuo Ishii)
クライアントがPgpool-IIに接続すると、スタンバイの1つがロードバランシングノードとして選択されます。 セッションの継続中にスタンバイ遅延がdelay_thresholdを超えた場合、prefer_lower_delay_standbyは遅延が最小のスタンバイノードを新しいロードバランシングノードとして選択し、ターゲットバックエンドをそのノードに設定します。 残念ながら、SELECTクエリに書き込み機能などが含まれているかどうかを確認する前に決定が下されたため、Pgpool-IIはスタンバイで実行できないSELECTを送信していました。 これを修正するために、prefer_lower_delay_standbyの処理を書き込み関数等のチェック後に移動しました。
また、上記のケースを含めるように033.prefer_lower_standby_delay回帰テストも修正しました。
musl libcを使用するシステムでのコンパイルエラーを修正しました。(bug 790) (Tatsuo Ishii)
パッチはleimaohuiによって提供されました。
複数のクエリキャッシュの不具合を修正しました。(Tatsuo Ishii)
議論: https://www.pgpool.net/pipermail/pgpool-hackers/2023-January/004259.html
特殊なケースでsrワーカーが間違ったクエリをスタンバイサーバに送信する不具合を修正しました。(Tatsuo Ishii)
ALWAYS_PRIMARYフラグが設定されている場合、PRIMARY_NODE_IDマクロは、プライマリがダウンしている場合でも、-1ではなくノードIDを返していました。 この場合、ストリーミングレプリケーション遅延をチェックするワーカープロセスは、PostgreSQLのバージョンに応じてSELECT pg_current_wal_lsn()またはSELECT pg_current_xlog_location()をスタンバイに送信し、当然エラーが発生していました。
議論: https://www.pgpool.net/pipermail/pgpool-hackers/2023-February/004279.html
DEALLOCATEによる種類不一致エラーを修正しました。 (bug 780) (Tatsuo Ishii)
以下の条件がすべて満たされた場合、種類不一致エラーが発生していました。
ストリーミングレプリケーションモード
ロードバランスノードがプライマリ以外のノード
PREPAREがマルチステートメントクエリで使用されている
回帰テストのコンパイルエラーを修正しました。(Takuma Hoshiai)
gcc10を使用したタイムスタンプテストでエラーが発生していました。
共有relcacheをコミットする際に、より強力なロックを取得するように修正しました。(Tatsuo Ishii)
show pool_versionで行の説明が2回表示される問題を修正しました。(Tatsuo Ishii)
wd_priorityの説明を追加しました。(Chen Ningwei)
PREPARE/EXECUTE/DEALLOCATEに関する制限を追加しました。(Tatsuo Ishii)
Pgpool-IIで-Dオプションを使用する場合の注意点を追加しました。(Tatsuo Ishii)
「RPMからのインストール」セクションを強化しました。(Bo Peng)
「サーバの準備と運用」の章に「PostgreSQLデータベースのバックアップ」セクションを追加しました。(Tatsuo Ishii)
「Pgpool-II + Watchdogの構築の例」から「-D」起動オプションの設定を削除しました。(Bo Peng)
「制限事項」セクションを修正しました。(Tatsuo Ishii)
SCRAM-SHA-256認証に関する記述を追加
スナップショットアイソレーションモードに関する記述を追加
PostgreSQLノードのステータスが「unknown」と表示される場合の説明を追加しました。(Tatsuo Ishii)
pcp_promote_node実行時に、プロモートするターゲットノードが稼働中の必要であることを記載しました。(Tatsuo Ishii)
AES256をサポートするには--with-opensslオプションが必要であることを記載しました。(Tatsuo Ishii)
.pcppassを使用するには、pcpコマンドの-wオプションが必要であることを記載しました。(Tatsuo Ishii)
「2.8 insert_lockテーブルの作成」セクションを修正しました。(Tatsuo Ishii)
スナップショットアイソレーションモードについても言及する必要があったのに、ネイティブレプリケーションモードについてのみ言及していました。
SHOW POOL_CACHEを強化しました。(Tatsuo Ishii)
設定ファイルの末尾にいくつかのパラメータを追加するようにpgpool_setupを修正しました。(Bo Peng)
071.execute_and_deallocate/test.shをリファクタリングしました。(Tatsuo Ishii)
いくつかの回帰テストを強化しました。(Tatsuo Ishii)
時折発生する005.jdbcテストの失敗を修正しました。(Tatsuo Ishii)