You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(1 until 38).map(i => "9"*i).toDF.repartition(1).selectExpr("CAST(value AS FLOAT) AS f")
Produces results that are more or less identical to the CPU. But
(1 until 38).map(i => "9"*i + ".0").toDF.repartition(1).selectExpr("CAST(value AS FLOAT) AS f").collect.foreach(System.out.println)
returns null at i = 231. Then returns totally wrong results that look like there was an overflow of some kind and the numbers are orders of magnitude smaller than they should be.
Ideally I want to be able to parse something crazy like 99999999999999999999999999999999999999.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 and get the right answer for a float or a double. I would love to go even crazier and have something like
(300 until 308).map(i => ("9"*i + ".0", i)).toDF("value","i").repartition(1).selectExpr("i", "CAST(value AS DOUBLE) AS f").
Describe the bug
Produces results that are more or less identical to the CPU. But
returns null at i = 231. Then returns totally wrong results that look like there was an overflow of some kind and the numbers are orders of magnitude smaller than they should be.
Ideally I want to be able to parse something crazy like 99999999999999999999999999999999999999.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 and get the right answer for a float or a double. I would love to go even crazier and have something like
return correct values, where as today it returns
The text was updated successfully, but these errors were encountered: