On 09/22/2011 04:40 AM, alp@sfedu.ru wrote:
> Hello.
> I have one test database, which was upgraded from 8.4 to 9.0. Now I've
> upgraded it to 9.1. I'm trying to create extension for hstore.
>
> db=# CREATE EXTENSION hstore WITH SCHEMA public FROM unpackaged;
> ERROR: function hstore_recv(internal) does not exist
>
> I suppose, that hstore_recv was added in 9.0, but I didn't update
> hstore extension after upgrading from 8.4 to 9.0. Is this assumption
> correct? How am I supposed to deal with this situation?
I think the idea is that you bring your schema up to match the 9.0
hstore module, just like you would when upgrading without extensions.
*then* you create extension ... from unpackaged to wrap it as an extension.
I get the impression the documentation could cover this better, as
people seem to (perhaps reasonably) assume that "from unpackaged" is for
upgrades from older versions of the contrib modules. It can do that, but
only if appropriate upgrade scripts are written for the older versions
of the modules.
--
Craig Ringer