History | Log In     View a printable version of the current page. Get help!  
Issue Details [XML]

Key: SES-687
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Arjohn Kampman
Reporter: Arjohn Kampman
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Sesame

DirectTypeHierarchyInferencer-ForwardChainingRDFSInferencer combination leaves active transactions

Created: 19/Oct/09 01:53 PM   Updated: 19/Oct/09 01:56 PM
Component/s: Direct type hierarchy inferencer
Affects Version/s: 2.0, 2.1, 2.0.1, 2.2, 2.1.1, 2.1.2, 2.1.3, 2.2.1, 2.1.4, 2.2.2, 2.2.3, 2.2.4, 2.3-pr1
Fix Version/s: 2.3.0


 Description   
The combination of a DirectTypeHierarchyInferencer stacked on top of a ForwardChainingRDFSInferencer can leave active transactions in the underlying store implementation after a commit. This is shown in the build output when running the SeRQLQueryTestCase derived tests. The build output shows stack traces such as the following:

16:26:09.836 [main] WARN Rolling back transaction due to connection close
java.lang.Throwable: null
at org.openrdf.sail.helpers.SailConnectionBase.close(SailConnectionBase.java:168) [sesame-sail-api-2.3.0-SNAPSHOT.jar:na]
at org.openrdf.sail.helpers.SailConnectionWrapper.close(SailConnectionWrapper.java:74) [sesame-sail-api-2.3.0-SNAPSHOT.jar:na]
at org.openrdf.sail.helpers.SailConnectionWrapper.close(SailConnectionWrapper.java:74) [sesame-sail-api-2.3.0-SNAPSHOT.jar:na]
at org.openrdf.repository.sail.SailRepositoryConnection.close(SailRepositoryConnection.java:104) [sesame-repository-sail-2.3.0-SNAPSHOT.jar:na]
at org.openrdf.query.parser.serql.SeRQLQueryTestCase.runTest(SeRQLQueryTestCase.java:122) [sesame-serql-testsuite-2.3.0-SNAPSHOT.jar:na]
at junit.framework.TestCase.runBare(TestCase.java:134) [junit-4.7.jar:na]
at junit.framework.TestResult$1.protect(TestResult.java:110) [junit-4.7.jar:na]
at junit.framework.TestResult.runProtected(TestResult.java:128) [junit-4.7.jar:na]
at junit.framework.TestResult.run(TestResult.java:113) [junit-4.7.jar:na]
at junit.framework.TestCase.run(TestCase.java:124) [junit-4.7.jar:na]
at junit.framework.TestSuite.runTest(TestSuite.java:232) [junit-4.7.jar:na]
at junit.framework.TestSuite.run(TestSuite.java:227) [junit-4.7.jar:na]
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83) [junit-4.7.jar:na]
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62) [surefire-junit4-2.4.2.jar:2.4.2]
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140) [surefire-api-2.4.2.jar:2.1]
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:165) [surefire-api-2.4.2.jar:2.1]
at org.apache.maven.surefire.Surefire.run(Surefire.java:107) [surefire-api-2.4.2.jar:2.1]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [na:1.6.0_12]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [na:1.6.0_12]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [na:1.6.0_12]
at java.lang.reflect.Method.invoke(Method.java:597) [na:1.6.0_12]
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:289) [surefire-booter-2.4.2.jar:na]
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:993) [surefire-booter-2.4.2.jar:na]


 All   Comments   Change History      Sort Order:
Comment by Arjohn Kampman [19/Oct/09 01:56 PM]
The DirectTypeHierarchyInferencer now executes it's own flush-updates procedure in a while-loop, continuing as long as the underlying inferencer generates new statements.

Change by Arjohn Kampman [19/Oct/09 01:56 PM]
Field Original Value New Value
Status Open [ 1 ] Resolved [ 5 ]
Resolution Fixed [ 1 ]