Opened 13 years ago

Closed 13 years ago

#664 closed defect (fixed)

PointArray Side Effect

Reported by: colivier Owned by: pramsey
Priority: medium Milestone: PostGIS 2.0.0
Component: postgis Version: master
Keywords: Cc:

Description

Related to latest PointArray refactoring, some regress tests are wrong on Linux 64 bits

measures
*** measures_expected	Sun Nov 21 12:46:33 2010
--- /tmp/pgis_reg_26130/test_24_out	Sun Nov 21 20:22:07 2010
***************
*** 38,47 ****
  distancepoly4|0|28.3196045170126|LINESTRING(16 19,16 19)|LINESTRING(16 19,16 19)|LINESTRING(18 20,-1 -1)|LINESTRING(-1 -1,18 20)
  distancepoly5|0|26.1725046566048|LINESTRING(17 12,17 12)|LINESTRING(17 12,17 12)|LINESTRING(17 18,-1 -1)|LINESTRING(-1 -1,17 18)
  distancepoly6|0|32.5269119345812|LINESTRING(2 2,2 2)|LINESTRING(2 2,2 2)|LINESTRING(2 2,25 25)|LINESTRING(25 25,2 2)
! 3dDistancetest1|6.40312423743285|6.40312423743285|f|f|LINESTRING(1 1 1,3 2 7)|POINT(1 1 1)|LINESTRING(1 1 1,3 2 7)
! 3dDistancetest2|0|1.73205080756888|t|t|LINESTRING(1 1 1,1 1 1)|POINT(1 1 1)|LINESTRING(1 1 1,0 0 0)
! 3dDistancetest3|4.09994192757944|6.48074069840786|t|f|LINESTRING(1 1 1,0.61904761904762 -0.19047619047619 4.90476190476191)|POINT(1 1 1)|LINESTRING(1 1 1,5 2 6)
! 3dDistancetest4|2|10.0498756211209|t|f|LINESTRING(1 1 3,1 1 1)|POINT(1 1 3)|LINESTRING(5 7 8,1 1 1)
  ERROR:  Linestring to Linestring distance measures is not yet supported for 3d
  emptyPolyArea|0
  emptyLineArea|0
--- 38,47 ----
  distancepoly4|0|28.3196045170126|LINESTRING(16 19,16 19)|LINESTRING(16 19,16 19)|LINESTRING(18 20,-1 -1)|LINESTRING(-1 -1,18 20)
  distancepoly5|0|26.1725046566048|LINESTRING(17 12,17 12)|LINESTRING(17 12,17 12)|LINESTRING(17 18,-1 -1)|LINESTRING(-1 -1,17 18)
  distancepoly6|0|32.5269119345812|LINESTRING(2 2,2 2)|LINESTRING(2 2,2 2)|LINESTRING(2 2,25 25)|LINESTRING(25 25,2 2)
! ERROR:  getPoint_internal called outside of ptarray range (n=0, pa.npoints=5, pa.maxpoints=-1)
! ERROR:  getPoint_internal called outside of ptarray range (n=0, pa.npoints=5, pa.maxpoints=-1)
! ERROR:  getPoint_internal called outside of ptarray range (n=0, pa.npoints=5, pa.maxpoints=-1)
! ERROR:  getPoint_internal called outside of ptarray range (n=0, pa.npoints=5, pa.maxpoints=-1)
  ERROR:  Linestring to Linestring distance measures is not yet supported for 3d
  emptyPolyArea|0
  emptyLineArea|0


in_gml
*** in_gml_expected	Sun Nov 21 12:46:33 2010
--- /tmp/pgis_reg_26130/test_37_out	Sun Nov 21 20:22:08 2010
***************
*** 281,287 ****
  ERROR:  invalid GML representation
  data_1|LINESTRING(1 2,3 4,5 6,7 8,9 10,11 12)
  data_2|LINESTRING(1 2,3 4,5 6,7 8,9 10)
! xlink_1|LINESTRING(1 2,1 2,3 4)
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
--- 281,287 ----
  ERROR:  invalid GML representation
  data_1|LINESTRING(1 2,3 4,5 6,7 8,9 10,11 12)
  data_2|LINESTRING(1 2,3 4,5 6,7 8,9 10)
! xlink_1|LINESTRING(1 2,3 4)
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
***************
*** 291,297 ****
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
! xlink_11|LINESTRING(1 2,1 2,3 4)
  xlink_12|GEOMETRYCOLLECTION(POINT(1 2),POINT(1 2))
  xlink_13|GEOMETRYCOLLECTION(LINESTRING(1 2,3 4),LINESTRING(1 2,3 4))
  xlink_14|GEOMETRYCOLLECTION(LINESTRING(1 2,3 4),LINESTRING(1 2,3 4))
