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

andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git

commit 9e0015085e84c6fc2eb6bec3bfb9f62809ab2b98
Author: Andy Seaborne <[email protected]>
AuthorDate: Wed Nov 27 17:56:47 2024 +0000

    Close iterator
---
 .../jena/sparql/modify/UpdateEngineWorker.java     | 27 +++++++++++-----------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java
index 40a443bba7..c8c8930638 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java
@@ -405,20 +405,21 @@ public class UpdateEngineWorker implements UpdateVisitor
         try {
             Iterator<Binding> bindings = evalBindings(query, dsg, 
inputBinding, context);
 
-            if ( false ) {
-                List<Binding> x = Iter.toList(bindings);
-                System.out.printf("====>> Bindings (%d)\n", x.size());
-                //Iter.print(System.out, x.iterator());
-                // More readable.
-                List<Var> vars = Var.varList(query.getResultVars());
-                RowSet rs = RowSetStream.create(vars, x.iterator());
-                PrefixMap pmap = datasetGraph.prefixes();
-                RowSetOps.out(System.out, rs, datasetGraph.prefixes());
-                System.out.println("====<<");
-                bindings = Iter.iter(x);
+            try {
+                if ( false ) {
+                    List<Binding> x = Iter.toList(bindings);
+                    System.out.printf("====>> Bindings (%d)\n", x.size());
+                    List<Var> vars = Var.varList(query.getResultVars());
+                    RowSet rs = RowSetStream.create(vars, x.iterator());
+                    PrefixMap pmap = datasetGraph.prefixes();
+                    RowSetOps.out(System.out, rs, datasetGraph.prefixes());
+                    System.out.println("====<<");
+                    bindings = Iter.iter(x);
+                }
+                db.addAll(bindings);
+            } finally {
+                Iter.close(bindings);
             }
-            db.addAll(bindings);
-            Iter.close(bindings);
 
             Iterator<Binding> it = db.iterator();
             execDelete(datasetGraph, update.getDeleteQuads(), withGraph, it);

Reply via email to