[postgis-users] Intersects() and large datasets: error?
Romi Hardiyanto
rodin at ewesewes.net
Wed Sep 22 09:15:48 PDT 2004
Perhaps some of your geometries is not valid. How about running isvalid
first:
SELECT col1,col2 FROM table1 where isvalid(pgpoly) <> true;
I think, you should fix those geometries (if any) before running any
geos-related function (I am using JTS to fix them).
Romi H
Hubert Fröhlich wrote:
> Hi list,
>
> I am working with PostgreSQL 7.4.1, Postgis 0.8.2 and GEOS 1.0.0 .
>
> I have a table with some columns and a geometry column for MULTIPOLYGONs
>
> I try to test the scenario "give me the geometry containing a point with
> given coordinates (borders included)" with some SQL statement like
>
> select col1, col2 from table1 where pgpoly &&
> geometryfromtext('POINT(4427268.73 5477865.96))', 31494) and
> intersects(geometryfromtext('POINT(4427268.73 5477865.96))', 31494),
> pgpoly);
>
> When the table is filled with a sub-dataset (ca. 80 000 multipolygons)
> of my final data, everything works fine.
>
> When I use my dataset (ca. 10 mill. multipolygons) , I get errors like
>
> NOTICE: TopologyException: side location conflict
> (4.42661e+06,5.47702e+06)
> ERROR: GEOS intersects() threw an error!
>
> The box overlap alone
>
> select col1, col2 from table1 where pgpoly &&
> geometryfromtext('POINT(4427268.73 5477865.96))', 31494)
>
> works properly.
> What has gone wrong?
>
> Regards,
> Hubert
>
More information about the postgis-users
mailing list