Hi,

I'm facing the exception that I include below. I guess this is because I'm not 
properly opening a transaction or so. 

Let's try to explain a bit to guess if this is the problem:
- I have multiple graphs which I merge using MultiUnion
- I generate the MultiUnion in one transaction, but the use of the joined graph 
is done in another transaction.
- I use a single static final Dataset from 
TDBFactory.createDataset(TRIPLE_STORE_PATH);
- Read and write operations are done in different threads, so maybe we have 
started a join for read and in parallel we are writing on one of the graphs 
included in the union.


Any hint is welcome.

Regards,
Jorge


org.apache.jena.tdb.base.file.FileException: In the middle of an alloc-write
        at 
org.apache.jena.tdb.base.objectfile.ObjectFileStorage.read(ObjectFileStorage.java:311)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.base.objectfile.ObjectFileWrapper.read(ObjectFileWrapper.java:57)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at org.apache.jena.tdb.lib.NodeLib.fetchDecode(NodeLib.java:78) 
~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.store.nodetable.NodeTableNative.readNodeFromTable(NodeTableNative.java:186)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.store.nodetable.NodeTableNative._retrieveNodeByNodeId(NodeTableNative.java:111)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.store.nodetable.NodeTableNative.getNodeForNodeId(NodeTableNative.java:70)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.store.nodetable.NodeTableCache._retrieveNodeByNodeId(NodeTableCache.java:128)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.store.nodetable.NodeTableCache.getNodeForNodeId(NodeTableCache.java:82)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.store.nodetable.NodeTableWrapper.getNodeForNodeId(NodeTableWrapper.java:50)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.store.nodetable.NodeTableInline.getNodeForNodeId(NodeTableInline.java:67)
 ~[jena-tdb-3.5.0.jar:3.5.0]
        at org.apache.jena.tdb.lib.TupleLib.quad(TupleLib.java:129) 
~[jena-tdb-3.5.0.jar:3.5.0]
        at org.apache.jena.tdb.lib.TupleLib.quad(TupleLib.java:123) 
~[jena-tdb-3.5.0.jar:3.5.0]
        at 
org.apache.jena.tdb.lib.TupleLib.lambda$convertToQuads$3(TupleLib.java:59) 
~[jena-tdb-3.5.0.jar:3.5.0]
        at org.apache.jena.atlas.iterator.Iter$2.next(Iter.java:270) 
~[jena-base-3.5.0.jar:3.5.0]
        at org.apache.jena.atlas.iterator.Iter$2.next(Iter.java:270) 
~[jena-base-3.5.0.jar:3.5.0]
        at org.apache.jena.atlas.iterator.Iter.next(Iter.java:875) 
~[jena-base-3.5.0.jar:3.5.0]
        at 
org.apache.jena.util.iterator.WrappedIterator.next(WrappedIterator.java:94) 
~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.util.iterator.WrappedIterator.next(WrappedIterator.java:94) 
~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.util.iterator.FilterIterator.hasNext(FilterIterator.java:56) 
~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.util.iterator.NiceIterator$1.hasNext(NiceIterator.java:105) 
~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java:90) 
~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.graph.compose.CompositionBase$1.hasNext(CompositionBase.java:94)
 ~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.util.iterator.NiceIterator$1.hasNext(NiceIterator.java:105) 
~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.util.iterator.WrappedIterator.hasNext(WrappedIterator.java:90) 
~[jena-core-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterTriplePattern$TripleMapper.hasNextBinding(QueryIterTriplePattern.java:135)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:74)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.makeNextStage(QueryIterRepeatApply.java:101)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:65)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.makeNextStage(QueryIterRepeatApply.java:101)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:65)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterBlockTriples.hasNextBinding(QueryIterBlockTriples.java:63)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.makeNextStage(QueryIterRepeatApply.java:101)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:65)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterPeek.hasNextBinding(QueryIterPeek.java:57)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.makeNextStage(QueryIterRepeatApply.java:101)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:65)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.makeNextStage(QueryIterRepeatApply.java:101)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterRepeatApply.hasNextBinding(QueryIterRepeatApply.java:65)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterBlockTriples.hasNextBinding(QueryIterBlockTriples.java:63)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterGroup$1.initializeIterator(QueryIterGroup.java:93)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.init(IteratorDelayedInitialization.java:40)
 ~[jena-base-3.5.0.jar:3.5.0]
        at 
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.hasNext(IteratorDelayedInitialization.java:50)
 ~[jena-base-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterPlainWrapper.hasNextBinding(QueryIterPlainWrapper.java:53)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterProcessBinding.hasNextBinding(QueryIterProcessBinding.java:66)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at java.util.Iterator.forEachRemaining(Iterator.java:115) ~[?:1.8.0_121]
        at org.apache.jena.atlas.data.DataBag.addAll(DataBag.java:94) 
~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterSort$SortedBindingIterator.initializeIterator(QueryIterSort.java:87)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.init(IteratorDelayedInitialization.java:40)
 ~[jena-base-3.5.0.jar:3.5.0]
        at 
org.apache.jena.atlas.iterator.IteratorDelayedInitialization.hasNext(IteratorDelayedInitialization.java:50)
 ~[jena-base-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterPlainWrapper.hasNextBinding(QueryIterPlainWrapper.java:53)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIterConvert.hasNextBinding(QueryIterConvert.java:58)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:39)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorWrapper.hasNextBinding(QueryIteratorWrapper.java:39)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.iterator.QueryIteratorBase.hasNext(QueryIteratorBase.java:114)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.ResultSetStream.hasNext(ResultSetStream.java:74) 
~[jena-arq-3.5.0.jar:3.5.0]
        at 
org.apache.jena.sparql.engine.ResultSetCheckCondition.hasNext(ResultSetCheckCondition.java:55)
 ~[jena-arq-3.5.0.jar:3.5.0]
        at 
com.myproject.rest.StatisticsRestService.getDataBy(StatisticsRestService.java:205)
 ~[classes:?]
        at 
com.myproject.rest.StatisticsRestService.getData(StatisticsRestService.java:178)
 ~[classes:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.8.0_121]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_121]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_121]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_121]
        at 
org.jboss.weld.bean.proxy.AbstractBeanInstance.invoke(AbstractBeanInstance.java:38)
 ~[weld-core-impl-2.3.2.Final.jar!/:2.3.2.Final]
        at 
org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:100)
 ~[weld-core-impl-2.3.2.Final.jar!/:2.3.2.Final]
        at 
com.myproject.rest.StatisticsRestService$Proxy$_$$_WeldClientProxy.getData(Unknown
 Source) ~[classes:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.8.0_121]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_121]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_121]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_121]
        at 
org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:139) 
~[resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295)
 ~[resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249)
 ~[resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:236)
 ~[resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:395)
 [resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:202)
 [resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:221)
 [resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
 [resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at 
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
 [resteasy-jaxrs-3.0.14.Final.jar!/:3.0.14.Final]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) 
[jboss-servlet-api_3.1_spec-1.0.0.Final.jar!/:1.0.0.Final]
        at 
io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
 [log4j-web-2.5.jar:2.5]
        at 
io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60) 
[undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84) 
[undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
 [wildfly-undertow-10.0.0.Final.jar!/:10.0.0.Final]
        at 
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
 [wildfly-undertow-10.0.0.Final.jar!/:10.0.0.Final]
        at 
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
 [undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:284)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:263)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:174)
 [undertow-servlet-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.server.Connectors.executeRootHandler(Connectors.java:202) 
[undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:793) 
[undertow-core-1.3.15.Final.jar!/:1.3.15.Final]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[?:1.8.0_121]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[?:1.8.0_121]
        at java.lang.Thread.run(Thread.java:745) [?:1.8.0_121]


Reply via email to