# Issue with reasoning

**URL:** <https://community.stardog.com/t/issue-with-reasoning/410>\
**Category:** Bug\
**Created:** [June 17, 2017, 8:30am UTC](https://community.stardog.com/t/issue-with-reasoning/410 "2017-06-17T08:30:50Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![reasonable](https://avatars.discourse-cdn.com/v4/letter/r/bcef8e/32.png) [@reasonable](https://community.stardog.com/u/reasonable)\
**Post date:** [June 17, 2017, 8:30am UTC](https://community.stardog.com/t/issue-with-reasoning/410/1 "2017-06-17T08:30:50Z")

</div>

Hi all,

I've developed and tested an ontology (RL profile) using protege. Whatever reasoner i use with protege, my ontology infers the correct results.

I've uploaded the ontology to stardog and i can make queries without reasoning and i get the expected results. The query i made is:

> ` ./stardog query storagex --reasoning "select ?x where { ?x a ec:SRDF_Configuration }"`

When i try to use reasoning in stardog, even when i try to run the same query as above, i get following error:

> ERROR 2017-06-17 09:51:36,584 [XNIO-1 task-28] com.complexible.stardog.protocols.http.server.StardogHttpServiceLoader:accept(228): An unexpected exception was handled by the server  
> org.openrdf.query.QueryEvaluationException: null  
> at com.complexible.common.rdf.query.IteratorAsTupleQueryResult.hasNext(IteratorAsTupleQueryResult.java:81) ~[stardog-utils-rdf-5.0-RC1.jar:?]  
> at org.openrdf.query.QueryResults.report(QueryResults.java:158) ~[sesame-query-4.0.0.jar:?]  
> at org.openrdf.query.resultio.QueryResultIO.writeTuple(QueryResultIO.java:449) ~[sesame-queryresultio-api-4.0.0.jar:?]  
> at com.complexible.stardog.protocols.http.server.ProtocolUtils.executeReadQuery(ProtocolUtils.java:470) ~[stardog-protocols-http-server-5.0-RC1.jar:?]  
> at com.complexible.stardog.protocols.http.server.ProtocolUtils.executeReadQuery(ProtocolUtils.java:441) ~[stardog-protocols-http-server-5.0-RC1.jar:?]  
> at com.complexible.stardog.protocols.http.server.SPARQLProtocol.executeQuery(SPARQLProtocol.java:133) ~[stardog-protocols-http-server-5.0-RC1.jar:?]  
> at com.complexible.stardog.protocols.http.server.SPARQLProtocol.get(SPARQLProtocol.java:81) ~[stardog-protocols-http-server-5.0-RC1.jar:?]  
> at com.stardog.http.server.undertow.jaxrs.ExtractRoutes.lambda$handleIt$91(ExtractRoutes.java:186) ~[stardog-protocols-http-server-5.0-RC1.jar:?]  
> at org.apache.shiro.subject.support.SubjectRunnable.doRun(SubjectRunnable.java:120) ~[shiro-core-1.2.3.jar:1.2.3]  
> at org.apache.shiro.subject.support.SubjectRunnable.run(SubjectRunnable.java:108) ~[shiro-core-1.2.3.jar:1.2.3]  
> at com.stardog.http.server.undertow.ErrorHandling.lambda$safeDispatch$46(ErrorHandling.java:70) ~[stardog-protocols-http-server-5.0-RC1.jar:?]  
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0\_73]  
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0\_73]  
> at java.lang.Thread.run(Thread.java:745) [?:1.8.0\_73]  
> Caused by: java.util.ConcurrentModificationException  
> at java.util.HashMap$HashIterator.nextNode(HashMap.java:1429) ~[?:1.8.0\_73]  
> at java.util.HashMap$KeyIterator.next(HashMap.java:1453) ~[?:1.8.0\_73]  
> at com.clarkparsia.pellet.rules.RulesStrategy.applyRuleBindings(RulesStrategy.java:139) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.rules.RulesStrategy.doComplete(RulesStrategy.java:230) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.completion.AbstractCompletionStrategy.complete(AbstractCompletionStrategy.java:387) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.abox.DefaultABox.checkInconsistent(DefaultABox.java:1109) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.abox.DefaultABox.isConsistent(DefaultABox.java:1056) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine.partitionInstanceRetrieval(TableauRetrievalEngine.java:523) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine.binaryInstanceRetrieval(TableauRetrievalEngine.java:509) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine.binaryInstanceRetrieval(TableauRetrievalEngine.java:492) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine.retrieve(TableauRetrievalEngine.java:477) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine.queryInstances(TableauRetrievalEngine.java:410) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine.access$900(TableauRetrievalEngine.java:124) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine$Visitor.visit(TableauRetrievalEngine.java:790) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine$Visitor.visit(TableauRetrievalEngine.java:712) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.api.term.impl.axiom.TypeAssertionImpl.accept(TypeAssertionImpl.java:24) ~[stardog-reasoning-shared-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.TableauRetrievalEngine.execute(TableauRetrievalEngine.java:145) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.tableau.DefaultTableauKB.selectEntity(DefaultTableauKB.java:982) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.impl.AbstractKnowledgeBase.selectIndividual(AbstractKnowledgeBase.java:333) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.api.query.impl.DefaultQueryEngine.execute(DefaultQueryEngine.java:175) ~[stardog-reasoning-shared-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.api.query.impl.DefaultQueryEngine.execute(DefaultQueryEngine.java:87) ~[stardog-reasoning-shared-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.api.query.impl.AbstractQueryEngine.visit(AbstractQueryEngine.java:104) ~[stardog-reasoning-shared-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.api.query.impl.AbstractQueryEngine.visit(AbstractQueryEngine.java:33) ~[stardog-reasoning-shared-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.api.query.impl.SelectQueryImpl.accept(SelectQueryImpl.java:43) ~[stardog-reasoning-shared-5.0-RC1.jar:?]  
> at com.clarkparsia.pellet.api.query.impl.AbstractQueryEngine.execute(AbstractQueryEngine.java:42) ~[stardog-reasoning-shared-5.0-RC1.jar:?]  
> at com.complexible.stardog.reasoning.pellet.PelletUtils.executeQuery(PelletUtils.java:88) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.complexible.stardog.reasoning.pellet.PelletOp.computeNext(PelletOp.java:84) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.complexible.stardog.reasoning.pellet.PelletOp.computeNext(PelletOp.java:35) ~[stardog-reasoning-core-5.0-RC1.jar:?]  
> at com.complexible.common.collect.AbstractSkippingIterator.tryToComputeNext(AbstractSkippingIterator.java:143) ~[stardog-utils-common-5.0-RC1.jar:?]  
> at com.complexible.common.collect.AbstractSkippingIterator.hasNext(AbstractSkippingIterator.java:130) ~[stardog-utils-common-5.0-RC1.jar:?]  
> at com.complexible.stardog.plan.eval.operator.impl.SingleProjectionOp.computeNext(SingleProjectionOp.java:83) ~[stardog-5.0-RC1.jar:?]  
> at com.complexible.stardog.plan.eval.operator.impl.SingleProjectionOp.computeNext(SingleProjectionOp.java:33) ~[stardog-5.0-RC1.jar:?]  
> at com.complexible.common.collect.AbstractSkippingIterator.tryToComputeNext(AbstractSkippingIterator.java:143) ~[stardog-utils-common-5.0-RC1.jar:?]  
> at com.complexible.common.collect.AbstractSkippingIterator.hasNext(AbstractSkippingIterator.java:130) ~[stardog-utils-common-5.0-RC1.jar:?]  
> at com.complexible.stardog.plan.eval.operator.util.AutoCloseOperator.computeNext(AutoCloseOperator.java:112) ~[stardog-5.0-RC1.jar:?]  
> at com.complexible.stardog.plan.eval.operator.util.AutoCloseOperator.computeNext(AutoCloseOperator.java:25) ~[stardog-5.0-RC1.jar:?]  
> at com.complexible.common.collect.AbstractSkippingIterator.tryToComputeNext(AbstractSkippingIterator.java:143) ~[stardog-utils-common-5.0-RC1.jar:?]  
> at com.complexible.common.collect.AbstractSkippingIterator.hasNext(AbstractSkippingIterator.java:130) ~[stardog-utils-common-5.0-RC1.jar:?]  
> at com.complexible.stardog.plan.eval.operator.util.OpBasedBindingSetIteration.computeNext(OpBasedBindingSetIteration.java:110) ~[stardog-5.0-RC1.jar:?]  
> at com.complexible.stardog.plan.eval.operator.util.OpBasedBindingSetIteration.computeNext(OpBasedBindingSetIteration.java:34) ~[stardog-5.0-RC1.jar:?]  
> at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) ~[guava-18.0.jar:?]  
> at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) ~[guava-18.0.jar:?]  
> at com.complexible.common.rdf.query.IteratorAsTupleQueryResult.hasNext(IteratorAsTupleQueryResult.java:77) ~[stardog-utils-rdf-5.0-RC1.jar:?]  
> ... 13 more

What's the issue ? Is there a solution...?

---

<div class="post-metadata">

**Author:** ![robertbhacker](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.stardog.com/robertbhacker/32/68_2.png) [@robertbhacker](https://community.stardog.com/u/robertbhacker)\
**Post date:** [June 17, 2017, 10:02pm UTC](https://community.stardog.com/t/issue-with-reasoning/410/2 "2017-06-17T22:02:36Z")

</div>

Did you try this at stardog UI?  
What reasoning level did you set in stardog? try to use SL, even if your ontology is RL.

---

<div class="post-metadata">

**Author:** ![reasonable](https://avatars.discourse-cdn.com/v4/letter/r/bcef8e/32.png) [@reasonable](https://community.stardog.com/u/reasonable)\
**Post date:** [June 18, 2017, 8:25pm UTC](https://community.stardog.com/t/issue-with-reasoning/410/3 "2017-06-18T20:25:47Z")

</div>

Hi Robert, thanks for your support. Much appreciated.  
I ran it both from the UI and the CLI…same result.  
I am trying SL as we speak…there is a difference…it does not return an error (yet…) but its been processing for about 30 minutes now…  
What i’m curious about is why this takes so long while the same query in Protégé takes only about 30 s using the Pellet reasoner (about the same for most other reasoners…Fact++, Hermit…) ?  
It is a rather “complex” ontology…but i’m only running it on some 100 facts…

---

<div class="post-metadata">

**Author:** ![stephen](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.stardog.com/stephen/32/27_2.png) [@stephen](https://community.stardog.com/u/stephen)\
**Post date:** [June 19, 2017, 11:45am UTC](https://community.stardog.com/t/issue-with-reasoning/410/4 "2017-06-19T11:45:04Z")

</div>

Are you able to share your ontology/data, either here or privately?
