Github user dilipbiswal commented on a diff in the pull request:

    https://github.com/apache/spark/pull/22408#discussion_r217603789
  
    --- Diff: 
sql/core/src/test/scala/org/apache/spark/sql/DataFrameFunctionsSuite.scala ---
    @@ -735,6 +735,44 @@ class DataFrameFunctionsSuite extends QueryTest with 
SharedSQLContext {
           df.selectExpr("array_contains(array(1, null), array(1, null)[0])"),
           Seq(Row(true), Row(true))
         )
    +
    +    checkAnswer(
    +      df.selectExpr("array_contains(array(1), 1.23D)"),
    +      Seq(Row(false), Row(false))
    +    )
    +
    +    checkAnswer(
    +      df.selectExpr("array_contains(array(1), 1.0D)"),
    +      Seq(Row(true), Row(true))
    +    )
    +
    +    checkAnswer(
    +      df.selectExpr("array_contains(array(1.0D), 1)"),
    +      Seq(Row(true), Row(true))
    +    )
    +
    +    checkAnswer(
    +      df.selectExpr("array_contains(array(1.23D), 1)"),
    +      Seq(Row(false), Row(false))
    +    )
    +
    +    checkAnswer(
    +      df.selectExpr("array_contains(array(array(1)), array(1.0D))"),
    +      Seq(Row(true), Row(true))
    +    )
    +
    +    checkAnswer(
    +      df.selectExpr("array_contains(array(array(1)), array(1.23D))"),
    +      Seq(Row(false), Row(false))
    +    )
    +
    +    intercept[AnalysisException] {
    +      df.selectExpr("array_contains(array(1), 1.23)")
    --- End diff --
    
    @ueshin Sure. We could use `findWiderCommonType`. My thinking was, since we 
are injecting this cast implicitly, we should pick the safest cast so we don't 
see data dependent surprises. Users could always specify an explicit cast and 
take the the responsibility of the result :-)
    
    However, i don't have a strong opinion. I will change it use  
findWiderCommonType


---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to