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 2016/04/17 14:15:06 UTC
[5/5] jena git commit: JENA-1184: Workround - disable the elimination
of redundant subOp.
JENA-1184: Workround - disable the elimination of redundant subOp.
This optimization is best run after join-strategy but that make
scoping different, invalidating the elimination.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/c917e892
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/c917e892
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/c917e892
Branch: refs/heads/master
Commit: c917e892ba934947d0ae0da21ab2e54d35ba9bc1
Parents: 14df3ce
Author: Andy Seaborne <an...@apache.org>
Authored: Sun Apr 17 13:08:54 2016 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sun Apr 17 13:08:54 2016 +0100
----------------------------------------------------------------------
.../sparql/algebra/optimize/TransformFilterEquality.java | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/c917e892/jena-arq/src/main/java/org/apache/jena/sparql/algebra/optimize/TransformFilterEquality.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/optimize/TransformFilterEquality.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/optimize/TransformFilterEquality.java
index a3450a5..45a9167 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/optimize/TransformFilterEquality.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/optimize/TransformFilterEquality.java
@@ -116,7 +116,15 @@ public class TransformFilterEquality extends TransformCopy {
// Special case : deduce that the filter will always "eval unbound"
// hence eliminate all rows. Return the empty table.
if (testSpecialCaseUnused(subOp, equalities, remaining))
- return OpTable.empty();
+ // JENA-1184
+ // If this is run after join-strategy, then scope is not a simple matter
+ // of looking at the subOp. But running before join-strategy
+ // causes other code to not optimize (presumablty because it was developed
+ // to run after join-strategy probably by conincidence)
+ // @Test TestTransformFilters.equality04
+ //return OpTable.empty();
+ // JENA-1184 woraround. Return unchanged.
+ return null ;
// Special case: the deep left op of a OpConditional/OpLeftJoin is the unit table.
// This is the case of: