Re: Modifying and solidifying contrib

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: David Fetter <david(at)fetter(dot)org>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Richard Huxton <dev(at)archonet(dot)com>, Michael Glaesemann <grzm(at)seespotcode(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Modifying and solidifying contrib
Date: 2007-01-31 14:31:00
Message-ID: 45C0A824.3090300@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

David Fetter wrote:
> On Tue, Jan 30, 2007 at 03:49:14PM -0500, Andrew Dunstan wrote:
>
>> 4. visibility/searchpath issues. I don't think long search paths are a
>> huge issue, but I think we can make life a bit easier by tweaking
>> searchpath support a bit (David's clever SQL notwithstanding).
>>
>
> The only "clever" bit I added was the CASE statement. Credit for the
> rest belongs to Andrew at Supernews. It's not a bad thing for people
> to keep around, either way. :)
>

I dislike on principle things that mangle the catalogs directly. As soon
as I see one I think "why aren't we providing an SQL command for that?"
By and large, I think users should be able to work as though the catalog
were not visible, or at least not directly writable.

>> 5. legacy support - we need an option to load existing extensions to the
>> public schema as now, or support for aliases/synonyms (the latter might
>> be good to have regardless).
>>
>
> Hrm. This gets tricky. When things are mandated to be in their own
> namespace, they need not check what everybody else's things are doing
> each time, whereas when they go into the public schema... :P
>

Why is it tricky? This is for legacy only, i.e. for object we know of
today. Any future objects in existing extensions, or objects in new
extensions, should not have this support - they should use their own
namespaces, pure and simple.

>> Richard mentioned special testing requirements, but I don't see why we
>> can't continue to use our standard regression mechanism.
>>
>
> A subdirectory in src/tests/regression for each one?
>

No. One of the reasons for us to maintain some standard extensions is to
act as exemplars. You should be able to build, install and test an
extension without having a complete source tree present. So each
extension should keep its own sql and expected directory as now, I think.

> I don't think it would be too much trouble to do extensions the way we
> now do tables and schemas in pg_dump, i.e. with multiple possible
> regular expression entries like
>
> --include-extension=
>
> and
>
> --exclude-extension=
>
> where the includes get evaluated before the excludes.
>
>

OK, as long as --exclude-extension has an "all" option, or we have a
--no-extensions option also.

cheers

andrew

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2007-01-31 15:11:13 Re: [HACKERS] pgsql: Fix for plpython functions; return true/false for boolean,
Previous Message Bruce Momjian 2007-01-31 14:08:38 Re: [HACKERS] pgsql: Fix for plpython functions; return true/false for boolean,