1
Я пытаюсь поймать ошибку SQL в Slick 3.x. В приведенном ниже коде ничего не печатается, но если отслеживается при отладке, он отлично работает (он печатает неудачу). Что случилось с этим кодом?Ловля исключения в Slick 3.x
object TestSlick extends App {
val db = Database.forConfig("dbconfig")
val sql = "update table_does_not_exist set zzz=1 where ccc=2"
val q = sqlu"#$sql"
db.run(q.asTry).map {result =>
result match {
case Success(r) => println(r)
case Failure(e) => {
println(s"SQL Error, ${e.getMessage}")
println("command:" + sql)
throw e
}
}
}
}
Возможно, ваша программа завершается перед будущими отделками? Вы пытались использовать 'scala.concurrent.Await' для ожидания результата (это блокирует, но просто для того, чтобы знать, является ли это причиной)? – Ixx