From 88ebfda227f09ed152caa264e79dae0a88e928f7 Mon Sep 17 00:00:00 2001 From: Bo Peng Date: Fri, 17 Aug 2018 14:44:05 +0900 Subject: [PATCH] Add Pgpool-II 4.0 release note. --- doc/src/sgml/filelist.sgml | 1 + doc/src/sgml/release-4.0.sgml | 474 ++++++++++++++++++++++++++++++++++ doc/src/sgml/release.sgml | 1 + 3 files changed, 476 insertions(+) create mode 100644 doc/src/sgml/release-4.0.sgml diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index f7e1e7405..a7efd6a7a 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -181,6 +181,7 @@ + diff --git a/doc/src/sgml/release-4.0.sgml b/doc/src/sgml/release-4.0.sgml new file mode 100644 index 000000000..757051789 --- /dev/null +++ b/doc/src/sgml/release-4.0.sgml @@ -0,0 +1,474 @@ + + Release 4.0 + + Release Date + 2018-xx-xx + + + + Overview + + + This version addes support for SCRAM and CERT authentication, + and improves load balancing control. + + + Major enhancements in Pgpool-II 4.0 include: + + + + + + + + Add SCRAM and Certificate authentication support. + + + + + Detecting "false" primary server of PostgreSQL. + + + + + + Improvements to load balancing: + + + + More load balancing fine control after write queries. + + + + + Load balancing control for specific queries. + + + + + Allow to specify load balance weight ratio for load balance parameters. + + + + + + + + + Add last state change timestamp to . + + + + + + Logging client messages. + + + + + + + Major Enhancements + + + + Add support for SCRAM and Certificate + based authentication methods. (Muhammad Usama) + + + + Able to use different auth methods for frontend and backend. + + + Now it is possible to use different authentication methods between + client to Pgpool-II and Pgpool-II to backend. + + + + + + + Able to use MD5 and SCRAM authentication methods + to connect to database without pool_passwd. + + + A new configuration parameter is added. + This parameter enables this config allows the Pgpool-II + to use clear-text-password authentication with frontend clients when + pool_passwd file does not contains the password for the connecting user, + and use that password (provided by client) to authenticate with the backend + using MD5 and/or SCRAM authentication. + + + + + + + New utility to create encrypted passwords. + + + A new utility is added to create AES encrypted passwords. + + + + + + + Allow to specify the AES encrypted password in the pgpool.conf. + + + Allow to specify the AES encrypted password in the + pgpool.conf file for , + , and + users. + + + + + + See for more details. + + + + + + + Add new parameter . (Tatsuo Ishii) + + + If set detach_false_primary = on, detach false primary node. + The default is off. This parameter is only valid in streaming replication mode + and for PostgreSQL 9.6 or after since this feature + uses pg_stat_wal_receiver. + If PostgreSQL 9.5.x or older version is used, no + error is raised, just the feature is ignored. + + + + + + Add parameter to specify + load balance behavior after write queries appear. (Tatsuo Ishii) + + + This parameter allows to specify the behavior when a write query issued. + + + + + + + Allow to specify load balance weight ratio for load balance parameters. (Bo Peng) + + + Add a new feature to allow to specify load balance weight ratio for + and + parameters. + + + You can specify the list of "database-name:node id(ratio)" pairs to + send SELECT queries to a particular backend node for a particular + database connection at a specified load balance ratio. + + + Also you can specify list of "application-name:node id(ratio)" pairs to + send SELECT queries to a particular backend node for a particular client + application connection at a specified load balance ratio. + + + This load balance ratio specifies a value between 0 and 1, + and the default is 1.0. + + + + + + + Add new parameter to enable + specifying SQL patterns lists that should not be load-balanced. (Bo Peng) + + + Specify a semicolon separated list of SQL patterns that + should be sent to primary node only. Regular expression can be + used in SQL patterns. Only Maste Slave mode is supported. + + + + + + + Add new parameter to allow logging client message. (Takuma Hoshiai, Tatsuo Ishii) + + + Set log_client_messages = on, any client messages will be logged without debugging messages. + + + + + + + Allow to display Pgpool-II child process id and + PostgreSQL backend id in . (Tatsuo Ishii) + + + Add --all option to display all child processes and their available connection slots. + + + + + + Add last_status_change column to command. (Tatsuo Ishii) + + + The new column indicates the time when status or role has been changed. + + + See + [pgpool-hackers: 2822] for the reasoning to add the column. + + + + + + Add replication_delay and last_status_change to + . (Tatsuo Ishii) + + + + + + Add role, replication_delay and last_status_change columns to pgpool_adm's + . (Tatsuo Ishii) + + + + + + + Other Enhancements + + + + + Add "-r" option to pgpool_setup to allow use of pg_rewind. (Tatsuo Ishii) + + + With this option, pgpool_setup creates basebackup.sh which tries + pg_rewind first. If it fails, falls back to rsync. + + + Also a new environment variable "USE_PG_REWIND" to pgpool_setup is added. + This brings the same effect as "-r" option is specified. + + + + + + + Add "-s" option to pgpool_setup to support for replication slot. (Tatsuo Ishii) + + + This eliminates the problem when standby is promoted. When a standby + is promoted, it changes the time line in PITR archive, which will stop + other standby if any because of shared archive directory. + + + Also a new environment variable "USE_REPLICATION_SLOT" to pgpool_setup is added. + This brings the same effect as "-s" option is specified. + + + If "USE_REPLICATION_SLOT=true", in streaming replication mode, + use replication slot instead of archive. + + + By setting USE_REPLICATION_SLOT environment variable, + now pgpool_setup in all tests uses replication slots. + This reduces disk space under src/test/regression from + 6.3GB to 5,1GB (1.2GB savings). + + + + + + + Changes + + + + + Add 1st/2nd stage online recovery commands parameter to + get the node number to be recovered. (Tatsuo Ishii) + + + Now 1st/2nd stage online recovery commands accept 5 parameters. + + + See recovery_1st_stage_command and recovery_2nd_stage_command for more details. + + + + + + + Downgrade most of DEBUG1 messages to DEBUG5. (Tatsuo Ishii) + + + This significantly reduces the size of pgpool log when pgpool starts + with -d option (this is equivalent to setting to + debug1). + + + Per discussion + [pgpool-hackers: 2794]. + + + + + + + Bug fixes + + + + + Fix compiler error if HAVE_ASPRINTF is not defined. (Tatsuo Ishii) + + + + + + + Fix configure.ac to remove generating src/sql/pgpool_adm/Makefile.in. (Tatsuo Ishii) + + + + + + + Fix pgpool main process segfault when PostgreSQL 9.5 is used. (Tatsuo Ishii) + + + pgpool_setup -n 3 (or greater) triggers the bug. While recovering node + 2, pgpool main process tried to retrieve version info from backend #2 + even if it's not running. This causes the sefault because connection + was not established yet. The reason why PostgreSQL 9.6 + or later was not suffered from the bug was, PostgreSQL + exited the loop as soon as the server version is higher than 9.5. To fix this, + call to VALID_BACKEND macro was added. + + + + + + + Add missing in pgpool_setup. (Tatsuo Ishii) + + + Per node health_check_timeout was missing and this should had been + there since the per node health check parameter support was added. + + + + + + + Test: Try to reduce the chance of regression 006.memcache failure. (Tatsuo Ishii) + + + It seems the occasional failure of the test is caused by replication + lag. The script tries to read tables from standby but it returns a + table not existing error. So insert pg_sleep() after creation of + tables. + + + + + + + Test: Fix regression test 055.backend_all_down error. (Bo Peng) + + + + + + + Doc: Enhance online recovery document. (Tatsuo Ishii) + + + Clarify that 2nd stage command is only required in native replication mode. + + + + + + + Test: Add new regression test 017.node_0_is_down for node 0 not being primary. (Tatsuo Ishii) + + + + + diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml index 5b55bda9f..11b2031d2 100644 --- a/doc/src/sgml/release.sgml +++ b/doc/src/sgml/release.sgml @@ -72,6 +72,7 @@ For new features, add links to the documentation sections. subsets can easily be copied into back branches. --> +&release-4.0; &release-3.7; &release-3.6; &release-3.5; -- 2.39.5