I am experiencing a crash when getting the individuals of an OWLDescription that is a intersection of a class and a OneOf.
The error message when it crashes is: java: tSaveStack.h:50: T* TSaveStack<T>::pop(unsigned int) [with T = DlCompletionGraph::SaveState]: Assertion `this->last >= depth' failed.
Attached is a test case. Look at the code there are some comments that describe what I am seeing, including a case in which there is no crash, but the result is incorrect (I thought it might be related). Below is the stack trace from the crash.
0 0x00002b7a42822cab in raise () from /lib/libc.so.6
1 0x00002b7a42824660 in abort () from /lib/libc.so.6
2 0x00002b7a4281c436 in __assert_fail () from /lib/libc.so.6
3 0x00002aaaf2afb758 in TSaveStack<DlCompletionGraph::SaveState>::pop
(this=0x2aaaf43a2300, depth=1) at tSaveStack.h:50
4 0x00002aaaf2afa0e9 in DlCompletionGraph::restore (this=0x2aaaf43a2280,
level=1) at dlCompletionGraph.cpp:163
5 0x00002aaaf2ac438c in DlSatTester::restore (this=0x2aaaf43a2240,
newTryLevel=1) at Reasoner.cpp:705
6 0x00002aaaf2ac444c in DlSatTester::reInit (this=0x2aaaf43a2240) at
Reasoner.cpp:86
7 0x00002aaaf2abf4b6 in DlSatTester::runSat (this=0x2aaaf43a2240, p=517,
q=-540) at Reasoner.h:782
8 0x00002aaaf2ab4b33 in TBox::isSubHolds (this=0x2aaaf4323bb0,
pConcept=0x2aaaf43a9e80, qConcept=0x2aaaf4362220) at dlTBox.cpp:164
9 0x00002aaaf2aecffc in DLConceptTaxonomy::testSub (this=0x2aaaf437d610,
p=0x2aaaf43a9e80, q=0x2aaaf4362220) at DLConceptTaxonomy.cpp:81
10 0x00002aaaf2aed0a8 in DLConceptTaxonomy::testSubsumption
(this=0x2aaaf437d610, upDirection=true, cur=0x2aaaf4359e60) at DLConceptTaxonomy.cpp:165
11 0x00002aaaf2aed1fb in DLConceptTaxonomy::enhancedSubs
(this=0x2aaaf437d610, upDirection=true, cur=0x2aaaf4359e60) at DLConceptTaxonomy.cpp:158
12 0x00002aaaf2aed264 in DLConceptTaxonomy::searchBaader
(this=0x2aaaf437d610, upDirection=true, cur=0x2aaaf437d6e0) at DLConceptTaxonomy.cpp:124
13 0x00002aaaf2a9b97a in DLConceptTaxonomy::runBottomUp
(this=0x2aaaf437d610) at DLConceptTaxonomy.h:113
14 0x00002aaaf2add33b in Taxonomy::generalTwoPhaseClassification
(this=0x2aaaf437d610) at Taxonomy.cpp:122
15 0x00002aaaf2addbcf in Taxonomy::performClassification
(this=0x2aaaf437d610, p=0x2aaaf4362220) at Taxonomy.cpp:76
16 0x00002aaaf2ade56d in Taxonomy::doClassification (this=0x2aaaf437d610,
p=0x2aaaf4362220) at Taxonomy.h:134
17 0x00002aaaf2addc8f in Taxonomy::classifyTop (this=0x2aaaf437d610) at
Taxonomy.cpp:327
18 0x00002aaaf2adde50 in Taxonomy::classifyEntry (this=0x2aaaf437d610,
p=0x2aaaf4362220) at Taxonomy.cpp:258
19 0x00002aaaf2ab3d81 in TBox::classifyTempConcept (this=0x2aaaf4323bb0)
at dlTBox.cpp:275
20 0x00002aaaf2adfff4 in ReasoningKernel::setUpCache (this=0x2aaaf4246310,
query=0x2aaaf4362750, level=ReasoningKernel::csClassified) at Kernel.cpp:188
21 0x00002aaaf2aa8f05 in
ReasoningKernel::getDescendants<JTaxonomyActor<IndividualPolicy> > (this=0x2aaaf4246310, C=0x2aaaf4362750, actor=@0x40229a80) at ../Kernel/Kernel.h:547
22 0x00002aaaf2aa8f5e in
ReasoningKernel::getInstances<JTaxonomyActor<IndividualPolicy> > (this=0x2aaaf4246310, C=0x2aaaf4362750, actor=@0x40229a80) at ../Kernel/Kernel.h:647
23 0x00002aaaf2a875f9 in
Java_uk_ac_manchester_cs_factplusplus_FaCTPlusPlus_askInstances (env=0x40114590, obj=0x40229b90, arg=0x40229b88) at FaCTPlusPlus.cpp:1637
- OneOfCrash.java 4.52KB
Comment #1
Posted on Apr 25, 2008 by Happy WombatI am experiencing another crash that may or may not be related to this one. They both only occur in the presence of ObjectOneOf restrictions. However this crash is non-deterministic. I can predictably make it happen by repeatedly running a function that creates classes that are equivalent to an ObjectOneOf restriction.
I have attached the trace that the JVM produces.
I have not been able to replicate the problem outside my large codebase, so at least for now there is no minimal test case.
- hs_err_pid952.log 33.45KB
Comment #2
Posted on Nov 11, 2008 by Quick PandaFixed in the latest SVN
Status: Fixed
Labels:
Type-Defect
Priority-Medium