marymwu created SPARK-16970:
-------------------------------

             Summary: [spark2.0] spark2.0 doesn't catch the java exception 
thrown by reflect function in sql statement which causes the job abort
                 Key: SPARK-16970
                 URL: https://issues.apache.org/jira/browse/SPARK-16970
             Project: Spark
          Issue Type: Bug
    Affects Versions: 2.0.0
            Reporter: marymwu


[spark2.0] spark2.0 doesn't catch the java exception thrown by reflect function 
in the sql statement which causes the job abort

steps:
1. select reflect('java.net.URLDecoder','decode','%%E7','utf-8') test;
-->"%%" which causes the java exception

error:
16/08/09 15:56:38 INFO DAGScheduler: Job 1 failed: run at 
AccessController.java:-2, took 7.018147 s
16/08/09 15:56:38 ERROR SparkExecuteStatementOperation: Error executing query, 
currentState RUNNING, 
org.apache.spark.SparkException: Job aborted due to stage failure: Task 162 in 
stage 1.0 failed 8 times, most recent failure: Lost task 162.7 in stage 1.0 
(TID 207, slave7.lenovomm2.com): org.apache.spark.SparkException: Task failed 
while writing rows.
        at 
org.apache.spark.sql.hive.SparkHiveDynamicPartitionWriterContainer.writeToFile(hiveWriterContainers.scala:330)
        at 
org.apache.spark.sql.hive.execution.InsertIntoHiveTable$$anonfun$saveAsHiveFile$3.apply(InsertIntoHiveTable.scala:131)
        at 
org.apache.spark.sql.hive.execution.InsertIntoHiveTable$$anonfun$saveAsHiveFile$3.apply(InsertIntoHiveTable.scala:131)
        at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:70)
        at org.apache.spark.scheduler.Task.run(Task.scala:85)
        at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:274)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at 
org.apache.spark.sql.catalyst.expressions.CallMethodViaReflection.eval(CallMethodViaReflection.scala:87)
        at 
org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificUnsafeProjection.apply(Unknown
 Source)
        at 
org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificUnsafeProjection.apply(Unknown
 Source)
        at scala.collection.Iterator$$anon$11.next(Iterator.scala:409)
        at 
org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIterator.processNext(Unknown
 Source)
        at 
org.apache.spark.sql.execution.BufferedRowIterator.hasNext(BufferedRowIterator.java:43)
        at 
org.apache.spark.sql.execution.WholeStageCodegenExec$$anonfun$8$$anon$1.hasNext(WholeStageCodegenExec.scala:370)
        at 
org.apache.spark.sql.hive.SparkHiveDynamicPartitionWriterContainer.writeToFile(hiveWriterContainers.scala:288)
        ... 8 more
Caused by: java.lang.IllegalArgumentException: URLDecoder: Illegal hex 
characters in escape (%) pattern - For input string: "%E"
        at java.net.URLDecoder.decode(URLDecoder.java:192)
        ... 19 more



--
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