public inbox for [email protected]
help / color / mirror / Atom feedFrom: Koshino Taiki <[email protected]>
To: [email protected] <[email protected]>
Cc: [email protected] <[email protected]>
Subject: Re: Problem with pcp_recovery_node
Date: Wed, 29 Oct 2025 06:23:49 +0000
Message-ID: <TYYP286MB29318B7424FA42665B37D00294FAA@TYYP286MB2931.JPNP286.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
Hi,
First, version 4.3.5 is outdated and contains known vulnerabilities, so it is recommended to upgrade to the latest version.
When executing pcp_recovery_node, the error "ERROR: executing recovery, execution of command failed at '1st stage'" occurs, but since the script runs normally when executed directly, it is necessary to check whether CREATE EXTENSION pgpool_recovery has been executed.
For more details about the error, check the PostgreSQL logs.
Taiki Koshino<[email protected]>
SRA OSS K.K.
TEL: 03-5979-2701 FAX: 03-5979-2702
URL: https://www.sraoss.co.jp/
________________________________
差出人: puska <[email protected]>
送信日時: 2025年10月24日 21:43
宛先: [email protected] <[email protected]>
件名: Problem with pcp_recovery_node
Hi,
I'm trying to deploy pgpool2 cluster with the help of instructions form https://www.pgpool.net/docs/pgpool-II-4.3.5/en/html/example-cluster.html of and the thing that's bugging me at the moment is that I'm not able to create new node.
When I start (as root user or postgres user)
pcp_recovery_node -h 192.168.137.150 -p 9898 -U pgpool -n 1
I get:
ERROR: executing recovery, execution of command failed at "1st stage"
DETAIL: command:"/var/lib/postgresql/15/main/recovery_1st_stage"
but when I try calling recovery_1st_stage like:
/var/lib/postgresql/15/main/recovery_1st_stage /var/lib/postgresql/15/main sql2.ztm.hr /var/lib/postgresql/15/main 5432 1 5432 sql1.ztm.hr
the script passes without errors:
recovery_1st_stage: end: recovery_1st_stage is completed successfully
In pgpool2 log I get:
2025-10-24 14:25:03.657: pcp_main pid 328374: DEBUG: I am PCP child with PID:328374 and accept fd:7
2025-10-24 14:25:03.657: pcp_main pid 328374: LOG: forked new pcp worker, pid=338306 socket=7
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: I am PCP worker child with pid:338306
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: initializing backend status
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: received PCP packet
2025-10-24 14:25:03.658: pcp_child pid 338306: DETAIL: PCP packet type of service 'M'
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: PCP: sending md5 salt to client
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: received PCP packet
2025-10-24 14:25:03.658: pcp_child pid 338306: DETAIL: PCP packet type of service 'R'
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: PCP: processing authentication request
2025-10-24 14:25:03.658: pcp_child pid 338306: DETAIL: authentication OK
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: received PCP packet
2025-10-24 14:25:03.658: pcp_child pid 338306: DETAIL: PCP packet type of service 'O'
2025-10-24 14:25:03.658: pcp_child pid 338306: DEBUG: PCP: processing recovery request
2025-10-24 14:25:03.658: pcp_child pid 338306: DETAIL: start online recovery
2025-10-24 14:25:03.658: pcp_child pid 338306: LOG: starting recovering node 1
2025-10-24 14:25:03.677: pcp_child pid 338306: DEBUG: recovery execute checkpoint, start checkpoint
2025-10-24 14:25:03.688: pcp_child pid 338306: DEBUG: recovery execute checkpoint, finish checkpoint
2025-10-24 14:25:03.688: pcp_child pid 338306: LOG: node recovery, CHECKPOINT in the 1st stage done
2025-10-24 14:25:03.688: pcp_child pid 338306: LOG: executing recovery
2025-10-24 14:25:03.688: pcp_child pid 338306: DETAIL: starting recovery command: "SELECT pgpool_rec
overy('/var/lib/postgresql/15/main/recovery_1st_stage', 'sql2.ztm.hr', '/var/lib/postgresql/15/main',
'5432', 1, '5432', 'sql1.ztm.hr')"
2025-10-24 14:25:03.688: pcp_child pid 338306: LOG: executing recovery
2025-10-24 14:25:03.688: pcp_child pid 338306: DETAIL: disabling statement_timeout
2025-10-24 14:25:03.688: pcp_child pid 338306: DEBUG: executing recovery, start recovery
2025-10-24 14:25:03.690: pcp_child pid 338306: DEBUG: sending signal:12 to the parent process with P
ID:328328
2025-10-24 14:25:03.690: pcp_child pid 338306: ERROR: executing recovery, execution of command faile
d at "1st stage"
2025-10-24 14:25:03.690: pcp_child pid 338306: DETAIL: command:"/var/lib/postgresql/15/main/recovery_1st_stage"
I'm not sure if order of arguments from the log is correct, if I run recovery_1st_stage with argument ordered like in the log I'm getting error about host /var/lib/postgresql/15/main not being available.
Is there a way to get stderr from recovery_1st_stage while running it from pcp_recovery_node?
I installed pgpool2 version 4.3.5 from Debian 12 package, PostgreSQL is version 15.
pgpool2 config file attached
--
[Croatian Institute of Emergency Medicine]<http://www.hzhm.hr/;
Željko Puškarić / Voditelj informatičke službe | Head of ICT Sector
[email protected]<mailto:[email protected]> / +385 1 5496-092
Hrvatski zavod za hitnu medicinu | Croatian Institute of Emergency Medicine
Office: +385 1 5496-089 / Fax: +385 1 4677-180
Planinska 13, 10000 Zagreb, Hrvatska | Croatia
www.hzhm.hr<http://www.hzhm.hr/;
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected]
Subject: Re: Problem with pcp_recovery_node
In-Reply-To: <TYYP286MB29318B7424FA42665B37D00294FAA@TYYP286MB2931.JPNP286.PROD.OUTLOOK.COM>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox