[postgis-tickets] [PostGIS] #2257: totally non-sensical regress failure with empty tickets.sql

PostGIS trac at osgeo.org
Sat Apr 6 10:11:27 PDT 2013


#2257: totally non-sensical regress failure with empty tickets.sql
-------------------------+--------------------------------------------------
 Reporter:  robe         |       Owner:  robe         
     Type:  defect       |      Status:  new          
 Priority:  medium       |   Milestone:  PostGIS 2.1.0
Component:  postgis      |     Version:  trunk        
 Keywords:  mingw64-w32  |  
-------------------------+--------------------------------------------------

Comment(by dustymugs):

 I think this might be a compound issue.  In looking at the code for
 lwgeom_eq() in postgis/lwgeom_btree.c, it is failing on the second if/else
 evaluation around line #195.  Both input geometries result in the
 variables empty1 and empty2 being TRUE.

 The problem is that the second test compares the coordinates for the
 boxes, which are uninitialized (so says valgrind when running in Linux
 64-bit)...

 Adding some additional debug output...
 {{{
 POSTGIS_DEBUGF(3, "empty1, empty2 = %d, %d", empty1, empty2);
 POSTGIS_DEBUGF(4, "%f ~ %f, %f ~ %f, %f ~ %f, %f ~ %f",
         box1.xmin, box2.xmin, box1.ymin, box2.ymin, box1.xmax, box2.xmax,
 box1.ymax, box2.ymax);
 }}}

 results in...

 {{{
 NOTICE:  [lwgeom_btree.c:lwgeom_eq:189] empty1, empty2 = 1, 1
 NOTICE:  [lwgeom_btree.c:lwgeom_eq:191] 0.000000 ~ 0.000000, 0.000000 ~
 0.000000
 , 0.000000 ~ 1.#INF00, 0.000000 ~ 0.000000
  ?column?
 ----------
  f
 (1 row)
 }}}

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