On 09/10/18 15:57, Rob Vesse wrote:
Reformatted config to make it readable.  Hopefully someone more familiar with 
the inference machinery will know where to start looking

It'll take a runnable example to find this. I don't know where to start looking without one unfortunately.

    Andy



Rob

On 09/10/2018, 15:07, "Brad Stallion" <[email protected]> wrote:

      Hi Rob,thanks a lot for your reply. I'm using fuseki-3.9.0 and this is my 
config file:

@prefix :      <http://base/#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix tdb2:  <http://jena.apache.org/2016/tdb#> .
@prefix ja:    <http://jena.hpl.hp.com/2005/11/Assembler#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix fuseki: <http://jena.apache.org/fuseki#> .
  :service_tdb_all  a                   fuseki:Service ;
      rdfs:label                    "TDB2 db" ;
      fuseki:dataset                :tdb_dataset_readwrite ;
      fuseki:name                   "pippo" ;
      fuseki:serviceQuery           "query" , "sparql" ;
      fuseki:serviceReadGraphStore  "get" ;
      fuseki:serviceReadWriteGraphStore "data" ;
      fuseki:serviceUpdate          "update" ;
      fuseki:serviceUpload          "upload" .

:tdb_dataset_readwrite a ja:RDFDataset;
      ja:defaultGraph :modelInf; .
     :modelInf a ja:InfModel;
      ja:reasoner  [ ja:reasonerURL  
<http://jena.hpl.hp.com/2003/OWLMicroFBRuleReasoner>] ;
      ja:baseModel :gra ; .

:gra a tdb2:GraphTDB;
    tdb2:location  "PIPPO";
    tdb2:unionDefaultGraph true ;  .
Unfortunately I can't provide the data in the KB.I'm trying to reproduce the problem with other neutral data.Meanwhile, please let me know if you have any idea.Thanks a lotBye
         Il martedì 9 ottobre 2018, 11:46:06 CEST, Rob Vesse 
<[email protected]> ha scritto:
Brad The stack trace looks like you have configured a dataset with some inference. It is possible that the inference layer is not using transactions on the underlying dataset properly, and/or caching some data that is tied to a specific transaction. For further help we would likely need to see Fuseki config files, Jena versions and ideally sample queries and data that reproduce this Rob On 09/10/2018, 10:36, "Brad Stallion" <[email protected]> wrote: Hi All,I have a TDB2 KB exposed by Fuseki REST api.Such APIs are invoked by Python code. Each invocation is performed by an urllib2 get/post urlopen.Queries and updates works, but sometime I get this error from Fuseki:
         "urllib2.HTTPError: HTTP Error 500: Iterator used inside a different 
transaction"
         Here's the full stacktrace from the logs:
         [2018-10-09 10:46:21] Fuseki    WARN  [51] RC = 500 : Iterator used 
inside a different 
transactionorg.apache.jena.dboe.transaction.txn.TransactionException: Iterator 
used inside a different transaction at 
org.apache.jena.tdb2.store.IteratorTxnTracker.check(IteratorTxnTracker.java:53) 
at 
org.apache.jena.tdb2.store.IteratorTxnTracker.hasNext(IteratorTxnTracker.java:41)
 at org.apache.jena.atlas.iterator.Iter$2.hasNext(Iter.java:265) at 
org.apache.jena.atlas.iterator.Iter.hasNext(Iter.java:886) at 
org.apache.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java:90) 
at org.apache.jena.util.iterator.NiceIterator$1.hasNext(NiceIterator.java:105) 
at org.apache.jena.util.iterator.NiceIterator$1.hasNext(NiceIterator.java:105) 
at 
org.apache.jena.reasoner.rulesys.impl.TopLevelTripleMatchFrame.nextMatch(TopLevelTripleMatchFrame.java:55)
 at 
org.apache.jena.reasoner.rulesys.impl.LPInterpreter.run(LPInterpreter.java:328) 
at 
org.apache.jena.reasoner.rulesys.impl.LPInterpreter.next(LPInterpreter.java:190)
 at org.apache.jena.reasoner.rulesys.impl.Generator.pump(Generator.java:252) at 
org.apache.jena.reasoner.rulesys.impl.Generator.pump(Generator.java:239) at 
org.apache.jena.reasoner.rulesys.impl.LPBRuleEngine.pump(LPBRuleEngine.java:359)
 at 
