[postgis-tickets] [PostGIS] #3122: Topology totopgeom crashes on PostgreSQL 9.5

PostGIS trac at osgeo.org
Fri May 22 19:42:11 PDT 2015


#3122: Topology totopgeom crashes on PostgreSQL 9.5
-----------------------+---------------------------
  Reporter:  robe      |      Owner:  strk
      Type:  defect    |     Status:  new
  Priority:  blocker   |  Milestone:  PostGIS 2.2.0
 Component:  topology  |    Version:  trunk
Resolution:            |   Keywords:  pg9.5
-----------------------+---------------------------

Comment (by robe):

 Just reran debbie, and Tom's fix noted here


 ----

 {{{
 > Since May 9th our Debian build bot has been crashing on one of our
 PostGIS
 > regression tests.

 > I tried the same exercise on my Mingw-w64 GCC 4.8.3 (with latest
 PostgreSQL
 > 9.5 - (dated 5/22) and also have crashing in same spot.

 > I isoloated the offending query in PostGIS to this:

 > with inp as ( select 'MULTIPOINT((0 -10),(5 -10))' ::geometry as g)
 > select St_AsText(g), ST_Equals(totopogeom(g, 'tt', 1)::geometry, g) from
 > inp;

 > Which produces a gdb backtrace:

 > Program received signal SIGSEGV, Segmentation fault.
 > [Switching to Thread 4252.0x3cf4]
 > array_contain_compare (array1=array1(at)entry=0xdd94200,
 > array2=array2(at)entry=0xde69db8, collation=<optimized out>,
 > matchall=matchall(at)entry=1 '\001', fn_extra=0xdeac920) at
 arrayfuncs.c:4116
 > 4116                            if (isnull2)

 Hm.  Just guessing from the location of the crash, but I'll bet I
 overlooked the case of an expanded array with no nulls, ie should be

 -                       bool            isnull2 = nulls2[j];
 +                       bool            isnull2 = nulls2 ? nulls2[j] :
 false;

 I'll commit that in a few minutes, please confirm whether it fixes this
 for you.

                         regards, tom lane

 }}}



 ----

 Fixed the issue.

--
Ticket URL: <http://trac.osgeo.org/postgis/ticket/3122#comment:3>
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