Wednesday, July 10, 2013

pgpool-II new minor versions are out!

pgpool-II new minor versions are out. pgpool-II is a connection pooling/clustering tool for PostgreSQL ONLY. This time we released:
  • 3.2.5 (the latest stable version)
  • 3.1.8
  • 3.0.12
These versions are compatible with each previous versions. As usual, many bug fixes are applied. Here are some important fixes from my point of view:
  •  Fix error when pgpool_regclass is not installed. The query used in pool_has_pgpool_regclass() fails if pgpool_regclass does not exist. The bug was introduced in 3.2.4.
  •  Fix do_query() to not hang when PostgreSQL returns an error. The typical symptom is "I see SELECT is keep on running according to pg_stat_activity".
  • Fix possible deadlock during failover with watchdog enabled.
  • Fix bug with do_query which causes hung in extended protocol. 
  • Fix possible failure of query cache invalidation for DML in transaction.
  • Fix to register pgpool_regclass in pg_catalog schema. This is necessary to deal with clients which restricts schema search path to pg_catalog only. Postgres_fdw is such a client.
  • Fix a segmentation fault that occurs when on memory query cache enabled and the query is issued in extended query mode and the result is too large.
  • Fix a segmentation fault of a child process that occurs when a startup packet has no PostgreSQL user information.
  • Fix to verify the backend node number in pcp_recovery_node. When an invalid number is used, null value is passed as an arguments of recovery script, and this causes a malfunction. In especially, rsync may delete unrelated files in basebackup scripts.
See release notes  for more details. Go to here to download source codes.

Dynamic spare process management in Pgpool-II

Pre-fork architecture in Pgpool-II Pgpool-II uses fixed number of pre-forked child process which is responsible for accepting and handling e...