From: | John Scalia <jayknowsunix(at)gmail(dot)com> |
---|---|
To: | Payal Singh <payal(at)omniti(dot)com> |
Cc: | Ravi Krishna <sravikrishna3(at)gmail(dot)com>, "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org> |
Subject: | Re: Postgres Synchronous replication |
Date: | 2015-05-21 20:12:32 |
Message-ID: | CABzCKRBSyfnOtQ=cU3HaUWvMkzziE5MBEQdPqHrkEsu=SZDNEA@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
Payal is correct. The correct sequence would 1, 4, 5, 2, 3, 6.
That's how I see it anyway.
On Thu, May 21, 2015 at 1:01 PM, Payal Singh <payal(at)omniti(dot)com> wrote:
> AFAIK the commit on master happens only after it receives ack from the
> slave. This is how synchronous replication ensures that the slave is'in
> sync'.
>
> Payal Singh,
> Database Administrator,
> OmniTI Computer Consulting Inc.
> Phone: 240.646.0770 x 253
>
> On Thu, May 21, 2015 at 3:56 PM, Ravi Krishna <sravikrishna3(at)gmail(dot)com>
> wrote:
>
>> I want to understand how PG sync replication works. This is what I know
>> (assuming two node sync replication)
>>
>> 1 - Application issues commit.
>> 2 - PG commits the transaction locally on the primary server.
>> 3 - At this stage the application has not got the commit indication back.
>> 4 - PG transmits the transaction from the local to the remote server.
>> 5 - Remote server sends back acknowledgement
>> 6 - The app gets commit ack back.
>>
>> So this means, between step 2 and step 6, the app is not aware that the
>> transaction has already been committed.
>> This is the reason why, in the event of server crashing between step 2
>> and step 6, and the remote takes over as the
>> new primary, the crashed server can not restart as standby and the only
>> option is to recreate the db from the remote
>> server (which is now acting as the primary).
>>
>> Am I correct in the understanding?
>>
>> One more question: In Step 5, does the remote harden the transaction on
>> the disk, or merely receives the transaction in the log buffer and it sends
>> back ACK to the local server.
>>
>> Thanks
>>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Keith | 2015-05-21 20:13:18 | Re: Postgres Synchronous replication |
Previous Message | Ravi Krishna | 2015-05-21 20:10:46 | Re: Postgres Synchronous replication |