Opened 6 years ago

Closed 5 years ago

#4138 closed defect (worksforme)

PostGIS 2.5.0beta1 fails tests on MIPS64EL

Reported by: komzpa Owned by: pramsey
Priority: medium Milestone: PostGIS Fund Me
Component: postgis Version: master
Keywords: Cc:

Description

https://buildd.debian.org/status/fetch.php?pkg=postgis&arch=mips64el&ver=2.5.0~beta1%2Bdfsg-1~exp2&stamp=1531892752&raw=0

 ### /tmp/pgis_reg/test_94_diff ###
--- tickets_expected	2018-07-03 20:26:25.000000000 +0000
+++ /tmp/pgis_reg/test_94_out	2018-07-18 05:40:15.089830558 +0000
@@ -178,7 +178,7 @@
 #1453.2|f
 #1454|t
 #1414|CURVEPOLYGON Z EMPTY
-#1478|010100002001000000000000000000f87f000000000000f87f
+#1478|010100002001000000fffffffffffff77ffffffffffffff77f
 #745|GEOMETRYCOLLECTION(POLYGON((-72 42 1,-70 43 1,-71 41 1,-72 42 1)))
 #1450|POINT|POLYGON
 #1482|4326
 ### /tmp/pgis_reg/test_97_diff ###
--- wkb_expected	2018-07-03 20:26:25.000000000 +0000
+++ /tmp/pgis_reg/test_97_out	2018-07-18 05:40:46.790590548 +0000
@@ -1,7 +1,7 @@
-POINT EMPTY|0101000000000000000000f87f000000000000f87f|t|00000000017ff80000000000007ff8000000000000
-POINT Z EMPTY|01e9030000000000000000f87f000000000000f87f000000000000f87f|t|00000003e97ff80000000000007ff80000000000007ff8000000000000
-POINT M EMPTY|01d1070000000000000000f87f000000000000f87f000000000000f87f|t|00000007d17ff80000000000007ff80000000000007ff8000000000000
-POINT ZM EMPTY|01b90b0000000000000000f87f000000000000f87f000000000000f87f000000000000f87f|t|0000000bb97ff80000000000007ff80000000000007ff80000000000007ff8000000000000
+POINT EMPTY|0101000000fffffffffffff77ffffffffffffff77f|t|00000000017ff7ffffffffffff7ff7ffffffffffff
+POINT Z EMPTY|01e9030000fffffffffffff77ffffffffffffff77ffffffffffffff77f|t|00000003e97ff7ffffffffffff7ff7ffffffffffff7ff7ffffffffffff
+POINT M EMPTY|01d1070000fffffffffffff77ffffffffffffff77ffffffffffffff77f|t|00000007d17ff7ffffffffffff7ff7ffffffffffff7ff7ffffffffffff
+POINT ZM EMPTY|01b90b0000fffffffffffff77ffffffffffffff77ffffffffffffff77ffffffffffffff77f|t|0000000bb97ff7ffffffffffff7ff7ffffffffffff7ff7ffffffffffff7ff7ffffffffffff
 POINT(0 0)|010100000000000000000000000000000000000000|t|000000000100000000000000000000000000000000
 POINT Z (1 2 3)|01e9030000000000000000f03f00000000000000400000000000000840|t|00000003e93ff000000000000040000000000000004008000000000000
 POINT M (1 2 3)|01d1070000000000000000f03f00000000000000400000000000000840|t|00000007d13ff000000000000040000000000000004008000000000000
@@ -55,8 +55,8 @@
 GEOMETRYCOLLECTION ZM (POINT ZM (0 0 0 0),LINESTRING ZM (0 0 0 0,1 1 1 1))|01bf0b00000200000001b90b0000000000000000000000000000000000000000000000000000000000000000000001ba0b0000020000000000000000000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f000000000000f03f|t|0000000bbf000000020000000bb900000000000000000000000000000000000000000000000000000000000000000000000bba0000000200000000000000000000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff00000000000003ff0000000000000
 GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1))|01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f|t|00000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff0000000000000
 GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1),GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1)))|01d70700000300000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f|t|00000007d70000000300000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff0000000000000
-GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1),POINT M EMPTY,GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1)))|01d70700000400000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d1070000000000000000f87f000000000000f87f000000000000f87f01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f|t|00000007d70000000400000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d17ff80000000000007ff80000000000007ff800000000000000000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff0000000000000
-GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1),GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1),POINT M EMPTY,GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1))),POINT M EMPTY,GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1)))|01d70700000500000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d70700000400000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d1070000000000000000f87f000000000000f87f000000000000f87f01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d1070000000000000000f87f000000000000f87f000000000000f87f01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f|t|00000007d70000000500000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d70000000400000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d17ff80000000000007ff80000000000007ff800000000000000000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d17ff80000000000007ff80000000000007ff800000000000000000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff0000000000000
+GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1),POINT M EMPTY,GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1)))|01d70700000400000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d1070000fffffffffffff77ffffffffffffff77ffffffffffffff77f01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f|t|00000007d70000000400000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d17ff7ffffffffffff7ff7ffffffffffff7ff7ffffffffffff00000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff0000000000000
+GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1),GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1),POINT M EMPTY,GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1))),POINT M EMPTY,GEOMETRYCOLLECTION M (POINT M (0 0 0),LINESTRING M (0 0 0,1 1 1)))|01d70700000500000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d70700000400000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d1070000fffffffffffff77ffffffffffffff77ffffffffffffff77f01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f01d1070000fffffffffffff77ffffffffffffff77ffffffffffffff77f01d70700000200000001d107000000000000000000000000000000000000000000000000000001d207000002000000000000000000000000000000000000000000000000000000000000000000f03f000000000000f03f000000000000f03f|t|00000007d70000000500000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d70000000400000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d17ff7ffffffffffff7ff7ffffffffffff7ff7ffffffffffff00000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff000000000000000000007d17ff7ffffffffffff7ff7ffffffffffff7ff7ffffffffffff00000007d70000000200000007d100000000000000000000000000000000000000000000000000000007d2000000020000000000000000000000000000000000000000000000003ff00000000000003ff00000000000003ff0000000000000
 CIRCULARSTRING EMPTY|010800000000000000|t|000000000800000000
 CIRCULARSTRING Z EMPTY|01f003000000000000|t|00000003f000000000
 CIRCULARSTRING M EMPTY|01d807000000000000|t|00000007d800000000
 ### end of log dumps ###

Change History (8)

comment:2 by pramsey, 6 years ago

So, looks like MIPS is generating what we'd consider a valid POINT EMPTY (it's a WKB point with NaN in the coordinates) but unfortunately it is possible to represent NAN a bunch of ways, so we get this issue. I'm pretty sure isnan on any platform would agree that is a NAN. Shame it's a different bit pattern.

Fixing this will, I think, involve using the nan() function to try and be specific about what gets put into the non-specified parts of the nan, I need to experiment a bit and see how much control we really have. And then of course, platform to platform how that function actually behaves (or exists (or is in what header)) could be different. We've had a lot of platform issues with nan/inf, it's the most common place we get platform-to-platform inconsistency, I feel.

comment:3 by pramsey, 6 years ago

In 16703:

Generate nan() explicitly with a zeroed out area, does this fix mix WKB generation of POINT EMPTY? References #4138

Last edited 6 years ago by pramsey (previous) (diff)

comment:4 by pramsey, 6 years ago

Resolution: fixed
Status: newclosed

comment:5 by komzpa, 6 years ago

Resolution: fixed
Status: closedreopened

Please click the green "Installed" link. There you can see a test failure:

  tickets .. failed (diff expected obtained: /tmp/pgis_reg/test_95_diff)
-----------------------------------------------------------------------------
--- tickets_expected	2018-08-19 21:46:50.000000000 +0000
+++ /tmp/pgis_reg/test_95_out	2018-08-20 08:19:44.274423637 +0000
@@ -178,7 +178,7 @@
 #1453.2|f
 #1454|t
 #1414|CURVEPOLYGON Z EMPTY
