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/25 22:24:10 UTC
svn commit: r1139612 - in /incubator/jena:
Experimental/TxTDB/trunk/src-dev/tx/
Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/
Jena2/ARQ/trunk/ Jena2/ARQ/trunk/src-dev/dev/
Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggreg...
Author: andy
Date: Sat Jun 25 20:24:09 2011
New Revision: 1139612
URL: http://svn.apache.org/viewvc?rev=1139612&view=rev
Log:
Bug fix: SUM and AVG over errors didn't generate an error as they should do.
Modified:
incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java
incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/Replay.java
incubator/jena/Experimental/TxTDB/trunk/src/main/java/com/hp/hpl/jena/tdb/transaction/DatasetBuilderTxn.java
incubator/jena/Jena2/ARQ/trunk/ChangeLog.txt
incubator/jena/Jena2/ARQ/trunk/src-dev/dev/RunARQ.java
incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvg.java
incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvgDistinct.java
incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSum.java
incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSumDistinct.java
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=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/DevTx.java Sat Jun 25 20:24:09 2011
@@ -2,36 +2,19 @@ package tx;
public class DevTx
{
- // Build original with necessary indirects at right points
- // 1 - gets cache postioning right
- // 2 - fast to start
- // => change DatasetGraphTDB, DatasetBuilderStd
- // See BlockMgrSwitcher(normal, BlockMgrJournal), ObjectFileSwitcher,
- // Prefixes and NodeTupelTables will just work if the BlockMgrs and ObjectFiles at top-of-stack switchover.
-
+ // DatasetGraphBuilder.
+ // Call "register(ObjectFile)" / "register(BlockMgr)" on every create.
+ // DatasetGraphTDB : read-only mode (when transaction active)
+ // Prefixes as well.
// DSG.add(Quad(tripleInQuad, triple)) does not affect default graph.
- // DatasetGraphTxnTDB to graph the NodeTable and it's caches from the dsg wrapped.
- // Do this in general to reuse caches - don't build on files.
- // Standard DSG builder to collect of BlockMgrs and all ObjectsFiles together
- // Txn builder reuses. Can we do this by taking apart a DSG?
-
- // Transaction needs to do FileRef to file.
// Every sync hits the NodeTupleTable sync the node table repeatedly - keep dirty flag?
// Delete BlockMgrFile.
- // Caching of node table
- // no W cache needed anywhere, just the write ahead buffer
- // Check W c aches uses for indexes.
- // Cache in front of NodeTable for transactions.
-
// In-memory datasets.
- // Add changed flag to DatsetTDB so sync can be skipped.
- // Other routes to change? Prefixes?
-
// Config
// One config file?
// Cache sizes
@@ -39,28 +22,11 @@ public class DevTx
// Length of NodeId?
// Setting of content properties.
- // Building a dataset.
- // Commit and reply?
- // Reattach a journal?
-
- // Need a clearly defined start/finish
- // start => location, journal and set datastructures.
-
// TestObjectFileTrans -- more tests.
// TestObjectFileBuffering --> make abstract, it stress tests the BufferChannel.
- // One transaction dataset - reuse. Pool?
- // Create the one transaction dataset when the datasetgraph itself is created
- // Reset/Reuse -- internal API : TransactionCycle.
- // Record BlockMgrs, BlockMgrTx.reset ==> .begin
-
// Channel+Adler32
- // Journal
- // Either entry based, write/read like
- // Or buffer slicing version.
- // Allocate space to include the reader. Seems liek more work for less reason.
-
// Tidy up
// See HACK (BPTreeNode)
// See [TxTDB:PATCH-UP]
@@ -68,19 +34,10 @@ public class DevTx
// See FREE
// See [ITER]
- // Caching pages across actions sequences. e.g BPT root block.
- // Iterators
- // Cache in transaction so forgettable?
- // Iterator tracking replaces epoch mechanism?
- // (No - it's a step of iterator that complains, not the update.)
-
- // ---- ---- ---- ----
-
// Optimizations:
// ByteBuffer.allocateDirect + pooling
// http://mail-archives.apache.org/mod_mbox/mina-dev/200804.mbox/%3C47F90DF0.6050101@gmail.com%3E
// http://mail-archives.apache.org/mod_mbox/mina-dev/200804.mbox/%3Cloom.20080407T064019-708@post.gmane.org%3E
- // ObjectFileTrans - avoid copy!
// Other:
// Sort out IndexBulder/IndexFactory/(IndexMaker in test)
Modified: incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/Replay.java
URL: http://svn.apache.org/viewvc/incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/Replay.java?rev=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/Replay.java (original)
+++ incubator/jena/Experimental/TxTDB/trunk/src-dev/tx/Replay.java Sat Jun 25 20:24:09 2011
@@ -19,7 +19,11 @@ public class Replay
{
for ( JournalEntry e : journal )
{
+
ByteBuffer bb = e.getByteBuffer() ;
+
+ e.getFileRef() ;
+
switch (e.getType())
{
case Block:
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=1139612&r1=1139611&r2=1139612&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 Sat Jun 25 20:24:09 2011
@@ -37,9 +37,14 @@ import com.hp.hpl.jena.tdb.sys.Concurren
public class DatasetBuilderTxn extends DatasetBuilderStd
{
+ // Track resources for the datsetgraph as built.
+ // BlockMgr.
+ // ObjectFile.
+
+
public DatasetBuilderTxn(TransactionManager txnMgr) { setStd() ; this.txnMgr = txnMgr ; }
- // ---- Add tracking
+ // ---- Add logging to a BlockMgr when built.
static BlockMgrBuilder logging(BlockMgrBuilder other) { return new BlockMgrBuilderLogger(other) ; }
static class BlockMgrBuilderLogger implements BlockMgrBuilder
Modified: incubator/jena/Jena2/ARQ/trunk/ChangeLog.txt
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/ChangeLog.txt?rev=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/ChangeLog.txt (original)
+++ incubator/jena/Jena2/ARQ/trunk/ChangeLog.txt Sat Jun 25 20:24:09 2011
@@ -1,6 +1,10 @@
ChangeLog for ARQ
=================
+==== ARQ 2.8.10
+
++ Bug fix: SUM and AVG over errors didn't generate an error as they should do.
+
==== ARQ 2.8.9
+ Add TSVInput processor (JENA-69 / Laurent Pellegrino)
Modified: incubator/jena/Jena2/ARQ/trunk/src-dev/dev/RunARQ.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/src-dev/dev/RunARQ.java?rev=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/src-dev/dev/RunARQ.java (original)
+++ incubator/jena/Jena2/ARQ/trunk/src-dev/dev/RunARQ.java Sat Jun 25 20:24:09 2011
@@ -127,7 +127,10 @@ public class RunARQ
public static void main(String[] argv) throws Exception
{
-
+ arq.sparql.main("--data=D.ttl", "--query=Q.rq") ;
+ exit(0) ;
+
+
{
Query query = QueryFactory.create("SELECT (count(*) AS ?C) { { SELECT ?s { ?s ?p ?o } LIMIT 100000000} }") ;
QueryEngineHTTP qExec = QueryExecutionFactory.createServiceRequest("http://dbpedia.org/sparql", query) ;
Modified: incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvg.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvg.java?rev=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvg.java (original)
+++ incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvg.java Sat Jun 25 20:24:09 2011
@@ -9,7 +9,6 @@
package com.hp.hpl.jena.sparql.expr.aggregate;
import com.hp.hpl.jena.graph.Node ;
-import com.hp.hpl.jena.query.ARQ ;
import com.hp.hpl.jena.sparql.engine.binding.Binding ;
import com.hp.hpl.jena.sparql.expr.Expr ;
import com.hp.hpl.jena.sparql.expr.ExprEvalException ;
@@ -86,8 +85,8 @@ public class AggAvg extends AggregatorBa
}
else
{
- ARQ.getExecLogger().warn("Evaluation error: avg() on "+nv) ;
- throw new ExprEvalException("avg: not a number") ;
+ //ARQ.getExecLogger().warn("Evaluation error: avg() on "+nv) ;
+ throw new ExprEvalException("avg: not a number: "+nv) ;
}
if ( DEBUG ) System.out.println("avg: ("+total+","+count+")") ;
Modified: incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvgDistinct.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvgDistinct.java?rev=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvgDistinct.java (original)
+++ incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggAvgDistinct.java Sat Jun 25 20:24:09 2011
@@ -11,6 +11,7 @@ package com.hp.hpl.jena.sparql.expr.aggr
import com.hp.hpl.jena.graph.Node ;
import com.hp.hpl.jena.sparql.engine.binding.Binding ;
import com.hp.hpl.jena.sparql.expr.Expr ;
+import com.hp.hpl.jena.sparql.expr.ExprEvalException ;
import com.hp.hpl.jena.sparql.expr.NodeValue ;
import com.hp.hpl.jena.sparql.expr.nodevalue.XSDFuncOp ;
import com.hp.hpl.jena.sparql.function.FunctionEnv ;
@@ -78,6 +79,9 @@ public class AggAvgDistinct extends Aggr
else
total = XSDFuncOp.add(nv, total) ;
}
+ else
+ throw new ExprEvalException("avg: not a number: "+nv) ;
+
if ( DEBUG ) System.out.println("avg: ("+total+","+count+")") ;
}
Modified: incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSum.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSum.java?rev=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSum.java (original)
+++ incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSum.java Sat Jun 25 20:24:09 2011
@@ -9,9 +9,9 @@
package com.hp.hpl.jena.sparql.expr.aggregate;
import com.hp.hpl.jena.graph.Node ;
-import com.hp.hpl.jena.query.ARQ ;
import com.hp.hpl.jena.sparql.engine.binding.Binding ;
import com.hp.hpl.jena.sparql.expr.Expr ;
+import com.hp.hpl.jena.sparql.expr.ExprEvalException ;
import com.hp.hpl.jena.sparql.expr.NodeValue ;
import com.hp.hpl.jena.sparql.expr.nodevalue.XSDFuncOp ;
import com.hp.hpl.jena.sparql.function.FunctionEnv ;
@@ -74,7 +74,7 @@ public class AggSum extends AggregatorB
total = XSDFuncOp.add(nv, total) ;
}
else
- ARQ.getExecLogger().warn("Evaluation error: sum() on "+nv) ;
+ throw new ExprEvalException("Not a number: "+nv) ;
}
@Override
Modified: incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSumDistinct.java
URL: http://svn.apache.org/viewvc/incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSumDistinct.java?rev=1139612&r1=1139611&r2=1139612&view=diff
==============================================================================
--- incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSumDistinct.java (original)
+++ incubator/jena/Jena2/ARQ/trunk/src/com/hp/hpl/jena/sparql/expr/aggregate/AggSumDistinct.java Sat Jun 25 20:24:09 2011
@@ -8,11 +8,10 @@
package com.hp.hpl.jena.sparql.expr.aggregate;
-import org.openjena.atlas.logging.Log ;
-
import com.hp.hpl.jena.graph.Node ;
import com.hp.hpl.jena.sparql.engine.binding.Binding ;
import com.hp.hpl.jena.sparql.expr.Expr ;
+import com.hp.hpl.jena.sparql.expr.ExprEvalException ;
import com.hp.hpl.jena.sparql.expr.NodeValue ;
import com.hp.hpl.jena.sparql.expr.nodevalue.XSDFuncOp ;
import com.hp.hpl.jena.sparql.function.FunctionEnv ;
@@ -76,7 +75,7 @@ public class AggSumDistinct extends Agg
total = XSDFuncOp.add(nv, total) ;
}
else
- Log.warn(this, "evaluation error: sum() on "+nv) ;
+ throw new ExprEvalException("Not a number: "+nv) ;
}
@Override