Re: Let's make CPgAN!

Поиск
Список
Период
Сортировка
От elein
Тема Re: Let's make CPgAN!
Дата
Msg-id 20060522182854.GE6349@varlena.com
обсуждение исходный текст
Ответ на Re: Let's make CPgAN!  ("Florian G. Pflug" <fgp@phlo.org>)
Список pgsql-general
On Mon, May 22, 2006 at 08:10:11PM +0200, Florian G. Pflug wrote:
> elein wrote:
> >This issue is a very old issue and people have not come up with
> >the definitive solution to distributing "datablades" as Stonebraker
> >called them.
> True, but OTOH there is no "definitive solution" for OS-level package
> management too, but still "apt-get" or "rpm" do a pretty decent job.
> So, 99% solutions are possible ;-)
>

Theoretically if we have our own packaging system we can nudge the
package developers to want to use it.  Not everyone will, hence
the "blessed" projects.

> >For now, the best way is to have small well managed projects on
> >PgFoundry and encourage people to review what is available
> >there.  Maybe we can even make perusing the projects there
> >easier.
> >
> >As people build smaller projects on pgfoundry is would be
> >ideal to have "blessed" projects where "blessing" means
> >adhered to an installation procedure.
> The problem is not such much the initial installation, but rather
> upgrade to new versions of either the "package", or postgresql.
>

The developer should be responsible for for the upgrade processes
and it should be incorporated into the scripts that "pgpkg install"
runs.


> >There is already a standard way to add things into the contrib
> >line (but I'm blanking on the name xpg?).  All addons require
> >some SQL and most add-ons only require SQL.  But those that
> >require C should adhere to the xpg (?) standard.  Those that
> >require other languages installed should have the mechanisms built
> >in to at minimum flag those dependencies.  For example if a new
> >datatype depended on Perl6, it must check that Perl6 is installed
> >before actually installing itself.
>
> >We have a lot of little solutions and none of them are that
> >far away from each other.  I believe the trend is already to use
> >"what worked for that other project".  The issue then is to
> >encourage projects on pgfoundry to discover the exact installation
> >standard and promote it.  The individual project owners will
> >be required to implement them.
> I'd really like to see a solution that enables me to install
> a package using something like "pgpkg install <dbname> <package>".
> I'd ask me to install prerequisites (like procedural languages
> for example). pg_dump should have an option to exclude any installed
> packages from the dump.

Having that framework requires developers to adhere to the installation
requirements.  That was my first requirement and it is also a big
burden.  Those requirements should include all upgrade specific tasks
as well as uninstall.  Only the project owner knows exactly what those
dependencies would be.

First things first--the install infrastructure needs to be agreed upon.
This is a difficult task.  That is why I suggested the basics of
1) executing SQL 2) using xpg(?) for C languages 3) determining
other dependencies.  We've got to start somewhere.

>
> As long as "packages" only contain functions, views and types, things
> are quite straight forward, I believe. The hard part would be to support
> packages including table-definitions.

>What do you do when an upgrade
> wants to modify a table, but it already contains user data?

If that case is possible and the developer did not take that into account
for upgrade the it is a bug.  The sql in the installation should handle this case.
The developer decides what is necessary.

>
> greetings, Florian Pflug
>

Carry on!

elein
elein@varlena.com

В списке pgsql-general по дате отправления:

Предыдущее
От: "Florian G. Pflug"
Дата:
Сообщение: Re: Let's make CPgAN!
Следующее
От: "Dawid Kuroczko"
Дата:
Сообщение: Re: Let's make CPgAN!