[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