Pgpool-II 4.6.0 文書 | |||
---|---|---|---|
前のページ | 上に戻る | 付録 A. リリースノート | 次のページ |
リリース日: 2025-02-28
このリリースでは、ログ取得やPgpool-IIの管理のための便利な機能を追加しました。 新しいPCPコマンドを使って、Pgpool-IIを再起動したり、シグナルを送ることなくログをローテートできます。 logging_collector関連のパラメータが設定ファイルの再読込で変更できるようになりました。 また、Pgpool-IIを再起動せずにクエリキャッシュを削除するための新しいPCPコマンドが追加されました。 他の新しいクエリキャッシュの機能としては、クエリキャッシュのエントリを強制的に作成すること、指定したクエリキャッシュのエントリを削除できるようになりました。 新しい設定パラメータのlog_backend_messagesにより、Pgpool-IIとPostgreSQLの間の通信を容易に分析することができるようになりました。 SQLパーサは、PostgreSQL 17バージョンと同期していつものように更新されました。 最後に、watchdogのhostnameとheartbeat_hostname設定パラメータでIPv6が使えるようになりました。
主な機能の改良は以下の通りです。
ログのローテーションを指示する新しいPCPコマンド
リロードによるlogging_collector関連のパラメータの変更
クエリキャッシュを削除する新しいPCPコマンド
クエリキャッシュの強制的な作成
新しいPGPOOL SET CACHE DELETEコマンド
新しい設定パラメータlog_backend_messages
PostgreSQL 17のSQLパーサの導入
watchdogのhostnameとheartbeat_hostnameパラメータのIPv6対応
health_check_user、recovery_user、sr_check_user、wd_lifecheck_userのデフォルト値が'nobody'から''(空文字)に変更されました。 4.6ではそれらに適切な値をセットする必要があります。さもなければエラーが生じます。
文字列型の設定パラメータ、たとえばunix_socket_directoriesやpcp_socket_dirで、先頭/末尾の空白を無視するようにしました。
child_life_timeやchild_max_connectionsを設定していると以下のログメッセージが記録されました。これらは正常時のメッセージであるため、DEBUG1にダウングレードされました。
reaper handler reaper handler: exiting normally
ログをローテートするpcp_log_rotateを追加しました。(Bo Peng)
Pgpool-IIの設定を再ロードすることにより、logging_collector関連のパラメータを変更できるようにしました。 (Bo Peng)
以下のlogging_collector関連のパラメータは再ロードで変更できます。
log_truncate_on_rotation
log_directory
log_filename
log_rotation_age
log_rotation_size
log_file_mode
クエリキャッシュを削除するpcp_invalidate_query_cacheを追加しました。 (Tatsuo Ishii)
指定のクエリキャッシュを削除するPGPOOL SET CACHE DELETEコマンドを追加しました。(Tatsuo Ishii)
バックエンドからのプロトコルメッセージをログする新しい設定パラメータのlog_backend_messagesを追加しました。(Tatsuo Ishii)
PostgreSQL 17の新しいパーサを取り込みました。(Bo Peng)
PostgreSQL 17パーサの変更点には以下のものがあります。
- MERGEでNOT MATCHED BY SOURCEとRETURNING句が使えるようになりました。 MERGE INTO ... WHEN NOT MATCHED BY SOURCE ... MERGE INTO ... RETURNING ... - 新しいCOPYオプションのON_ERROR ignoreとLOG_VERBOSITYが追加されました。 COPY ... WITH (ON_ERROR ignore); COPY ... WITH (LOG_VERBOSITY verbose); - すべての列に対して'*'を使ってCOPY FROMオプションのFORCE_NOT_NULLとFORCE_NULLが指定できるようになりました。 COPY ... WITH (FORCE_NOT_NULL *); COPY ... WITH (FORCE_NULL *); - EXPLAINにオプションのSERIALIZEとMEMORYが追加されました。 EXPLAIN (MEMORY) ... EXPLAIN (ANALYZE, SERIALIZE ...) ... - ALTER TABLEでSET STATISTICS DEFAULTを使って指定の列をデフォルトの統計上情報ターゲットにできるようになりました。 ALTER TABLE ... ALTER COLUMN ... SET STATISTICS DEFAULT; - ALTER TABLEで列の生成式を変更できるようになりました。 ALTER TABLE ... ALTER COLUMN ... SET EXPRESSION; - ALTER TABLEで .. SET ACCESS METHODのデフォルトを指定できるようになりました。 ALTER TABLE ... SET ACCESS METHOD new_access_method DEFAULT; - イベントトリガでログインイベントを扱えるようになりました。 CREATE EVENT TRIGGER ... ON login ... - イベントトリガでREINDEXを扱えるようになりました。
パラメータのhostnameとheartbeat_hostnameでIPv6をサポートしました。(Kwangwon Seo)
文字列型の設定パラメータで、先頭/末尾の空白を無視するようにしました。(Bo Peng)
文字列型のパラメータ(たとえばunix_socket_directoriesやpcp_socket_dir)に空白が含まれると、起動に失敗することがありました。
reaper handlerのログをダウングレードしました。(Bo Peng)
以下のメッセージは、たとえばchild_life_timeやchild_max_connectionsの設定で子プロセスが終了する時に現れます。 これらは正常なメッセージなので、DEBUG1にダウングレードしました。
reaper handler reaper handler: exiting normally
拡張問い合わせプロトコルを処理する時の不必要なメモリ獲得を防ぐようにしました。(Tatsuo Ishii) これは、ストリーミングレプリケーションモードに対してのみ関係します。
このリリースでは、他のマイナーリリースと同じバグ修正がすでに適用されています。 これらの修正の詳細については、付録Aを参照してください。