У меня есть следующие функции для чтения файлов и повторных попыток, когда происходят короткие тайм-ауты:
// read logic
def read(loc){ Try {spark.read.parquet(loc)} }
// retry for m times
def df(floc):DataFrame={
read(floc) match {
case Success(df) => { df }
case Failure(exception) => {
if ( c < m ) { // c & m declared, c is incremented after each failure&retry
Thread.sleep(100000L)
read(floc)
}} //Expression of type Any Doesn't conform to expected type sql.DataFrame
}}
val df:DataFrame = df("FILE_location")
Ожидаемый тип возвращаемого значения не совпадает в случае сбоя. Любые предложения о том, где я иду не так, или любой лучший способ сделать это. Ценю ваши предложения.