Re: ALTER EXTENSION ... UPGRADE;

Поиск
Список
Период
Сортировка
От David E. Wheeler
Тема Re: ALTER EXTENSION ... UPGRADE;
Дата
Msg-id CF3E55D7-9924-450C-8F46-0752990217DB@kineticode.com
обсуждение исходный текст
Ответ на Re: ALTER EXTENSION ... UPGRADE;  (Dimitri Fontaine <dimitri@2ndQuadrant.fr>)
Ответы Re: ALTER EXTENSION ... UPGRADE;  (Dimitri Fontaine <dimitri@2ndQuadrant.fr>)
Re: ALTER EXTENSION ... UPGRADE;  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On Dec 10, 2010, at 1:50 PM, Dimitri Fontaine wrote:

>> (Actually, we could probably assume that the target version is
>> implicitly "the current version", as identified from the control file,
>> and omit that from the script file names.  That would avoid ambiguity
>> if version numbers can have more than one part.)
>
> I don't think we can safely design around one part version numbers here,
> because I'm yet to see that happening in any extension I've had my hands
> on, which means a few already, as you can imagine.

Why not? Simplest thing, to my mind, is to have
 upgrade/foo-1.12.sql upgrade/foo-1.13.sql upgrade/foo-1.15.sql

Since you know the existing version number, you just run all that come after. For example, if the current version is
1.12,then you know to run foo-1.13.sql and foo-1.15.sql. 

> Now, what about having the control file host an 'upgrade' property where
> to put the script name? We would have to support a way for this filename
> to depend on the already installed version, I'm thinking that %v might
> be the easiest here (read: I want to avoid depending on any version
> scheme).
>
>  version = '13'
>  script  = 'foo.sql'
>  upgrade = 'foo_upgrade.%v.13.sql'

I think that's way more complicated than necessary.

Best,

David

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

Предыдущее
От: "David E. Wheeler"
Дата:
Сообщение: Re: ALTER EXTENSION ... UPGRADE;
Следующее
От: Dimitri Fontaine
Дата:
Сообщение: Re: ALTER EXTENSION ... UPGRADE;