From: | "scott(dot)marlowe" <scott(dot)marlowe(at)ihs(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | <josh(at)agliodbs(dot)com>, <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Suggestion; "WITH VACUUM" option |
Date: | 2002-12-16 22:52:30 |
Message-ID: | Pine.LNX.4.33.0212161551350.24032-100000@css120.ihs.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, 16 Dec 2002, Tom Lane wrote:
> Josh Berkus <josh(at)agliodbs(dot)com> writes:
> > How hard would it be to add a "WITH (VACUUM)" option to UPDATE and DELETE
> > queries? This option would cause the regular vacuum activity -- purging the
> > dead tuple and its index references -- to be done immediately, as part of the
> > statement, instead of being deferred.
>
> > Easy? Hard? Insane? What do you think?
>
> Impossible. You can't vacuum a tuple until the last open transaction
> that can see it is gone. It is therefore *impossible* for a transaction
> to vacuum away its own detritus; until the transaction commits, you
> can't even start to wonder whether other open transactions see it or
> not.
>
> Vacuuming has to be done later, and that being the case, I don't see any
> real advantage to altering the "background vacuum" design we have.
Then, would a "commit with vacuum" work? OR a "begin transaction with
vacuum" Just tossing them out there...
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2002-12-16 23:07:05 | Re: FW: Duplicate oids! |
Previous Message | Tom Lane | 2002-12-16 22:33:14 | Re: Suggestion; "WITH VACUUM" option |