Hi Jerven, this is a Jena/ARQ bug, see
http://mail-archives.apache.org/mod_mbox/incubator-jena-users/201109.mbox/%[email protected]%3E The mail above contains a link to a simple patch to ARQ that will fix it. Let me know if you have trouble applying the patch. Regards Holger On Nov 16, 2011, at 1:34 AM, Jerven Bolleman wrote: > Hi Holger, All, > > I am getting the following exception when using two threads to run > SPINConstraints.check() on different ontmodels. > As on the same data/code this exception happens on different places I am > worried about thread safety. Should the spin API be threadsafe for this > operation? I did not see any note in the javadoc of SPINConstraints [1]. > > If yes I will need to work on getting a test case out to the ARQ developers. > > Thanks and regards, > Jerven > > [1] > http://topbraid.org/spin/api/1.2.0/spin/apidocs/org/topbraid/spin/constraints/SPINConstraints.html > > 2011-11-15 13:04:31 +0000 org.expasy.rules.runners.ManyRuleRunner > ERROR: Exception > com.hp.hpl.jena.sparql.ARQInternalErrorException: Null for accumulator > at > com.hp.hpl.jena.sparql.expr.aggregate.AggregatorBase.getValue(AggregatorBase.java:61) > at > com.hp.hpl.jena.sparql.engine.iterator.QueryIterGroup.calc(QueryIterGroup.java:121) > at > com.hp.hpl.jena.sparql.engine.iterator.QueryIterGroup.<init>(QueryIterGroup.java:32) > at > com.hp.hpl.jena.sparql.engine.main.OpExecutor.execute(OpExecutor.java:413) > at > com.hp.hpl.jena.sparql.engine.main.ExecutionDispatch.visit(ExecutionDispatch.java:255) > at com.hp.hpl.jena.sparql.algebra.op.OpGroup.visit(OpGroup.java:37) > at > com.hp.hpl.jena.sparql.engine.main.ExecutionDispatch.exec(ExecutionDispatch.java:33) > at > com.hp.hpl.jena.sparql.engine.main.OpExecutor.executeOp(OpExecutor.java:107) > at > com.hp.hpl.jena.sparql.engine.main.OpExecutor.execute(OpExecutor.java:272) > at > com.hp.hpl.jena.sparql.engine.main.ExecutionDispatch.visit(ExecutionDispatch.java:143) > at com.hp.hpl.jena.sparql.algebra.op.OpFilter.visit(OpFilter.java:96) > at > com.hp.hpl.jena.sparql.engine.main.ExecutionDispatch.exec(ExecutionDispatch.java:33) > at > com.hp.hpl.jena.sparql.engine.main.OpExecutor.executeOp(OpExecutor.java:107) > at > com.hp.hpl.jena.sparql.engine.main.OpExecutor.execute(OpExecutor.java:196) > at > com.hp.hpl.jena.sparql.engine.main.ExecutionDispatch.visit(ExecutionDispatch.java:93) > at > com.hp.hpl.jena.sparql.algebra.op.OpSequence.visit(OpSequence.java:61) > at > com.hp.hpl.jena.sparql.engine.main.ExecutionDispatch.exec(ExecutionDispatch.java:33) > at > com.hp.hpl.jena.sparql.engine.main.OpExecutor.executeOp(OpExecutor.java:107) > at > com.hp.hpl.jena.sparql.engine.main.OpExecutor.execute(OpExecutor.java:80) > at com.hp.hpl.jena.sparql.engine.main.QC.execute(QC.java:40) > at > com.hp.hpl.jena.sparql.engine.main.QueryEngineMain.eval(QueryEngineMain.java:52) > at > com.hp.hpl.jena.sparql.engine.QueryEngineBase.evaluate(QueryEngineBase.java:138) > at > com.hp.hpl.jena.sparql.engine.QueryEngineBase.createPlan(QueryEngineBase.java:109) > at > com.hp.hpl.jena.sparql.engine.QueryEngineBase.getPlan(QueryEngineBase.java:97) > at > com.hp.hpl.jena.sparql.engine.main.QueryEngineMain$1.create(QueryEngineMain.java:91) > at > com.hp.hpl.jena.sparql.engine.QueryExecutionBase.getPlan(QueryExecutionBase.java:266) > at > com.hp.hpl.jena.sparql.engine.QueryExecutionBase.startQueryIterator(QueryExecutionBase.java:243) > at > com.hp.hpl.jena.sparql.engine.QueryExecutionBase.execConstruct(QueryExecutionBase.java:110) > at > org.topbraid.spin.constraints.SPINConstraints.runQueryOnClass(SPINConstraints.java:491) > at > org.topbraid.spin.constraints.SPINConstraints.run(SPINConstraints.java:458) > at > org.topbraid.spin.constraints.SPINConstraints.check(SPINConstraints.java:313) > at > org.expasy.rules.runners.ManyRuleRunner.runRules(ManyRuleRunner.java:123) > at > org.expasy.rules.runners.ManyRuleRunner$SparqlRuleRunner.runRules(ManyRuleRunner.java:271) > at > org.expasy.rules.runners.ManyRuleRunner$RuleRunner.run(ManyRuleRunner.java:313) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) > at java.util.concurrent.FutureTask.run(FutureTask.java:138) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > > > -- > You received this message because you are subscribed to the Google > Group "TopBraid Suite Users", the topics of which include TopBraid Composer, > TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN. > To post to this group, send email to > [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/topbraid-users?hl=en -- You received this message because you are subscribed to the Google Group "TopBraid Suite Users", the topics of which include TopBraid Composer, TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/topbraid-users?hl=en
