Hi Andy,

Sure, I'll try to take a look over the weekend if I can get a working dev environment set up.

Dave

On 07/06/2019 13:46, Andy Seaborne wrote:
Dave,

I am hoping you can give me a some pointers so I can solve JENA-1719.
https://issues.apache.org/jira/browse/JENA-1719

Setup:
   data in TDB2.
   ontology in a memory model.
   RDFSExptRuleReasoner

First query has a short limit:
   select * where {?s a <http://example.com/ns/Person>} limit 1
This returns one answer.

The iterator (LPTopGoalIterator) over the inf graph does get closed.

Second query has a longer limit
   select * where {?s a <http://example.com/ns/Person>} limit 1000

(If the long query is used first, the second query works)

Problem:

The second query is using an iterator created during the first query.

During the LIMIT 1 query:

TopLevelTripleMatchFrame constructor
TopLevelTripleMatchFrame constructor
TopLevelTripleMatchFrame constructor
TopLevelTripleMatchFrame constructor
TopLevelTripleMatchFrame constructor
closeIterator[?s, rdf:type, http://example.com/ns/Person] <-- The query
LPInterpreter.close[cpFrame:ConsumerChoicePointFrame]
LPInterpreter.close[cpFrame:null]
LPInterpreter.close[cpFrame:ConsumerChoicePointFrame]
LPInterpreter.close[cpFrame:null]


TopLevelTripleMatchFrame.close is not called - and the same is true genrally during startup.

     Thanks,
     Andy

Reply via email to