Re: Extensions vs PGXS' MODULE_PATHNAME handling

Dimitri Fontaine <dimitri@2ndquadrant.fr>

From: Dimitri Fontaine <dimitri@2ndQuadrant.fr>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Dimitri Fontaine <dimitri@2ndQuadrant.fr>, pgsql-hackers@postgresql.org
Date: 2011-02-16T20:09:17Z
Lists: pgsql-hackers
Tom Lane <tgl@sss.pgh.pa.us> writes:
> [ scratches head ... ]  Why is your version generating so many
> unnecessary @extschema@ uses?

I just ran create table tomlist as select your query and create table
dimlist as select my query, then:

dim=# select * from tomlist except select * from dimlist;
                                               desc                                               
--------------------------------------------------------------------------------------------------
 ALTER EXTENSION hstore ADD operator family @extschema@.gin_hstore_ops for access method gin;
 ALTER EXTENSION hstore ADD operator class @extschema@.btree_hstore_ops for access method btree;
 ALTER EXTENSION hstore ADD operator family @extschema@.hash_hstore_ops for access method hash;
 ALTER EXTENSION hstore ADD operator class @extschema@.gist_hstore_ops for access method gist;
 ALTER EXTENSION hstore ADD operator family @extschema@.gist_hstore_ops for access method gist;
 ALTER EXTENSION hstore ADD cast from text[] to @extschema@.hstore;
 ALTER EXTENSION hstore ADD operator class @extschema@.gin_hstore_ops for access method gin;
 ALTER EXTENSION hstore ADD operator family @extschema@.btree_hstore_ops for access method btree;
 ALTER EXTENSION hstore ADD operator class @extschema@.hash_hstore_ops for access method hash;
(9 rows)

No difference on @extschema@ use here.

dim=# select t.desc, d.desc from tomlist t natural join dimlist d limit 1;
-[ RECORD 1 ]---------------------------------------------
desc | ALTER EXTENSION hstore ADD type @extschema@.hstore;
desc | ALTER EXTENSION hstore ADD type @extschema@.hstore;

dim=# select t.desc, d.desc from tomlist t natural join dimlist d limit 1 offset 10;
-[ RECORD 1 ]---------------------------------------------------------------------------
desc | ALTER EXTENSION hstore ADD function @extschema@.slice(@extschema@.hstore,text[]);
desc | ALTER EXTENSION hstore ADD function @extschema@.slice(@extschema@.hstore,text[]);

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