У меня есть репозитории Java/Spring и Spark/Java. Spring использует Spark для записи данных в источники.
У меня есть код, аналогичный приведенному ниже
Код: Выделить всё
String errorCause = "";
String errorMessage = "";
try {
dataset.write()...save()
} catch(Exception e) {
errorCause = e.getCause().toString();
errorMessage = e.getMessage();
}
Когда искра запускается на локальном[*] я могу получить причину и сообщение, когда искра запускается на удаленном кластере, я могу получить сообщение, но не могу вызвать причину. Сообщение включает в себя сообщение типа «Работник ... сбой исполнителя 6», что бесполезно, но причина может дать мне «значение слишком велико для столбца A, фактический размер 60, максимум 30»Думаю, об этом не сообщается из-за этой строки:
https://github.com/apache/spark/blob/ma ... tter.scala# L154
Подробнее здесь:
https://stackoverflow.com/questions/786 ... te-cluster