From cc7f1a5563b7e62d1f58597d75e910f3f3499b4d Mon Sep 17 00:00:00 2001 From: wenshao Date: Mon, 28 Nov 2011 10:01:13 +0800 Subject: [PATCH] reset default setting on demand --- .../alibaba/druid/pool/ConnectionHolder.java | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/alibaba/druid/pool/ConnectionHolder.java b/src/main/java/com/alibaba/druid/pool/ConnectionHolder.java index 3f7fa83775..6bd7ed9fc4 100644 --- a/src/main/java/com/alibaba/druid/pool/ConnectionHolder.java +++ b/src/main/java/com/alibaba/druid/pool/ConnectionHolder.java @@ -118,10 +118,19 @@ public final class ConnectionHolder { } public void reset() throws SQLException { - conn.setReadOnly(defaultReadOnly); - conn.setHoldability(defaultHoldability); - conn.setTransactionIsolation(defaultTransactionIsolation); - + // reset default settings + if (conn.isReadOnly() != defaultReadOnly) { + conn.setReadOnly(defaultReadOnly); + } + + if (conn.getHoldability() != defaultHoldability) { + conn.setHoldability(defaultHoldability); + } + + if (conn.getTransactionIsolation() != defaultTransactionIsolation) { + conn.setTransactionIsolation(defaultTransactionIsolation); + } + connectionEventListeners.clear(); statementEventListeners.clear();