[pgpool-general: 5299] Re: 3-node cluster with pgpool replication loses sync after recovery

Giancarlo Martinez giancarlo_martinez at apple.com
Mon Feb 6 06:45:40 JST 2017


Well, I just noticed all the attachments were missing. Ugh. I'll pastebin them this time instead.

pgpool.conf: https://pastebin.apple.com/US7Z7urAKJ <https://pastebin.apple.com/US7Z7urAKJ>
pgpool_remote_start: https://pastebin.apple.com/e5Y6DxIcjB <https://pastebin.apple.com/e5Y6DxIcjB>
pgpool_recovery_pitr: https://pastebin.apple.com/BnVlkOqzdQ <https://pastebin.apple.com/BnVlkOqzdQ>
pgpool_copy_base_backup: https://pastebin.apple.com/m97DjJRrv4 <https://pastebin.apple.com/m97DjJRrv4>
postgresql.conf: https://pastebin.apple.com/OiBG12uW4b <https://pastebin.apple.com/OiBG12uW4b>

> On Jan 25, 2017, at 12:03 PM, Giancarlo Martinez <giancarlo_martinez at apple.com> wrote:
> 
> Hi,
> I'm using pgpool 3.6.1 with pgsql 9.6 with a 3-node cluster. 3 pgpools in watchdog, and 3 pgsql backends.
> 
> With pgpool's replication, we see that after performing online recovery, the node not involved in the process will drop out of the cluster with tuples not matching right after recovery finishes. 
> 
> e.g. db001+db003 alive, recover db002 and db001 is picked to perform the process. db003 will then be degenerated.
> 
> Example: 2017-01-25 19:30:03: pid 288517: LOG:  pgpool detected difference of the number of inserted, updated or deleted tuples. Possible last query was: "UPDATE "worker_logs" SET "state" = $1, "updated_at" = $2 WHERE "worker_logs"."id" = $3"
> 2017-01-25 19:30:03: pid 288517: LOG:  processing command complete
> 2017-01-25 19:30:03: pid 288517: DETAIL:  CommandComplete: Number of affected tuples are: 1 0 1
> 2017-01-25 19:30:03: pid 288517: LOG:  processing ready for query message
> 2017-01-25 19:30:03: pid 288517: DETAIL:  ReadyForQuery: Degenerate backends: 1
> 2017-01-25 19:30:03: pid 288517: LOG:  processing ready for query message
> 2017-01-25 19:30:03: pid 288517: DETAIL:  ReadyForQuery: Number of affected tuples are: 1 0 1
> 2017-01-25 19:30:03: pid 288517: LOG:  received degenerate backend request for node_id: 1 from pid [288517]
> 
> 
> I've attached the scripts we're using for recovery + postgres/pgpool.conf (with pw removed).
> 
> 
> Is a 3-node cluster unsupported? Or is there something wrong with my scripts?
> 
> Let me know if I can send you any more information.
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.sraoss.jp/pipermail/pgpool-general/attachments/20170205/4d2a2d47/attachment-0001.html>


More information about the pgpool-general mailing list