--- 291,297 ----
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
  ERROR:  invalid GML representation
! xlink_11|LINESTRING(1 2,3 4)
  xlink_12|GEOMETRYCOLLECTION(POINT(1 2),POINT(1 2))
  xlink_13|GEOMETRYCOLLECTION(LINESTRING(1 2,3 4),LINESTRING(1 2,3 4))
  xlink_14|GEOMETRYCOLLECTION(LINESTRING(1 2,3 4),LINESTRING(1 2,3 4))


tickets:
*** tickets_expected	Sun Nov 21 12:46:33 2010
--- /tmp/pgis_reg_26130/test_47_out	Sun Nov 21 20:22:09 2010
***************
*** 24,30 ****
  HINT:  "...IRCULARSTRING(0 0,1 1,1 0),(1 0,30 6)" <-- parse error at position 52 within geometry
  #145a|0107000020E610000000000000
  #145b|0
! #146|0|t|GEOMETRYCOLLECTION(LINESTRING(0 0,-1 -1),MULTIPOINT(1 2,2 3))
  ERROR:  geometry contains non-closed rings
  #157|ST_Polygon|POLYGON
  #157|ST_Point|POINT
--- 24,30 ----
  HINT:  "...IRCULARSTRING(0 0,1 1,1 0),(1 0,30 6)" <-- parse error at position 52 within geometry
  #145a|0107000020E610000000000000
  #145b|0
! ERROR:  getPoint_internal called outside of ptarray range (n=0, pa.npoints=5, pa.maxpoints=-1)
  ERROR:  geometry contains non-closed rings
  #157|ST_Polygon|POLYGON
  #157|ST_Point|POINT

Attachments (1)

pgis_reg_16551.tar.gz (4.3 KB ) - added by nicklas 13 years ago.
some failed regression tests

Download all attachments as: .zip

Change History (6)

comment:1 by nicklas, 13 years ago

I looked some into the 3DDistance case and found that the problem was not in the distance functions, but in ST_Expand.

The failure is trigged by:

SELECT ST_Expand('POINT(1 1)'::geometry,5);

The regression tests passes if ST_3DDWithin test is replaced by _ST_3DDWithin

/Nicklas

comment:2 by pramsey, 13 years ago

Well, I just fixed ST_Expand, so has this problem gone away?

comment:3 by nicklas, 13 years ago

measures passes now and the old failure in tickets.

But there is a new one in tickets:

 *** tickets_expected	Mon Nov 22 19:57:27 2010
--- /tmp/pgis_reg_16551/test_47_out	Mon Nov 22 22:39:16 2010
***************
*** 21,27 ****
  ERROR:  lwgeom_grid: Unsupported geometry type: CircularString
  #124a|COMPOUNDCURVE(CIRCULARSTRING(0 0,1 1,1 0),(1 0,30 5),CIRCULARSTRING(30 5,34 56,67 89))
  ERROR:  incontinuous compound curve
! HINT:  "...IRCULARSTRING(0 0,1 1,1 0),(1 0,30 6)" <-- parse error at position 52 within geometry
  #145a|0107000020E610000000000000
  #145b|0
  #146|0|t|GEOMETRYCOLLECTION(LINESTRING(0 0,-1 -1),MULTIPOINT(1 2,2 3))
--- 21,27 ----
  ERROR:  lwgeom_grid: Unsupported geometry type: CircularString
  #124a|COMPOUNDCURVE(CIRCULARSTRING(0 0,1 1,1 0),(1 0,30 5),CIRCULARSTRING(30 5,34 56,67 89))
  ERROR:  incontinuous compound curve
! HINT:  "...RCULARSTRING(0 0,1 1,1 0),(1 0,30 6)," <-- parse error at position 53 within geometry
  #145a|0107000020E610000000000000
  #145b|0
  #146|0|t|GEOMETRYCOLLECTION(LINESTRING(0 0,-1 -1),MULTIPOINT(1 2,2 3))

An extra "," in the parse-error.

There is some more failures at least one of them seems connected. I add all of them as a tar.gz-file

/Nicklas

by nicklas, 13 years ago

Attachment: pgis_reg_16551.tar.gz added

some failed regression tests

comment:4 by pramsey, 13 years ago

Fixed in_gml and tickets, I now regress cleanly again.

comment:5 by colivier, 13 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.