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. 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.
regards, tom lane