-#1478|010100002001000000000000000000f87f000000000000f87f
+#1478|010100002001000000fffffffffffff77ffffffffffffff77f
 #745|GEOMETRYCOLLECTION(POLYGON((-72 42 1,-70 43 1,-71 41 1,-72 42 1)))
 #1450|POINT|POLYGON
 #1482|4326
@@ -269,69 +269,7 @@
 #2788|f|Self-intersection|POINT(1 1)
 #2870|Point[GS]
 #2956|t
-#2985|LINESTRING(20.9511664253809 52.3984560730436)
-#2996|247.44|247.44
-#3119a|121
-#3119b|291
-#3119c|615
-#3119d|291
-#3172|LINESTRING M (0 0 1,0 0 2)
-#3300|POLYGON((-71.7821 42.2622,-71.7821 42.9067,-71.029 42.9067,-71.029 42.2622,-71.7821 42.2622))
-#3355|t
-#3356|LineString[] with 2 points|LineString[GS] with 2 points|LineString[GS] with 2 points
-#3356|LineString[B] with 3 points|LineString[BGS] with 3 points|LineString[BGS] with 3 points
-#3367|POLYGON EMPTY
-#3368|\x660001011fb98788d35ed6fbcdc831c580012b959f01469d8d0e9305ff8618ed08b1b607e302a614fe70bc4682b303b4379ab503a228eeb603e2138eb802900cc0b802ba04dab802b801a8840cb0229cca06f401c216f403a016ea05d0c301a8b301cc189226ac15ee27f811a029b40eac2ae00a902b8407c82b9e03d0e305801dfad3239504ce7e8d01e2f701f6019b04d1e2279bf901ff01
-#3375|GEOMETRYCOLLECTION(POINT(0 -7))
-#3399|1|1
-#3399|10|10
-#3399|100|100
-#3399|1000|1000
-ERROR:  invalid KML representation
-#3437a|5
-#3437b|5
-#3437c|5
-#3437d|5
-#3437e|5
-#3470|t
-#3470b|50
-#3569|BOX(1 2,3 4)
-#3578a|0
-#3578b|0
-#3579|f|t
-#3620a|POINT(3 7)
-#3620b|POINT(2 8)
-#3627a|o}~~|AdshNoSsBgd@eGoBlm@wKhj@~@?
-#3627b|t
-#3704|t
-#3709|t
-#3774|t
-#1014a|POINT(0 0)
-#1014a|POINT(0 0)
-#1014b|POINT(0 1)
-#1014c|1|POINT(0 1)
-#1014c|2|POINT(1 2)
-#1014c|3|POINT(2 3)
-#1014d|SRID=1;POINT(0 1)
-#1014d|SRID=2;POINT(0 1)
-#3930|62065
-NOTICE:  Too few points in geometry component at or near point 0 0
-#4011|ST_LineString|LINESTRING(0 0,1 1)|f|t
-#4011|ST_LineString|MULTILINESTRING((0 0,1 1),(1 1,2 2))|f|t
-#4011|ST_LineString|MULTILINESTRING((0 0,1 1),EMPTY)|f|t
-#4011|ST_MultiLineString|MULTILINESTRING(EMPTY,EMPTY)|t|t
-#4011||||
-#4011|ST_GeometryCollection|POLYGON((0 0,1 0,1 1,0 0))|f|t
-#4011|ST_LineString|GEOMETRYCOLLECTION(LINESTRING(0 0,1 1))|f|t
-#4011|ST_MultiLineString|MULTILINESTRING EMPTY|t|t
-#4011|ST_GeometryCollection|MULTILINESTRING((0 0,0 0))|f|f
-#4025|
-ERROR:  lwgeom_intersection: GEOS Error: TopologyException: Input geom 0 is invalid: Self-intersection
-ERROR:  lwgeom_difference: GEOS Error: TopologyException: Input geom 0 is invalid: Self-intersection
-ERROR:  lwgeom_symdifference: GEOS Error: TopologyException: Input geom 0 is invalid: Self-intersection
-ERROR:  lwgeom_union: GEOS Error: TopologyException: Input geom 0 is invalid: Self-intersection
-#4055a|4326
-#4055b|4326
-#4089|LINESTRING Z (1 1 1,3 3 1)
-ERROR:  lwgeom_pointonsurface: GEOS Error: TopologyException: Input geom 1 is invalid: Self-intersection
-#4081|f|t
+server closed the connection unexpectedly
+	This probably means the server terminated abnormally
+	before or while processing the request.
+connection to server was lost
-----------------------------------------------------------------------------
 twkb .. failed (diff expected obtained: /tmp/pgis_reg/test_96_diff)
