Re: Missing CONCURRENT VACUUM (Was: Release notes for
От | Hannu Krosing |
---|---|
Тема | Re: Missing CONCURRENT VACUUM (Was: Release notes for |
Дата | |
Msg-id | 1124313929.31798.123.camel@fuji.krosing.net обсуждение исходный текст |
Ответ на | Re: Missing CONCURRENT VACUUM (Was: Release notes for (Hannu Krosing <hannu@skype.net>) |
Список | 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@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. Nevermind. Found it - GetTransactionSnapshot() always gets a serializable snapshot first. -- Hannu Krosing <hannu@tm.ee>
В списке pgsql-hackers по дате отправления: