Re: Missing CONCURRENT VACUUM (Was: Release notes for
Hannu Krosing <hannu@skype.net>
From: Hannu Krosing <hannu@skype.net>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Bruce Momjian <pgman@candle.pha.pa.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2005-08-17T20:58:19Z
Lists: pgsql-hackers
On K, 2005-08-17 at 16:45 -0400, Tom Lane wrote: > Hannu Krosing <hannu@skype.net> writes: > > On K, 2005-08-17 at 14:48 -0400, Tom Lane wrote: > >> While testing this I realized that it does not in fact work as > >> advertised. It will only exclude long-running VACUUMs from other > >> VACUUMs' OldestXmin if *all* the transactions in the system are lazy > >> VACUUMs. If there is even one regular transaction in the system, > >> that transaction will include the VACUUMs in its MyProc->xmin, and > >> thence GetOldestXmin will have to include them in its result. > > > Only if these regular transactions are running in SERIALIZABLE isolation > > level, else MyProc->xmin is not set inside GetSnapshotData. > > Better read the code again. The first snap in *any* transaction sets > MyProc->xmin. Can't find the place :( Could you point to the file / function that does this. -- Hannu Krosing <hannu@skype.net>