On Wed, 2008-10-22 at 18:53 -0400, Tom Lane wrote:
> Simon Riggs <simon@2ndQuadrant.com> writes:
> > My interest was really in maintaining ultra-correctness, while removing
> > the need to WAL log subcommits for Hot Standby. I think I achieved that,
> > almost, but if you see further optimizations that is good too.
>
> I'm not focusing on performance here --- I'm focusing on whether I trust
> the patch at all.
> I dislike blowing a hole that size in the sanity
> checks in TransactionIdSetStatus. I note that the hole still isn't
> big enough, since presumably you'd have to allow ABORTED=>SUB_COMMITTED
> too.
No, that is never required. We only set subcommitted state for a commit.
> That means that out of the four state transitions that are
> disallowed by the original coding of that Assert, you are now having to
> consider two as legal. I don't like that, and I like even less that
> it's not even trying to determine whether this is a replay-driven
> change.
Presumably you would like to see an additional parameter to allow that
test to be more strictly determined?
Bug fix v2 patch enclosed, mostly API changes.
--
Simon Riggs www.2ndQuadrant.com
PostgreSQL Training, Services and Support