On Wed, Jun 2, 2021, at 16:43, Jim Mlodgenski wrote:
> On Wed, Jun 2, 2021 at 9:58 AM Tom Lane <t...@sss.pgh.pa.us 
> <mailto:tgl%40sss.pgh.pa.us>> wrote:
> > I wonder whether it'd be better to consider modules as a kind of
> > extension, or at least things with the same sort of ownership relations
> > as extensions have.
> 
> That would solve the problem of associating objects which is the larger
> problem for users today. The objects can all live in their respective
> schemas with the module tying them all together.

I like the idea of somehow using extensions.

Right now, extensions can only be added from the command-line, via `make 
install`.

But maybe a new extension could be packaged from the SQL prompt, out of 
existing database objects that are not already part of an extension?

Maybe the interface could be:

init_new_extension(extension_name text) function, to register a new empty 
extension.
add_object_to_extension(extension_name text, type text, object_names text[], 
object_args text[])

Then, if dropping the extension, all objects would be dropped, and if creating 
the extension, all objects would be restored.

I don't have an idea on how to handle update scripts, but since it's not 
mandatory to provide extension update scripts, maybe that's not a problem.

/Joel

Reply via email to