[ 
https://issues.apache.org/jira/browse/JENA-2151?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17403689#comment-17403689
 ] 

ASF subversion and git services commented on JENA-2151:
-------------------------------------------------------

Commit dba64cf1a1f21aae0ec6186d742c5b8eb24db971 in jena's branch 
refs/heads/main from Andy Seaborne
[ https://gitbox.apache.org/repos/asf?p=jena.git;h=dba64cf ]

Merge pull request #1054 from afs/jena2151-iter-close

JENA-2151: iterator close

> Iter.filter does not close nested iterator
> ------------------------------------------
>
>                 Key: JENA-2151
>                 URL: https://issues.apache.org/jira/browse/JENA-2151
>             Project: Apache Jena
>          Issue Type: Bug
>    Affects Versions: Jena 4.1.0
>            Reporter: Holger Knublauch
>            Priority: Major
>         Attachments: IteratorFilter.java
>
>
> 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
> {code:java}
>     public static <T> Iterator<T> filter(final Iterator<? extends T> stream, 
> final Predicate<T> filter) {
>         return new IteratorFilter<T>(stream, filter);
>     }
> {code}
> (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).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to