From: | Decibel! <decibel(at)decibel(dot)org> |
---|---|
To: | Simon Riggs <simon(at)2ndquadrant(dot)com> |
Cc: | PG Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Change lock requirements for adding a trigger |
Date: | 2008-06-04 13:31:46 |
Message-ID: | 85B9C2D2-76F8-467F-958B-A1B8324A74FA@decibel.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Jun 3, 2008, at 5:04 PM, Simon Riggs wrote:
> On Tue, 2008-06-03 at 16:48 -0500, Decibel! wrote:
>> On May 30, 2008, at 9:51 AM, Simon Riggs wrote:
>>> On Thu, 2008-05-29 at 19:18 -0500, Decibel! wrote:
>>>> Is there a reason that we can't add a trigger to a table while a
>>>> select is running? This is a serious pain when trying to setup
>>>> londiste or slony.
>>>
>>> This is constrained by locking.
>>>
>>> There are a subset of DDL commands that might be able to be
>>> performed
>>> with just an ExclusiveLock or ShareLock rather than an
>>> AccessExclusiveLock. Nobody has studied which sub-statements this
>>> might
>>> apply to, but its do-able since CREATE INDEX already does this.
>>
>> Is there a good way to determine this other than depending on
>> knowledge of the source code?
>
> The source doesn't know yet. So just analysis and thinking.
>
> The mechanism to hold less than an AccessExclusiveLock it doesn't
> exist
> yet, but it never will unless we have a list of the things that
> might be
> performed correctly with a lower level of lock.
Ok, I'll take a stab at such a list. Can anyone think of any reasons
why CREATE TRIGGER couldn't get by with ShareLock?
--
Decibel!, aka Jim C. Nasby, Database Architect decibel(at)decibel(dot)org
Give your computer some brain candy! www.distributed.net Team #1828
From | Date | Subject | |
---|---|---|---|
Next Message | Andreas Pflug | 2008-06-04 14:19:47 | Re: Overhauling GUCS |
Previous Message | Decibel! | 2008-06-04 13:21:26 | Re: rfc: add pg_dump options to dump output |