org.apache.jena.reasoner.rulesys.impl.LPTopGoalIterator.moveForward(LPTopGoalIterator.java:107)
 at 
org.apache.jena.reasoner.rulesys.impl.LPTopGoalIterator.hasNext(LPTopGoalIterator.java:223)
 at 
org.apache.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java:90) 
at 
org.apache.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java:90) 
at org.apache.jena.util.iterator.FilterIterator.hasNext(FilterIterator.java:55) 
at 
org.apache.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java:90) 
at org.apache.jena.util.iterator.FilterIterator.hasNext(FilterIterator.java:55) 
at 
org.apache.jena.sparql.engine.iterator.QueryIterTriplePattern$TripleMapper.hasNextBinding(QueryIterTriplePattern.java:135)
 at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:74)
 at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 at 
org.apache.jena.sparql.engine.iterator.QueryIterBlockTriples.hasNextBinding(QueryIterBlockTriples.java:63)
 at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 at 
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:39)
 at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 at 
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:39)
 at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 at 
org.apache.jena.sparql.engine.ResultSetStream.hasNext(ResultSetStream.java:74) 
at 
org.apache.jena.sparql.engine.ResultSetCheckCondition.hasNext(ResultSetCheckCondition.java:55)
 at 
org.apache.jena.sparql.resultset.ResultSetApply.apply(ResultSetApply.java:38) 
at 
org.apache.jena.riot.resultset.rw.ResultSetWriterJSON.write(ResultSetWriterJSON.java:82)
 at 
org.apache.jena.riot.resultset.rw.ResultsWriter.write(ResultsWriter.java:127) 
at org.apache.jena.riot.resultset.rw.ResultsWriter.write(ResultsWriter.java:97) 
at 
org.apache.jena.fuseki.servlets.ResponseResultSet.lambda$generalOutput$1(ResponseResultSet.java:209)
 at 
org.apache.jena.fuseki.servlets.ResponseResultSet.output(ResponseResultSet.java:225)
 at 
org.apache.jena.fuseki.servlets.ResponseResultSet.generalOutput(ResponseResultSet.java:215)
 at 
org.apache.jena.fuseki.servlets.ResponseResultSet.doResponseResultSet$(ResponseResultSet.java:176)
 at 
org.apache.jena.fuseki.servlets.ResponseResultSet.doResponseResultSet(ResponseResultSet.java:85)
 at 
org.apache.jena.fuseki.servlets.SPARQL_Query.sendResults(SPARQL_Query.java:435) 
at org.apache.jena.fuseki.servlets.SPARQL_Query.execute(SPARQL_Query.java:290) 
at 
org.apache.jena.fuseki.servlets.SPARQL_Query.executeWithParameter(SPARQL_Query.java:242)
 at org.apache.jena.fuseki.servlets.SPARQL_Query.perform(SPARQL_Query.java:227) 
at 
org.apache.jena.fuseki.servlets.ActionService.executeLifecycle(ActionService.java:183)
 at 
org.apache.jena.fuseki.servlets.ActionService.execCommonWorker(ActionService.java:98)
 at org.apache.jena.fuseki.servlets.ActionBase.doCommon(ActionBase.java:74) at 
org.apache.jena.fuseki.servlets.FusekiFilter.doFilter(FusekiFilter.java:73) at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
 at 
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
 at 
org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108) 
at 
org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
 at 
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
 at 
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
 at 
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
 at 
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
 at 
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
 at 
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) 
at 
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
 at 
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
 at 
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
 at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
 at 
org.apache.jena.fuseki.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:285)
 at 
org.apache.jena.fuseki.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:248)
 at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
 at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533) 
at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146) 
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) 
at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) 
at 
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
 at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
 at 
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
 at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
 at 
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
 at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473) 
at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
 at 
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
 at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
 at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144) 
at 
org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:690) 
at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) 
at org.eclipse.jetty.server.Server.handle(Server.java:503) at 
org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364) at 
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260) at 
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
 at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) at 
org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118) at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
 at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
 at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
 at 
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
 at 
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
 at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
 at 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683) 
at java.lang.Thread.run(Thread.java:745)[2018-10-09 10:46:21] Fuseki    INFO  
[51] 500 Iterator used inside a different transaction (17 ms)
         It seems like different REST calls try to share some transaction 
inside Fuseki.Any idea?Thanks



Reply via email to