You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sqoop.apache.org by "Laszlo Bodor (JIRA)" <ji...@apache.org> on 2018/03/29 08:50:00 UTC
[jira] [Commented] (SQOOP-3306) Connection resource related issues
in DBOutputFormat and OracleManager
[ https://issues.apache.org/jira/browse/SQOOP-3306?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16418616#comment-16418616 ]
Laszlo Bodor commented on SQOOP-3306:
-------------------------------------
[~BoglarkaEgyed] : could you please help assign this ticket to me?
> 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
> Priority: Minor
> Fix For: 1.5.0
>
> Attachments: SQOOP-3306.01.patch
>
>
> 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:java}
> 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 post setup steps could be extracted to a separate method which could be enclosed by a try/catch.
> {code:java}
> connection.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
> setSessionTimeZone(connection);
> connection.setAutoCommit(false);
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)