Re: Synchronization levels in SR

From: Markus Wanner <markus(at)bluegap(dot)ch>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, Simon Riggs <simon(at)2ndquadrant(dot)com>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Synchronization levels in SR
Date: 2010-09-07 13:45:00
Message-ID: 4C8641DC.9090208@bluegap.ch
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 09/07/2010 02:16 PM, Robert Haas wrote:
> Right, definitely. The trouble is that if they happen concurrently,
> and there's a crash, you have to be prepared for the possibility that
> either one of the two has completed and the other is not.

Understood.

> In
> practice, this means that the master and standby need to compare notes
> on the ending WAL location and whichever one is further advanced needs
> to stream the intervening records to the other.

Not necessarily, no. Remember that the client didn't get a commit
confirmation. So reverting might also be a correct solution (i.e. not
violating the durability constraint).

> This would be an
> awesome feature, but it's hard, so for a first version, it makes sense
> to commit on the master first and then on the standby after the master
> is known done.

The obvious downside of that is that latency adds up, instead of just
being the max of the two operations. And that for normal operation.
While at best it saves an un-confirmed transaction in the failure case.

It might be harder to implement, yes.

Regards

Markus Wanner

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2010-09-07 13:53:33 Re: git: uh-oh
Previous Message Pavel Stehule 2010-09-07 13:27:29 Re: can we publish a aset interface?