Обсуждение: Pg_ctl promote -- wait for slave to be promoted fully ?

Поиск
Список
Период
Сортировка

Pg_ctl promote -- wait for slave to be promoted fully ?

От
Manoj Govindassamy
Дата:
Hi team,

I am using PG 9.1.2 and I am promoting a slave to master with the
following command.

pg_ctl promote -D /pat/to/data

Command does return back faster with code 0 ( = success). I assumed the
slave is now the master and issued write operations. But the statement
failed as the DB complained that it can do only read operation.
Postgres.log showed "ready to accept connection" a second later after I
issued the statement. So, my understanding is "pg_ctl promote" is
triggering a slave promote and is "asynchornous".

-- Anyway I can query the state of DB to know its status slave or master
?? So, that i can issue write statements only after I know that the DB
is the new master now

-- Or anyway to make pg_ctl promote to wait till the slave is completely
promoted ?


Any help is appreciated.

--
thanks,
Manoj



Re: Pg_ctl promote -- wait for slave to be promoted fully ?

От
Chris Angelico
Дата:
On Sat, Jul 21, 2012 at 5:28 AM, Manoj Govindassamy
<manoj@nimblestorage.com> wrote:
> -- Anyway I can query the state of DB to know its status slave or master ??
> So, that i can issue write statements only after I know that the DB is the
> new master now

Yep. Use pg_is_in_recovery() - it's false on the master, true on slaves.

http://www.postgresql.org/docs/9.1/static/functions-admin.html#FUNCTIONS-RECOVERY-INFO-TABLE

ChrisA

Re: Pg_ctl promote -- wait for slave to be promoted fully ?

От
Manoj Govindassamy
Дата:
awesome. thanks for the help. Will test it out.


thanks,
Manoj


On 07/20/2012 06:57 PM, Chris Angelico wrote:
> On Sat, Jul 21, 2012 at 5:28 AM, Manoj Govindassamy
> <manoj@nimblestorage.com>  wrote:
>> -- Anyway I can query the state of DB to know its status slave or master ??
>> So, that i can issue write statements only after I know that the DB is the
>> new master now
> Yep. Use pg_is_in_recovery() - it's false on the master, true on slaves.
>
> http://www.postgresql.org/docs/9.1/static/functions-admin.html#FUNCTIONS-RECOVERY-INFO-TABLE
>
> ChrisA
>