From ee3227fda7b6b4cdd5e7094338c167b27c353b54 Mon Sep 17 00:00:00 2001 From: pengbo Date: Fri, 17 Jun 2016 17:56:41 +0900 Subject: [PATCH] Prepare 3.1.19 --- NEWS | 106 +++++++++++++++++++++++++++++++++++++++++ configure | 2 +- configure.in | 2 +- doc/pgpool-ja.html | 116 ++++++++++++++++++++++++++++++++++++++++++++- 4 files changed, 223 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index 2eb1ad935..ad8c22831 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,112 @@ =============================================================================== 3.1 Series (2011/09/08 - ) +=============================================================================== + + 3.1.19 (hatsuiboshi) 2016/06/17 + +* Version 3.1.19 + + This is a bugfix release against pgpool-II 3.1.18. + + __________________________________________________________________ + +* Bug fixes + + - Fix is_set_transaction_serializable() when + SET default_transaction_isolation TO 'serializable'. (Bo Peng) + + SET default_transaction_isolation TO 'serializable' is sent to + not only primary but also to standby server in streaming replication mode, + and this causes an error. Fix is, in streaming replication mode, + SET default_transaction_isolation TO 'serializable' is sent only to the + primary server. + + See bug 191 for related info. + + - Fix Chinese documetation bug about raw mode (Yugo Nagata, Bo Peng) + Connection pool is avalilable in raw mode. + + - Fix confusing comments in pgpool.conf (Tatsuo Ishii) + + - Permit pgpool to support multiple SSL cipher protocols (Muhammad Usama) + + Currently TLSv1_method() is used to initialize the SSL context, that puts an + unnecessary limitation to allow only TLSv1 protocol for SSL communication. + While postgreSQL supports other ciphers protocols as well. The commit changes + the above and initializes the SSLSession using the SSLv23_method() + (same is also used by PostgreSQL). Because it can negotiate the use of the + highest mutually supported protocol version and remove the limitation of one + specific protocol version. + + - If statement timeout is enabled on backend and do_query() sends a (Tatsuo Ishii) + query to primary node, and all of following user queries are sent to + standby, it is possible that the next command, for example END, could + cause a statement timeout error on the primary, and a kind mismatch + error on pgpool-II is raised. + + This fix tries to mitigate the problem by sending sync message instead + of flush message in do_query(), expecting that the sync message reset + the statement timeout timer if we are in an explicit transaction. We + cannot use this technique for implicit transaction case, because the + sync message removes the unnamed portal if there's any. + + Plus, pg_stat_statement will no longer show the query issued by + do_query() as "running". + + See bug 194 for related info. + + - Deal with the case when the primary is not node 0 in streaming replication mode. + (Tatsuo Ishii) + + http://www.pgpool.net/mantisbt/view.php?id=194#c837 reported that if + primary is not node 0, then statement timeout could occur even after + bug194-3.3.diff was applied. After some investigation, it appeared + that MASTER macro could return other than primary or load balance + node, which was not supposed to happen, thus do_query() sends queries + to wrong node (this is not clear from the report but I confirmed it in + my investigation). + + pool_virtual_master_db_node_id(), which is called in MASTER macro + returns query_context->virtual_master_node_id if query context + exists. This could return wrong node if the variable has not been set + yet. To fix this, the function is modified: if the variable is not + either load balance node or primary node, the primary node id is + returned. + + - change the Makefile under the directory src/sql/, that is proposed (Bo Peng) + by [pgpool-hackers: 1611] + + - Fix a posible hang during health checking (Yugo Nagata) + + Helath checking was hang when any data wasn't sent + from backend after connect(2) succeeded. To fix this, + pool_check_fd() returns 1 when select(2) exits with + EINTR due to SIGALRM while health checkking is performed. + + Reported and patch provided by harukat and some modification + by Yugo. Per bug #204. + + backported from 3.4 or later; + https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=ed9f2900f1b611f5cfd52e8f758c3616861e60c0 + + - Fix bug with load balance node id info on shmem (Tatsuo Ishii) + + There are few places where the load balance node was mistakenly put on + wrong place. It should be placed on: ConnectionInfo *con_info[child + id, connection pool_id, backend id].load_balancing_node]. In fact it + was placed on: *con_info[child id, connection pool_id, + 0].load_balancing_node]. + + As long as the backend id in question is 0, it is ok. However while + testing pgpool-II 3.6's enhancement regarding failover, if primary + node is 1 (which is the load balance node) and standby is 0, a client + connecting to node 1 is disconnected when failover happens on node + 0. This is unexpected and the bug was revealed. + + It seems the bug was there since long time ago but it had not found + until today by the reason above. + =============================================================================== 3.1.18 (hatsuiboshi) 2016/04/26 diff --git a/configure b/configure index e06dfcde6..0b734f979 100755 --- a/configure +++ b/configure @@ -3970,7 +3970,7 @@ fi # Define the identity of the package. PACKAGE=pgpool-II - VERSION=3.1.18 + VERSION=3.1.19 cat >>confdefs.h <<_ACEOF diff --git a/configure.in b/configure.in index 0df8eccfd..ec1a76ded 100644 --- a/configure.in +++ b/configure.in @@ -4,7 +4,7 @@ AC_INIT dnl Checks for programs. AC_PROG_CC -AM_INIT_AUTOMAKE(pgpool-II, 3.1.18) +AM_INIT_AUTOMAKE(pgpool-II, 3.1.19) AC_PROG_RANLIB AC_PROG_LIBTOOL diff --git a/doc/pgpool-ja.html b/doc/pgpool-ja.html index 7ee44e2ec..71b482421 100644 --- a/doc/pgpool-ja.html +++ b/doc/pgpool-ja.html @@ -8,7 +8,7 @@ -Last modified: Fri May 16 16:45:48 JST 2014 +Last modified: Fri June 17 16:45:48 JST 2016 @@ -4138,6 +4138,120 @@ pgpool-IIのチュートリアルはここにあ + +

3.1.19 (hatsuiboshi) 2016/06/17

+ + +

概要

+

+このバージョンは 3.1.18 に対するバグ修正リリースです。 +

+ +

バグ修正

+

3.1.18 (hatsuiboshi) 2016/04/26

-- 2.39.5