Author: boisvert
Date: Fri Aug 7 18:31:31 2009
New Revision: 802136
URL: http://svn.apache.org/viewvc?rev=802136&view=rev
Log:
ODE-645: Possible connection leak during JdbcExternalVariableModule if
initialization fails
Modified:
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java
Modified:
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java?rev=802136&r1=802135&r2=802136&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java
(original)
+++
ode/branches/APACHE_ODE_1.X/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java
Fri Aug 7 18:31:31 2009
@@ -113,9 +113,13 @@
DatabaseMetaData metaData;
try {
conn = ds.getConnection();
- conn.setAutoCommit(false);
metaData = conn.getMetaData();
} catch (Exception ex) {
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ // ignore
+ }
throw new ExternalVariableModuleException("Unable to open database
connection for external variable " + evarId, ex);
}
@@ -355,7 +359,11 @@
return stmt.executeUpdate();
} finally {
if (stmt != null) stmt.close();
- conn.close();
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ // ignore
+ }
}
}
@@ -526,7 +534,11 @@
}
} finally {
if (stmt != null) stmt.close();
- conn.close();
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ // ignore
+ }
}
return ret;
@@ -586,7 +598,11 @@
return keys;
} finally {
if (stmt != null) stmt.close();
- conn.close();
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ // ignore
+ }
}
}