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
