[postgis-tickets] [PostGIS] #2709: Crash (more often under high loads)

PostGIS trac at osgeo.org
Wed Apr 9 00:37:52 PDT 2014


#2709: Crash (more often under high loads)
----------------------+-----------------------------------------------------
 Reporter:  bshankle  |       Owner:  pramsey      
     Type:  defect    |      Status:  new          
 Priority:  blocker   |   Milestone:  PostGIS 2.1.3
Component:  postgis   |     Version:  2.1.x        
 Keywords:            |  
----------------------+-----------------------------------------------------
 Hi, I will apologize in advance if I don't provide enough information at
 first, but I will try to provide enough to help in creating a repro for
 those who feel they have time to work on this.

 Repro steps:
 1. Add the natural earth file ne_10m_land using shp2pgsql (put it in 4326)
 2. Issue this query from 20 different connections simultaneously:
 SELECT
 ST_AsText(ST_Intersection(ST_MakeValid(ST_SimplifyPreserveTopology(ST_Force_2d(result.geom),
 0.00456872)), GeomFromEWKT('SRID=4326; POLYGON((-98.437499999999957367
 33.13749663089078723,-97.031249999999971578
 33.13749663089078723,-97.031249999999971578
 34.307087880329206087,-98.437499999999957367
 34.307087880329206087,-98.437499999999957367 33.13749663089078723))'))) as
 geom FROM (select geom from ne_10m_land) as result  WHERE ST_Intersects(
 GeomFromEWKT('SRID=4326; POLYGON((-98.437499999999957367
 33.13749663089078723,-97.031249999999971578
 33.13749663089078723,-97.031249999999971578
 34.307087880329206087,-98.437499999999957367
 34.307087880329206087,-98.437499999999957367 33.13749663089078723))'),
 result.geom)

 OS:
 CentOS release 6.5 (Final)
 but I can make it crash on Ubuntu 12.04 and OSX as well....

 PostGIS full version:
 "POSTGIS="2.1.1 r12113" GEOS="3.4.2-CAPI-1.8.2 r3921" PROJ="Rel. 4.8.0, 6
 March 2012" GDAL="GDAL 1.10.1, released 2013/08/26" LIBXML="2.7.6"
 TOPOLOGY RASTER"

 PostgreSQL log:
 < 2014-04-09 03:08:39.591 EDT >DETAIL:  Failed process was running: SELECT
 ST_AsText(ST_Intersection(ST_MakeValid(ST_SimplifyPreserveTopology(ST_Force_2d(result.geom),
 0.00456872)), GeomFromEWKT('SRID=4326; POLYGON((-98.437499999999957367
 33.13749663089078723,-97.031249999999971578
 33.13749663089078723,-97.031249999999971578
 34.307087880329206087,-98.437499999999957367
 34.307087880329206087,-98.437499999999957367 33.13749663089078723))'))) as
 geom FROM (select geom from ne_10m_land) as result  WHERE ST_Intersects(
 GeomFromEWKT('SRID=4326; POLYGON((-98.437499999999957367
 33.13749663089078723,-97.031249999999971578
 33.13749663089078723,-97.031249999999971578
 34.307087880329206087,-98.437499999999957367
 34.307087880329206087,-98.437499999999957367 33.13749663089078723))'),
 result.geom)
 < 2014-04-09 03:08:39.591 EDT >LOG:  terminating any other active server
 processes
 < 2014-04-09 03:08:39.591 EDT >WARNING:  terminating connection because of
 crash of another server process
 < 2014-04-09 03:08:39.591 EDT >DETAIL:  The postmaster has commanded this
 server process to roll back the current transaction and exit, because
 another server process exited abnormally and possibly corrupted shared
 memory.

 Some background: we have a vector map design tool called MapShop
 (http://www.ba3.us/index.php?page=pages/tutorials-mapshop&id=0). We never
 really meant this to be a public tool, but it seems to have a bit of a
 following now, despite being very difficult to set up all the pieces. It
 lets you style data directly from PostGIS and show it right in our mapping
 engine, bypassing the raster phase altogether.

 When the map design is complete, we have a tool called metool (soon to be
 renamed to AltusVector) which generates a bunch of vector tiles for our
 mapping engine.

 I think PostGIS is absolutely amazing and I'd like to help fix this issue.

 I'm a proficient C++ programmer and I'm capable of digging into this as
 deep as you guys need me to. Is there a starter debugging document
 somewhere I can begin with?

 Thanks,
 Bruce Shankle
 Founder
 http://www.ba3.us

-- 
Ticket URL: <http://trac.osgeo.org/postgis/ticket/2709>
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-tickets mailing list