[postgis-users] ST_contains() throws an error
Martin Davis
mbdavis at refractions.net
Mon Dec 31 14:18:55 PST 2007
It seems to me that you can't rely on the query engine either evaluating
the where conditions in the order you specify them or using
short-circuit evaluation. Perhaps try rewriting the query:
select count(*) from
(select * from temp_places buffer
where st_isvalid(new_poly) = true and st_isvalid(redfin_poly) = true)
)
where not st_contains(t1.new_poly, t1.redfin_poly)
James DeMichele wrote:
>
> Hi,
>
> I have a table with 27000 records and each record has 2 geometry
> columns. The first column has an original MULTIPOLYGON (named
> original_poly), and the second column has some tweaks (buffer and
> simplification) applied to the original data, and is also stored as a
> MULTIPOLYGON (named new_poly).
>
> I want to get the list of these rows where the new_poly does NOT
> contain the original_poly. The first time I ran it, I got this:
> “ERROR: GEOS contains() threw an error!”
>
> So, then I thought that maybe some of the polygons were not valid.
> There were 6 invalid polygons, so then I tried running this query:
>
> select count(*)
>
> from temp_places_buffer
>
> where(st_isvalid(new_poly) = true and st_isvalid(redfin_poly) = true)
>
> and not st_contains(t1.new_poly, t1.redfin_poly);
>
> Unfortunately, I still get this error:
>
> ERROR: GEOS contains() threw an error!
>
> What are possible reasons that this would still be throwing an error,
> other than invalid polygons, since the query should now only be
> calculating st_contains on valid polygons?
>
> I am running this version:
>
> postgis_version
>
> ---------------------------------------
>
> 1.3 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
>
> Thanks.
>
> -James
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
--
Martin Davis
Senior Technical Architect
Refractions Research, Inc.
(250) 383-3022
More information about the postgis-users
mailing list