Alvaro Herrera wrote:
> Tom Lane wrote:
>> Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:
>>> As far as I can see, for the purposes of VACUUM we can remove any tuple
>>> that was deleted after the old transaction's Xid but before that
>>> transaction's Xmin (i.e. all of its live snapshots). This means we get
>>> to ignore Xid in GetOldestXmin and in the TransactionXmin calculations
>>> in GetSnapshotData. It would not surprise me, however, to find out that
>>> I am overlooking something and this is incorrect.
>> This seems entirely off-base to me. In particular, if a transaction
>> has an XID then its XMIN will never be greater than that, so I don't
>> even see how you figure the case will arise.
> My point exactly -- can we let the Xmin go past its Xid? You imply we
> can't, but why?
Everything < xmin is considered to be not running anymore. Other
transactions would consider the still-alive transaction as aborted, and
start setting hint bits etc.
In response to
pgsql-hackers by date
|Next:||From: Brendan Jurd||Date: 2008-03-28 15:16:45|
|Subject: Re: Status of GIT mirror (Was having problem in rsync'ing cvs)|
|Previous:||From: Zeugswetter Andreas OSB SD||Date: 2008-03-28 15:13:38|
|Subject: Re: Prereading using posix_fadvise (was Re: Commitfest patches)|