Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wCmzR-002JJl-0l for pgpool-hackers@arkaria.postgresql.org; Tue, 14 Apr 2026 23:16:17 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wCmzO-00DRUk-25 for pgpool-hackers@arkaria.postgresql.org; Tue, 14 Apr 2026 23:16:15 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wCmzO-00DRUd-18 for pgpool-hackers@lists.postgresql.org; Tue, 14 Apr 2026 23:16:15 +0000 Received: from meldrar.postgresql.org ([2a02:c0:301:0:ffff::31]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wCmzM-000000012wM-3vQl for pgpool-hackers@lists.postgresql.org; Tue, 14 Apr 2026 23:16:14 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=postgresql.org; s=20171124; h=Content-Transfer-Encoding:Content-Type: Mime-Version:References:In-Reply-To:From:Subject:Cc:To:Message-Id:Date:Sender :Reply-To:Content-ID:Content-Description; bh=mDPrS3SRCZC/MMnNUikeRsbEZl16i3Vhv9TL+mHDnao=; b=SPNyog2x2BDP7hjb6CGL/8pn9v MkpKWNpjoNjtWtd2Sl8ZjN5SSXyzuRIttTcpputvR/H6GlB0KHHwQ5k2MDOznOjMCjADamk+LVf3n fcCJHMXUYx8wboVj4ebiap+HWRP7JiN2dQ8H1EfTYU+Oiu0n8nwqxLjbojgUn1NQftA9LCtgj5hWT EBSjvtw70ypyaLO221tmwPaJro9Mpg2r+DF1Pvg+gajqpUA2ALkGNTI6uh2PnUOnLs9DP+8jUuk3A slkOK0/in3hrt+F+7SM7QY51sbRZZyQeUuYNz6tUVHrUPMuRYr7SuOMEeGU0uD8EKlsmOqC3lXa1P 7SUQCxpg==; Received: from [2409:11:4120:300:56d1:29d:9ca8:381a] (helo=localhost) by meldrar.postgresql.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wCmzK-002u15-0E; Tue, 14 Apr 2026 23:16:12 +0000 Date: Wed, 15 Apr 2026 08:16:01 +0900 (JST) Message-Id: <20260415.081601.1744698268968717621.ishii@postgresql.org> To: koshino@sraoss.co.jp Cc: pgpool-hackers@lists.postgresql.org Subject: Re: Proposal: Add lifecheck started status to pcp_watchdog_info. From: Tatsuo Ishii In-Reply-To: References: X-Mailer: Mew version 6.8 on Emacs 29.3 Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Host-Lookup-Failed: Reverse DNS lookup failed for 2409:11:4120:300:56d1:29d:9ca8:381a (failed) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Thank you for the patch! > Hi, > This patch adds a new field, "Lifecheck Started", to the pcp_watchdog_info output. > Currently, users need to inspect logs to verify whether the lifecheck has started on each node. > This change allows the status to be checked directly from a single command, making it easier to verify behavior and perform regression testing. > For example: > > $ pcp_watchdog_info -h localhost -p 9898 -U pgpool -v > Password: > Watchdog Cluster Information > Total Nodes : 3 > Remote Nodes : 2 > Member Remote Nodes : 2 > Alive Remote Nodes : 2 > Nodes required for quorum: 2 > Quorum state : QUORUM EXIST > Local node escalation : YES > Leader Node Name : server1:9999 Linux server1.localdomain > Leader Host Name : server1 > > Watchdog Node Information > Node Name : server1:9999 Linux server1.localdomain > Host Name : server1 > Delegate IP : 192.168.56.150 > Pgpool port : 9999 > Watchdog port : 9000 > Node priority : 1 > Status : 4 > Status Name : LEADER > Membership Status : MEMBER > Lifecheck Started : YES This will make admin's lifer easier. So I took a look at the patch. > From f353f922222f70fad1d104f76adca1010578d40a Mon Sep 17 00:00:00 2001 > From: Taiki Koshino > Date: Thu, 26 Mar 2026 17:04:37 +0900 > Subject: [PATCH v9] Add Lifecheck Started status to pcp_watchdog_info output. > > This commit enhances the pcp_watchdog_info command by adding a new field, Lifecheck Started, > which indicates whether lifecheck has been started on each watchdog node (NO: not started, YES: started). > > This allows users to check the lifecheck status directly from the command output without inspecting logs. > > Add a lifecheck_started member to WatchdogNode. When the lifecheck process > detects that lifecheck has started, it notifies the watchdog process, which > sets lifecheck_started to true. When set to true, the status is propagated > across the cluster. > > Add a lifecheck_status field to pcp_watchdog_info so that the latest > lifecheck_started status is displayed when the command is called. Commit message itself looks good except some lines are too long. It would be better to fold lines so that they are no longer 78 chars or so. diff --git a/src/include/pcp/pcp.h b/src/include/pcp/pcp.h index e40b96bdc..15a4abb01 100644 --- a/src/include/pcp/pcp.h +++ b/src/include/pcp/pcp.h @@ -48,6 +48,8 @@ typedef struct PCPWDNodeInfo int wd_priority; /* node priority in leader election */ int pgpool_port; /* pgpool port */ char delegate_ip[WD_MAX_HOST_NAMELEN]; /* delegate IP */ + bool lifecheck_started; /* True means lifecheck is started, + * false means lifecheck is not started */ The comment for lifecheck_started is a little bit redundant. What about something like /* True if lifecheck has started */"? Rest of the patch looks good to me. Regards, -- Tatsuo Ishii SRA OSS K.K. English: http://www.sraoss.co.jp/index_en/ Japanese:http://www.sraoss.co.jp