[postgis-devel] [PostGIS] #1735: ST_MakeValid: exception on geometry and crash
PostGIS
trac at osgeo.org
Thu Mar 29 02:23:27 PDT 2012
#1735: ST_MakeValid: exception on geometry and crash
-----------------------+----------------------------------------------------
Reporter: aperi2007 | Owner: pramsey
Type: defect | Status: new
Priority: medium | Milestone: PostGIS 2.0.0
Component: postgis | Version: trunk
Keywords: |
-----------------------+----------------------------------------------------
Hi,
try-ing to apply ST_MakeValid on all geometries of a table apply-ing this
query:
{{{
update gb.refresh_2010 set geometry2 =
ST_CollectionExtract(ST_Force_Collection(ST_MakeValid(geometry)),3);
The table has two geometry field (geometry and geometry2).
Geometry2 is multipolygon.
}}}
The error I have is this:[[BR]]
>[Errore] Righe script: 1-7 -------------------------
ERROR: IllegalArgumentException: Operation not supported by
GeometryCollection
Riga: 1
Avvertimenti: --->
W (1): GEOSBoundary('GEOMETRYCOLLECTION(LINESTRING(1634953.49423
4773448.36241,1634954.48166 4773448.34473),POLYGON((1635000
4773453.81109,1634993.92191 4773452.03831,1634989.59971
4773451.2279,1634980.41727 4773447.19096,1634975.125
4773447.975,1634955.625 4773447.975,1634953.49423
4773448.36241,1634953.49423 4773448.36241,1634953.49423
4773448.36241,1634953.49423 4773448.36241,1634944.625
4773449.975,1634944.2166 4773460.41257,1634963.39637 4773470.6778,1635000
4773490.85092,1635000 4773453.81109)),POLYGON((1634954.48166
4773448.34473,1634955.46909 4773448.32704,1634955.46909
4773448.32704,1634954.48166 4773448.34473)))') threw an error:
IllegalArgumentException: Operation not supported by GeometryCollection
<---
[Eseguito: 28/03/2012 22.26:08] [Esecuzione: 0ms]
-----[[BR]]
I'm using the postgis:[[BR]]
POSTGIS="2.0.0beta4 r9521" GEOS="3.3.3dev-CAPI-1.7.3" PROJ="Rel. 4.8.0, 6
March 2012" GDAL="GDAL 1.9.0, released 2011/12/29" LIBXML="2.7.8"
LIBJSON="UNKNOWN" TOPOLOGY RASTER
[[BR]]
On windows 7
----
After this , I try to another execution but postgis was crash.[[BR]]
This is the log.
[[BR]]
{{{
2012-03-28 23:14:19 CEST STATEMENT: select (geometry) from
gb.refresh_2010 where st_isvalid(geometry)=false
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
EdgeRing::getRingInternal: IllegalArgumentException: Invalid number of
points in LinearRing found 3 - must be 0 or >= 4
Assertion failed: 0 != g, file geos_ts_c.cpp, line 2150
This application has requested the Runtime to terminate it in an unusual
way.
Please contact the application's support team for more information.
2012-03-28 23:15:30 CEST LOG: server process (PID 472) exited with exit
code 3
2012-03-28 23:15:30 CEST LOG: terminating any other active server
processes
}}}
--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/1735>
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-devel
mailing list