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/07/14 17:28:39 UTC
svn commit: r1146757 - in /incubator/jena/Experimental/TxTDB/trunk:
src-dev/tx/ src/main/java/com/hp/hpl/jena/tdb/transaction/
Author: andy
Date: Thu Jul 14 15:28:39 2011
New Revision: 1146757
URL: http://svn.apache.org/viewvc?rev=1146757&view=rev
Log: (empty)
Modified:
incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/ExTxTDB.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Journal.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalControl.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalEntry.java
Modified: incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/ExTxTDB.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/ExTxTDB.java?rev=1146757&r1=1146756&r2=1146757&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/ExTxTDB.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/ExTxTDB.java Thu Jul 14 15:28:39 2011
@@ -20,6 +20,7 @@ package tx;
import com.hp.hpl.jena.query.Dataset ;
+import com.hp.hpl.jena.query.DatasetFactory ;
import com.hp.hpl.jena.query.QueryExecution ;
import com.hp.hpl.jena.query.QueryExecutionFactory ;
import com.hp.hpl.jena.query.ResultSet ;
@@ -57,15 +58,15 @@ public class ExTxTDB
{
DatasetGraphTxn dsg = sConn.begin(ReadWrite.READ) ;
try {
- // SPARQL
- QueryExecution qExec = QueryExecutionFactory.create("SELECT * { ?s ?p ?o} LIMIT 10", /*dsg*/(Dataset)null) ;
+ Dataset ds = DatasetFactory.create(dsg) ;
+ QueryExecution qExec = QueryExecutionFactory.create("SELECT * { ?s ?p ?o} LIMIT 10", ds) ;
ResultSet rs = qExec.execSelect() ;
try {
ResultSetFormatter.out(rs) ;
} finally { qExec.close() ; }
- // Another query.
- qExec = QueryExecutionFactory.create("SELECT * { ?s ?p ?o} OFFSET 10 LIMIT 10", /*dsg*/(Dataset)null) ;
+ // Another query - same view of the data.
+ qExec = QueryExecutionFactory.create("SELECT * { ?s ?p ?o} OFFSET 10 LIMIT 10", ds) ;
rs = qExec.execSelect() ;
try {
ResultSetFormatter.out(rs) ;
@@ -78,21 +79,13 @@ public class ExTxTDB
{
DatasetGraphTxn dsg = sConn.begin(ReadWrite.WRITE) ;
try {
- // Update
- dsg.commit() ;
- } finally { dsg.close() ; } // WARNING if no commit or abort.
-
- // Alt: .beginQuery / .beginUpdate (isa Graphstore)
-
- dsg = sConn.begin(ReadWrite.WRITE) ;
- try {
// Query
QueryExecution qExec = QueryExecutionFactory.create("SELECT * { ?s ?p ?o} LIMIT 10", /*dsg*/(Dataset)null) ;
ResultSet rs = qExec.execSelect() ;
try {
ResultSetFormatter.out(rs) ;
} finally { qExec.close() ; }
-
+
// Update
UpdateRequest request = UpdateFactory.create("PREFIX : <http://example/> INSERT DATA { :s :p :o}") ;
UpdateProcessor proc = UpdateExecutionFactory.create(request, dsg) ;
Modified: incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Journal.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Journal.java?rev=1146757&r1=1146756&r2=1146757&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Journal.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/Journal.java Thu Jul 14 15:28:39 2011
@@ -7,14 +7,16 @@
package com.hp.hpl.jena.tdb.transaction;
import static com.hp.hpl.jena.tdb.sys.SystemTDB.SizeOfInt ;
-import static com.hp.hpl.jena.tdb.transaction.JournalEntryType.* ;
+import static com.hp.hpl.jena.tdb.transaction.JournalEntryType.Block ;
+
import java.nio.ByteBuffer ;
import java.util.Iterator ;
import org.openjena.atlas.iterator.IteratorSlotted ;
import org.openjena.atlas.lib.Closeable ;
import org.openjena.atlas.lib.Sync ;
-
+import org.slf4j.Logger ;
+import org.slf4j.LoggerFactory ;
import com.hp.hpl.jena.tdb.base.block.Block ;
import com.hp.hpl.jena.tdb.base.file.BufferChannel ;
@@ -28,6 +30,8 @@ import com.hp.hpl.jena.tdb.sys.FileRef ;
public final
class Journal implements Iterable<JournalEntry>, Sync, Closeable
{
+ private static Logger log = LoggerFactory.getLogger(Journal.class) ;
+
// Version 1 : issue might be excessive copying
// [TxTDB:TODO] Caching
@@ -80,6 +84,8 @@ class Journal implements Iterable<Journa
synchronized
private long _write(JournalEntryType type, FileRef fileRef, ByteBuffer buffer, Block block)
{
+ log.info(type+","+fileRef+", "+buffer+", "+block) ;
+
if ( buffer != null && block != null )
throw new TDBTransactionException("Buffer and block to write") ;
if ( block != null )
Modified: incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalControl.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalControl.java?rev=1146757&r1=1146756&r2=1146757&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalControl.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalControl.java Thu Jul 14 15:28:39 2011
@@ -11,9 +11,12 @@ import static com.hp.hpl.jena.tdb.sys.Sy
import java.io.File ;
import java.nio.ByteBuffer ;
+import java.util.Iterator ;
import java.util.Map ;
import org.openjena.atlas.lib.FileOps ;
+import org.slf4j.Logger ;
+import org.slf4j.LoggerFactory ;
import com.hp.hpl.jena.shared.Lock ;
import com.hp.hpl.jena.tdb.DatasetGraphTxn ;
@@ -37,17 +40,13 @@ public class JournalControl
public static void print(Journal journal)
{
+ System.out.println("Posn: "+journal.channel.size()) ;
+
for ( JournalEntry e : journal )
{
- System.out.println("Entry: ") ;
- ByteBuffer bb = e.getByteBuffer() ;
- Block blk = e.getBlock() ;
- if ( bb != null )
- System.out.println(" "+bb) ;
- if ( blk != null )
- System.out.println(" "+blk) ;
- System.out.println(" "+e.getFileRef()) ;
- System.out.println(" "+e.getType()) ;
+ System.out.println(JournalEntry.format(e)) ;
+ System.out.println("Posn: "+journal.channel.position()+" : ("+(journal.channel.size()-journal.channel.position())+")") ;
+
}
}
@@ -136,7 +135,13 @@ public class JournalControl
public static void replay(Transaction transaction)
{
+ // What about the Transactional components of a transation.
Journal journal = transaction.getJournal() ;
+ System.out.println(">> REPLAY") ;
+ print(journal) ;
+ System.out.println("<< REPLAY") ;
+ System.out.flush() ;
+
DatasetGraphTDB dsg = transaction.getBaseDataset() ;
replay(journal, dsg) ;
// Iterator<Transactional> iter = transaction.components() ;
Modified: incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalEntry.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalEntry.java?rev=1146757&r1=1146756&r2=1146757&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalEntry.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/JournalEntry.java Thu Jul 14 15:28:39 2011
@@ -54,6 +54,31 @@ public class JournalEntry
public ByteBuffer getByteBuffer() { return byteBuffer ; }
public Block getBlock() { return block ; }
public FileRef getFileRef() { return fileRef ; }
+
+ @Override
+ public String toString()
+ {
+ return "JournalEntry: "+type+" "+fileRef ;
+ }
+
+ static public String format(JournalEntry entry)
+ {
+ return format(entry.getType(), entry.getByteBuffer(), entry.getBlock(), entry.getFileRef()) ;
+ }
+
+ static public String format(JournalEntryType type, ByteBuffer byteBuffer, Block block, FileRef fileRef)
+ {
+ StringBuilder sbuff = new StringBuilder() ;
+
+ sbuff.append("Entry: \n") ;
+ if ( byteBuffer != null )
+ sbuff.append(" "+byteBuffer) ;
+ if ( block != null )
+ sbuff.append(" "+block) ;
+ sbuff.append(" "+fileRef) ;
+ sbuff.append(" "+type) ;
+ return sbuff.toString() ;
+ }
}
/*