[postgis-users] ERROR: GEOS union() threw an error!
Ethan Alpert
ealpert at digitalglobe.com
Tue Oct 12 11:08:58 PDT 2004
Why does the following throw an error?
Error Msg:
spatialdb=> select geomunion(the_geom) from snaps where
stripid='101001000351ED00';
NOTICE: TopologyException: no outgoing dirEdge found (127.169,38.0556)
ERROR: GEOS union() threw an error!
Here's the Geometries:
spatialdb=> select catfrag, stripid,AsText(the_geom) from snaps where
stripid='101001000351ED00';
-[ RECORD 1
]-----------------------------------------------------------------------
------------------------------------------------------------------------
---------------------------
catfrag | 101001000351ED013757480
stripid | 101001000351ED00
astext | POLYGON((126.9405 38.2139166666667,127.171686111111
38.2092055555556,127.168805555556 38.0372638888889,126.941602777778
38.0439083333333,126.9405 38.2139166666667))
-[ RECORD 2
]-----------------------------------------------------------------------
------------------------------------------------------------------------
---------------------------
catfrag | 101001000351ED022377883
stripid | 101001000351ED00
astext | POLYGON((126.941597222222 38.0758111111111,127.169166666667
38.0698111111111,127.16855 37.9064833333333,126.942888888889
37.9145527777778,126.941597222222 38.0758111111111))
-[ RECORD 3
]-----------------------------------------------------------------------
------------------------------------------------------------------------
---------------------------
catfrag | 101001000351ED023757478
stripid | 101001000351ED00
astext | POLYGON((126.941597222222 38.0758111111111,127.169166666667
38.0698111111111,127.16855 37.9064833333333,126.942888888889
37.9145527777778,126.941597222222 38.0758111111111))
Here's where it get's odd:
spatialdb=> select geomunion(the_geom) from snaps where
catfrag='101001000351ED022377883' or catfrag='101001000351ED023757478'
or catfrag='101001000351ED013757480';
-[ RECORD 1
]-----------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
-----------------------------------------------------
geomunion | SRID=4326;POLYGON((126.9405
38.2139166666667,127.171686111111 38.2092055555556,127.169113088743
38.0556206842087,127.16855 37.9064833333333,126.942888888889
37.9145527777778,126.941852819554 38.0439010209725,126.941602777778
38.0439083333333,126.9405 38.2139166666667))
Why does this work when I manually query on the tables index? Note two
of the geometries are the same. If I delete either the geomunion works.
The geometries are all SRID=4326
I'm running postgres 7.4.3 and postgis 0.8.2
Time for an upgrade? Very odd behavior...IMHO
More information about the postgis-users
mailing list