Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
Jena 4.1.0
-
None
-
None
Description
We recently attempted to upgrade our product to Jena 4.1.0 but noticed unclosed iterator warnings. I believe I have tracked it down to the fact that Iter.filter does not return a Closeable iterator and therefore does not close its nested (stream) iterator. I am attaching an implementation class that seems to fix it. With this, org.apache.jena.atlas.iterator.Iter.filter simply need to become
public static <T> Iterator<T> filter(final Iterator<? extends T> stream, final Predicate<T> filter) { return new IteratorFilter<T>(stream, filter); }
(Although Iter.filter hasn't changed for a while, I suspect some other changes to Jena caused the SPARQL engine to use it, and this has broken some scenarios for us - in particular calling SPIN/SHACL-SPARQL functions with BGPs in the WHERE clause).
Attachments
Attachments
Issue Links
- is related to
-
JENA-2184 Non-repeatable query with inference model
- Closed
- links to