-----------------------------------------------------------------------------
--- twkb_expected	2018-08-19 21:46:50.000000000 +0000
+++ /tmp/pgis_reg/test_96_out	2018-08-20 08:19:44.370425099 +0000
@@ -1,17 +1 @@
-POINT(1 1)|01000202
-POINT(1 1)|01000202
-POINT(78 -78)|01009c019b01
-POINT(123.456789 987.654321)|4100f4c0019a870c
-LINESTRING(120 10, -50 20, 300 -2)|020003f00114d30214bc052b
-LINESTRING(120 10, -50 20, 300 -2)|420003c0bb01d00fcf8902d00ff0a204af22
-LINESTRING(120.54 10.78, -50.2 20.878, 300.789 -21)|020003f20116d50214be0553
-POLYGON((1 1, 1 2, 2 2, 2 1, 1 1))|0300010502020002020000010100
-POLYGON((1 1, 1 20, 20 20, 20 1, 1 1),(3 3,3 4, 4 4,4 3,3 3))|03000205020200262600002525000504040002020000010100
-MULTIPOINT((1 1),(2 2))|04000202020202
-MULTILINESTRING((1 1,1 2,2 2),(3 3,3 4,4 4))|0500020302020002020003020200020200
-MULTIPOLYGON(((1 1, 1 2, 2 2, 2 1, 1 1)),((3 3,3 4,4 4,4 3,3 3)))|060002010502020002020000010100010504040002020000010100
-MULTIPOLYGON(((1 1, 1 20, 20 20, 20 1, 1 1),(3 3,3 4, 4 4,4 3,3 3)),((-1 1, -1 20, -20 20, -20 1, -1 1),(-3 3,-3 4, -4 4,-4 3,-3 3)))|06000202050202002626000025250005040400020200000101000205070300262500002526000503040002010000010200
-GEOMETRYCOLLECTION(POINT(1 1),LINESTRING(2 2,3 3))|0700020100020202000204040202
-GEOMETRYCOLLECTION(MULTIPOINT(1 1,2 2),POINT(78 -78),POLYGON((1 1,1 2,2 2,2 1,1 1)))|0700030400020202020201009c019b010300010502020002020000010100
-0701000802040201010800020008020201000202040202020104
-large geometry|060001019201aac755e8fea406061b52091c08260f1c08141c0524034c0d12153a211c0f06000e202c011a302e200e0e0702131923102d3e05460d341924071a100e0e121e093804261a02081b002f081f1227141d2015220f5a1d2c09240d0a05010b1b0515060908331645121f1017081f1a1f36150a1f1f00150411120d14150c31161f0417010f170f1d0429220f1a152c100808101820021207141f0e11020903031105270f2f2d370f071113001f1e0b16032211542326021a0c1c0b182f0a290c07220106100a080e0b4e3a0410051a042016161607041107190f230b210735091f091105051d02631c1900170e0b150d3d110927081d0a0f0b1819080f0205030f190f17044d241d12211c19220b14092c134019303304210545012f060504061827380524100e36232205
+psql: FATAL:  the database system is in recovery mode
Last edited 6 years ago by komzpa (previous) (diff)

comment:6 by robe, 6 years ago

Milestone: PostGIS 2.5.0PostGIS 2.5.1

comment:7 by robe, 5 years ago

Milestone: PostGIS 2.5.1PostGIS Fund Me

Seems you guys care enough about the 64-bit to have some dialog about it. So pushing to fund me category, as it doesn't seem we'll have a solution to this any time soon without someone else caring.

comment:8 by komzpa, 5 years ago

Resolution: worksforme
Status: reopenedclosed

Let's close it until we have a stacktrace.

Note: See TracTickets for help on using tickets.