Laszlo Bodor created SQOOP-3306:
-----------------------------------
Summary: Connection resource related issues in DBOutputFormat and
OracleManager
Key: SQOOP-3306
URL: https://issues.apache.org/jira/browse/SQOOP-3306
Project: Sqoop
Issue Type: Bug
Affects Versions: 1.4.7
Reporter: Laszlo Bodor
Fix For: 1.5.0
A fortify scan showed 2 possible resource leaks.
*Overview* : The function getRecordWriter() in DBOutputFormat.java sometimes
fails to release a database resource allocated by getConnection() on line 117.
In the file DBOutputFormat.java similar issues were on line numbers 117
Connection should be closed before throwing IOException forward.
{code}
try {
Connection connection = dbConf.getConnection();
PreparedStatement statement = null;
statement = connection.prepareStatement(
constructQuery(tableName, fieldNames));
return new org.apache.sqoop.mapreduce.db.DBOutputFormat.DBRecordWriter(
connection, statement);
} catch (Exception ex) {
throw new IOException(ex);
}
{code}
*Overview* : The function makeConnection() in OracleManager.java sometimes
fails to release a database resource allocated by getConnection() on line 321.
In the file OracleManager.java similar issues were on line numbers 321
Some connection setup steps could extract to a separated method which could be
enclosed by a try/catch.
{code}
connection.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
setSessionTimeZone(connection);
connection.setAutoCommit(false);
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)