[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