Stardog is version 8.0.0
Occasionally with large queries (nested SELECTS, many OPTIONALs) we're getting the following error -
"java.lang.IllegalStateException: This stopwatch is already running."
We're not using any profiling settings.
Target database has just over 335M triples so not that large.
Similar query run on a database with over 850M triples works fine so doesn't appear to be related to size.
Stacktrace is :
java.lang.IllegalStateException: This stopwatch is already running.
at com.google.common.base.Preconditions.checkState(Preconditions.java:510) ~[guava-30.1.1-jre.jar:?]
at com.google.common.base.Stopwatch.start(Stopwatch.java:158) ~[guava-30.1.1-jre.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.VariableReplacementSolutionTable$3.reset(VariableReplacementSolutionTable.java:522) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.VariableReplacementSolutionTable.replaceConstants(VariableReplacementSolutionTable.java:237) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.VariableReplacementSolutionTable.compatibleWith(VariableReplacementSolutionTable.java:394) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.SolutionTable.lookup(SolutionTable.java:44) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp._nextLeft(HashJoinOp.java:245) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.BindJoin._nextLeft(BindJoin.java:223) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp.computeNext(HashJoinOp.java:178) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp.computeNext(HashJoinOp.java:43) ~[stardog-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.tryToComputeNext(AbstractSkippingIterator.java:183) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.hasNext(AbstractSkippingIterator.java:164) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.SolutionSequences.addAll(SolutionSequences.java:74) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp.addAll(HashJoinOp.java:339) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp.buildHashTable(HashJoinOp.java:321) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp._init(HashJoinOp.java:289) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp.computeNext(HashJoinOp.java:169) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.HashJoinOp.computeNext(HashJoinOp.java:43) ~[stardog-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.tryToComputeNext(AbstractSkippingIterator.java:183) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.hasNext(AbstractSkippingIterator.java:164) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.SingleProjectionOp.computeNext(SingleProjectionOp.java:95) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.impl.SingleProjectionOp.computeNext(SingleProjectionOp.java:32) ~[stardog-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.tryToComputeNext(AbstractSkippingIterator.java:183) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.hasNext(AbstractSkippingIterator.java:164) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.util.AutoCloseOperator.computeNext(AutoCloseOperator.java:121) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.util.AutoCloseOperator.computeNext(AutoCloseOperator.java:26) ~[stardog-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.tryToComputeNext(AbstractSkippingIterator.java:183) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.common.collect.AbstractSkippingIterator.hasNext(AbstractSkippingIterator.java:164) ~[stardog-utils-common-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.util.OpBasedBindingSetIteration.computeNext(OpBasedBindingSetIteration.java:117) ~[stardog-8.0.0.jar:?]
at com.complexible.stardog.plan.eval.operator.util.OpBasedBindingSetIteration.computeNext(OpBasedBindingSetIteration.java:38) ~[stardog-8.0.0.jar:?]
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141) ~[guava-30.1.1-jre.jar:?]
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136) ~[guava-30.1.1-jre.jar:?]
at com.complexible.common.base.CloseableIterator$2.computeNext(CloseableIterator.java:84) ~[stardog-utils-common-8.0.0.jar:?]
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141) ~[guava-30.1.1-jre.jar:?]
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136) ~[guava-30.1.1-jre.jar:?]
at com.complexible.common.rdf.query.IteratorAsTupleQueryResult.computeNext(IteratorAsTupleQueryResult.java:98) ~[stardog-utils-rdf-8.0.0.jar:?]
at com.complexible.common.rdf.query.IteratorAsTupleQueryResult.computeNext(IteratorAsTupleQueryResult.java:24) ~[stardog-utils-rdf-8.0.0.jar:?]
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141) ~[guava-30.1.1-jre.jar:?]
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136) ~[guava-30.1.1-jre.jar:?]
at com.stardog.stark.query.ClosingSpliterator.forEachRemaining(ClosingSpliterator.java:37) ~[stardog-stark-query-api-8.0.0.jar:?]
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:647) ~[?:1.8.0_332]
at com.stardog.stark.query.io.QueryResultWriters.write(QueryResultWriters.java:140) ~[stardog-stark-query-io-8.0.0.jar:?]
at com.stardog.stark.query.io.QueryResultWriters.write(QueryResultWriters.java:126) ~[stardog-stark-query-io-8.0.0.jar:?]
at com.complexible.stardog.protocols.http.server.ProtocolUtils.writeTupleResponse(ProtocolUtils.java:696) ~[stardog-protocols-http-server-8.0.0.jar:?]
at com.complexible.stardog.protocols.http.server.ProtocolUtils.executeReadQuery(ProtocolUtils.java:588) ~[stardog-protocols-http-server-8.0.0.jar:?]
at com.complexible.stardog.protocols.http.server.ProtocolUtils.executeReadQuery(ProtocolUtils.java:557) ~[stardog-protocols-http-server-8.0.0.jar:?]
at com.complexible.stardog.protocols.http.server.ProtocolUtils.executeReadQuery(ProtocolUtils.java:515) ~[stardog-protocols-http-server-8.0.0.jar:?]
at com.complexible.stardog.protocols.http.server.SPARQLProtocol.executeQuery(SPARQLProtocol.java:250) ~[stardog-protocols-http-server-8.0.0.jar:?]
at com.complexible.stardog.protocols.http.server.SPARQLProtocol.postSparqlQuery(SPARQLProtocol.java:174) ~[stardog-protocols-http-server-8.0.0.jar:?]