From 6218aef181270f106234641292fc59cfe7f901bf Mon Sep 17 00:00:00 2001 From: Roland Praml Date: Thu, 27 Feb 2025 16:41:06 +0100 Subject: [PATCH] Pstatementcache must be locked in closeConnectionFully --- .../main/java/io/ebean/datasource/pool/PooledConnection.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ebean-datasource/src/main/java/io/ebean/datasource/pool/PooledConnection.java b/ebean-datasource/src/main/java/io/ebean/datasource/pool/PooledConnection.java index 3bdb37e..5e0c77e 100644 --- a/ebean-datasource/src/main/java/io/ebean/datasource/pool/PooledConnection.java +++ b/ebean-datasource/src/main/java/io/ebean/datasource/pool/PooledConnection.java @@ -245,6 +245,7 @@ void closeConnectionFully(boolean logErrors) { Log.error("Error checking if connection [" + name + "] is closed", ex); } } + lock.lock(); try { for (ExtendedPreparedStatement ps : pstmtCache.values()) { ps.closeDestroy(); @@ -253,6 +254,8 @@ void closeConnectionFully(boolean logErrors) { if (logErrors) { Log.warn("Error when closing connection Statements", ex); } + } finally { + lock.unlock(); } try { connection.close();