<div dir="ltr">Thank you for the response, Ishii san.<div><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><b>Thanks</b><br></div><i>Gopi</i><br></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jun 2, 2023 at 6:39 AM Tatsuo Ishii <<a href="mailto:ishii@sraoss.co.jp">ishii@sraoss.co.jp</a>> 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">> Thank you for the clarifications.<br>
> <br>
> So my understanding currently is :<br>
> -----------<br>
> 1. database '*primary*' node failure is the event controlling the failover<br>
> process. (executing failover.sh)<br>
<br>
Not only primary, but failure of streaming replication standby<br>
PostgreSQL triggers failover (thus executes failover.sh).<br>
<br>
> 2. Watchdog `*MASTER*` failure only causes the VIP to move to another node.<br>
> That is unless of course watchdog master is also the<br>
> current pgpool primary node, in which case a failover will be triggered.<br>
<br>
In this case one of follower watchdog nodes takes over VIP, and<br>
one of streaming replicatoin standby PostgreSQL servers takes over the<br>
role of streaming replication primary node.<br>
<br>
> 3. *esc.sh* and *desc.sh *only concerns the watchdog MASTER/STANDBY<br>
<br>
Yes.<br>
<br>
> Am I correct?<br>
> <br>
> *Thanks*<br>
> *Gopi*<br>
> <br>
> <br>
> On Mon, May 29, 2023 at 2:10 PM Tatsuo Ishii <<a href="mailto:ishii@sraoss.co.jp" target="_blank">ishii@sraoss.co.jp</a>> wrote:<br>
> <br>
>> >> Hi pgpool experts,<br>
>> >><br>
>> >> Can you please clarify the below?<br>
>> >> *During failover, Is the '*primary*' or '*MASTER*' or '<br>
>> *load_balance_node*<br>
>> >> failure taken into account?*<br>
>> ><br>
>> > It's hard to answer your question as the question is too vague. Anyway I<br>
>> try it...<br>
>> ><br>
>> > - primary failure is taken into account because it triggers failover.<br>
>> >   See<br>
>> <a href="https://www.pgpool.net/docs/44/en/html/runtime-config-failover.html" rel="noreferrer" target="_blank">https://www.pgpool.net/docs/44/en/html/runtime-config-failover.html</a> for<br>
>> more details.<br>
>> ><br>
>> > - MASTER and other watchdog nodes are taken into account in failover.<br>
>> >   See<br>
>> ><br>
>> <a href="https://www.pgpool.net/docs/44/en/html/runtime-watchdog-config.html#CONFIG-WATCHDOG-FAILOVER-BEHAVIOR" rel="noreferrer" target="_blank">https://www.pgpool.net/docs/44/en/html/runtime-watchdog-config.html#CONFIG-WATCHDOG-FAILOVER-BEHAVIOR</a><br>
>> >   for more details.<br>
>> ><br>
>> > - Load balance node is not taken into account in streaming replication<br>
>> mode.<br>
>> >   See note #2 in<br>
>> <a href="https://www.pgpool.net/docs/44/en/html/runtime-config-failover.html" rel="noreferrer" target="_blank">https://www.pgpool.net/docs/44/en/html/runtime-config-failover.html</a> for<br>
>> more details.<br>
>><br>
>> Sorry, I meant "Load balance node is taken into account".<br>
>><br>
>> >><br>
>> >> *Thanks*<br>
>> >> *Gopi*<br>
>> >><br>
>> >><br>
>> >> On Tue, May 16, 2023 at 10:56 AM Gopikrishnan <<br>
>> <a href="mailto:nksgopikrishnan@gmail.com" target="_blank">nksgopikrishnan@gmail.com</a>><br>
>> >> wrote:<br>
>> >><br>
>> >>> Thank you for your response!<br>
>> >>><br>
>> >>> Can you also kindly clarify this:<br>
>> >>>  During failover, Is the '*primary*' or '*MASTER*' or '<br>
>> >>> *load_balance_node* failure taken into account?<br>
>> >>><br>
>> >>> *Thanks*<br>
>> >>> *Gopi*<br>
>> >>><br>
>> >>><br>
>> >>> On Tue, May 16, 2023 at 10:26 AM Bo Peng <<a href="mailto:pengbo@sraoss.co.jp" target="_blank">pengbo@sraoss.co.jp</a>> wrote:<br>
>> >>><br>
>> >>>> Hi,<br>
>> >>>><br>
>> >>>> > Regd. which I couldn't gather much from the docs at:<br>
>> >>>> > <a href="https://www.pgpool.net/docs/pgpool-II-4.0.4/" rel="noreferrer" target="_blank">https://www.pgpool.net/docs/pgpool-II-4.0.4/</a><br>
>> >>>> ><br>
>> >>>> ><br>
>> >>>> >    1. primary<br>
>> >>>> >    2. MASTER<br>
>> >>>> >    3. load_balance_node<br>
>> >>>><br>
>> >>>> 1. primary:<br>
>> >>>>    It is the role of *PostgreSQL* nodes.<br>
>> >>>>    The role of PostgreSQL nodes can be primary or standby<br>
>> >>>>    in streaming replication mode.<br>
>> >>>><br>
>> >>>> 2. MASTER:<br>
>> >>>>    I think you are asking the status name shown<br>
>> >>>>    in the result of pcp_watchdog_info command.<br>
>> >>>>    The status name MASTER/STANDBY is the role of *Pgpool-II* node.<br>
>> >>>>    If you have multiple Pgpool-II nodes using watchdog feature,<br>
>> >>>>    one of them will be elected as MASTER and others will be STANDBY.<br>
>> >>>><br>
>> >>>> 3. load_balance_node<br>
>> >>>>    Pgpool-II supports for load balancing of SELECT queries.<br>
>> >>>>    When a session starts, pgpool will randomly elect one PostgreSQL<br>
>> node<br>
>> >>>>    as the load balance node (load_balance_node) and routes SELECTs to<br>
>> >>>>    the load_balance_node.<br>
>> >>>><br>
>> >>>> On Mon, 15 May 2023 15:54:53 +0530<br>
>> >>>> Gopikrishnan <<a href="mailto:nksgopikrishnan@gmail.com" target="_blank">nksgopikrishnan@gmail.com</a>> wrote:<br>
>> >>>><br>
>> >>>> > Hi folks,<br>
>> >>>> ><br>
>> >>>> > Need your help in clearing a confusion regd. basic terminologies:<br>
>> >>>> ><br>
>> >>>> > Regd. which I couldn't gather much from the docs at:<br>
>> >>>> > <a href="https://www.pgpool.net/docs/pgpool-II-4.0.4/" rel="noreferrer" target="_blank">https://www.pgpool.net/docs/pgpool-II-4.0.4/</a><br>
>> >>>> ><br>
>> >>>> ><br>
>> >>>> >    1. primary<br>
>> >>>> >    2. MASTER<br>
>> >>>> >    3. load_balance_node<br>
>> >>>> ><br>
>> >>>> > I have a pgpool with 3 nodes. I have a confusion between the pgpool<br>
>> >>>> primary and<br>
>> >>>> > the watchdog *MASTER* and the `*load_balance_node*`<br>
>> >>>> ><br>
>> >>>> > In my setup, the pgpool primary node (according to show pool_nodes<br>
>> >>>> output)<br>
>> >>>> > is : *10.108.104.31, *and also the node designated<br>
>> *load_balance_node*.<br>
>> >>>> ><br>
>> >>>> > While the MASTER node, according to pgpool watchdog, is:<br>
>> >>>> *10.108.104.32* And<br>
>> >>>> > the *cluster virtual IP* is attached to this node.<br>
>> >>>> ><br>
>> >>>> > I have the following questions in mind:<br>
>> >>>> ><br>
>> >>>> ><br>
>> >>>> >    1. What do the terms '*primary*' and '*MASTER*' and<br>
>> >>>> *load_balance_node*<br>
>> >>>> >    mean?<br>
>> >>>> >    2. During failover, Is the '*primary*' or '*MASTER*' or '<br>
>> >>>> >    *load_balance_node* failure taken into account?<br>
>> >>>> >    3. What is the difference (or any relation) between the<br>
>> '*primary*'<br>
>> >>>> and '<br>
>> >>>> >    *MASTER*' and *load_balance_node* nodes?<br>
>> >>>> >    4. If the cluster virtual IP is on the non '*primary*' node,<br>
>> >>>> wouldn't it<br>
>> >>>> >    affect the performance of the HA setup?<br>
>> >>>> ><br>
>> >>>> > Below are the outputs for *show pool_nodes *and* watchdog *info:<br>
>> >>>> ><br>
>> >>>> > psql -h delegateIP -p 9999 -U pgpool postgres -c "show pool_nodes"<br>
>> >>>> > Password for user pgpool:<br>
>> >>>> >  node_id |   hostname    | port | status | lb_weight |  role   |<br>
>> >>>> > select_cnt | load_balance_node | replication_delay |<br>
>> >>>> ><br>
>> >>>><br>
>> last_status_change---------+---------------+------+--------+-----------+---------+------------+-------------------+-------------------+---------------------<br>
>> >>>> >  0       | 10.108.104.31 | 5432 | up     | 0.333333  | primary | 0<br>
>> >>>> >      | true              | 0                 | 2023-05-12 12:07:13<br>
>> >>>> >  1       | 10.108.104.32 | 5432 | up     | 0.333333  | standby | 0<br>
>> >>>> >      | false             | 0                 | 2023-05-12 12:07:13<br>
>> >>>> >  2       | 10.108.104.33 | 5432 | down   | 0.333333  | standby | 0<br>
>> >>>> >      | false             | 0                 | 2023-05-12 12:07:13<br>
>> >>>> > (3 rows)<br>
>> >>>> ><br>
>> >>>> > And the Watchdog info:<br>
>> >>>> ><br>
>> >>>> > pcp_watchdog_info -h localhost -vw -U pgpool<br>
>> >>>> > Watchdog Cluster Information<br>
>> >>>> > Total Nodes          : 3<br>
>> >>>> > Remote Nodes         : 2<br>
>> >>>> > Quorum state         : QUORUM EXIST<br>
>> >>>> > Alive Remote Nodes   : 2<br>
>> >>>> > VIP up on local node : NO<br>
>> >>>> > Master Node Name     : <a href="http://vm-104-32.eng.dev.com:9999" rel="noreferrer" target="_blank">vm-104-32.eng.dev.com:9999</a> Linux<br>
>> >>>> <a href="http://vm-104-32.eng.dev.com" rel="noreferrer" target="_blank">vm-104-32.eng.dev.com</a><br>
>> >>>> > Master Host Name     : 10.108.104.32<br>
>> >>>> ><br>
>> >>>> > Watchdog Node Information<br>
>> >>>> > Node Name      : <a href="http://vm-104-31.eng.dev.com:9999" rel="noreferrer" target="_blank">vm-104-31.eng.dev.com:9999</a> Linux<br>
>> <a href="http://vm-104-31.eng.dev.com" rel="noreferrer" target="_blank">vm-104-31.eng.dev.com</a><br>
>> >>>> > Host Name      : <a href="http://vm-104-31.eng.dev.com" rel="noreferrer" target="_blank">vm-104-31.eng.dev.com</a><br>
>> >>>> > Delegate IP    : 10.108.104.34<br>
>> >>>> > Pgpool port    : 9999<br>
>> >>>> > Watchdog port  : 9000<br>
>> >>>> > Node priority  : 1<br>
>> >>>> > Status         : 7<br>
>> >>>> > Status Name    : STANDBY<br>
>> >>>> ><br>
>> >>>> > Node Name      : <a href="http://vm-104-32.eng.dev.com:9999" rel="noreferrer" target="_blank">vm-104-32.eng.dev.com:9999</a> Linux<br>
>> <a href="http://vm-104-32.eng.dev.com" rel="noreferrer" target="_blank">vm-104-32.eng.dev.com</a><br>
>> >>>> > Host Name      : 10.108.104.32<br>
>> >>>> > Delegate IP    : 10.108.104.34<br>
>> >>>> > Pgpool port    : 9999<br>
>> >>>> > Watchdog port  : 9000<br>
>> >>>> > Node priority  : 1<br>
>> >>>> > Status         : 4<br>
>> >>>> > Status Name    : MASTER<br>
>> >>>> ><br>
>> >>>> > Node Name      : <a href="http://vm-104-33.eng.dev.com:9999" rel="noreferrer" target="_blank">vm-104-33.eng.dev.com:9999</a> Linux<br>
>> <a href="http://vm-104-33.eng.dev.com" rel="noreferrer" target="_blank">vm-104-33.eng.dev.com</a><br>
>> >>>> > Host Name      : 10.108.104.33<br>
>> >>>> > Delegate IP    : 10.108.104.34<br>
>> >>>> > Pgpool port    : 9999<br>
>> >>>> > Watchdog port  : 9000<br>
>> >>>> > Node priority  : 1<br>
>> >>>> > Status         : 7<br>
>> >>>> > Status Name    : STANDBY<br>
>> >>>> ><br>
>> >>>> ><br>
>> >>>> ><br>
>> >>>> > *Thanks & Regards*<br>
>> >>>> > *Gopi*<br>
>> >>>><br>
>> >>>><br>
>> >>>> --<br>
>> >>>> Bo Peng <<a href="mailto:pengbo@sraoss.co.jp" target="_blank">pengbo@sraoss.co.jp</a>><br>
>> >>>> SRA OSS LLC<br>
>> >>>> <a href="https://www.sraoss.co.jp/" rel="noreferrer" target="_blank">https://www.sraoss.co.jp/</a><br>
>> >>>><br>
>> >>><br>
>> > _______________________________________________<br>
>> > pgpool-general mailing list<br>
>> > <a href="mailto:pgpool-general@pgpool.net" target="_blank">pgpool-general@pgpool.net</a><br>
>> > <a href="http://www.pgpool.net/mailman/listinfo/pgpool-general" rel="noreferrer" target="_blank">http://www.pgpool.net/mailman/listinfo/pgpool-general</a><br>
>><br>
</blockquote></div>