Re: [HACKERS] SELECT FOR UPDATE leaks relation refcounts

From: wieck(at)debis(dot)com (Jan Wieck)
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Hiroshi Inoue <Inoue(at)tpf(dot)co(dot)jp>, pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: [HACKERS] SELECT FOR UPDATE leaks relation refcounts
Date: 2000-02-03 10:53:18
Message-ID: m12GJt0-0003kbC@orion.SAPserv.Hamburg.dsh.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> "Hiroshi Inoue" <Inoue(at)tpf(dot)co(dot)jp> writes:
> > I couldn't judge whether the following current behavior has some meaning
> > or not.
>
> > Let v be a view;
>
> > lock table v in exclusive mode; (I don't know what this means)
>
> Good question ... but it seems to me that it has to mean grabbing
> exclusive lock on the table(s) referred to by v. Otherwise, if
> client A locks the view and client B locks the underlying table
> directly, they'll both pass the lock and be able to access/modify
> the underlying table at the same time. That can't be right.
>
> The rewriter correctly passes SELECT FOR UPDATE locking from the
> view to the referenced tables, but I'm not sure whether it is
> bright enough to do the same for LOCK statements. (Jan?)

Isn't LOCK TABLE a utility statement? So it doesn't go
through the rewriter.

The LOCK code would have to do the correct locking of the
underlying tables. And not to forget cascaded views or
possible subselects.

Actually LockTableCommand() in command.c doesn't do it. It
simply locks the view relation, what's definitely wrong.

Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#========================================= wieck(at)debis(dot)com (Jan Wieck) #

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Patrick Welche 2000-02-03 11:24:34 Re: [HACKERS] Another nasty cache problem
Previous Message Chris 2000-02-03 10:46:45 Re: [HACKERS] Re: [SQL] Proposed Changes to PostgreSQL