On 22 June 2012 20:30, Andres Freund <andres@2ndquadrant.com> wrote:
> The problem making replacement of SnapshotNow.satisfies useful is that there is
> no convenient way to represent subtransactions of the current transaction
> which already have committed according to the TransactionLog but aren't yet
> visible at the current lsn because they only started afterwards. Its
> relatively easy to fake this in an mvcc snapshot but way harder for
> SnapshotNow because you cannot mark transactions as in-progress.
I'm starting to like these ideas now.
We can solve many things by emitting a new WAL record type in any
subtransaction that issues catalog changes. That wasn't possible in
Hot Standby for performance reasons, but since we only care about
catalog changes those things are much rarer and wouldn't be a problem.
--
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services