This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-dbutils.git

commit d5632071a3df4ebfd36e9d7b5ca6c369d21b4fef
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Mon Jul 31 15:13:16 2023 -0400

    ResultSe not closed in QueryRunner.insertBatch(Connection, String,
    ResultSetHandler, Object[][]).
---
 src/changes/changes.xml                                   | 3 +++
 src/main/java/org/apache/commons/dbutils/QueryRunner.java | 6 +++---
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index a102456..df8e425 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -75,6 +75,9 @@ The <action> type attribute can be add,update,fix,remove.
       <action dev="ggregory" due-to="Gary Gregory" type="fix">
         ResultSet not closed in QueryRunner.insert(Connection, String, 
ResultSetHandler, Object...).
       </action>
+      <action dev="ggregory" due-to="Gary Gregory" type="fix">
+        ResultSet not closed in QueryRunner.insertBatch(Connection, String, 
ResultSetHandler, Object[][]).
+      </action>
       <!-- ADD -->
       <action dev="thecarlhall" type="add" issue="PR/9" due-to="rewerma">
         Add @Column annotation to hint the field name instead of dissecting 
the get method name.
diff --git a/src/main/java/org/apache/commons/dbutils/QueryRunner.java 
b/src/main/java/org/apache/commons/dbutils/QueryRunner.java
index 6fb1968..93f6877 100644
--- a/src/main/java/org/apache/commons/dbutils/QueryRunner.java
+++ b/src/main/java/org/apache/commons/dbutils/QueryRunner.java
@@ -490,9 +490,9 @@ public class QueryRunner extends AbstractQueryRunner {
                 stmt.addBatch();
             }
             stmt.executeBatch();
-            final ResultSet rs = stmt.getGeneratedKeys();
-            generatedKeys = rsh.handle(rs);
-
+            try (ResultSet rs = stmt.getGeneratedKeys()) {
+                generatedKeys = rsh.handle(rs);
+            }
         } catch (final SQLException e) {
             this.rethrow(e, sql, (Object[])params);
         } finally {

Reply via email to