From 2253eaa6a692a4fd6658f30cf6b5a0b55eae0390 Mon Sep 17 00:00:00 2001 From: Jiri Pechanec Date: Tue, 18 Sep 2018 05:34:22 +0200 Subject: [PATCH] DBZ-819 JdbcConnection is not thread safe --- .../src/main/java/io/debezium/jdbc/JdbcConnection.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/debezium-core/src/main/java/io/debezium/jdbc/JdbcConnection.java b/debezium-core/src/main/java/io/debezium/jdbc/JdbcConnection.java index 5d4458a24..26aea0aac 100644 --- a/debezium-core/src/main/java/io/debezium/jdbc/JdbcConnection.java +++ b/debezium-core/src/main/java/io/debezium/jdbc/JdbcConnection.java @@ -32,6 +32,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import io.debezium.annotation.NotThreadSafe; import io.debezium.annotation.ThreadSafe; import io.debezium.config.Configuration; import io.debezium.config.Field; @@ -53,6 +54,7 @@ * * @author Randall Hauch */ +@NotThreadSafe public class JdbcConnection implements AutoCloseable { private static final char STATEMENT_DELIMITER = ';'; @@ -1026,7 +1028,7 @@ private void cleanupPreparedStatement(PreparedStatement statement) { private PreparedStatement createPreparedStatement(String preparedQueryString) { return statementCache.computeIfAbsent(preparedQueryString, query -> { try { - LOGGER.trace("Inserting prepared statement '{}' removed into the cache", query); + LOGGER.trace("Inserting prepared statement '{}' removed from the cache", query); return connection().prepareStatement(query); } catch (SQLException e) {