[Pgpool-general] pgpool-II 2.2 RC2 released

Jaume Sabater jsabater at gmail.com
Mon Feb 23 08:34:56 UTC 2009


On Mon, Feb 23, 2009 at 5:49 AM, Tatsuo Ishii <ishii at sraoss.co.jp> wrote:

> pgpool-II 2.2 RC2 released.

[..]

> 2009-02-20 10:34  t-ishii
>
>        * pool_process_query.c: Fix pool_send_frontend_exits() so that it
>          checks the connection to backend if it actually exists. This is
>          needed, for example, in the final stae of online recovery. pgpool
>          child holds 1 connection to a backend. After failback one more
>          backend added but there's no connection to the backend.

Okay, so I downloaded pgpool-II 2.2 RC2 and compiled it. Stopped my
cluster, installed the new version and started the cluster again. At
this moment only master node was active (PostgreSQL on the second node
was stopped on purpose).

Users started using the cluster again as soon as it became active
(developers, actually). First thing I tried was to do an online
recovery of my slave node (number 1), so I did:

$ pcp_recovery_node 5 postgresql 9898 root <password> 1

This is what pgpool-II left on the syslog:

Feb 23 09:22:35 pgsql1 pgpool: LOG:   pid 1155: starting recovering node 1
Feb 23 09:22:36 pgsql1 pgpool: LOG:   pid 1155: CHECKPOINT in the 1st
stage done
Feb 23 09:22:36 pgsql1 pgpool: LOG:   pid 1155: starting recovery
command: "SELECT pgpool_recovery('base-backup',
'pgsql2.freyatest.domain', '/var/lib/postgre
sql/8.3/main')"
Feb 23 09:22:36 pgsql1 pgpool[1255]: Executing base-backup as user postgres
Feb 23 09:22:36 pgsql1 pgpool[1256]: Executing pg_start_backup
Feb 23 09:22:36 pgsql1 pgpool[1259]: Creating file recovery.conf
Feb 23 09:22:36 pgsql1 pgpool[1260]: Rsyncing directory base
Feb 23 09:27:44 pgsql1 pgpool[1319]: Rsyncing directory global
Feb 23 09:27:44 pgsql1 pgpool[1323]: Rsyncing directory pg_clog
Feb 23 09:27:44 pgsql1 pgpool[1326]: Rsyncing directory pg_multixact
Feb 23 09:27:44 pgsql1 pgpool[1329]: Rsyncing directory pg_subtrans
Feb 23 09:27:44 pgsql1 pgpool[1333]: Rsyncing directory pg_tblspc
Feb 23 09:27:44 pgsql1 pgpool[1336]: Rsyncing directory pg_twophase
Feb 23 09:27:45 pgsql1 pgpool[1339]: Rsyncing directory pg_xlog
Feb 23 09:27:55 pgsql1 pgpool[1344]: Rsyncing file recovery.conf (with
source deletion)
Feb 23 09:27:55 pgsql1 pgpool[1347]: Executing pg_stop_backup
Feb 23 09:27:55 pgsql1 pgpool: LOG:   pid 1155: 1st stage is done
Feb 23 09:27:55 pgsql1 pgpool: LOG:   pid 1155: starting 2nd stage
Feb 23 09:28:25 pgsql1 pgpool: LOG:   pid 1186: pool_process_query:
child connection forced to terminate due to
client_idle_limit_in_recovery(30) reached
Feb 23 09:28:26 pgsql1 pgpool: LOG:   pid 1193: pool_process_query:
child connection forced to terminate due to
client_idle_limit_in_recovery(30) reached
Feb 23 09:28:26 pgsql1 pgpool: LOG:   pid 1165: pool_process_query:
child connection forced to terminate due to
client_idle_limit_in_recovery(30) reached
Feb 23 09:28:28 pgsql1 pgpool: ERROR: pid 1155:
wait_connection_closed: existing connections did not close in 30 sec.
Feb 23 09:28:28 pgsql1 pgpool: ERROR: pid 1155: start_recovery:
timeover for waiting connection closed

End of the story. :'(

-- 
Jaume Sabater
http://linuxsilo.net/

"Ubi sapientas ibi libertas"


More information about the Pgpool-general mailing list