Re: Further open item (Was: Status of 7.2)
Hannu Krosing <hannu@tm.ee>
From: Hannu Krosing <hannu@tm.ee>
To: Bruce Momjian <pgman@candle.pha.pa.us>
Cc: "Tille, Andreas" <TilleA@rki.de>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Tom Lane <tgl@sss.pgh.pa.us>
Date: 2001-11-22T08:59:50Z
Lists: pgsql-hackers
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, this is
never nonzero for a visible tuple.
cmax The command identifier within the deleting transaction,
or zero. Again, this is never nonzero for a visible tuple.
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