[postgis-tickets] [PostGIS] #3146: ST_EffectiveArea possible 32-bit crasher

PostGIS trac at osgeo.org
Wed Jun 3 07:37:20 PDT 2015


#3146: ST_EffectiveArea possible 32-bit crasher
----------------------+---------------------------
  Reporter:  robe     |      Owner:  pramsey
      Type:  defect   |     Status:  new
  Priority:  blocker  |  Milestone:  PostGIS 2.2.0
 Component:  postgis  |    Version:  trunk
Resolution:           |   Keywords:
----------------------+---------------------------

Comment (by robe):

 Hmm well still crashes and yes crashes on ST_SimplifyVW.


 {{{
 SELECT ST_SimplifyVW(foo1.the_geom, 20.1) As result
                                                         FROM ((SELECT
 ST_GeomFromText('LINESTRING(1 2, 1 2)',4326) As the_geom
                         UNION ALL SELECT ST_MakeLine('SRID=4326;POINT(1
 2)'::geometry, 'SRID=4326;POINT EMPTY'::geometry) As the_geom ) ) As foo1
 LIMIT 3;

 }}}
 This is one of those annoying bugs I can only exercise under VC++ build
 and only on the 32-bit one at that.

 Here is the backtrace for the ST_SimplifyVW call crash:


 {{{
 (gdb) bt
 #0  0x006da63b in postgres!pfree ()
 #1  0x708bfd03 in destroy_effectivearea (ea=0x310eca8) at
 effectivearea.c:30
 #2  0x708c02de in ptarray_set_effective_area (inpts=<optimized out>,
     avoid_collaps=avoid_collaps at entry=2, set_area=set_area at entry=0,
     trshld=trshld at entry=20.100000000000001) at effectivearea.c:431
 #3  0x708c0616 in lwline_set_effective_area (trshld=20.100000000000001,
     set_area=0, iline=0x310ec30) at effectivearea.c:452
 #4  lwgeom_set_effective_area (igeom=igeom at entry=0x310ec30,
     set_area=set_area at entry=0, trshld=trshld at entry=20.100000000000001)
     at effectivearea.c:533
 #5  0x70883db9 in LWGEOM_SetEffectiveArea (fcinfo=0x310cfbc)
     at lwgeom_functions_analytic.c:97
 #6  0x004e70e4 in postgres!ExecProject ()
 #7  0x004e93c3 in postgres!ExecProject ()
 #8  0x004e588f in postgres!ExecProject ()
 #9  0x004f8420 in postgres!ExecResult ()
 #10 0x004e33e8 in postgres!ExecProcNode ()
 #11 0x004f4661 in postgres!ExecLimit ()
 #12 0x004e3596 in postgres!ExecProcNode ()
 #13 0x004e28ce in postgres!EvalPlanQualEnd ()
 #14 0x004e0bf6 in standard_ExecutorRun ()
 #15 0x005f4bbb in postgres!PortalRunFetch ()
 #16 0x005f4542 in postgres!PortalRun ()
 #17 0x005f27f9 in postgres!get_stats_option_name ()
 #18 0x005f0f4a in postgres!PostgresMain ()
 #19 0x005a33a0 in postgres!ShmemBackendArrayAllocation ()
 #20 0x00000001 in ?? ()
 #21 0x00eae008 in ?? ()
 #22 0x005a08c1 in postgres!SubPostmasterMain ()
 #23 0x00510610 in postgres!main ()
 }}}

--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/3146#comment:4>
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