Re: Review: create extension default_full_version

Поиск
Список
Период
Сортировка
От Ibrar Ahmed
Тема Re: Review: create extension default_full_version
Дата
Msg-id CALtqXTcxV8KUFH-NhvU6VUR+PNwc3VAjfP9M0JKyzUu5hD5AJQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Review: create extension default_full_version  (Ibrar Ahmed <ibrar.ahmad@gmail.com>)
Ответы Re: Review: create extension default_full_version
Список pgsql-hackers

Now it works in most of the cases, here is one more point about the patch.

* In case we have hstore--1.3.sql file and want to install that file, but failed because of default_full_version.

No default_full_version specified 
-----------------------------------------------
postgres=# CREATE EXTENSION hstore version '1.3';
CREATE EXTENSION

default_full_version = 1.2
------------------------------------
postgres=# CREATE EXTENSION hstore version '1.3';
ERROR:  could not stat file "/usr/local/pgsql/share/extension/hstore--1.2.sql": No such file or directory

If we don't want to address this issue at least we should give some meaningful error message.



On Tue, Dec 4, 2012 at 4:46 PM, Ibrar Ahmed <ibrar.ahmad@gmail.com> wrote:


On Tue, Dec 4, 2012 at 7:54 PM, Dimitri Fontaine <dimitri@2ndquadrant.fr> wrote:
Ibrar Ahmed <ibrar.ahmad@gmail.com> writes:
> I am still getting the same error message.

With the attached patch (v2), it works well:

create extension hstore version '1.2' from 'unpackaged';
DEBUG:  execute_extension_script: '/Users/dim/pgsql/ddl/share/extension/hstore--unpackaged--1.0.sql'
DEBUG:  execute_extension_script: '/Users/dim/pgsql/ddl/share/extension/hstore--1.0--1.1.sql'
DEBUG:  execute_extension_script: '/Users/dim/pgsql/ddl/share/extension/hstore--1.1--1.2.sql'
CREATE EXTENSION

You have to remember that the spelling FROM 'unpackaged version' really
means that we have previously installed a "loose" version of the
extension (just \i hstore.sql) and want to apply the upgrade path from
there.

We can't have FROM meaning the same thing as default_full_version.


I know.

 
> With default_full_version = '1.1'
> --------------------------------------------
> postgres=# CREATE EXTENSION hstore version '1.3' from '1.1';
> DEBUG:  execute_extension_script:
> '/usr/local/pgsql/share/extension/hstore--1.1.sql'
> DEBUG:  execute_extension_script:
> '/usr/local/pgsql/share/extension/hstore--1.1--1.3.sql'
> *ERROR:  could not stat file
> "/usr/local/pgsql/share/extension/hstore--1.1--1.3.sql": No such file or
> directory*

That's nonetheless a bug and is fixed now:

-       if (pcontrol->default_full_version)
+       if (pcontrol->default_full_version && !unpackaged)


Thanks, I will look at this again in detail.

 
See attached.

Regards,
--
Dimitri Fontaine
http://2ndQuadrant.fr     PostgreSQL : Expertise, Formation et Support




--
Ibrar Ahmed



--
Ibrar Ahmed

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

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: [WIP] pg_ping utility
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: allowing multiple PQclear() calls