[ https://issues.apache.org/jira/browse/JENA-1492?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16386317#comment-16386317 ]
ASF GitHub Bot commented on JENA-1492: -------------------------------------- Github user afs commented on the issue: https://github.com/apache/jena/pull/369 Yes, this is models passing down transactions. It only became possible with dataset-transaction promotion (new to 3.7.0). This all has a lot of knock on consequences. The wrap/create distinction is quite important and that touches a lot of files; it is not reformatting. "wrap" a model and the dataset can not have named graphs added, "create" with a model and it starts with that model and can have named graphs added. We only used to have "create" which has overhead and complexity as well as occasionally leading to unexpected behaviour with SPARQL Updates (updates work but the new NG are in-memory and disappear on restart - better to have a closed dataset and catch the issue at update time). While testing, I found lack of test coverage and integration testing, which is the root of the users@ email that triggered this, was the place to put this. There as a lack of assemblers for certain other special cases so I included them as well as they arose naturally from checking test coverage. > Transactions not passed down for nested models. > ----------------------------------------------- > > Key: JENA-1492 > URL: https://issues.apache.org/jira/browse/JENA-1492 > Project: Apache Jena > Issue Type: Bug > Components: Fuseki, TDB, TDB2 > Affects Versions: Jena 3.7.0 > Reporter: Andy Seaborne > Priority: Major > Attachments: config-tdb2-model.ttl > > > From [users@ > email|https://lists.apache.org/thread.html/eacd92488360298a4916b2b1b0cf2d299797140be1960f84410f9b5d@%3Cusers.jena.apache.org%3E], > after the configuration sorted out. > Hierarchies of models, such as inference models, on top of a TBD2 > backed-graph do not pass down the transaction leading to > {noformat} > org.apache.jena.dboe.transaction.txn.TransactionException: Not in a > transaction > at > org.apache.jena.dboe.transaction.txn.TransactionalComponentLifecycle.checkTxn(TransactionalComponentLifecycle.java:417) > at > org.apache.jena.dboe.trans.bplustree.BPlusTree.getRootRead(BPlusTree.java:159) > at > org.apache.jena.dboe.trans.bplustree.BPlusTree.iterator(BPlusTree.java:348) > at > org.apache.jena.tdb2.store.tupletable.TupleIndexRecord.all(TupleIndexRecord.java:251) > at > org.apache.jena.tdb2.store.tupletable.TupleTable.find(TupleTable.java:148) > at > org.apache.jena.tdb2.store.nodetupletable.NodeTupleTableConcrete.find(NodeTupleTableConcrete.java:161) > at > org.apache.jena.tdb2.store.nodetupletable.NodeTupleTableConcrete.find(NodeTupleTableConcrete.java:150) > at > org.apache.jena.tdb2.store.nodetupletable.NodeTupleTableConcrete.findAsNodeIds(NodeTupleTableConcrete.java:141) > at org.apache.jena.tdb2.store.TripleTable.find(TripleTable.java:64) > at > org.apache.jena.tdb2.store.DatasetGraphTDB.findInDftGraph(DatasetGraphTDB.java:110) > at > org.apache.jena.sparql.core.DatasetGraphBaseFind.find(DatasetGraphBaseFind.java:47) > at > org.apache.jena.sparql.core.DatasetGraphWrapper.find(DatasetGraphWrapper.java:152) > at org.apache.jena.sparql.core.GraphView.graphBaseFind(GraphView.java:125) > at org.apache.jena.graph.impl.GraphBase.find(GraphBase.java:255) > {noformat} > Example configuration (full version attached): > {noformat} > :service a fuseki:Service ; > fuseki:dataset :dataset ; > ... > ## Wrapper: Datset containing one TDB2-backed graph > :dataset a ja:RDFDataset ; > ja:defaultGraph :graph . > ## TDB2-backed graph > :graph rdf:type tdb2:GraphTDB ; > tdb2:dataset :datasetTDB2 . > ## TDB2 database > :datasetTDB2 rdf:type tdb2:DatasetTDB2 ; > tdb2:location "DB2". > {noformat} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)