From: Bborie Park Date: Wed, 23 Apr 2014 16:16:51 +0000 (+0000) Subject: check before inserting records into spatial_ref_sys. ticket #2715 X-Git-Tag: 2.2.0rc1~1119 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=344943cd2b464692a4ba240a8f01d126312a10fd;p=postgis check before inserting records into spatial_ref_sys. ticket #2715 git-svn-id: http://svn.osgeo.org/postgis/trunk@12488 b70326c6-7e19-0410-871a-916f4a2858ee --- diff --git a/raster/test/regress/permitted_gdal_drivers.sql b/raster/test/regress/permitted_gdal_drivers.sql index ec285be88..1da358d37 100644 --- a/raster/test/regress/permitted_gdal_drivers.sql +++ b/raster/test/regress/permitted_gdal_drivers.sql @@ -3,8 +3,24 @@ WITH foo AS ( ) SELECT NULL FROM foo; SET postgis.gdal_enabled_drivers = 'GTiff PNG JPEG'; -INSERT INTO "spatial_ref_sys" ("srid","auth_name","auth_srid","srtext","proj4text") VALUES (4326,'EPSG',4326,'GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]','+proj=longlat +datum=WGS84 +no_defs '); -INSERT INTO "spatial_ref_sys" ("srid","auth_name","auth_srid","srtext","proj4text") VALUES (3857,'EPSG',3857,'PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"],AXIS["X",EAST],AXIS["Y",NORTH]]','+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs'); + +DO $$ +DECLARE + _srid int; +BEGIN + SELECT srid INTO _srid FROM spatial_ref_sys WHERE srid = 4326; + + IF _srid IS NULL THEN + INSERT INTO "spatial_ref_sys" ("srid","auth_name","auth_srid","srtext","proj4text") VALUES (4326,'EPSG',4326,'GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]','+proj=longlat +datum=WGS84 +no_defs '); + END IF; + + SELECT srid INTO _srid FROM spatial_ref_sys WHERE srid = 3857; + IF _srid IS NULL THEN + INSERT INTO "spatial_ref_sys" ("srid","auth_name","auth_srid","srtext","proj4text") VALUES (3857,'EPSG',3857,'PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"],AXIS["X",EAST],AXIS["Y",NORTH]]','+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs'); + END IF; + +END; +$$; SELECT short_name FROM st_gdaldrivers() WHERE upper(short_name) = 'VRT'; diff --git a/raster/test/regress/permitted_gdal_drivers_expected b/raster/test/regress/permitted_gdal_drivers_expected index 5497a5df0..f43daa6d7 100644 --- a/raster/test/regress/permitted_gdal_drivers_expected +++ b/raster/test/regress/permitted_gdal_drivers_expected @@ -1,3 +1,4 @@ +DO 4326 ERROR: RASTER_fromGDALRaster: Could not open bytea with GDAL. Check that the bytea is of a GDAL supported format ERROR: rt_band_load_offline_data: Cannot open offline raster: /etc/passwd