Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1TyJDy-0008Us-QN for pgsql-hackers@arkaria.postgresql.org; Thu, 24 Jan 2013 09:35:58 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.72) (envelope-from ) id 1TyJDx-00073G-Vq for pgsql-hackers@arkaria.postgresql.org; Thu, 24 Jan 2013 09:35:58 +0000 Received: from makus.postgresql.org ([98.129.198.125]) by malur.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1TyJDw-00073B-Ka for pgsql-hackers@postgresql.org; Thu, 24 Jan 2013 09:35:56 +0000 Received: from acidenitrix.villemain.org ([91.121.90.165]) by makus.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1TyJDu-00020t-Ru for pgsql-hackers@postgresql.org; Thu, 24 Jan 2013 09:35:55 +0000 Received: from [89.157.243.170] (helo=Dimitris-MacBook-Air.local) by acidenitrix.villemain.org with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1TyJDs-0004x8-Sw; Thu, 24 Jan 2013 10:35:52 +0100 From: Dimitri Fontaine To: Robert Haas Cc: Alvaro Herrera , PostgreSQL Hackers Subject: Re: Event Triggers: adding information Organization: 2ndQuadrant References: <20130104205251.GB9191@alvh.no-ip.org> <20130109165829.GB4490@alvh.no-ip.org> User-Mail-Address: dimitri@2ndQuadrant.fr Date: Thu, 24 Jan 2013 10:35:41 +0100 In-Reply-To: (Robert Haas's message of "Tue, 22 Jan 2013 22:01:43 -0500") Message-ID: User-Agent: Gnus/5.130006 (Ma Gnus v0.6) Emacs/24.2 (darwin) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Pg-Spam-Score: -1.9 (-) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org Robert Haas writes: > Or maybe we should just silently ignore failures to look up the event > trigger. That might be better, because the DBA could always do: > > DROP FUNCTION myeventtrgfn() CASCADE; > > ...and it would be undesirable for other sessions to error out in that > case due to SnapshotNow effects. What about taking a lock on the functions we decide we will need to be running, maybe a ShareUpdateExclusiveLock, so that the function can not disappear under us from concurrent activity? Note to self, most probably using: LockRelationOid(fnoid, ShareUpdateExclusiveLock); After all, we might be right not to optimize for DDL concurrency=E2=80=A6 Regards, --=20 Dimitri Fontaine http://2ndQuadrant.fr PostgreSQL : Expertise, Formation et Support --=20 Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers