From 81e6f52a9c30de3f416a300e9175a94c587c7211 Mon Sep 17 00:00:00 2001 From: Tomas Kraus Date: Tue, 23 Aug 2022 16:38:57 +0200 Subject: [PATCH] Issue #4719 - Helidon DBClient does not trigger an Exception when no sane DB connection can be obtained Signed-off-by: Tomas Kraus --- .../java/io/helidon/dbclient/jdbc/JdbcStatementDml.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcStatementDml.java b/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcStatementDml.java index 24fa3527d0e..2f612daffa5 100644 --- a/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcStatementDml.java +++ b/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcStatementDml.java @@ -54,7 +54,13 @@ private Single doExecute(DbClientServiceContext dbContext, CompletableFuture queryFuture) { executorService().submit(() -> { - connection().thenAccept(conn -> callStatement(dbContext, conn, statementFuture, queryFuture)); + connection() + .thenAccept(conn -> callStatement(dbContext, conn, statementFuture, queryFuture)) + .exceptionally(t -> { + statementFuture.completeExceptionally(t); + queryFuture.completeExceptionally(t); + return null; + }); }); // the query future is reused, as it completes with the number of updated records