Re: Missing CONCURRENT VACUUM (Was: Release notes for

From: Hannu Krosing <hannu(at)tm(dot)ee>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Missing CONCURRENT VACUUM (Was: Release notes for
Date: 2005-08-17 21:25:29
Message-ID: 1124313929.31798.123.camel@fuji.krosing.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On K, 2005-08-17 at 23:58 +0300, Hannu Krosing wrote:
> On K, 2005-08-17 at 16:45 -0400, Tom Lane wrote:
> > Hannu Krosing <hannu(at)skype(dot)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.

Nevermind. Found it - GetTransactionSnapshot() always gets a
serializable snapshot first.

--
Hannu Krosing <hannu(at)tm(dot)ee>

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Josh Berkus 2005-08-17 21:33:15 Re: [HACKERS] bitmap scan issues 8.1 devel
Previous Message Tom Lane 2005-08-17 21:17:47 Re: Crash while trying to log in with nonexistent role