From: | Martijn van Oosterhout <kleptog(at)svana(dot)org> |
---|---|
To: | Hannu Krosing <hannu(at)skype(dot)net> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Dead Space Map |
Date: | 2006-02-28 14:00:52 |
Message-ID: | 20060228140052.GB535@svana.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Feb 28, 2006 at 09:52:24AM +0200, Hannu Krosing wrote:
> WHY does vacuum need to be a tranasction ? I thought it was a programmer
> workload optimisation (aka. lazyness :) ) to require ordinary lazy
> vacuum to be in transaction.
>
> There is no fundamental reason, why vacuum needs to run in a transaction
> itselt.
AIUI, vacuum needs to take locks on tables and possibly wait on other
transactions to complete. Similarly, other transactions may need to
wait on the vacuum (DDL statements). The mechanism in postgres to clean
up locks on crash and handle deadlock detection (I think) requires
everybody to be running in a transaction, so vacuum does too...
At least, that's what I thought,
Have a nice day,
--
Martijn van Oosterhout <kleptog(at)svana(dot)org> http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.
From | Date | Subject | |
---|---|---|---|
Next Message | Martijn van Oosterhout | 2006-02-28 14:44:53 | Re: character encoding in StartupMessage |
Previous Message | Christopher Browne | 2006-02-28 13:51:42 | Re: pg_config, pg_service.conf, postgresql.conf .... |