Re: SSI and Hot Standby - Mailing list pgsql-hackers

From Florian Pflug
Subject Re: SSI and Hot Standby
Date
Msg-id 806FB186-74BB-4660-B182-92A96C352999@phlo.org
Whole thread Raw
In response to Re: SSI and Hot Standby  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: SSI and Hot Standby  (Simon Riggs <simon@2ndQuadrant.com>)
List pgsql-hackers
On Jan21, 2011, at 00:11 , Simon Riggs wrote:
> It's not clear to me what the reason is that this doesn't just work on
> HS already. If you started there it might help.


The problem is that snapshots taken on the master sometimes represent a
state of the database which cannot occur under any (valid) serial schedule.
Hence, if you use that snapshot to read the *whole* database, you've
surely violated serializability. If you read only parts of the database,
things may or may not be fine, depending on the parts you read.

To have the same stringent guarantees that SERIALIZABLE provides on the
master also for queries run against the slave, you somehow need to prevent
this. The easiest way is to only use snapshots on the slave which *cannot*
produce such anomalies. We already know now to generate such snapshots -
SERIALIZABLE READ ONLY DEFERRABLE does exactly that. So the open question
is mainly how to transfer such snapshots to the slave, and how often we
transmit a new one.

best regards,
Florian Pflug



pgsql-hackers by date:

Previous
From: Marko Tiikkaja
Date:
Subject: Re: REVIEW: EXPLAIN and nfiltered
Next
From: "Kevin Grittner"
Date:
Subject: Re: SSI and Hot Standby