Alvaro Herrera wrote:
> ... in particular, this change allows us to revert the addition of
> MultiXactHasRunningRemoteMembers(), and simply use
> MultiXactIdIsRunning() in the two places that required it.
And doing that enables simplifying this patch a bit, so here it is one
more time. Hopefully this is the final version -- I intend to push it
to 9.3 and master.
Please *note the behavior change* of HeapTupleSatisfiesUpdate: it will
now return HeapTupleBeingUpdated when a tuple is locked by an Xid that's
a subtransaction of the current top transactionn. That case previously
returned HeapTupleBeingUpdated. If someone wants to say that we
shouldn't change that in 9.3, please speak up. But do note that it was
already returning that valu ewhen the lock was a multixact, so the new
behavior can be said to be more consistent.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services