From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Abhijit Menon-Sen <ams(at)2ndQuadrant(dot)com> |
Cc: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: dealing with extension dependencies that aren't quite 'e' |
Date: | 2016-01-16 17:18:53 |
Message-ID: | 58C7A345-193B-4813-A7AA-4B78358313D6@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Jan 16, 2016, at 9:48 AM, Abhijit Menon-Sen <ams(at)2ndQuadrant(dot)com> wrote:
> Right, here's another try.
>
> The extension does trigger-based DML auditing. You install it using
> CREATE EXTENSION and then call one of its functions to enable auditing
> for a particular table. That function will create a customised trigger
> function based on the table's columns and a trigger that uses it:
>
> CREATE FUNCTION fn_audit_$table_name() RETURNS TRIGGER …
> CREATE TRIGGER … ON $table_name … EXECUTE fn_audit_$table_name;
>
> All that works fine (with pg_dump too). But if you drop the extension,
> the triggers stop working because the trigger function calls functions
> in the extension that are now gone.
This seems like one manifestation of the more general problem that we don't have any real idea what objects a function definition depends on.
...Robert
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2016-01-16 17:32:47 | Re: WIP: Rework access method interface |
Previous Message | Robert Haas | 2016-01-16 17:14:19 | Re: WIP: Rework access method interface |