DataProc
June 2, 2023

Spark. Падает джоба по таймауту из-за того что не успевают выкачаться зависимости

Для того чтобы это увидеть необходимо проанализировать логи в лог-группе.

Пример запроса, показывающего логи кластера

yc logging read --group-id <LOG_GROUP> --folder-id <FOLDER> --filter "resource_id:<CLUSTER_ID>" --since '2023-05-24T15:40:00Z' --until '2023-05-24T16:05:01Z'

В логах будет что-то похожее:

2023-05-24 18:59:02 Collecting pyspark==3.3.2 
2023-05-24 18:59:02 Downloading https://pypi.prod.net/root/pypi/%2Bf/0de/0bce6e607d872/pyspark-3.3.2.tar.gz (281.4 MB)
2023-05-24 18:59:41 ERROR Uncaught exception: 
2023-05-24 18:59:41       java.util.concurrent.TimeoutException: Futures timed out after [100000 milliseconds]
2023-05-24 18:59:41        at scala.concurrent.impl.Promise$DefaultPromise.ready(Promise.scala:259)
2023-05-24 18:59:41        at scala.concurrent.impl.Promise$DefaultPromise.result(Promise.scala:263)

Правильный вариант - перестать качать зависимости Python. Для этого потребуется установить их заранее.
Быстрый вариант - поднять таймаут spark.yarn.am.waitTime