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
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! |