[postgis-users] Crasher in rc2

strk at refractions.net strk at refractions.net
Tue Mar 1 09:50:06 PST 2005


Markus, we also have problems with find_srid or similar plpgsql functions
which do not embed the schema name in the definition.
I'm pretty busy right now, so I can't check anything -- this is stuff
for 1.1.0 -- let's try getting 1.0.0 out first ;0
--strk;

On Tue, Mar 01, 2005 at 06:45:23PM +0100, Markus Schaber wrote:
> Hi, strk,
> 
> strk at refractions.net schrieb:
> 
> >>It should be possible having different directories, as postgresql uses
> >>full qualified file names. But I have to admit that you cannot simply
> >>use "make install" unmodified.
> > Since you pointed out... actually you can ;)
> > LPATH=/usr/src/postgis-modified make 
> 
> Okay - I used a search/replace on lwpostgis.sql :-)
> 
> Here's the proof - two different compilations of the same postgis
> version in two different schemas in the same database:
> 
> multipostgis=# select
> schabi.postgis_lib_build_date(),schabi.postgis_version(),postgres.postgis_lib_build_date(),postgres.postgis_version();
>  postgis_lib_build_date |            postgis_version            |
> postgis_lib_build_date |            postgis_version
> ------------------------+---------------------------------------+------------------------+---------------------------------------
>  2005-03-01 17:19:32    | 1.0 USE_GEOS=1 USE_PROJ=1 USE_STATS=1 |
> 2005-03-01 17:22:27    | 1.0 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
> (1 Zeile)
> 
> But, besides the library path, I also needed to comment out the lines
> 640-642 of lwpostgis.sql because the subselect returned more than one row.
> 
> UPDATE pg_opclass
>       SET opckeytype = (select oid from pg_type where typname = 'box2d')
>       WHERE opcname = 'gist_geometry_ops';
> 
> I'm afraid that this could break the GIST indices for schema users, we
> should constrain the subselect to current_schema(). The following should
> do this:
> 
> 
> UPDATE pg_opclass
>     SET opckeytype = (SELECT oid FROM pg_type
>                       WHERE typname = 'box2d'
>                       AND typnamespace=(SELECT oid FROM pg_namespace
>                                         WHERE nspname=current_schema()))
>     WHERE opcname = 'gist_geometry_ops'
>     AND opcnamespace = (SELECT oid from pg_namespace
>                         WHERE nspname=current_schema());
> 
> Strk, could you verify this?
> 
> Markus
> -- 
> markus schaber | dipl. informatiker
> logi-track ag | rennweg 14-16 | ch 8001 zürich
> phone +41-43-888 62 52 | fax +41-43-888 62 53
> mailto:schabios at logi-track.com | www.logi-track.com
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users



More information about the postgis-users mailing list