CREATE OR REPLACE FUNCTION _st_intersects(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS 'MODULE_PATHNAME', 'RASTER_intersects'
- LANGUAGE 'c' IMMUTABLE STRICT
+ LANGUAGE 'c' IMMUTABLE STRICT _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_intersects(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_intersects(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._st_intersects($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_intersects(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_intersects($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
SELECT @extschema@.ST_Collect(t.geom) INTO _geom FROM @extschema@.ST_PixelAsPolygons(rast, nband) AS t;
RETURN @extschema@.ST_Intersects(geom, _geom);
END;
- $$ LANGUAGE 'plpgsql' IMMUTABLE
+ $$ LANGUAGE 'plpgsql' IMMUTABLE _PARALLEL
COST 1000;
-- This function can not be STRICT
CREATE OR REPLACE FUNCTION st_intersects(geom geometry, rast raster, nband integer DEFAULT NULL)
RETURNS boolean AS
$$ SELECT $1 OPERATOR(@extschema@.&&) $2::geometry AND @extschema@._st_intersects($1, $2, $3); $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION st_intersects(rast raster, geom geometry, nband integer DEFAULT NULL)
RETURNS boolean
AS $$ SELECT $1::geometry OPERATOR(@extschema@.&&) $2 AND @extschema@._st_intersects($2, $1, $3) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_intersects(rast raster, nband integer, geom geometry)
RETURNS boolean
AS $$ SELECT $1::geometry OPERATOR(@extschema@.&&) $3 AND @extschema@._st_intersects($3, $1, $2) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION st_overlaps(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_overlaps(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._ST_overlaps($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_overlaps(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_overlaps($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION _st_touches(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS 'MODULE_PATHNAME', 'RASTER_touches'
- LANGUAGE 'c' IMMUTABLE STRICT
+ LANGUAGE 'c' IMMUTABLE STRICT _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_touches(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_touches(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._st_touches($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_touches(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_touches($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION st_contains(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_contains(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._st_contains($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_contains(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_contains($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION _st_containsproperly(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS 'MODULE_PATHNAME', 'RASTER_containsProperly'
- LANGUAGE 'c' IMMUTABLE STRICT
+ LANGUAGE 'c' IMMUTABLE STRICT _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_containsproperly(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_containsproperly(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._st_containsproperly($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_containsproperly(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_containsproperly($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION _st_covers(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS 'MODULE_PATHNAME', 'RASTER_covers'
- LANGUAGE 'c' IMMUTABLE STRICT
+ LANGUAGE 'c' IMMUTABLE STRICT _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_covers(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_covers(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._st_covers($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_covers(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_covers($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION _st_coveredby(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS 'MODULE_PATHNAME', 'RASTER_coveredby'
- LANGUAGE 'c' IMMUTABLE STRICT
+ LANGUAGE 'c' IMMUTABLE STRICT _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_coveredby(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_coveredby(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._st_coveredby($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_coveredby(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_coveredby($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION _st_within(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT @extschema@._st_contains($3, $4, $1, $2) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_within(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT $1 OPERATOR(@extschema@.&&) $3 AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._st_within(@extschema@.st_convexhull($1), @extschema@.st_convexhull($3)) ELSE @extschema@._st_contains($3, $4, $1, $2) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_within(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT @extschema@.st_within($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION _st_dwithin(rast1 raster, nband1 integer, rast2 raster, nband2 integer, distance double precision)
RETURNS boolean
AS 'MODULE_PATHNAME', 'RASTER_dwithin'
- LANGUAGE 'c' IMMUTABLE STRICT
+ LANGUAGE 'c' IMMUTABLE STRICT _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_dwithin(rast1 raster, nband1 integer, rast2 raster, nband2 integer, distance double precision)
RETURNS boolean
AS $$ SELECT $1::geometry OPERATOR(@extschema@.&&) ST_Expand(ST_ConvexHull($3), $5) AND $3::geometry OPERATOR(@extschema@.&&) ST_Expand(ST_ConvexHull($1), $5) AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._ST_dwithin(st_convexhull($1), st_convexhull($3), $5) ELSE @extschema@._ST_dwithin($1, $2, $3, $4, $5) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_dwithin(rast1 raster, rast2 raster, distance double precision)
RETURNS boolean
AS $$ SELECT @extschema@.st_dwithin($1, NULL::integer, $2, NULL::integer, $3) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION _st_dfullywithin(rast1 raster, nband1 integer, rast2 raster, nband2 integer, distance double precision)
RETURNS boolean
AS 'MODULE_PATHNAME', 'RASTER_dfullywithin'
- LANGUAGE 'c' IMMUTABLE STRICT
+ LANGUAGE 'c' IMMUTABLE STRICT _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_dfullywithin(rast1 raster, nband1 integer, rast2 raster, nband2 integer, distance double precision)
RETURNS boolean
AS $$ SELECT $1::geometry OPERATOR(@extschema@.&&) ST_Expand(ST_ConvexHull($3), $5) AND $3::geometry OPERATOR(@extschema@.&&) ST_Expand(ST_ConvexHull($1), $5) AND CASE WHEN $2 IS NULL OR $4 IS NULL THEN @extschema@._ST_dfullywithin(st_convexhull($1), st_convexhull($3), $5) ELSE @extschema@._ST_dfullywithin($1, $2, $3, $4, $5) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_dfullywithin(rast1 raster, rast2 raster, distance double precision)
RETURNS boolean
AS $$ SELECT st_dfullywithin($1, NULL::integer, $2, NULL::integer, $3) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
CREATE OR REPLACE FUNCTION st_disjoint(rast1 raster, nband1 integer, rast2 raster, nband2 integer)
RETURNS boolean
AS $$ SELECT CASE WHEN $2 IS NULL OR $4 IS NULL THEN st_disjoint(st_convexhull($1), st_convexhull($3)) ELSE NOT @extschema@._ST_intersects($1, $2, $3, $4) END $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
CREATE OR REPLACE FUNCTION st_disjoint(rast1 raster, rast2 raster)
RETURNS boolean
AS $$ SELECT st_disjoint($1, NULL::integer, $2, NULL::integer) $$
- LANGUAGE 'sql' IMMUTABLE
+ LANGUAGE 'sql' IMMUTABLE _PARALLEL
COST 1000;
-----------------------------------------------------------------------
RETURN rtn;
END;
- $$ LANGUAGE 'plpgsql' STABLE;
+ $$ LANGUAGE 'plpgsql' STABLE _PARALLEL;
CREATE OR REPLACE FUNCTION st_intersection(
rast1 raster, band1 int,