Description
In Spark 2.0, we will parse float literals as decimals. However, it introduces a side-effect, which is described below.
select array(0.001, 0.02)
causes
org.apache.spark.sql.AnalysisException: cannot resolve 'array(CAST(0.001 AS DECIMAL(3,3)), CAST(0.02 AS DECIMAL(2,2)))' due to data type mismatch: input to function array should all be the same type, but it's [decimal(3,3), decimal(2,2)]; line 1 pos 7