Re: Is VACUUM still crash-safe? - Mailing list pgsql-hackers

From Hiroshi Inoue
Subject Re: Is VACUUM still crash-safe?
Date
Msg-id 3A35A605.DE7A8BD6@tpf.co.jp
Whole thread Raw
In response to RE: Is VACUUM still crash-safe?  ("Mikheev, Vadim" <vmikheev@SECTORBASE.COM>)
List pgsql-hackers
Tom Lane wrote:
> 
> Hiroshi Inoue <Inoue@tpf.co.jp> writes:
> >  VACUUM of a toast table crashed immediately after the movement
> >  of a tuple(and before inserting corresponding index tuples).
> >  Unfortunately the movement of a tuple is directly committed in
> >  already committed state but corresponding index tuples aren't
> >  inserted.
> 
> Ah, *now* I see what you're talking about.  You're right, the TOAST
> table has to be vacuumed under a separate transaction number.
> 
> I still don't like releasing the lock on the master table though.
> VACUUM cheats on the commit already, could it start a new transaction
> number without releasing the lock?
> 

It is also preferable that we could replace current intermediate
*commit*
of vacuum by real commit(without releaseing the lock).
IIRC,Vadim and I talked about it a little once before.

We could avoid releasing the lock at commit time but probably
the next StartTransaction() has to change xid-s of LockTable
entries. I'm not sure if it's sufficient or not. For example
We could hardly keep row-level lock. We could acquire the lock
on a row which is already committed.

Regards.
Hiroshi Inoue


pgsql-hackers by date:

Previous
From: Andrew Snow
Date:
Subject: Re: (one more time) Patches with vacuum fixes available .
Next
From: The Hermit Hacker
Date:
Subject: Re: (one more time) Patches with vacuum fixes available .