[postgis-tickets] [PostGIS] #3501: [raster] add raster constraint max extent exceeds array size limit
PostGIS
trac at osgeo.org
Fri Mar 11 09:59:55 PST 2016
#3501: [raster] add raster constraint max extent exceeds array size limit
-----------------------+---------------------------
Reporter: hypostase | Owner: dustymugs
Type: defect | Status: new
Priority: medium | Milestone: PostGIS 2.2.2
Component: raster | Version: 2.2.x
Keywords: |
-----------------------+---------------------------
When adding raster constraints the maximum extent constrain appears to
require an array exceeding the limit
ERROR: array size exceeds the maximum allowed (1073741823)
CONTEXT: SQL statement "SELECT
st_ashexewkb(st_envelope(st_collect(st_envelope(rast)))) FROM
cjsmith.dtm2015_50x50"
The max extent is calculated successfully for the same raster when using
64x64 tiles (in a 8M row table), but fails are 50x50 (13M rows) and at
32x32 (32M)
Postgres Version
select version();
version
--------------------------------------------------------------------------------
-------------------------
PostgreSQL 9.5.1 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5
20150623 (
Red Hat 4.8.5-4), 64-bit
(1 row)
PostGIS version
select postgis_full_version();
post
gis_full_version
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
------------
POSTGIS="2.2.1 r14555" GEOS="3.5.0-CAPI-1.9.0 r4084" PROJ="Rel. 4.8.0, 6
March
2012" GDAL="GDAL 1.11.4, released 2016/01/25" LIBXML="2.9.1"
LIBJSON="0.11" TOPO
LOGY RASTER
(1 row)
hmdb=> select count(*) from dtm2015_50x50;
count
----------
13360464
(1 row)
hmdb=> select count(*) from dtm2015;
count
---------
8152320
(1 row)
Driver: GTiff/GeoTIFF
Files: dtm2015.27700.tif
Size is 135168, 247040
Coordinate System is:
PROJCS["OSGB 1936 / British National Grid",
GEOGCS["OSGB 1936",
DATUM["OSGB_1936",
SPHEROID["Airy 1830",6377563.396,299.3249646000044,
AUTHORITY["EPSG","7001"]],
AUTHORITY["EPSG","6277"]],
PRIMEM["Greenwich",0],
UNIT["degree",0.0174532925199433],
AUTHORITY["EPSG","4277"]],
PROJECTION["Transverse_Mercator"],
PARAMETER["latitude_of_origin",49],
PARAMETER["central_meridian",-2],
PARAMETER["scale_factor",0.9996012717],
PARAMETER["false_easting",400000],
PARAMETER["false_northing",-100000],
UNIT["metre",1,
AUTHORITY["EPSG","9001"]],
AUTHORITY["EPSG","27700"]]
Origin = (-4000.000000000000000,1235005.000000000000000)
Pixel Size = (5.000000000000000,-5.000000000000000)
Metadata:
AREA_OR_POINT=Area
Image Structure Metadata:
INTERLEAVE=BAND
Corner Coordinates:
Upper Left ( -4000.000, 1235005.000) ( 9d25'58.40"W, 60d47'32.38"N)
Lower Left ( -4000.000, -195.000) ( 7d36'41.51"W, 49d45'42.36"N)
Upper Right ( 671840.000, 1235005.000) ( 3d 0'53.82"E, 60d54'16.94"N)
Lower Right ( 671840.000, -195.000) ( 1d46'51.89"E, 49d50'10.01"N)
Center ( 333920.000, 617405.000) ( 3d 2'41.10"W, 55d26'45.71"N)
Band 1 Block=135168x1 Type=Float32, ColorInterp=Gray
NoData Value=-3.40282306073709653e+38
hmdb=> select addrasterconstraints('dtm2015_50x50'::name, 'rast'::name);
NOTICE: Adding maximum extent constraint
CONTEXT: PL/pgSQL function
addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean)
line 53 at RETURN
ERROR: array size exceeds the maximum allowed (1073741823)
CONTEXT: SQL statement "SELECT
st_ashexewkb(st_envelope(st_collect(st_envelope(rast)))) FROM
cjsmith.dtm2015_50x50"
PL/pgSQL function _add_raster_constraint_extent(name,name,name) line 20 at
EXECUTE
PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 104 at
assignment
PL/pgSQL function
addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean)
line 53 at RETURN
--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/3501>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.
More information about the postgis-tickets
mailing list