CAMEL-9845: camel-jdbc - Silent ignore close errors
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/53a6593b Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/53a6593b Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/53a6593b Branch: refs/heads/master Commit: 53a6593bb709ebf2d1112ae606a89c605e8e7a3e Parents: 9a82687 Author: Claus Ibsen <davscl...@apache.org> Authored: Sat Apr 9 09:19:18 2016 +0200 Committer: Claus Ibsen <davscl...@apache.org> Committed: Sat Apr 9 09:19:18 2016 +0200 ---------------------------------------------------------------------- .../camel/component/jdbc/JdbcProducer.java | 30 ++++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/53a6593b/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java ---------------------------------------------------------------------- diff --git a/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java b/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java index 5d45864..9e05937 100644 --- a/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java +++ b/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java @@ -91,7 +91,7 @@ public class JdbcProducer extends DefaultProducer { if (conn != null) { conn.rollback(); } - } catch (SQLException sqle) { + } catch (Throwable sqle) { LOG.warn("Error occurred during jdbc rollback. This exception will be ignored.", sqle); } throw e; @@ -246,9 +246,11 @@ public class JdbcProducer extends DefaultProducer { private void closeQuietly(ResultSet rs) { if (rs != null) { try { - rs.close(); - } catch (SQLException sqle) { - LOG.warn("Error by closing result set: " + sqle, sqle); + if (!rs.isClosed()) { + rs.close(); + } + } catch (Throwable sqle) { + LOG.debug("Error by closing result set", sqle); } } } @@ -256,9 +258,11 @@ public class JdbcProducer extends DefaultProducer { private void closeQuietly(Statement stmt) { if (stmt != null) { try { - stmt.close(); - } catch (SQLException sqle) { - LOG.warn("Error by closing statement: " + sqle, sqle); + if (!stmt.isClosed()) { + stmt.close(); + } + } catch (Throwable sqle) { + LOG.debug("Error by closing statement", sqle); } } } @@ -267,8 +271,8 @@ public class JdbcProducer extends DefaultProducer { if (con != null && autoCommit != null) { try { con.setAutoCommit(autoCommit); - } catch (SQLException sqle) { - LOG.warn("Error by resetting auto commit to its original value: " + sqle, sqle); + } catch (Throwable sqle) { + LOG.debug("Error by resetting auto commit to its original value", sqle); } } } @@ -276,9 +280,11 @@ public class JdbcProducer extends DefaultProducer { private void closeQuietly(Connection con) { if (con != null) { try { - con.close(); - } catch (SQLException sqle) { - LOG.warn("Error by closing connection: " + sqle, sqle); + if (!con.isClosed()) { + con.close(); + } + } catch (Throwable sqle) { + LOG.debug("Error by closing connection", sqle); } } }