Re: upgrade to repmgr3

From: Ian Barwick <ian(at)2ndquadrant(dot)com>
To: Pekka Rinne <tsierkkis(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: upgrade to repmgr3
Date: 2016-08-04 13:19:22
Message-ID: 93805ebe-af9c-879f-baf3-77a4e8504939@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi

On 08/04/2016 05:57 PM, Pekka Rinne wrote:
> hi!
>
> I have been using postgres 9.4 and repmgr2.0 combination and been doing
> replication (hot standby). Now I'd like to start doing slot based
> replication and have installed repmgr3 and exeuted the provided sql scripts
> and also added use_replication_slots=1 into repmgr.conf.
>
> The question is that what is the correct procedure to switch into using
> slots (max_replication_slots) in this case as the system has been set up
> already without them? Do I have to unregister and re-register all the
> standbys? Hopefully re-clone could be avoided.

No reclone needed.

> What I tried was that I configured max_replication_hosts=5, restarted
> master, created some slots using select * from
> pg_create_physical_replication_slot(<name>), configured one created slot
> into recovery.conf in the slave. What I noticed was that replication seemed
> to be still working after this but in repl_nodes table slot_name remained
> empty. Then I did standby re-register with force and slot_name was filled
> with repmgr_slot_2 value which is not the name I gave for the slot. I think
> repmgr invented this name but in the pg_replication_slots table
> repmgr_slot_2 does not exist. There is only the slot I created myself
> (active=t). So I guess this approach is not quite right.
>
> What if I just skip doing the re-register. Does is matter if slot_name
> remains empty in repl_nodes?

This won't affect replication, however if you attempt any failover actions
using repmgr (e.g. following a new master), it will probably cause problems when
attempting to create a replication slot on the new master.

As a workaround you can manually update the slot name in the repl_nodes table
to match the one you've chosen. We'll update repmgr to better handle this
kind of situation. I don't think we've had this particular use-case before,
so I'll add some notes to the documentation on how best to handle it.

Regards

Ian Barwick

--
Ian Barwick http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2016-08-04 13:56:39 Re: Question about wal files / pg_xlogs
Previous Message Periko Support 2016-08-04 13:01:40 Re: Tunning Server 9.1.