Re: VACUUM and open transactions

From: Joseph S <jks(at)selectacast(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: VACUUM and open transactions
Date: 2007-01-31 02:15:52
Message-ID: 45BFFBD8.8060908@selectacast.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

The serializable transaction *can't* see those rows, they were created
and obsoleted after the start of the transaction. The point of make the
transaction serializable in the first place was to allow VACUUM to
reclaim those rows.

Alvaro Herrera wrote:
> Joseph S wrote:
>> I realize this thread is old, but I just conducted an experiment with pg
>> 8.0.10 and a transaction with a SERIALIZABLE isolation level does
>> prevent VACUUM from reclaiming rows that were created and then obsoleted
>> in a subsequent transaction.
>
> Right. This is expected. VACUUM cannot remove them because the
> serializable transaction might still want to see those rows. (I am
> assuming the serializable transaction is still running when the vacuum
> starts. If that's not the case, please explain better).
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Alvaro Herrera 2007-01-31 02:27:03 Re: VACUUM and open transactions
Previous Message Joshua D. Drake 2007-01-31 02:15:01 Re: Any Plans for cross database queries on the same server?