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 72f8b7180f5ac714949794b42b68a4ce47c1bc25
Author: Andy Seaborne <[email protected]>
AuthorDate: Wed Apr 17 20:28:33 2024 +0100

    Allow a TableN to be reused
---
 .../java/org/apache/jena/sparql/algebra/Table.java | 30 +++++++++++-----------
 .../apache/jena/sparql/algebra/table/TableN.java   |  3 +--
 2 files changed, 16 insertions(+), 17 deletions(-)

diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/Table.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/Table.java
index 9f961c394d..ad88ad0ffa 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/Table.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/Table.java
@@ -18,27 +18,27 @@
 
 package org.apache.jena.sparql.algebra;
 
-import java.util.Iterator ;
-import java.util.List ;
+import java.util.Iterator;
+import java.util.List;
 
-import org.apache.jena.sparql.core.Var ;
-import org.apache.jena.sparql.engine.ExecutionContext ;
-import org.apache.jena.sparql.engine.QueryIterator ;
-import org.apache.jena.sparql.engine.binding.Binding ;
+import org.apache.jena.sparql.core.Var;
+import org.apache.jena.sparql.engine.ExecutionContext;
+import org.apache.jena.sparql.engine.QueryIterator;
+import org.apache.jena.sparql.engine.binding.Binding;
 import org.apache.jena.sparql.exec.RowSet;
 
 public interface Table
 {
-    public void close() ;
-    public List<Var> getVars() ;
-    public List<String> getVarNames() ;
-    public int size() ;
-    public boolean isEmpty() ;
+    public void close();
+    public List<Var> getVars();
+    public List<String> getVarNames();
+    public int size();
+    public boolean isEmpty();
     /** Return a QueryIterator over the whole table. */
-    public QueryIterator iterator(ExecutionContext execCxt) ;
+    public QueryIterator iterator(ExecutionContext execCxt);
     /** Return a fresh iterator over the whole table. */
-    public Iterator<Binding> rows() ;
-    public void addBinding(Binding binding) ;
-    public boolean contains(Binding binding) ;
+    public Iterator<Binding> rows();
+    public void addBinding(Binding binding);
+    public boolean contains(Binding binding);
     public RowSet toRowSet();
 }
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/table/TableN.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/table/TableN.java
index ac1dccb509..4d8887116c 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/table/TableN.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/table/TableN.java
@@ -93,8 +93,7 @@ public class TableN extends TableBase {
 
     @Override
     public void closeTable() {
-        rows = null ;
-        // Don't clear the vars in case code later asks for the variables.
+        // Don't release rows - the same TableN object may be used in multiple 
places.
     }
 
     @Override

Reply via email to