Thread: *.sql contrib files contain unresolvable MODULE_PATHNAME

*.sql contrib files contain unresolvable MODULE_PATHNAME

From
Martin Pitt
Date:
Hello all,

In https://launchpad.net/bugs/835502 it was reported that the 9.1.1
contrib *.sql files contain the token "MODULE_PATHNAME", which is
unknown:

  psql test < /usr/share/postgresql/9.1/extension/intarray--1.0.sql

This fails with a ton of errors about the file "MODULE_PATHNAME" not
existing.

When I replace this with "$libdir/_int", it works:

  sed 's!MODULE_PATHNAME!$libdir/_int!g' /usr/share/postgresql/9.1/extensio=
n/intarray--1.0.sql | psql test

Is that something I'm doing wrong in the packaging, or should the
contrib Makefiles be fixed to do this substitution?

It doesn't only affect intarray, but pretty much all *.sql files.

Thanks for any insight,

Martin Pitt

--=20
Martin Pitt                        | http://www.piware.de
Ubuntu Developer (www.ubuntu.com)  | Debian Developer  (www.debian.org)

Re: *.sql contrib files contain unresolvable MODULE_PATHNAME

From
Stefan Kaltenbrunner
Date:
On 10/12/2011 09:53 AM, Martin Pitt wrote:
> Hello all,
>
> In https://launchpad.net/bugs/835502 it was reported that the 9.1.1
> contrib *.sql files contain the token "MODULE_PATHNAME", which is
> unknown:
>
>   psql test < /usr/share/postgresql/9.1/extension/intarray--1.0.sql
>
> This fails with a ton of errors about the file "MODULE_PATHNAME" not
> existing.
>
> When I replace this with "$libdir/_int", it works:
>
>   sed 's!MODULE_PATHNAME!$libdir/_int!g' /usr/share/postgresql/9.1/extension/intarray--1.0.sql | psql test
>
> Is that something I'm doing wrong in the packaging, or should the
> contrib Makefiles be fixed to do this substitution?
>
> It doesn't only affect intarray, but pretty much all *.sql files.

uh - the reason is that contrib is now packaged as extensions and that
you are supposed to use "CREATE EXTENSION intarray;" on the SQL level
instead of manually loading sql-scripts through psql.


Stefan