From: Taiki Koshino Date: Mon, 15 Dec 2025 08:21:54 +0000 (+0900) Subject: Add 4.7 release note in Japanese and modify 4.7 release date. X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;ds=inline;p=pgpool2.git Add 4.7 release note in Japanese and modify 4.7 release date. --- diff --git a/doc.ja/src/sgml/filelist.sgml b/doc.ja/src/sgml/filelist.sgml index bd4b3f77d..ea205e2fb 100644 --- a/doc.ja/src/sgml/filelist.sgml +++ b/doc.ja/src/sgml/filelist.sgml @@ -53,6 +53,7 @@ + diff --git a/doc.ja/src/sgml/release-4.7.sgml b/doc.ja/src/sgml/release-4.7.sgml new file mode 100644 index 000000000..9daa945a1 --- /dev/null +++ b/doc.ja/src/sgml/release-4.7.sgml @@ -0,0 +1,524 @@ + + リリース 4.7.0 + + リリース日 + 2025-12-23 + + + + 概要 + + このリリースでは、Pgpool-IIに対して複数の機能強化を行いました。 + 主な改善点として、従来のSlonyモードの廃止、セキュリティの強化、フロントエンド/バックエンドプロトコルの互換性向上、運用性の向上などが含まれます。 + + + + 主な機能の改良は以下の通りです。 + + + + + + + Slonyモードの廃止 + + + + + + logdirパラメータ名をに変更 + + + + + + フロントエンド/バックエンドプロトコルバージョン3.2サポートの追加 + + + + + + watchdogとheartbeat receiverのセキュリティ強化 + + + + + + クライアント情報を表示するためのpcp_proc_infoおよびshow pool_poolsに新しいフィールドの追加と、pgpool_adm_pcp_proc_info拡張関数の追加 + + + + + + オンラインリカバリに使用するデータベースを指定できるrecovery_databaseパラメータの追加 + + + + + + PostgreSQL 18のSQLパーサの導入 + + + + + + + + バージョン4.7への移行 + + + + + + Slonyモードを廃止しました。(Tatsuo Ishii) + + + これまで、Pgpool-IIは、slonyモードをの1つとしてサポートしていました。 + Slony-I + (https://www.slony.info/)。最新のSlony-I は2022 年にリリースされましたが、ユーザーから Slonyモードの廃止について何の報告もありませんでした。 + これは、Slony-Iモードを積極的に利用するユーザーがいないことを示唆しています。 + そこで、Slony-Iのサポートを中止することにしました。 + + + ディスカッション: [pgpool-general: 9486] Retiring slony mode + + + ディスカッション: Re: [pgpool-general: 9486] Retiring slony mode + + + + + + + パラメータのデフォルト値をoffに変更しました。(Tatsuo Ishii) + + + 以前のlog_pcp_processesのデフォルトはonでしたが、管理者がPgpool-IIの状態を監視するためにpcpコマンドを頻繁に使用すると、過剰なログ行が生成される可能性がありました。 + また、このログは一種のデバッグメッセージであるため、デフォルト値をoffに変更することをお勧めします。 + + + ディスカッション: Proposal: change log_pcp_processes default to off + + + + + + + オンラインリカバリに使用するデータベースの設定が可能になりました。 (Bo Peng) + + + 新しい設定パラメータが追加され、オンラインリカバリに使用するデータベースをユーザーが指定できるようになりました。 + 以前は、この値はtemplate1としてハードコードされていました。現在のデフォルトはpostgresに設定されています。 + + + 4.6より前のバージョンから移行するユーザーは、をtemplate1に設定するか、postgresデータベースにオンラインリカバリに必要な拡張機能を作成することで互換性を維持できます。 + + + + + + + logdirをに名称を変更しました。 (Taiki Koshino) + + + 以前は、pgpool_statusおよびロックファイルを保存するディレクトリは、logdirパラメータで指定されていました。 + しかし、logdirという名前は誤解を招く恐れがあったため、このパラメータは、わかりやすくするためにに変更されました。 + デフォルト値は/tmpで、以前のパラメータlogdirと同じです。 + + + 互換性のため、古い logdirパラメータは引き続きサポートされています。 + 古いパラメータlogdirが使用されると、Pgpool-IIはその値をに設定し、警告メッセージを表示します。 + + + + + + + + 変更点 + + + + + + PostgreSQL 18の新しいパーサーをインポートしました。 (Bo Peng) + + + PostgreSQL 18パーサーの主な変更点は以下の通りです。 + + + + + 生成列を仮想列として使用可能 + + + + + DMLクエリのRETURNINGにOLD/NEWのサポートを追加 + + + + + 各種制約の追加(例:WITHOUT OVERLAPS、ENFORCED/NOT ENFORCED) + + + + + + + + + watchdogとheartbeat receiverが、設定されたアドレスのみを受け付けるように制限しました。(Bo Peng) + + + 以前は、watchdogプロセスとheartbeat receiverプロセスはどちらもすべてのインターフェースを受け付けていました。 + セキュリティ上の理由から、現在はhostnameとheartbeat_hostnameで指定されたアドレスのみを受け付けるようになりました。 + + + + + + + watchdogのソースコードを整理しました。 (Tatsuo Ishii) + + + + + + wd_is_upper_ok()は定義されていないため、wd_utils.hから削除しました。 + + + + + wd_get_ping_result()とwd_issue_ping_command()を静的関数にしました。これはwd_ping.cでのみ使用されます。 + + + + + + + + + + ライフチェックがまだ開始されていない場合、警告を出力するようになりました。(Tatsuo Ishii) + + + 現在、ライフチェックは、ライフチェックの準備が整った場合にのみログを出力します。 + 管理者は、ライフチェックの準備が整うまでログファイルを監視し続ける必要があるため、不便です。このコミットにより、ライフチェックプロセスは、ライフチェックが開始されるまで定期的に追加の警告を出力するようになります。 + 警告の間隔は × 10秒です。 + ただし、ライフチェック開始時の初回は、その時点ではライフチェックの準備が整っていない可能性が高いため、警告は出力されません。 + + + + + + + フロントエンド/バックエンドプロトコル3.2のサポートを追加しました。(Tatsuo Ishii) + + + + + NegotiateProtocolVersionメッセージを実装しました。 + + + フロントエンドがプロトコルバージョン3.2(PostgreSQL 18以降または互換クライアント)を要求し、バックエンドがまだ3.0(PostgreSQL 17以前)しかサポートしていない場合に、このメッセージを実装する必要があります。 + + + このコミットは、接続キャッシュが存在しない場合に、バックエンドからフロントエンドへメッセージを転送するようにメッセージを処理します。 + + + コネクションキャッシュが存在する場合、Pgpool-IIはコネクションキャッシュの作成時に保存されたメッセージをフロントエンドに送信します。 + + + ディスカッション: Feature: implement NegotiateProtocolVersion message + + + + + + プロトコルバージョン3.2にBackendKeyDataとクエリキャンセルメッセージを実装しました。 + + + PostgreSQL 18以降、フロントエンド/バックエンドプロトコルが3.2に変更されました。 + この変更により、BackendKeyDataとクエリキャンセルメッセージが修正され、可変長のキャンセルキーが使用できるようになりました。 + + + 3.2プロトコルを使用してPostgreSQLのフロントエンドとバックエンドに接続できるようになりました。 + + +セッション例: +PGMAXPROTOCOLVERSION="3.2" psql -p 11000 test + + + ディスカッション: Implement protocol 3.2 BackendKeyData and cancel request message + + + + + + + + + を追加しました。(Tatsuo Ishii) + + + を追加しました。 + また、とshow pool_poolsに、client_host、client_port、SQLステートメントという新しいフィールドが追加しました。 + これらの追加により、Pgpool-IIのクライアント、Pgpool-II本体、そしてPostgreSQL間の関係を追跡できます。 + + + pcp_proc_infoを使用して最後に実行されたコマンド(ステートメント)を確認できるようになりました。 + 以前は、Pgpool-IIのログを確認しない限り、これは不可能でした。 + + + lipcp.so のバージョンが 2.0.0 から 3.0.0 にアップグレードしました。 + + + + + + + ライフチェックのログを強化しました。 (Tatsuo Ishii) + + + 以前は、がqueryの場合、に「%a」が指定されていると、死活監視はアプリケーション名なしでSQLを出力していました。 + ログの見栄えを良くするために、application_nameにlifecheck_pingを追加しました。 + + + ディスカッション: [pgpool-hackers: 4603] life check log is not nicea + + + + + + + random()をpg_prngのrandom関数に置き換えました。 (Martijn van Duren, Tatsuo Ishii) + + + 以前は、負荷分散ノードの選択にrandom()を使用していました。 + しかし、PostgreSQLにはより優れた乱数生成器pg_prng.cがあります。 + このファイルをインポートするように変更し、pg_prng_double()を使用して[0.0, 1.0]の範囲の乱数を生成します。 + シードはpg_strong_random()を使用して生成されます。 + + + ディスカッション: [pgpool-hackers: 4588] Shuffle random functions and use better random numbers + + + + + + + watchdog受信ソケットのバインドを再試行するようにしました。(Tatsuo Ishii) + + + watchdog受信ソケットのバインドに失敗すると、028.watchdog_enable_consensus_with_half_votesがタイムアウトすることがありました。 + バインドを再試行することでこの問題を軽減するようになりました。 + 現在、再試行は最大5回まで実行され、各再試行ごとに1秒間のスリープが行われます。 + + + + + + + PostgreSQLからlikely/unlikely()を移植しました。(Tatsuo Ishii) + + + likely/unlikely()は正しく使用すれことでパフォーマンス向上に役立つだけでなく、コード内でマクロが時折使用されるため、PostgreSQLからPgpool-IIへのコードの移植が容易になります。 + + + ディスカッション: [pgpool-hackers: 4599] Porting likely/unlikely + + + + + + + PostmasterRandmon()をpg_strong_random()に置き換えました。(Tatsuo Ishii) + + + PostmasterRandmon()はかなり以前(2016年)にPostgreSQLからインポートされました。 + 同年、PostgreSQLはPostmasterRandmon()をpg_strong_random()(src/port/pg_strong_random.c)に置き換えているためこちらに準拠しました。 + + + ディスカッション: [pgpool-hackers: 4588] Shuffle random functions and use better random numbers + + + + + + + .pcppassファイルからの読み取りに失敗した場合、パスワードの入力を求めるプロンプトにフォールバックするようになりました。(Bo Peng) + + + .pcppassファイルからのパスワードの読み取りに失敗した場合、PostgreSQLが.pgpassを処理するのと同様に、ユーザーに入力を求めるプロンプトにフォールバックします。 + + + 以下のメッセージも変更され、 オプションを必要とせずに表示されます。 + +WARNING: password file \"%s\" is not a plain file +WARNING: password file \"%s\" has group or world access; permissions should be u=rw (0600) or less + + + + ディスカッション: [pgpool-hackers: 4589] If reading password from .pcppass file fails, try to read it from prompt. + + + + + + + Pgpool-IIの起動時に不適切なログメッセージを削除またはダウングレードするようになりました。(Tatsuo Ishii) + + + + + + + 設定ファイルにメジャーバージョン情報を追加しました。(Bo Peng) + + + + + + + ドキュメント修正 + + + + + 文字列として扱われていた列挙型パラメータに関するドキュメントを修正しました。(Taiki Koshino) + + + 6つのパラメータのドキュメントを修正しました: + +log_standby_delay +log_backend_messages +wd_lifecheck_method +memqcache_method +disable_load_balance_on_write +backend_clustering_mode + + + + + + + + クエリキャッシュのドキュメントを改善しました。(Tatsuo Ishii) + + + Pgpool-IIは、TIMESTAMP WITH TIMEZONE、TIME WITH TIMEZONE を返す関数を呼び出すクエリのキャッシュを拒否します。 + 同じ名前の関数が複数あり、そのうちの1つがTIMESTAMP WITH TIMEZONE、TIME WITH TIMEZONE を返す場合、Pgpool-II は、そのうちの1つがこれらのデータ型を返さなくてもキャッシュを拒否します。 + そのため、この問題に関するメモと回避策を追加しました。 + + + + + + + テストツール修正 + + + + + でVIPを指定できるようになりました。(Tatsuo Ishii) + + + 新しいオプションを使用して、watchdog_setupでVIPパラメータ(delegate_ip)を指定できるようになりました。 + ipが省略された場合は、127.0.0.1が想定されます。 + vip オプションが指定されていても、Pgpool-IIは実際にはシステムにVIPを設定しません。 + 、は、単にechoコマンドに設定され、ログを出力する以外は何も行いません。 + このオプションは、VIP処理に関するPgpool-IIの動作をトレースすることを目的としています。 + + + ディスカッション: Enhance watchdog_setup + + + + + + + 回帰テスト修正 + + + + + 038.pcp_commandsの回帰テストを修正しました。(Tatsuo Ishii) + + + 以前はテスト結果にローカルホストのIPが表示されていました。 + IPはIPv4またはIPv6のどちらでも構いませんが、テストスクリプトではこれを考慮していませんでした。 + これを修正するため、test.shはIPv4とIPv6のIPをlocalhostに変換するようになりました。 + + + + + + + 029.cert_passphrase回帰テストを安定化しました。 (Tatsuo Ishii) + + + ssl_passphrase_commandが有効でない場合、エラーメッセージは通常「bad decrypt」ですが、「wrong tag」となる場合もあります。 + + + + + diff --git a/doc.ja/src/sgml/release.sgml b/doc.ja/src/sgml/release.sgml index 09de64779..c1b7fedbb 100644 --- a/doc.ja/src/sgml/release.sgml +++ b/doc.ja/src/sgml/release.sgml @@ -92,6 +92,7 @@ For new features, add links to the documentation sections. subsets can easily be copied into back branches. --> + &release-4.7; &release-4.6; &release-4.5; &release-4.4; diff --git a/doc/src/sgml/release-4.7.sgml b/doc/src/sgml/release-4.7.sgml index 7304866c9..552111dae 100644 --- a/doc/src/sgml/release-4.7.sgml +++ b/doc/src/sgml/release-4.7.sgml @@ -2,7 +2,7 @@ Release 4.7.0 Release Date - 2025-12-XX + 2025-12-23