diff --git a/slick/src/main/scala/slick/basic/BasicBackend.scala b/slick/src/main/scala/slick/basic/BasicBackend.scala index ae7c99a43c..6365ca4ff1 100644 --- a/slick/src/main/scala/slick/basic/BasicBackend.scala +++ b/slick/src/main/scala/slick/basic/BasicBackend.scala @@ -186,10 +186,14 @@ trait BasicBackend { self => } (DBIO.sameThreadExecutionContext) } catch { case NonFatal(ex) => - throw (t1 match { + val e = t1 match { case Failure(t) if keepFailure => t case _ => ex - }) + } + + if (!p.tryFailure(e)) { + actionLogger.warn("Exception after promise completed", e) + } } } (ctx.getEC(ec)) p.future