<div dir="ltr"><div>Hi Ishii-San</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 17, 2020 at 2:45 AM Tatsuo Ishii &lt;<a href="mailto:ishii@sraoss.co.jp">ishii@sraoss.co.jp</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Usama,<br>
<br>
Thank you very much!<br>
<br>
BTW, in pgpool-general mailing list, multiple users complain that<br>
if_down_command is not executed when former master watchdog node shuts<br>
dow or is took over. Any suggestion for this?<br>
<br>
<a href="https://www.pgpool.net/pipermail/pgpool-general/2020-September/007323.html" rel="noreferrer" target="_blank">https://www.pgpool.net/pipermail/pgpool-general/2020-September/007323.html</a></blockquote><div><br></div><div>I will look into this in detail and get back on this.</div><div><br></div><div>Best regards</div><div>Muhammad Usama</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
&gt; Hi Ishii-San<br>
&gt; <br>
&gt; Sorry for the delay. I have pushed the documentation updates for the wd_cli<br>
&gt; utility<br>
&gt; <br>
&gt; <a href="https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=904d6facbfd45a53f6ac68dd13aa55cb3705ec75" rel="noreferrer" target="_blank">https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commitdiff;h=904d6facbfd45a53f6ac68dd13aa55cb3705ec75</a><br>
&gt; <br>
&gt; Thanks<br>
&gt; Best Regards<br>
&gt; Muhammad Usama<br>
&gt; <br>
&gt; <br>
&gt; On Wed, Sep 16, 2020 at 3:50 AM Tatsuo Ishii &lt;<a href="mailto:ishii@sraoss.co.jp" target="_blank">ishii@sraoss.co.jp</a>&gt; wrote:<br>
&gt; <br>
&gt;&gt; Hi Usama,<br>
&gt;&gt;<br>
&gt;&gt; Any feedback for this?<br>
&gt;&gt;<br>
&gt;&gt; Best regards,<br>
&gt;&gt; --<br>
&gt;&gt; Tatsuo Ishii<br>
&gt;&gt; SRA OSS, Inc. Japan<br>
&gt;&gt; English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
&gt;&gt; Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.jp</a><br>
&gt;&gt;<br>
&gt;&gt; From: Tatsuo Ishii &lt;<a href="mailto:ishii@sraoss.co.jp" target="_blank">ishii@sraoss.co.jp</a>&gt;<br>
&gt;&gt; Subject: [pgpool-hackers: 3807] Re: [pgpool-committers: 6193] pgpool:<br>
&gt;&gt; Adding new wd_cli utility<br>
&gt;&gt; Date: Tue, 08 Sep 2020 15:17:19 +0900 (JST)<br>
&gt;&gt; Message-ID: &lt;<a href="mailto:20200908.151719.21058270736229900.t-ishii@sraoss.co.jp" target="_blank">20200908.151719.21058270736229900.t-ishii@sraoss.co.jp</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; &gt; Hi Usama,<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Have you committed documentation for this?  I am organizing release<br>
&gt;&gt; &gt; notes for 4.2 now. It&#39;s difficult to add a new feature without<br>
&gt;&gt; &gt; documentations...<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Best regards,<br>
&gt;&gt; &gt; --<br>
&gt;&gt; &gt; Tatsuo Ishii<br>
&gt;&gt; &gt; SRA OSS, Inc. Japan<br>
&gt;&gt; &gt; English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
&gt;&gt; &gt; Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.jp</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; From: Muhammad Usama &lt;<a href="mailto:m.usama@gmail.com" target="_blank">m.usama@gmail.com</a>&gt;<br>
&gt;&gt; &gt; Subject: [pgpool-committers: 6193] pgpool: Adding new wd_cli utility<br>
&gt;&gt; &gt; Date: Mon, 23 Sep 2019 20:43:21 +0000<br>
&gt;&gt; &gt; Message-ID: &lt;<a href="mailto:E1iCVB3-0007dP-8Q@gothos.postgresql.org" target="_blank">E1iCVB3-0007dP-8Q@gothos.postgresql.org</a>&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; Adding new wd_cli utility<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; wd_cli makes it easier to integrate the external health check systems<br>
&gt;&gt; with the<br>
&gt;&gt; &gt;&gt; Pgpool-II. It provides a very convenient and easy to use interface to<br>
&gt;&gt; interact with<br>
&gt;&gt; &gt;&gt; watchdog and perform health check related node operations.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; For example:<br>
&gt;&gt; &gt;&gt; If some external health-check system monitoring the health of the<br>
&gt;&gt; watchdog<br>
&gt;&gt; &gt;&gt; cluster detects the remote node failure. It can use wd_cli utility to<br>
&gt;&gt; inform<br>
&gt;&gt; &gt;&gt; Pgpool-II about that node failure<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;     $wd_cli  --inform DEAD -N &#39;Remote watchdog name&#39;  -p 9001 -m &#39;node<br>
&gt;&gt; 1 failed&#39;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Similarly when the node becomes reachable again<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;     $wd_cli  --inform ALIVE -N &#39;Remote watchdog name&#39;  -p 9001 -m &#39;node<br>
&gt;&gt; 1 found&#39;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; This utility can also be used to get the live information of all nodes.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;     $wd_cli -f simple_conf/watchdog/pgpool_wd1.conf --info -v --all<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;     Total Watchdog nodes configured for lifecheck:    2<br>
&gt;&gt; &gt;&gt;     *****************<br>
&gt;&gt; &gt;&gt;     Node ID:           0<br>
&gt;&gt; &gt;&gt;     Node Status code   4<br>
&gt;&gt; &gt;&gt;     Node Status:       MASTER<br>
&gt;&gt; &gt;&gt;     Node Name:         localhost:9991 Linux localhost.localdomain<br>
&gt;&gt; &gt;&gt;     Node Host:         localhost<br>
&gt;&gt; &gt;&gt;     Node WD Port:      9001<br>
&gt;&gt; &gt;&gt;     Node Pgpool Port:  9991<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;     Node ID:           1<br>
&gt;&gt; &gt;&gt;     Node Status code   7<br>
&gt;&gt; &gt;&gt;     Node Status:       STANDBY<br>
&gt;&gt; &gt;&gt;     Node Name:         localhost:9992 Linux localhost.localdomain<br>
&gt;&gt; &gt;&gt;     Node Host:         localhost<br>
&gt;&gt; &gt;&gt;     Node WD Port:      9002<br>
&gt;&gt; &gt;&gt;     Node Pgpool Port:  9992<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; wd_cli provides many options for node search criteria.<br>
&gt;&gt; &gt;&gt; See wd_cli --help for complete list of options.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; The commit also re-arrange the code related to socket communication and<br>
&gt;&gt; &gt;&gt; watchdog IPC commands and separates the internal and external watchdog<br>
&gt;&gt; &gt;&gt; commands to make the code structure more modular.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; The regression tests and documentation updates are not part of this<br>
&gt;&gt; commit<br>
&gt;&gt; &gt;&gt; and will be taken care of separately.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Branch<br>
&gt;&gt; &gt;&gt; ------<br>
&gt;&gt; &gt;&gt; master<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Details<br>
&gt;&gt; &gt;&gt; -------<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; <a href="https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=6156534a7073bc6446b9bcccc1ed4a846fa82f34" rel="noreferrer" target="_blank">https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=6156534a7073bc6446b9bcccc1ed4a846fa82f34</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Modified Files<br>
&gt;&gt; &gt;&gt; --------------<br>
&gt;&gt; &gt;&gt; configure                                          |   3 +-<br>
&gt;&gt; &gt;&gt; <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>                                       |   2 +-<br>
&gt;&gt; &gt;&gt; src/Makefile.am                                    |   1 +<br>
&gt;&gt; &gt;&gt; src/Makefile.in                                    |  17 +-<br>
&gt;&gt; &gt;&gt; src/include/utils/fe_ports.h                       |  13 +-<br>
&gt;&gt; &gt;&gt; src/include/utils/json_writer.h                    |   2 +-<br>
&gt;&gt; &gt;&gt; src/include/utils/pool_stream.h                    |   7 +-<br>
&gt;&gt; &gt;&gt; src/include/utils/socket_stream.h                  |  36 +<br>
&gt;&gt; &gt;&gt; src/include/watchdog/wd_commands.h                 |  66 ++<br>
&gt;&gt; &gt;&gt; .../{wd_ipc_commands.h =&gt; wd_internal_commands.h}  |  66 +-<br>
&gt;&gt; &gt;&gt; src/include/watchdog/wd_ipc_conn.h                 |  57 ++<br>
&gt;&gt; &gt;&gt; src/include/watchdog/wd_ipc_defines.h              |   2 +-<br>
&gt;&gt; &gt;&gt; src/include/watchdog/wd_json_data.h                |  14 -<br>
&gt;&gt; &gt;&gt; src/include/watchdog/wd_lifecheck.h                |   4 +-<br>
&gt;&gt; &gt;&gt; src/main/pgpool_main.c                             |  10 +-<br>
&gt;&gt; &gt;&gt; src/pcp_con/pcp_worker.c                           |   4 +-<br>
&gt;&gt; &gt;&gt; src/pcp_con/recovery.c                             |   2 +-<br>
&gt;&gt; &gt;&gt; src/protocol/child.c                               |  16 +-<br>
&gt;&gt; &gt;&gt; src/protocol/pool_connection_pool.c                |   4 +-<br>
&gt;&gt; &gt;&gt; src/protocol/pool_process_query.c                  |   8 +-<br>
&gt;&gt; &gt;&gt; src/tools/Makefile.am                              |   7 +-<br>
&gt;&gt; &gt;&gt; src/tools/Makefile.in                              |   7 +-<br>
&gt;&gt; &gt;&gt; src/tools/watchdog/Makefile.am                     |  74 ++<br>
&gt;&gt; &gt;&gt; src/tools/watchdog/Makefile.in                     | 771<br>
&gt;&gt; +++++++++++++++++++++<br>
&gt;&gt; &gt;&gt; src/tools/watchdog/wd_cli.c                        | 749<br>
&gt;&gt; ++++++++++++++++++++<br>
&gt;&gt; &gt;&gt; src/utils/pool_stream.c                            | 138 +---<br>
&gt;&gt; &gt;&gt; src/utils/psprintf.c                               |   4 +-<br>
&gt;&gt; &gt;&gt; src/utils/socket_stream.c                          | 195 ++++++<br>
&gt;&gt; &gt;&gt; src/watchdog/Makefile.am                           |   2 +<br>
&gt;&gt; &gt;&gt; src/watchdog/Makefile.in                           |   3 +<br>
&gt;&gt; &gt;&gt; src/watchdog/watchdog.c                            |  14 +-<br>
&gt;&gt; &gt;&gt; src/watchdog/wd_commands.c                         | 757<br>
&gt;&gt; ++++----------------<br>
&gt;&gt; &gt;&gt; src/watchdog/wd_internal_commands.c                | 496 +++++++++++++<br>
&gt;&gt; &gt;&gt; src/watchdog/wd_ipc_conn.c                         | 282 ++++++++<br>
&gt;&gt; &gt;&gt; src/watchdog/wd_json_data.c                        |  86 ---<br>
&gt;&gt; &gt;&gt; src/watchdog/wd_lifecheck.c                        |  12 +-<br>
&gt;&gt; &gt;&gt; 36 files changed, 2946 insertions(+), 985 deletions(-)<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; pgpool-hackers mailing list<br>
&gt;&gt; &gt; <a href="mailto:pgpool-hackers@pgpool.net" target="_blank">pgpool-hackers@pgpool.net</a><br>
&gt;&gt; &gt; <a href="http://www.pgpool.net/mailman/listinfo/pgpool-hackers" rel="noreferrer" target="_blank">http://www.pgpool.net/mailman/listinfo/pgpool-hackers</a><br>
&gt;&gt;<br>
</blockquote></div></div>