Skip site navigation (1) Skip section navigation (2)

Re: Vacuum threshold and non-serializable read-only transaction

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: ITAGAKI Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Vacuum threshold and non-serializable read-only transaction
Date: 2008-01-28 05:49:23
Message-ID: 18203.1201499363@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
ITAGAKI Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> writes:
> I think we can remove recently dead tuples even if non-serializable read-only
> transactions are still alive, because those transactions will not see older
> versions of tuples.

Surely this'd require having those transactions display exactly what
their current oldest-xmin is.  We've talked about that before, and it
seems a good idea, but it requires a bit more infrastructure than is
there now --- we'd need some snapshot-management code that could keep
track of all live snapshots within each backend.

> Is it proper behavior? I worry about too conservative estimation
> in incrementing ShmemVariableCache->latestCompletedXid.

Too conservative is much better than too liberal, in this case
(and I'm as bleeding-heart liberal as they come ;-))

			regards, tom lane

In response to

Responses

pgsql-hackers by date

Next:From: Neil ConwayDate: 2008-01-28 06:11:18
Subject: RFC: array_agg() per SQL:200n
Previous:From: ITAGAKI TakahiroDate: 2008-01-28 05:05:53
Subject: Vacuum threshold and non-serializable read-only transaction

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group