You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2011/06/14 13:07:47 UTC
svn commit: r1135483 - in /incubator/jena/Experimental/TxTDB/trunk:
src-dev/setup/ src-dev/tx/ src/main/java/com/hp/hpl/jena/tdb/transaction/
Author: andy
Date: Tue Jun 14 11:07:46 2011
New Revision: 1135483
URL: http://svn.apache.org/viewvc?rev=1135483&view=rev
Log: (empty)
Modified:
incubator/jena/Experimental/TxTDB/trunk/src-dev/setup/DatasetBuilderStd.java
incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java
incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/TxMain.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetBuilderTxn.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetGraphTxnTDB.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Transaction.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/TransactionManager.java
Modified: incubator/jena/Experimental/TxTDB/trunk/src-dev/setup/DatasetBuilderStd.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src-dev/setup/DatasetBuilderStd.java?rev=1135483&r1=1135482&r2=1135483&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src-dev/setup/DatasetBuilderStd.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src-dev/setup/DatasetBuilderStd.java Tue Jun 14 11:07:46 2011
@@ -72,7 +72,6 @@ public class DatasetBuilderStd implement
}
protected void set(NodeTableBuilder nodeTableBuilder,
- //NodeTupleTableBuilder nodeTupleTableBuilder,
TupleIndexBuilder tupleIndexBuilder,
IndexBuilder indexBuilder,
RangeIndexBuilder rangeIndexBuilder,
Modified: incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java?rev=1135483&r1=1135482&r2=1135483&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java Tue Jun 14 11:07:46 2011
@@ -2,7 +2,10 @@ package tx;
public class DevTx
{
- // Building a datset.
+ // Building a dataset.
+ // Commit and reply?
+ // Reattach a journal?
+
// Need a clearly defined start/finish
// start => location, journal and set datastructures.
Modified: incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/TxMain.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/TxMain.java?rev=1135483&r1=1135482&r2=1135483&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/TxMain.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/TxMain.java Tue Jun 14 11:07:46 2011
@@ -15,12 +15,14 @@ import java.util.Iterator ;
import org.junit.Test ;
import org.openjena.atlas.lib.Bytes ;
+import org.openjena.atlas.lib.FileOps ;
import org.openjena.atlas.lib.Pair ;
import org.openjena.atlas.lib.StrUtils ;
import org.openjena.atlas.logging.Log ;
import org.openjena.atlas.test.Gen ;
import org.slf4j.Logger ;
import org.slf4j.LoggerFactory ;
+import setup.DatasetBuilder ;
import com.hp.hpl.jena.query.DatasetFactory ;
import com.hp.hpl.jena.query.Query ;
@@ -28,12 +30,17 @@ import com.hp.hpl.jena.query.QueryExecut
import com.hp.hpl.jena.query.QueryExecutionFactory ;
import com.hp.hpl.jena.query.QueryFactory ;
import com.hp.hpl.jena.query.Syntax ;
+import com.hp.hpl.jena.rdf.model.Model ;
+import com.hp.hpl.jena.rdf.model.ModelFactory ;
import com.hp.hpl.jena.sparql.core.DatasetGraph ;
import com.hp.hpl.jena.sparql.util.QueryExecUtils ;
+import com.hp.hpl.jena.tdb.TDBFactory ;
+import com.hp.hpl.jena.tdb.TDBLoader ;
import com.hp.hpl.jena.tdb.base.block.BlockMgr ;
import com.hp.hpl.jena.tdb.base.block.BlockMgrFactory ;
import com.hp.hpl.jena.tdb.base.block.BlockMgrLogger ;
import com.hp.hpl.jena.tdb.base.block.BlockMgrTracker ;
+import com.hp.hpl.jena.tdb.base.file.Location ;
import com.hp.hpl.jena.tdb.base.objectfile.ObjectFile ;
import com.hp.hpl.jena.tdb.base.record.Record ;
import com.hp.hpl.jena.tdb.base.record.RecordFactory ;
@@ -44,12 +51,16 @@ import com.hp.hpl.jena.tdb.index.RangeIn
import com.hp.hpl.jena.tdb.index.bplustree.BPTreeNode ;
import com.hp.hpl.jena.tdb.index.bplustree.BPlusTree ;
import com.hp.hpl.jena.tdb.index.bplustree.BPlusTreeParams ;
+import com.hp.hpl.jena.tdb.transaction.DatasetBuilderTxn ;
+import com.hp.hpl.jena.tdb.transaction.DatasetGraphTxnTDB ;
import com.hp.hpl.jena.tdb.transaction.Journal ;
import com.hp.hpl.jena.tdb.transaction.JournalEntry ;
import com.hp.hpl.jena.tdb.transaction.JournalEntryType ;
+import com.hp.hpl.jena.tdb.transaction.TransactionManager ;
import com.hp.hpl.jena.update.UpdateAction ;
import com.hp.hpl.jena.update.UpdateFactory ;
import com.hp.hpl.jena.update.UpdateRequest ;
+import com.hp.hpl.jena.util.FileManager ;
public class TxMain
{
@@ -71,6 +82,12 @@ public class TxMain
public static void main(String... args)
{
+ DatasetGraphTxnTDB dsg = build() ;
+ dsg.commit() ;
+ load("D.ttl", dsg) ;
+ query("SELECT (Count(*) AS ?c) { ?s ?p ?o }", dsg) ;
+ exit(0) ;
+
//tree_ins_2_01() ; exit(0) ;
//test.BPlusTreeRun.main("test", "--bptree:track", "3", "125", "100000") ; exit(0) ;
@@ -81,6 +98,15 @@ public class TxMain
bpTreeTracking() ; exit(0) ;
}
+ private static DatasetGraphTxnTDB build()
+ {
+ FileOps.ensureDir("DB") ;
+ FileOps.clearDirectory("DB") ;
+ DatasetGraph dsg = TDBFactory.createDatasetGraph("DB") ;
+ DatasetGraphTxnTDB dsg2 = new TransactionManager().begin(dsg) ;
+ return dsg2 ;
+ }
+
private static void dump(ObjectFile file)
{
Iterator<Pair<Long, ByteBuffer>> iter = file.all() ;
@@ -335,6 +361,13 @@ public class TxMain
QueryExecUtils.executeQuery(query, qExec) ;
}
+ private static void load(String file, DatasetGraphTxnTDB dsg)
+ {
+ Model m = ModelFactory.createModelForGraph(dsg.getDefaultGraph()) ;
+ FileManager.get().readModel(m, file) ;
+
+ }
+
public static void update(String updateStr, DatasetGraph dsg)
{
UpdateRequest req = UpdateFactory.create(updateStr) ;
Modified: incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetBuilderTxn.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetBuilderTxn.java?rev=1135483&r1=1135482&r2=1135483&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetBuilderTxn.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetBuilderTxn.java Tue Jun 14 11:07:46 2011
@@ -15,7 +15,6 @@ import setup.NodeTableBuilder ;
import setup.ObjectFileBuilder ;
import setup.RangeIndexBuilder ;
import setup.TupleIndexBuilder ;
-import tx.transaction.DatasetGraphTxView ;
import com.hp.hpl.jena.tdb.base.block.BlockMgr ;
import com.hp.hpl.jena.tdb.base.file.BufferChannel ;
@@ -29,7 +28,7 @@ import com.hp.hpl.jena.tdb.store.Dataset
public class DatasetBuilderTxn extends DatasetBuilderStd
{
- public DatasetBuilderTxn() { setStd() ; }
+ public DatasetBuilderTxn(TransactionManager txnMgr) { setStd() ; this.txnMgr = txnMgr ; }
@Override
protected void setStd()
@@ -61,14 +60,13 @@ public class DatasetBuilderTxn extends D
txn.add(journal) ;
DatasetGraphTDB dsg = super.build(location, config) ;
- new DatasetGraphTxnTDB(dsg, txn) ;
+ return new DatasetGraphTxnTDB(dsg, txn) ;
}
public static final String journalExt = "jrnl" ;
public static final String journalFilename = "journal" ;
- // Maybe part of DatasetGraphTDB
- private static TransactionManager txnMgr = new TransactionManager() ;
+ private TransactionManager txnMgr ;
private Journal journal ;
private Transaction txn ;
private Location location ;
Modified: incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetGraphTxnTDB.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetGraphTxnTDB.java?rev=1135483&r1=1135482&r2=1135483&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetGraphTxnTDB.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetGraphTxnTDB.java Tue Jun 14 11:07:46 2011
@@ -6,10 +6,9 @@
package com.hp.hpl.jena.tdb.transaction;
-import com.hp.hpl.jena.sparql.core.DatasetGraphWrapper ;
import com.hp.hpl.jena.tdb.store.DatasetGraphTDB ;
-public class DatasetGraphTxnTDB extends DatasetGraphWrapper
+public class DatasetGraphTxnTDB extends DatasetGraphTDB
{
private final Transaction transaction ;
@@ -24,7 +23,7 @@ public class DatasetGraphTxnTDB extends
@Override
public String toString()
- { return "Txn:"+getWrapped().toString() ; }
+ { return "Txn:"+super.toString() ; }
}
/*
Modified: incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Transaction.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Transaction.java?rev=1135483&r1=1135482&r2=1135483&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Transaction.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Transaction.java Tue Jun 14 11:07:46 2011
@@ -14,6 +14,7 @@ import java.util.List ;
/** A transaction handle */
public class Transaction
{
+ // TODO split internal and external features.
private final long id ;
private final TransactionManager txnMgr ;
private final List<Iterator<?>> iterators ;
Modified: incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/TransactionManager.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/TransactionManager.java?rev=1135483&r1=1135482&r2=1135483&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/TransactionManager.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/TransactionManager.java Tue Jun 14 11:07:46 2011
@@ -29,7 +29,7 @@ public class TransactionManager
return txn ;
}
- public Transaction begin(DatasetGraph dsg)
+ public DatasetGraphTxnTDB begin(DatasetGraph dsg)
{
// If already a transaction ...
// Subs transactions are a new view - commit is only comit to parent transaction.
@@ -48,13 +48,11 @@ public class TransactionManager
// For now, always build a parallel dataset - later, associate with the DatasetGraphTDB
Location location = dsgtdb.getLocation() ;
-
-
- DatasetBuilder x = new DatasetBuilderTxn(baseBlockMgrBuilder, nodeTable) ;
- DatasetGraph dsg2 = x.build(Location.mem(), null) ;
-
- Transaction_X txn = createTransaction() ;
- return new DatasetGraphTxView(txn, dsg2) ;
+ // TODO Don't rebuild every time.
+ DatasetBuilder builder = new DatasetBuilderTxn(this) ;
+ //return builder.build(Location.mem(), null) ;
+ DatasetGraphTxnTDB dsgTxn = (DatasetGraphTxnTDB)builder.build(location, null) ;
+ return dsgTxn ;
}
public void commit(Transaction transaction)