Re: Tuple hint bits (INFOMASK) upon transaction abort - Mailing list pgsql-hackers

From Qingqing Zhou
Subject Re: Tuple hint bits (INFOMASK) upon transaction abort
Date
Msg-id e6t891$1rqn$1@news.hub.org
Whole thread Raw
In response to Tuple hint bits (INFOMASK) upon transaction abort  (letizia leo <letizia_leo@yahoo.it>)
List pgsql-hackers
"letizia leo" <letizia_leo@yahoo.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





pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Please help!
Next
From: "Qingqing Zhou"
Date:
Subject: Re: Test request for Stats collector performance improvement