<div dir="ltr">Yep, "service pgpool2 force-reload" has corrected this, but I am not happy at all.<div><br></div><div>I thought that the pool status is consistent among the members. If pgpool does the replication, it is a disaster to have different backend sets in the pool members!</div>

<div>No way to keep databases consistent... One pool will write just one backend, the other will write both.</div><div><br></div><div>Attila</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-06-19 12:08 GMT+02:00 Yugo Nagata <span dir="ltr"><<a href="mailto:nagata@sraoss.co.jp" target="_blank">nagata@sraoss.co.jp</a>></span>:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<div class=""><br>
On Thu, 19 Jun 2014 11:05:32 +0200<br>
Attila Heidrich <<a href="mailto:attila.heidrich@gmail.com">attila.heidrich@gmail.com</a>> wrote:<br>
<br>
> Dear Guys,<br>
><br>
> How on earth it is possible, that the pool members reports different<br>
> backend status? It will cause problems very soon I guess.<br>
<br>
</div>It is possible if pgpool reads old backend status info when this starts up.<br>
pgpool will discard the old backend info when starts with -D option.<br>
<br>
However, it would be better pgpools can detect the status mismatch<br>
between them in some way.<br>
<div><div class="h5"><br>
><br>
>     Node: 1<br>
>     Host: <a href="tel:10.100.1.11" value="+3610100111">10.100.1.11</a><br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
>     WD status: Standby (2)<br>
><br>
>     Node: 2<br>
>     Host: 10.100.1.10<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
><br>
> ---<br>
><br>
>     Node: 1<br>
>     Host: 10.100.1.11<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, detached from pool (3)<br>
>     WD status: Standby (2)<br>
><br>
>     Node: 2<br>
>     Host: 10.100.1.10<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
>     WD status: Standby (2)<br>
><br>
> ---<br>
><br>
>     Node: 1<br>
>     Host: 10.100.1.11<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
>     WD status: Standby (2)<br>
><br>
>     Node: 2<br>
>     Host: 10.100.1.10<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
>     WD status: Active (3)<br>
><br>
> ---<br>
><br>
>     Node: 1<br>
>     Host: 10.100.1.11<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
>     WD status: Standby (2)<br>
><br>
>     Node: 2<br>
>     Host: 10.100.1.10<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
>     WD status: Standby (2)<br>
><br>
> ---<br>
><br>
>     Node: 1<br>
>     Host: 10.100.1.11<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, detached from pool (3)<br>
>     WD status: Standby (2)<br>
><br>
>     Node: 2<br>
>     Host: 10.100.1.10<br>
>     Port: 5433<br>
>     Weight: 0.500000<br>
>     Status: Up, in pool (1)<br>
>     WD status: Active (3)<br>
><br>
> I have got five pool members, two of them are the backends themselves.<br>
><br>
> Every pool member has the other 4 as other_pgpool, and<br>
> heartbeat_destination, and the same two backend servers, here is the<br>
> relevant part of the config for all pool members:<br>
><br>
><br>
> nor-openfire-1:<br>
>     backend_hostname1 = '10.100.1.11'<br>
>     backend_port1 = 5433<br>
>     backend_weight1 = 1<br>
>     backend_data_directory1 = '/var/lib/postgresql/9.3'<br>
>     backend_flag1 = 'ALLOW_TO_FAILOVER'<br>
>     backend_hostname2 = '10.100.1.10'<br>
>     backend_port2 = 5433<br>
>     backend_weight2 = 1<br>
>     backend_data_directory2 = '/var/lib/postgresql/9.3'<br>
>     backend_flag2 = 'ALLOW_TO_FAILOVER'<br>
>     fail_over_on_backend_error = on<br>
>     heartbeat_destination0 = 'nor-postgres-2'<br>
>     heartbeat_destination_port0 = 9694<br>
>     other_pgpool_hostname0 = 'nor-postgres-2'<br>
>     other_pgpool_port0 = 5432<br>
>     heartbeat_destination1 = 'nor-jboss-2'<br>
>     heartbeat_destination_port1 = 9694<br>
>     other_pgpool_hostname1 = 'nor-jboss-2'<br>
>     other_pgpool_port1 = 5432<br>
>     heartbeat_destination2 = 'nor-postgres-1'<br>
>     heartbeat_destination_port2 = 9694<br>
>     other_pgpool_hostname2 = 'nor-postgres-1'<br>
>     other_pgpool_port2 = 5432<br>
>     heartbeat_destination3 = 'nor-jboss-1'<br>
>     heartbeat_destination_port3 = 9694<br>
>     other_pgpool_hostname3 = 'nor-jboss-1'<br>
>     other_pgpool_port3 = 5432<br>
> nor-postgres-1:<br>
>     backend_hostname1 = '10.100.1.11'<br>
>     backend_port1 = 5433<br>
>     backend_weight1 = 1<br>
>     backend_data_directory1 = '/var/lib/postgresql/9.3'<br>
>     backend_flag1 = 'ALLOW_TO_FAILOVER'<br>
>     backend_hostname2 = '10.100.1.10'<br>
>     backend_port2 = 5433<br>
>     backend_weight2 = 1<br>
>     backend_data_directory2 = '/var/lib/postgresql/9.3'<br>
>     backend_flag2 = 'ALLOW_TO_FAILOVER'<br>
>     fail_over_on_backend_error = on<br>
>     heartbeat_destination0 = 'nor-postgres-2'<br>
>     heartbeat_destination_port0 = 9694<br>
>     other_pgpool_hostname0 = 'nor-postgres-2'<br>
>     other_pgpool_port0 = 5432<br>
>     heartbeat_destination1 = 'nor-jboss-2'<br>
>     heartbeat_destination_port1 = 9694<br>
>     other_pgpool_hostname1 = 'nor-jboss-2'<br>
>     other_pgpool_port1 = 5432<br>
>     heartbeat_destination2 = 'nor-openfire-1'<br>
>     heartbeat_destination_port2 = 9694<br>
>     other_pgpool_hostname2 = 'nor-openfire-1'<br>
>     other_pgpool_port2 = 5432<br>
>     heartbeat_destination3 = 'nor-jboss-1'<br>
>     heartbeat_destination_port3 = 9694<br>
>     other_pgpool_hostname3 = 'nor-jboss-1'<br>
>     other_pgpool_port3 = 5432<br>
> nor-postgres-2:<br>
>     backend_hostname1 = '10.100.1.11'<br>
>     backend_port1 = 5433<br>
>     backend_weight1 = 1<br>
>     backend_data_directory1 = '/var/lib/postgresql/9.3'<br>
>     backend_flag1 = 'ALLOW_TO_FAILOVER'<br>
>     backend_hostname2 = '10.100.1.10'<br>
>     backend_port2 = 5433<br>
>     backend_weight2 = 1<br>
>     backend_data_directory2 = '/var/lib/postgresql/9.3'<br>
>     backend_flag2 = 'ALLOW_TO_FAILOVER'<br>
>     fail_over_on_backend_error = on<br>
>     heartbeat_destination0 = 'nor-jboss-2'<br>
>     heartbeat_destination_port0 = 9694<br>
>     other_pgpool_hostname0 = 'nor-jboss-2'<br>
>     other_pgpool_port0 = 5432<br>
>     heartbeat_destination1 = 'nor-openfire-1'<br>
>     heartbeat_destination_port1 = 9694<br>
>     other_pgpool_hostname1 = 'nor-openfire-1'<br>
>     other_pgpool_port1 = 5432<br>
>     heartbeat_destination2 = 'nor-postgres-1'<br>
>     heartbeat_destination_port2 = 9694<br>
>     other_pgpool_hostname2 = 'nor-postgres-1'<br>
>     other_pgpool_port2 = 5432<br>
>     heartbeat_destination3 = 'nor-jboss-1'<br>
>     heartbeat_destination_port3 = 9694<br>
>     other_pgpool_hostname3 = 'nor-jboss-1'<br>
>     other_pgpool_port3 = 5432<br>
> nor-jboss-1:<br>
>     backend_hostname1 = '10.100.1.11'<br>
>     backend_port1 = 5433<br>
>     backend_weight1 = 1<br>
>     backend_data_directory1 = '/var/lib/postgresql/9.3'<br>
>     backend_flag1 = 'ALLOW_TO_FAILOVER'<br>
>     backend_hostname2 = '10.100.1.10'<br>
>     backend_port2 = 5433<br>
>     backend_weight2 = 1<br>
>     backend_data_directory2 = '/var/lib/postgresql/9.3'<br>
>     backend_flag2 = 'ALLOW_TO_FAILOVER'<br>
>     fail_over_on_backend_error = on<br>
>     heartbeat_destination0 = 'nor-postgres-2'<br>
>     heartbeat_destination_port0 = 9694<br>
>     other_pgpool_hostname0 = 'nor-postgres-2'<br>
>     other_pgpool_port0 = 5432<br>
>     heartbeat_destination1 = 'nor-jboss-2'<br>
>     heartbeat_destination_port1 = 9694<br>
>     other_pgpool_hostname1 = 'nor-jboss-2'<br>
>     other_pgpool_port1 = 5432<br>
>     heartbeat_destination2 = 'nor-openfire-1'<br>
>     heartbeat_destination_port2 = 9694<br>
>     other_pgpool_hostname2 = 'nor-openfire-1'<br>
>     other_pgpool_port2 = 5432<br>
>     heartbeat_destination3 = 'nor-postgres-1'<br>
>     heartbeat_destination_port3 = 9694<br>
>     other_pgpool_hostname3 = 'nor-postgres-1'<br>
>     other_pgpool_port3 = 5432<br>
> nor-jboss-2:<br>
>     backend_hostname1 = '10.100.1.11'<br>
>     backend_port1 = 5433<br>
>     backend_weight1 = 1<br>
>     backend_data_directory1 = '/var/lib/postgresql/9.3'<br>
>     backend_flag1 = 'ALLOW_TO_FAILOVER'<br>
>     backend_hostname2 = '10.100.1.10'<br>
>     backend_port2 = 5433<br>
>     backend_weight2 = 1<br>
>     backend_data_directory2 = '/var/lib/postgresql/9.3'<br>
>     backend_flag2 = 'ALLOW_TO_FAILOVER'<br>
>     fail_over_on_backend_error = on<br>
>     heartbeat_destination0 = 'nor-postgres-2'<br>
>     heartbeat_destination_port0 = 9694<br>
>     other_pgpool_hostname0 = 'nor-postgres-2'<br>
>     other_pgpool_port0 = 5432<br>
>     heartbeat_destination1 = 'nor-openfire-1'<br>
>     heartbeat_destination_port1 = 9694<br>
>     other_pgpool_hostname1 = 'nor-openfire-1'<br>
>     other_pgpool_port1 = 5432<br>
>     heartbeat_destination2 = 'nor-postgres-1'<br>
>     heartbeat_destination_port2 = 9694<br>
>     other_pgpool_hostname2 = 'nor-postgres-1'<br>
>     other_pgpool_port2 = 5432<br>
>     heartbeat_destination3 = 'nor-jboss-1'<br>
>     heartbeat_destination_port3 = 9694<br>
>     other_pgpool_hostname3 = 'nor-jboss-1'<br>
>     other_pgpool_port3 = 5432<br>
><br>
> Other question:<br>
><br>
> Our servers are connected via two networks. Is it possible to specify a<br>
> pool member with both IP interfaces?<br>
<br>
</div></div>One other pgpool must be specified by single IP or hostname. You can use either<br>
of them. The exception is heartbeat destination; you can specify both IP<br>
as heartbeat_destinationX.<br>
<div class="HOEnZb"><div class="h5"><br>
><br>
> ----------------------------------------------------------------------------------------<br>
> Network #1<br>
>              |                |                  |             |<br>
>         |<br>
>              S1           S2               S3          S4               S5<br>
>              |               |                    |            |<br>
>         |<br>
> ----------------------------------------------------------------------------------------<br>
> Network #2<br>
><br>
> none of the networks are connected with failover connections, both use<br>
> different IP subnets.<br>
><br>
> Regards,<br>
><br>
> Attila<br>
<br>
<br>
</div></div><span class="HOEnZb"><font color="#888888">--<br>
Yugo Nagata <<a href="mailto:nagata@sraoss.co.jp">nagata@sraoss.co.jp</a>><br>
</font></span></blockquote></div><br></div>