Re: BUG #1550: LOCK TABLE in plpgsql function doesn't work. - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #1550: LOCK TABLE in plpgsql function doesn't work.
Date
Msg-id 3491.1111126627@sss.pgh.pa.us
Whole thread Raw
In response to BUG #1550: LOCK TABLE in plpgsql function doesn't work.  ("Spencer Riddering" <spencer@riddering.net>)
List pgsql-bugs
"Spencer Riddering" <spencer@riddering.net> writes:
> When a LOCK TABLE statement is included in a plpgsql function it does not
> actually lock the table.

Sure it does.  If it doesn't, your test case surely will not prove it;
you cannot prove the existence or lack of existence of a lock in a test
case with only one connection...

I suspect your complaint really has to do with the fact that the
transaction snapshot is established before the function is entered,
and thus before the lock is taken.  Pre-8.0, we did not advance the
snapshot within functions, and so the commands within the function
would all see a snapshot that predated the obtaining of the lock.

Short answer: try 8.0.

            regards, tom lane

pgsql-bugs by date:

Previous
From: Michael Fuhr
Date:
Subject: Re: BUG #1551: You need an import/export feature
Next
From: Michael Fuhr
Date:
Subject: Re: BUG #1550: LOCK TABLE in plpgsql function doesn't work.