Hyukjin Kwon created SPARK-18179:
------------------------------------

             Summary: Throws analysis exception with a proper message for 
unsupported argument types in reflect/java_method function
                 Key: SPARK-18179
                 URL: https://issues.apache.org/jira/browse/SPARK-18179
             Project: Spark
          Issue Type: Improvement
          Components: SQL
            Reporter: Hyukjin Kwon
            Priority: Minor


{code}
scala> spark.range(1).selectExpr("reflect('java.lang.String', 'valueOf', 
cast('1990-01-01' as timestamp))")
{code}

throws an exception as below:

{code}
java.util.NoSuchElementException: key not found: TimestampType
  at scala.collection.MapLike$class.default(MapLike.scala:228)
  at scala.collection.AbstractMap.default(Map.scala:59)
  at scala.collection.MapLike$class.apply(MapLike.scala:141)
  at scala.collection.AbstractMap.apply(Map.scala:59)
  at 
org.apache.spark.sql.catalyst.expressions.CallMethodViaReflection$$anonfun$findMethod$1$$anonfun$apply$1.apply(CallMethodViaReflection.scala:159)
  at 
org.apache.spark.sql.catalyst.expressions.CallMethodViaReflection$$anonfun$findMethod$1$$anonfun$apply$1.apply(CallMethodViaReflection.scala:158)
  at 
scala.collection.IndexedSeqOptimized$class.prefixLengthImpl(IndexedSeqOptimized.scala:38)
{code}

We should throw analysis exception with a better message when the types are 
unsupported rather than {{java.util.NoSuchElementException: key not found: 
TimestampType}}.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to