At 2016-03-19 17:46:25 -0300, alvherre@2ndquadrant.com wrote:
>
> I don't think the first patch is acceptable standalone -- we need both
> things together.
OK.
> But in reality, pg_depend handling is mixed up with other changes all
> over the place.
Yes, I noticed that. :-/
> Anyway I think this should be something along the lines of
> ALTER FUNCTION foo() DEPENDS ON EXTENSION bar;
OK. That's reasonable.
> ALTER FUNCTION foo() OWNED BY EXTENSION bar;
If the function is really OWNED BY EXTENSION, then the right way to
declare it would seem to be ALTER EXTENSION … ADD FUNCTION. I prefer
DEPENDS ON EXTENSION for this reason, there's no ambiguity about what
we're declaring.
> Another argument to focus only on extensions is that pg_dump knows
> specifically about extensions for supressing objects to dump, and we
> don't have any other object type doing the same kind of thing; so
> perhaps extensions-only is fine.
That's the argument that motivates this particular patch. I think if we
have a DEPENDS ON EXTENSION framework, it (a) addresses the immediate
need, and (b) gives us a straightforward way to add DEPENDS ON <x> in
future when we find some need for it.
I'll write up a patch for this. Thanks for the suggestions.
-- Abhijit