[pgpool-general: 2830] backend_flag for streaming replication

Bruce McAlister bruce.mcalister at blueface.com
Thu May 15 22:10:25 JST 2014


Hi All,

We are currently testing a postgresql cluster and pgpool cluster. I 
would just like to clarify the backend_flag parameter suitable for this 
setup.

The postgresql cluster is managed as a pacemaker cluster resource using 
pgsql resource agent, this manages the startup/shutdown/failover of the 
postgresql master instace and synchronous slaves. The postgresql version 
is 9.3.4 and is configured in streaming replication mode.

The pgpool cluster is setup using the pgpool-ii-ha resource agent (v2.2) 
which is also magaed by pacemaker.

I have been reading the pgpool doc's and it appears that the 
'DISALLOW_TO_FAILOVER' parameter is the recommended setting for 
backend_flag for a host definition. I presume that this is because 
pgpool will not need to perform any sort of recovery operations in case 
a postgresql node failed.

If I set the DISALLOW_TO_FAILOVER parameter, will pgpool continue to 
probe for the new master if there was a failure. For example, if db node 
0 was master and db node 1 & 2 were slaves, then postgresql fails on the 
master node, the cluster promotes db node 1 as the new master, will 
pgpool reconnect the sessions and active db node 1 as the new write master.

Currently with the testing we have done thus far, pgpool is doing this 
correctly, but I have just noticed that my backen_flag setting is 
'ALLOW_TO_FAILOVER' so pgpool is firing it's recovery steps. 
Additionally, in this mode, I need to pcp_attach_node once the failed db 
node is recovered.

How does pgpool handle this scenario when DISALLOW_TO_FAILOVER is the 
parameter in use? Do I also need to run pcp_attach_node in  this mode if 
the system failes over a db node?

Your thoughts and comments are appreciated :)

Thanks
Bruce


More information about the pgpool-general mailing list