diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/objects/objects.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/objects/objects.scala index 53be4bb651a46..fc9b72225a2dd 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/objects/objects.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/objects/objects.scala @@ -134,7 +134,8 @@ trait InvokeLike extends Expression with NonSQLExpression { method.invoke(obj, args: _*) } catch { // Re-throw the original exception. - case e: java.lang.reflect.InvocationTargetException => throw e.getCause + case e: java.lang.reflect.InvocationTargetException if e.getCause != null => + throw e.getCause } val boxedClass = ScalaReflection.typeBoxedJavaMapping.get(dataType) if (boxedClass.isDefined) {