Dear List,

I ran into an unusual error today when I tried to backup (and also compact)
my TDB instance.

I first encountered the error when trying to compact and backup up using
fuseki 4.3.2

I ran both:

$ curl -XPOST http://localhost:3030/$/backup/ds
$ curl -XPOST http://localhost:3030/$/compact/ds

Both of these commands executed for while, filling up disk space, and then
suddently stopped:

Eventually, I ran:

$ curl -XGET http://localhost:3030/$/status

and for both the compact and backup command, I received:

 "success": false (as seen in the example below)

[ {
    "finished" : "2014-05-28T13:54:13.608+01:00" ,
    "started" : "2014-05-28T13:54:03.607+01:00" ,
    "task" : "backup" ,
    "taskId" : "1" ,
    "success" : false
  }
]


As I couldn't find any other message to help me diagnose the issue, I
stopped the running fuseki instance and tried to use the tdb2.tdbackup
command.

For this I used apache-jena-4.9.0 and I ran the following command

$ tdb2.tdbbackup --loc build

This command ran for a while, and I could see that it was writing to the
disk, but then it suddenly failed and gave me the following error message.

org.apache.jena.tdb2.TDBException: NodeTableTRDF/Read
at
org.apache.jena.tdb2.store.nodetable.NodeTableTRDF.readNodeFromTable(NodeTableTRDF.java:87)
at
org.apache.jena.tdb2.store.nodetable.NodeTableNative._retrieveNodeByNodeId(NodeTableNative.java:102)
at
org.apache.jena.tdb2.store.nodetable.NodeTableNative.getNodeForNodeId(NodeTableNative.java:52)
at
org.apache.jena.tdb2.store.nodetable.NodeTableCache._retrieveNodeByNodeId(NodeTableCache.java:208)
at
org.apache.jena.tdb2.store.nodetable.NodeTableCache.getNodeForNodeId(NodeTableCache.java:133)
at
org.apache.jena.tdb2.store.nodetable.NodeTableWrapper.getNodeForNodeId(NodeTableWrapper.java:52)
at
org.apache.jena.tdb2.store.nodetable.NodeTableInline.getNodeForNodeId(NodeTableInline.java:65)
at org.apache.jena.tdb2.lib.TupleLib.quad(TupleLib.java:108)
at org.apache.jena.tdb2.lib.TupleLib.quad(TupleLib.java:103)
at
org.apache.jena.tdb2.lib.TupleLib.lambda$convertToQuads$3(TupleLib.java:52)
at
org.apache.jena.atlas.iterator.Iter$IterMap.lambda$forEachRemaining$0(Iter.java:432)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
at
org.apache.jena.atlas.iterator.Iter$IterMap.forEachRemaining(Iter.java:432)
at
org.apache.jena.atlas.iterator.IteratorWrapper.forEachRemaining(IteratorWrapper.java:52)
at
org.apache.jena.riot.system.StreamRDFOps.sendQuadsToStream(StreamRDFOps.java:130)
at org.apache.jena.riot.writer.NQuadsWriter.write$(NQuadsWriter.java:62)
at org.apache.jena.riot.writer.NQuadsWriter.write(NQuadsWriter.java:45)
at org.apache.jena.riot.writer.NQuadsWriter.write(NQuadsWriter.java:91)
at org.apache.jena.riot.RDFWriter.write$(RDFWriter.java:301)
at org.apache.jena.riot.RDFWriter.output(RDFWriter.java:259)
at org.apache.jena.riot.RDFWriter.output(RDFWriter.java:198)
at org.apache.jena.riot.RDFWriterBuilder.output(RDFWriterBuilder.java:207)
at org.apache.jena.riot.RDFDataMgr.write$(RDFDataMgr.java:1048)
at org.apache.jena.riot.RDFDataMgr.write(RDFDataMgr.java:982)
at org.apache.jena.riot.RDFDataMgr.write(RDFDataMgr.java:973)
at
org.apache.jena.tdb2.sys.DatabaseOps.lambda$backup$0(DatabaseOps.java:199)
at org.apache.jena.system.Txn.exec(Txn.java:77)
at org.apache.jena.system.Txn.executeRead(Txn.java:115)
at org.apache.jena.tdb2.sys.DatabaseOps.backup(DatabaseOps.java:199)
at tdb2.tdbbackup.exec(tdbbackup.java:47)
at org.apache.jena.cmd.CmdMain.mainMethod(CmdMain.java:87)
at org.apache.jena.cmd.CmdMain.mainRun(CmdMain.java:56)
at org.apache.jena.cmd.CmdMain.mainRun(CmdMain.java:43)
at tdb2.tdbbackup.main(tdbbackup.java:31)
*Caused by: org.apache.thrift.protocol.TProtocolException: Unrecognized
type 0*
at org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:140)
at org.apache.thrift.protocol.TProtocolUtil.skip(TProtocolUtil.java:53)
at
org.apache.jena.riot.thrift.wire.RDF_Term.standardSchemeReadValue(RDF_Term.java:432)
at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:238)
at org.apache.thrift.TUnion$TUnionStandardScheme.read(TUnion.java:227)
at org.apache.thrift.TUnion.read(TUnion.java:145)
at
org.apache.jena.tdb2.store.nodetable.NodeTableTRDF.readNodeFromTable(NodeTableTRDF.java:82)
... 33 more


(I am assuming that this error is the same reason the "compact" command
wasn't working.)

I'm not really sure what's gone wrong. I've done the fuseki compact command
several times without a problem.

Likewise, the Fuseki http server continues to be running well. It is
responding to all SPARQL GET requests as usual.

But as the database is growing (currently at 70G), and I need to be able to
both back it up and compact it as it grows.

I would be most grateful for assistance or help diagnosing the issue.
Please let me know if I can provide more information.

Sincerely,

Jeff

-- 
Dr. Jeffrey C. Witt
Philosophy Department
Loyola University Maryland
4501 N. Charles St.
Baltimore, MD 21210
www.jeffreycwitt.com

Reply via email to