Re: Quick Extensions Question

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
Cc: "David E(dot) Wheeler" <david(at)kineticode(dot)com>, pgsql-hackers Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Quick Extensions Question
Date: 2011-03-03 15:31:14
Message-ID: 7801.1299166274@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr> writes:
> Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes:
>> You'd need to work out how the CREATE OR REPLACE and DROP cases would
>> work.

> Maybe the fever ain't gone far enough, but I'd just do nothing in the
> first case and internally cascade to the extension in the second case.
> In fact internally the drop case would be redirected on the extension
> and the dependencies would get rid of the PL, right?

Not sure it's that easy. I think DROP LANGUAGE can't assume that the
language it's been told to drop is extension-ified. (Even if we do this
for all the core ones, there are a dozen non-core ones that might not
all get with the program right away.) How do we make this work in a way
that covers both cases, but doesn't turn DROP LANGUAGE into a security
hole that lets non-superusers drop random extensions?

It may all work pretty easily, but I'm still caffeine-deprived so I'm
not sure ...

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2011-03-03 15:36:10 Re: WAL segments pile up during standalone mode
Previous Message Dimitri Fontaine 2011-03-03 15:21:48 Re: Quick Extensions Question