Search Postgresql Archives

Re: The scope of extensions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

On Mon, Apr 16, 2012 at 10:22:19AM -0500, Merlin Moncure wrote:
> On Mon, Apr 16, 2012 at 10:05 AM, Roger Leigh <rleigh@xxxxxxxxxxxxx> wrote:
> > The reason for the above is that I'd very much like to be able to
> > version my entire application's schema using the extension mechanism
> > (or something based upon the ideas in the extensions mechanism).  Since
> > SCHEMA is already taken, maybe CREATE/ALTER/DROP_APPLICATION.  This
> > would permit easy installation and upgrade of all the objects relating
> > to a single application installed in the database.
> not following that -- it sounds like you are trying to hook into the
> grammar? that's something you can't do through an extension.  but it's
> an interesting thought to do application versioning through the
> extension system...i'm pretty sure it hasn't been tried.  there may be
> some pitfalls though.

This was mainly just speculative--in the case that the extension
system didn't support everything I wanted, I was wondering if
extending the grammar would be a viable approach; obviously it would
require other work too!

Every project I've worked on which uses PostgreSQL has independently
implemented its own set of installation and upgrade scripts, which
has typically included some form of table for storing the current
schema version and other settings to allow the scripts to safely do
their job.  However, I'm not a big fan of unnecessary wheel
reinvention, and if PostgreSQL could provide a standard mechanism
for doing this which all applications could utilise, that would be
(IMO) an absolutely fantastic feature.  If extensions can be used
as they stand to realise this, then that's absolutely great: the
end user installation instructions can be reduced to
  CREATE EXTENSION myapplication;
and the equivalent for upgrades.  I'm not sure if another keyword
would be useful in this context, since this is much more than a
single extension, it's an entire schema.


  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux
 `. `'   schroot and sbuild
   `-    GPG Public Key      F33D 281D 470A B443 6756 147C 07B3 C8BC 4083 E800

Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:

[Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Programming PHP]     [Kernel Newbies]     [PHP Classes]     [Find Someone Nice]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux