If you do want to load data to a running system it may be best to use the
Graph Store Protocol features of Fuseki.

If TDB is the backing store Fuseki will use transactions appropriately and
data can be loaded while users are querying it with TDB's transaction
machinery ensuring that existing read transactions don't see the new data
until it has been committed.  However this may have increased memory usage
due to the write ahead journaling that TDB uses to implement transactions.

Rob




On 5/29/13 9:43 AM, "Marco Neumann" <[email protected]> wrote:

>actually when you say it Rob, tdbloader2 is not hitting the webservice but
>tdb on the file system.
>
>so you are right tdbloader2 is running concurrent with the fuseki
>instance.
>not a good idea with the current design.
>
>will have to shut down fuseki before loading the new data now
>
>
>
>On Wed, May 29, 2013 at 12:29 PM, Rob Vesse <[email protected]> wrote:
>
>> I don't quite follow what you are doing here Marco.  Exactly what steps
>> are you taking to load the data/run Fuseki?
>>
>> Are you saying that you are running a Fuseki instance against a TDB
>> instance that you are bulk loading in parallel?  If so this is a very
>>bad
>> idea, TDB is not safe for concurrent use across multiple JVMs
>>
>> Rob
>>
>>
>>
>> On 5/29/13 7:11 AM, "Marco Neumann" <[email protected]> wrote:
>>
>> >have you seen this before? I am getting this warning recently while
>>fuseki
>> >is building the index after a bulkload with tdbloader2
>> >
>> >as you can see other users access the fuseki webservice at the same
>>time.
>> >
>> >
>> >13:58:17 Index phase
>> >13:58:17 Index SPO
>> >13:58:20 INFO  [4] GET *
>> >13:58:20 INFO  [4] Query = PREFIX geo:<
>> >http://www.w3.org/2003/01/geo/wgs84_pos#> PREFIX foaf:<
>> >http://xmlns.com/foaf/0.1/> PREFIX loticoowl:<
>> >http://www.lotico.com/ontology/> DESCRIBE <
>> >http://www.lotico.com/resource/member_12111849>
>> >13:58:20 WARN  [4] RC = 500 : BlockAccessBase: Bounds exception:
>> >/public_trust/db/fusekidb/node2id.idn: (1025,1)
>> >com.hp.hpl.jena.tdb.base.block.BlockException: BlockAccessBase: Bounds
>> >exception: /public_trust/db/fusekidb/node2id.idn: (1025,1)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.base.file.BlockAccessBase.check(BlockAccessBase.java
>>>:1
>> >18)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.base.file.BlockAccessMapped.read(BlockAccessMapped.j
>>>av
>> >a:93)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.base.block.BlockMgrFileAccess.getBlock(BlockMgrFileA
>>>cc
>> >ess.java:81)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.base.block.BlockMgrFileAccess.getRead(BlockMgrFileAc
>>>ce
>> >ss.java:70)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.base.block.BlockMgrWrapper.getRead(BlockMgrWrapper.j
>>>av
>> >a:52)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.base.page.PageBlockMgr.getRead(PageBlockMgr.java:68)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.index.bplustree.BPTreeNodeMgr.getRead(BPTreeNodeMgr.
>>>ja
>> >va:105)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.index.bplustree.BPTreeNode.getMgrRead(BPTreeNode.jav
>>>a:
>> >166)
>> >        at
>> >com.hp.hpl.jena.tdb.index.bplustree.BPTreeNode.get(BPTreeNode.java:154)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.index.bplustree.BPTreeNode.findHere(BPTreeNode.java:
>>>42
>> >2)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.index.bplustree.BPTreeNode.internalSearch(BPTreeNode
>>>.j
>> >ava:407)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.index.bplustree.BPTreeNode.search(BPTreeNode.java:18
>>>7)
>> >        at
>> >com.hp.hpl.jena.tdb.index.bplustree.BPlusTree.find(BPlusTree.java:282)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableNative.accessIndex(NodeTableNativ
>>>e.
>> >java:132)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableNative._idForNode(NodeTableNative
>>>.j
>> >ava:117)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableNative.getNodeIdForNode(NodeTable
>>>Na
>> >tive.java:79)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableCache._idForNode(NodeTableCache.j
>>>av
>> >a:125)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableCache.getNodeIdForNode(NodeTableC
>>>ac
>> >he.java:79)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableWrapper.getNodeIdForNode(NodeTabl
>>>eW
>> >rapper.java:49)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableInline.getNodeIdForNode(NodeTable
>>>In
>> >line.java:59)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTableWrapper.getNodeIdForNode(NodeTabl
>>>eW
>> >rapper.java:49)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTupleTableConcrete.idForNode(NodeTuple
>>>Ta
>> >bleConcrete.java:189)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.nodetable.NodeTupleTableConcrete.findAsNodeIds(NodeT
>>>up
>> >leTableConcrete.java:142)
>> >        at 
>>com.hp.hpl.jena.tdb.store.TripleTable.find(TripleTable.java:76)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.store.DatasetGraphTDB.findInDftGraph(DatasetGraphTDB
>>>.j
>> >ava:100)
>> >        at
>> 
>>>com.hp.hpl.jena.sparql.core.DatasetGraphBaseFind.find(DatasetGraphBaseFi
>>>nd
>> >.java:46)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.store.GraphTDBBase.graphBaseFindDft(GraphTDBBase.jav
>>>a:
>> >114)
>> >        at
>> 
>>>com.hp.hpl.jena.tdb.store.GraphTriplesTDB.graphBaseFind(GraphTriplesTDB.
>>>ja
>> >va:71)
>> >        at 
>>com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:268)
>> >        at
>> >com.hp.hpl.jena.graph.impl.GraphBase.graphBaseFind(GraphBase.java:290)
>> >        at 
>>com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:287)
>> >        at
>> 
>>>com.hp.hpl.jena.rdf.model.impl.ModelCom.listStatements(ModelCom.java:458
>>>)
>> >        at
>> 
>>>com.hp.hpl.jena.rdf.model.impl.ModelCom.listStatements(ModelCom.java:464
>>>)
>> >        at
>> 
>>>com.hp.hpl.jena.rdf.model.impl.ResourceImpl.listProperties(ResourceImpl.
>>>ja
>> >va:182)
>> >        at
>> >com.hp.hpl.jena.sparql.util.Closure.closureNoTest(Closure.java:194)
>> >        at 
>>com.hp.hpl.jena.sparql.util.Closure.closure(Closure.java:148)
>> >        at 
>>com.hp.hpl.jena.sparql.util.Closure.closure(Closure.java:127)
>> >        at
>> 
>>>com.hp.hpl.jena.sparql.core.describe.DescribeBNodeClosure.describe(Descr
>>>ib
>> >eBNodeClosure.java:54)
>> >        at
>> 
>>>com.hp.hpl.jena.sparql.engine.QueryExecutionBase.execDescribe(QueryExecu
>>>ti
>> >onBase.java:318)
>> >        at
>> 
>>>com.hp.hpl.jena.sparql.engine.QueryExecutionBase.execDescribe(QueryExecu
>>>ti
>> >onBase.java:257)
>> >        at
>> 
>>>org.apache.jena.fuseki.servlets.SPARQL_Query.executeQuery(SPARQL_Query.j
>>>av
>> >a:300)
>> >        at
>> 
>>>org.apache.jena.fuseki.servlets.SPARQL_Query.execute(SPARQL_Query.java:2
>>>54
>> >)
>> >        at
>> 
>>>org.apache.jena.fuseki.servlets.SPARQL_Query.executeWithParameter(SPARQL
>>>_Q
>> >uery.java:215)
>> >        at
>> 
>>>org.apache.jena.fuseki.servlets.SPARQL_Query.perform(SPARQL_Query.java:1
>>>06
>> >)
>> >        at
>> 
>>>org.apache.jena.fuseki.servlets.SPARQL_ServletBase.doCommonWorker(SPARQL
>>>_S
>> >ervletBase.java:117)
>> >        at
>> 
>>>org.apache.jena.fuseki.servlets.SPARQL_ServletBase.doCommon(SPARQL_Servl
>>>et
>> >Base.java:67)
>> >        at
>> 
>>>org.apache.jena.fuseki.servlets.SPARQL_Query.doGet(SPARQL_Query.java:86)
>> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)
>> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
>> >        at
>> >org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669)
>> >        at
>> 
>>>org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHan
>>>dl
>> >er.java:1336)
>> >        at
>> 
>>>org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java
>>>:8
>> >2)
>> >        at
>> >org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:264)
>> >        at
>> 
>>>org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHan
>>>dl
>> >er.java:1307)
>> >        at
>> 
>>>org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:45
>>>3)
>> >        at
>> 
>>>org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.
>>>ja
>> >va:229)
>> >        at
>> 
>>>org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.
>>>ja
>> >va:1072)
>> >        at
>> 
>>>org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382
>>>)
>> >        at
>> 
>>>org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.j
>>>av
>> >a:193)
>> >        at
>> 
>>>org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.j
>>>av
>> >a:1006)
>> >        at
>> 
>>>org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java
>>>:1
>> >35)
>> >        at
>> 
>>>org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja
>>>va
>> >:116)
>> >        at org.eclipse.jetty.server.Server.handle(Server.java:365)
>> >        at
>> 
>>>org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHt
>>>tp
>> >Connection.java:485)
>> >        at
>> 
>>>org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHt
>>>tp
>> >Connection.java:53)
>> >        at
>> 
>>>org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractH
>>>tt
>> >pConnection.java:926)
>> >        at
>> 
>>>org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerCom
>>>pl
>> >ete(AbstractHttpConnection.java:988)
>> >        at
>> >org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
>> >        at
>> >org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
>> >        at
>> 
>>>org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConne
>>>ct
>> >ion.java:72)
>> >        at
>> 
>>>org.eclipse.jetty.server.nio.BlockingChannelConnector$BlockingChannelEnd
>>>Po
>> >int.run(BlockingChannelConnector.java:298)
>> >        at
>> 
>>>org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.j
>>>av
>> >a:608)
>> >        at
>> 
>>>org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.ja
>>>va
>> >:543)
>> >        at java.lang.Thread.run(Unknown Source)
>> >13:58:20 INFO  [4] 500 BlockAccessBase: Bounds exception:
>> >/public_trust/db/fusekidb/node2id.idn: (1025,1)
>> >13:58:28 Build SPO
>> >13:58:32 Index POS
>> >13:58:47 Build POS
>> >13:58:51 Index OSP
>> >13:59:01 Build OSP
>> >13:59:06 Index phase end
>> >13:59:06 -- TDB Bulk Loader Finish
>> >
>> >
>> >--
>> >
>> >
>> >---
>> >Marco Neumann
>> >KONA
>>
>>
>
>
>-- 
>
>
>---
>Marco Neumann
>KONA

Reply via email to