Bruce Momjian wrote:
>
> Huh, a non-zero XMAX is fine. You mark the XMAX when you _think_ you
> are updating it. It is only expired when the XMAX on the tuple is
> committed.
But
http://www.postgresql.org/idocs/index.php?sql-syntax-columns.html
claims:
xmax The identity (transaction ID) of the deleting transaction, or zero for an undeleted tuple. In practice,
thisis never nonzero for a visible tuple.
cmax The command identifier within the deleting transaction, or zero. Again, this is never nonzero for a
visibletuple.
Which is IMHO good and useful behaviour, for example for all kinds of
mirroring
I also think that this kas historically been the behaviour and that
this was broken sometime in not too distant past (i.e after postgres95
;)
by foreign keys and/or somesuch.
Tom Lane once told me about a way to determine the visibility of a tuple
by other means than [x|c][min|max] but I can't find/remember it anymore
;(
-----------------
Hannu