[ https://issues.apache.org/jira/browse/HIVE-18831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16413233#comment-16413233 ]
Sahil Takiar edited comment on HIVE-18831 at 3/25/18 11:48 PM: --------------------------------------------------------------- [~lirui] added an updated patch. After some more investigation, I decided to revert the changes to {{KryoMessageCodec}}, sorry for the back and forth. It seems serializing Java {{Throwable}} is tricky, and there is no guarantee that Java can successfully serialize all {{Throwable}} objects (SPARK-8625 has some details). So instead, I created a new class called {{SparkJobExceptionWrapper}} that wraps the full exception stack, and the root cause message. Also, did some re-factoring of {{SparkJobStatus}} to make it easier to differentiate errors thrown by the {{SparkJobMonitor}} vs. {{JobHandle}}. Added a bunch of more tests to {{TestSparkTask}} to validate all of this. was (Author: stakiar): [~lirui] added an updated patch. After some more investigation, I decided to revert the changes to {{KryoMessageCodec}}, sorry for the back and forth. It seems serializing Java {{Throwable}}s is tricky, and there is no guarantee that Java can successfully serialize all {{Throwable}} objects (SPARK-8625 has some details). So instead, I created a new class called {{SparkJobExceptionWrapper}} that wraps the full exception stack, and the root cause message. Also, did some re-factoring of {{SparkJobStatus}} to make it easier to differentiate errors thrown by the {{SparkJobMonitor}} vs. {{JobHandle}}. Added a bunch of more tests to {{TestSparkTask}} to validate all of this. > Differentiate errors that are thrown by Spark tasks > --------------------------------------------------- > > Key: HIVE-18831 > URL: https://issues.apache.org/jira/browse/HIVE-18831 > Project: Hive > Issue Type: Sub-task > Components: Spark > Reporter: Sahil Takiar > Assignee: Sahil Takiar > Priority: Major > Attachments: HIVE-18831.1.patch, HIVE-18831.2.patch, > HIVE-18831.3.patch, HIVE-18831.4.patch, HIVE-18831.6.patch, HIVE-18831.7.patch > > > We propagate exceptions from Spark task failures to the client well, but we > don't differentiate between errors from HS2 / RSC vs. errors thrown by > individual tasks. > Main motivation is that when the client sees a propagated Spark exception its > difficult to know what part of the excution threw the exception. -- This message was sent by Atlassian JIRA (v7.6.3#76005)