Re: Tuple hint bits (INFOMASK) upon transaction abort

From: "Qingqing Zhou" <zhouqq(at)cs(dot)toronto(dot)edu>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Tuple hint bits (INFOMASK) upon transaction abort
Date: 2006-06-16 03:24:00
Message-ID: e6t891$1rqn$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


"letizia leo" <letizia_leo(at)yahoo(dot)it> wrote
>
> Transaction T1 updates a given tuple -- xmax is set to T1 on that tuple
> ...
> later on, T1 aborts... we believe that in this circumstance
HEAP_XMAX_INVALID should
> be set on the tuple to signal that the tuple was not actually "deleted" by
T1 since this aborted.
>

Not really. HEAP_XMAX_INVALID is a value of the hint bits, which helps to
fast determine if a tuple is visible. The important thing is the header
xmin, xmax, cmin, cmax stuff, which decides the visibility of the a tuple.
When they are checked, current backend might be happy to set the hint bits
so that other backends can fast determine its visibility with less job.

So you can say even without these hint bits, Postgres won't make anything
wrong, but may get slower.

Regards,
Qingqing

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Qingqing Zhou 2006-06-16 03:27:50 Re: Test request for Stats collector performance improvement
Previous Message Tom Lane 2006-06-16 03:22:07 Re: Please help!