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 2018/04/18 11:04:20 UTC
[1/5] jena git commit: Add UT showing the problem
Repository: jena
Updated Branches:
refs/heads/master bea349587 -> 5a4883e39
Add UT showing the problem
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/74529be4
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/74529be4
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/74529be4
Branch: refs/heads/master
Commit: 74529be4f7da2ce1a16c5542df073a1911859751
Parents: 3390615
Author: Jeremy Coulon <je...@3ds.com>
Authored: Tue Apr 10 17:19:29 2018 +0200
Committer: Jeremy Coulon <je...@3ds.com>
Committed: Tue Apr 10 17:19:29 2018 +0200
----------------------------------------------------------------------
.../jena/sparql/algebra/TestTransformOpExt.java | 31 ++++++++++++++++++++
1 file changed, 31 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/74529be4/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestTransformOpExt.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestTransformOpExt.java b/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestTransformOpExt.java
index 0e5bc1d..12bb2f1 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestTransformOpExt.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestTransformOpExt.java
@@ -18,11 +18,15 @@
package org.apache.jena.sparql.algebra;
+import java.util.Set;
+
import org.apache.jena.atlas.io.IndentedWriter ;
import org.apache.jena.atlas.junit.BaseTest ;
import org.apache.jena.atlas.lib.StrUtils ;
import org.apache.jena.sparql.algebra.op.OpExt ;
+import org.apache.jena.sparql.algebra.op.OpFilter;
import org.apache.jena.sparql.algebra.op.OpGraph ;
+import org.apache.jena.sparql.core.Var;
import org.apache.jena.sparql.engine.ExecutionContext ;
import org.apache.jena.sparql.engine.QueryIterator ;
import org.apache.jena.sparql.serializer.SerializationContext ;
@@ -69,6 +73,14 @@ public class TestTransformOpExt extends BaseTest
}
}
+ static class OpExtTransform extends TransformCopy {
+
+ @Override
+ public Op transform(OpFilter opFilter, Op subOp) {
+ return new OpExtTest(opFilter);
+ }
+ }
+
@Test public void textOpExtQuads() {
String x = StrUtils.strjoinNL
("(graph <g>"
@@ -100,5 +112,24 @@ public class TestTransformOpExt extends BaseTest
Op expectedSub = SSE.parseOp(y) ;
assertEquals(expectedSub, opSub) ;
}
+
+ @Test
+ public void testOpExtMinus() {
+ String sse = StrUtils.strjoinNL
+ ("(filter (= ?o 1)"
+ ," (bgp (?s ?p ?o))"
+ ,")"
+ ) ;
+
+ // Build
+ Op op = SSE.parseOp(sse) ;
+
+ // Transform
+ op = Transformer.transformSkipService(new OpExtTransform(), op) ;
+
+ // Check WalkerVisitorVisible
+ Set<Var> vars = OpVars.visibleVars(op);
+ assertEquals(3, vars.size());
+ }
}
[5/5] jena git commit: Close iterator because of early exit.
Posted by an...@apache.org.
Close iterator because of early exit.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/5a4883e3
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/5a4883e3
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/5a4883e3
Branch: refs/heads/master
Commit: 5a4883e39af68c19c8bff79a80bde3354730fec7
Parents: 1af8789
Author: Andy Seaborne <an...@apache.org>
Authored: Wed Apr 18 12:04:11 2018 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Wed Apr 18 12:04:11 2018 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/graph/impl/GraphMatcher.java | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/5a4883e3/jena-core/src/main/java/org/apache/jena/graph/impl/GraphMatcher.java
----------------------------------------------------------------------
diff --git a/jena-core/src/main/java/org/apache/jena/graph/impl/GraphMatcher.java b/jena-core/src/main/java/org/apache/jena/graph/impl/GraphMatcher.java
index b4e1062..f322ce0 100644
--- a/jena-core/src/main/java/org/apache/jena/graph/impl/GraphMatcher.java
+++ b/jena-core/src/main/java/org/apache/jena/graph/impl/GraphMatcher.java
@@ -322,12 +322,14 @@ public class GraphMatcher extends java.lang.Object {
return false ;
// Force to same term when o is a ground literal.
ExtendedIterator<Triple> iter = otherm.find(triple) ;
- while (iter.hasNext()) {
- Triple t = iter.next() ;
- if ( t.getObject().equals(o) )
- return true ;
- }
- return false ;
+ try {
+ while (iter.hasNext()) {
+ Triple t = iter.next() ;
+ if ( t.getObject().equals(o) )
+ return true ;
+ }
+ return false ;
+ } finally { iter.close(); }
}
private Bucket smallestBucket() {
[3/5] jena git commit: JENA-1519: Merge commit 'refs/pull/394/head'
of https://github.com/apache/jena
Posted by an...@apache.org.
JENA-1519: Merge commit 'refs/pull/394/head' of https://github.com/apache/jena
This closes #394.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/2a557772
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/2a557772
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/2a557772
Branch: refs/heads/master
Commit: 2a5577725073d04671cec0359f9597b54b1d1efd
Parents: bea3495 9c2bb1c
Author: Andy Seaborne <an...@apache.org>
Authored: Wed Apr 18 11:47:20 2018 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Wed Apr 18 11:47:20 2018 +0100
----------------------------------------------------------------------
.../org/apache/jena/sparql/algebra/OpVars.java | 5 ++++
.../apache/jena/sparql/algebra/OpWalker.java | 1 +
.../jena/sparql/algebra/TestTransformOpExt.java | 31 ++++++++++++++++++++
3 files changed, 37 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/2a557772/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVars.java
----------------------------------------------------------------------
[2/5] jena git commit: Fix OpWalkerVisitor for OpExt
Posted by an...@apache.org.
Fix OpWalkerVisitor for OpExt
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/9c2bb1c1
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/9c2bb1c1
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/9c2bb1c1
Branch: refs/heads/master
Commit: 9c2bb1c183a70fafa1007857823e91aca9a1f18f
Parents: 74529be
Author: Jeremy Coulon <je...@3ds.com>
Authored: Tue Apr 10 17:20:08 2018 +0200
Committer: Jeremy Coulon <je...@3ds.com>
Committed: Tue Apr 10 17:20:08 2018 +0200
----------------------------------------------------------------------
.../src/main/java/org/apache/jena/sparql/algebra/OpVars.java | 5 +++++
.../src/main/java/org/apache/jena/sparql/algebra/OpWalker.java | 1 +
2 files changed, 6 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/9c2bb1c1/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVars.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVars.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVars.java
index 70f649e..9cfec1c 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVars.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVars.java
@@ -284,6 +284,11 @@ public class OpVars
public void visit(OpProcedure opProc) {
ExprVars.varsMentioned(acc, opProc.getArgs()) ;
}
+
+ @Override
+ public void visit(OpExt opExt) {
+ // OpWalkerVisitor is taking care of calling opExt.effectiveOp().visit(this)
+ }
}
private static class OpVarsPatternWithPositions extends OpVisitorBase
http://git-wip-us.apache.org/repos/asf/jena/blob/9c2bb1c1/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
index 378e0ae..55bf4e7 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
@@ -139,6 +139,7 @@ public class OpWalker
@Override
protected void visitExt(OpExt op) {
before(op) ;
+ super.visitExt(op);
if ( visitor != null )
op.visit(visitor) ;
after(op) ;
[4/5] jena git commit: JENA-1519: Move decision about effectiveOp
into walker.
Posted by an...@apache.org.
JENA-1519: Move decision about effectiveOp into walker.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/1af87896
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/1af87896
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/1af87896
Branch: refs/heads/master
Commit: 1af87896dc9e6803878769f5d9eef2a5578b1de7
Parents: 2a55777
Author: Andy Seaborne <an...@apache.org>
Authored: Wed Apr 18 12:03:41 2018 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Wed Apr 18 12:03:41 2018 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/sparql/algebra/OpVisitorByType.java | 6 ++++--
.../src/main/java/org/apache/jena/sparql/algebra/OpWalker.java | 4 +++-
2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/1af87896/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVisitorByType.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVisitorByType.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVisitorByType.java
index 33fb1a3..01863bb 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVisitorByType.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpVisitorByType.java
@@ -31,8 +31,10 @@ public abstract class OpVisitorByType implements OpVisitor
protected abstract void visit0(Op0 op) ;
- protected void visitExt(OpExt op)
- { op.effectiveOp().visit(this); }
+ protected void visitExt(OpExt op) {
+ if ( op.effectiveOp() != null )
+ op.effectiveOp().visit(this);
+ }
protected abstract void visitFilter(OpFilter op) ;
http://git-wip-us.apache.org/repos/asf/jena/blob/1af87896/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
index 55bf4e7..d8b6e5e 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/OpWalker.java
@@ -139,7 +139,9 @@ public class OpWalker
@Override
protected void visitExt(OpExt op) {
before(op) ;
- super.visitExt(op);
+ if ( op.effectiveOp() != null )
+ // Walk the effective op, if present.
+ op.effectiveOp().visit(this);
if ( visitor != null )
op.visit(visitor) ;
after(op) ;