pgpool-II 4.5.4 Documentation | |||
---|---|---|---|
Prev | Up | Appendix A. Release Notes | Next |
Release Date: 2023-08-17
Install system exit callback only after initialization of shared memory. (Muhammad Usama)
When the on-exit callback gets called because of a failure to acquire shared memory. The cleanup function can produce a segfault while accessing process_info, that lives in shared memory. Although we can also fix this by bailing out from the exit callback when process_info is NULL but installing the function after successful initialization of shared memory is a better approach as the rest of the system always assumes the process_info can never be NULL, and also, there is nothing to clean up before child processes are spawned.
Add schema qualification to some system catalog inquiry functions. (Tatsuo Ishii)
Fix coverity warning. (Tatsuo Ishii)
Fix query cache module assigned time_t value to int32 variable. Change the variable type to int64. Per Coverity. Also use difftime() to calculate time_t difference. This is a recommended practice. https://www.jpcert.or.jp/sc-rules/c-msc05-c.html
Fix find_primary_node_repeatedly doesn't terminate within search_primary_node_timeout. (Bo Peng)
Fix crash when v2 protocol is used.(bug 807)(Tatsuo Ishii)
When read_kind_from_backend() accumulates statistics data, it was not prepared for v2 protocol case.
Bug report and patch from MCanivez. Slightly modified by me.
Fix PREPARE in multi-statement case. (Tatsuo Ishii)
If multi-statement query includes PREPARE in the second or latter position, and subsequent bind message uses the prepared statement, it fails with "unable to bind" error because the prepared statement is not saved in sent messages.
To fix this if such a case found after parsing the statement, create a query context for the named statement and add it to the sent message list.
Discussion: https://www.pgpool.net/pipermail/pgpool-general/2023-July/008931.html
For this new regression test 079..multi_prepare is added.
Fix pgproto to work with bind message using params. (Tatsuo Ishii)
Previously pgproto can only process bind messages without params.
Fix the wrong variable names in replication_mode_recovery_2nd_stage.sample sample script. (Bo Peng)
Fix the missing "logger" application name. (Bo Peng)
Clarify the meaning of stop mode. (Tatsuo Ishii)
Remove the incorrect information from release note 4.2.10. (Bo Peng)
Remove "Fix pgpool_recovery extension script. (Tatsuo Ishii)" from release note 4.2.10.
Enhance SSH public key authentication setting section in "8.2. Pgpool-II + Watchdog Setup Example". (Bo Peng)
Fix load balance mode chapter. (Tatsuo Ishii)
In some places "streaming replication mode" was written as "native replication mode". Also enhance description regarding additional requirements for load balancing in the streaming replication mode. Add some indexes.
Enhance online recovery documentation. (Bo Peng)
Mention that 2nd stage of online recovery does not work properly only for multiple pgpool nodes without watchdog enabled.
Fix occasional 069.memory_leak_extended test failure. (Tatsuo Ishii)
It turned out that reason of the occasional test failure is, pgpool child process is gone before running ps command after pgbench finishes. The cause is a kind mismatch FATAL error, "DISCARD ALL cannot be executed within a pipeline". To fix this, run pgbench in background and get the process size before pgbench finishes.
Discussion: https://www.pgpool.net/pipermail/pgpool-hackers/2023-May/004338.html