| pgpool-II 4.7.1 Documentation | |||
|---|---|---|---|
| Prev | Up | Appendix A. Release Notes | Next |
Release Date: 2026-02-26
Allow parallel make. (Tatsuo Ishii)
Previously a parallel make failed with:
In file included from parser.c:27:
../../src/include/parser/gramparse.h:33:10: fatal error: gram.h: No such file or directory
33 | #include "gram.h"
Patch is created by anthonyroussel and reviewed by Tatsuo Ishii.
Discussion: Fix parallel build
Add detail log about mismatch between backend_hostname and primary_conninfo host. (Taiki Koshino)
If the backend_hostname set in pgpool.conf does not match the host setting in PostgreSQL's primary_conninfo, the following log message will be output.
sr_check_worker pid 25099: DETAIL: pgpool.conf backend_hostname: "pgpool0" does not match PostgreSQL primary_conninfo host: "pgpool_logtest"
Explicitly stat supported minimum OpenSSL version. (Tatsuo Ishii)
That can be done in configure.ac by using
AC_DEFINE(OPENSSL_API_COMPAT, [0x10002000L],
[Define to the OpenSSL API version in use. This avoids deprecation warnings from newer OpenSSL versions.])
The supported minimum version is 1.0.2, which is identical to PostgreSQL at this point. (Actually the AC_DEFINE is brought in from PostgreSQL). Also this could avoid OpenSSL deprecation warnings if your installed OpenSSL is new, like 3.0. Moreover, add mention to installation document that required minimum version of OpenSSL is 1.0.2.
Fix oversight in check_transaction_state_and_abort(). (Tatsuo Ishii)
The function does not take the case when frontend is NULL into account.
Problem pointed out by Coverity.
Fix walker() functions to return earlier. (Tatsuo Ishii)
Previously walker() functions returned false once it found target
objects. But it is possible to short-circuit the traverse and it
should have been.
Also import comments from PostgreSQL to clarify walker function
design.
Problem reported by liujinyang-highgo and reviewed by Tatsuo Ishii.
Discussion: Improper handling in the function view_walker().
Fix memory leak in scram-sha-256 authentication. (Tatsuo Ishii)
Problem pointed out by Coverity.
Fix to check the return value of malloc(). (Tatsuo Ishii)
create_inet_domain_sockets() forgot to check the return value of
malloc() while allocating memory for socket fds.
Fix health check process to not start. (Tatsuo Ishii)
Previously pgpool_main() did not start a health check process if the
backend node is down. This prevented auto_failback from working.
Pgpool reads status from pool_status file when -D option is not
present. If the status recorded in the file is "down", pgpool will
not start health check process for the node. Since auto_failback is
invoked from health check process, this means that auto_failback does
not work for the backend node.
Fix is, unconditionally start health check process.
Problem reported by Meng Feilong and reviewed by Tatsuo Ishii.
Discussion: Nodes in the down state cannot failback
Fix possible integer overflow. (Tatsuo Ishii)
In pool_write_flush() and pool_flus_it() write(2) is used. write(2)
returns ssize_t and in the code there are some places where the return
value was assigned to an int variable. As a result it was possible
that the return value was evaluated to negative value, which led to an
error.