Tom Lane escribió:
> "Pavan Deolasee" <[EMAIL PROTECTED]> writes:
> > On 8/30/07, Tom Lane <[EMAIL PROTECTED]> wrote:
> >> I don't think that works --- what if the last tuple in the chain isn't
> >> committed good yet?  If its inserter ultimately rolls back, you've
> >> indexed the wrong value.
> > I am confused. How could we get ShareLock on the relation while
> > there is some open transaction which has inserted a tuple in the
> > table ? (Of course, I am not considering the system tables here)
> Not if someone else releases lock before committing.

FWIW, a red flag raised for me here, though maybe it is irrelevant or
unimportant.  Currently, VACUUM acquires an exclusive lock for
truncating the table.  The lock is kept till commit.  However I am
proposing that it be released before commit.

Now, VACUUM never inserts rows.  But I don't claim I understand what's
going on here.

Alvaro Herrera                      
The PostgreSQL Company - Command Prompt, Inc.

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to