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 2013/09/27 19:50:41 UTC

svn commit: r1526999 - in /jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql: engine/main/ engine/optimizer/reorder/ util/

Author: andy
Date: Fri Sep 27 17:50:40 2013
New Revision: 1526999

URL: http://svn.apache.org/r1526999
Log:
Rename ReorderTransformationBases to ReorderTransformationSubstitution.  
This reflects the fact that it contains the machinary specific to the
substitution method of executing BGPs.

Added:
    jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationSubstitution.java
      - copied, changed from r1523006, jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationBase.java
Removed:
    jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationBase.java
Modified:
    jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/main/StageGeneratorGeneric.java
    jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderFixed.java
    jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderWeighted.java
    jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/util/StringUtils.java

Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/main/StageGeneratorGeneric.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/main/StageGeneratorGeneric.java?rev=1526999&r1=1526998&r2=1526999&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/main/StageGeneratorGeneric.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/main/StageGeneratorGeneric.java Fri Sep 27 17:50:40 2013
@@ -108,7 +108,7 @@ public class StageGeneratorGeneric imple
     }
 
     /** Reorder a basic graph pattern using a graph statistic handler */
-    private static class ReorderStatsHandler extends ReorderTransformationBase
+    private static class ReorderStatsHandler extends ReorderTransformationSubstitution
     {
         static ReorderFixed fixed = (ReorderFixed)reorderFixed() ;        // We need our own copy to call into.
         

Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderFixed.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderFixed.java?rev=1526999&r1=1526998&r2=1526999&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderFixed.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderFixed.java Fri Sep 27 17:50:40 2013
@@ -26,7 +26,7 @@ import com.hp.hpl.jena.sparql.engine.opt
 import com.hp.hpl.jena.sparql.graph.NodeConst ;
 import com.hp.hpl.jena.sparql.sse.Item ;
 
-public class ReorderFixed extends ReorderTransformationBase
+public class ReorderFixed extends ReorderTransformationSubstitution
 {
     ReorderFixed() {}
     // Fixed scheme for when we have no stats.

Copied: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationSubstitution.java (from r1523006, jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationBase.java)
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationSubstitution.java?p2=jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationSubstitution.java&p1=jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationBase.java&r1=1523006&r2=1526999&rev=1526999&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationBase.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderTransformationSubstitution.java Fri Sep 27 17:50:40 2013
@@ -37,10 +37,14 @@ import com.hp.hpl.jena.sparql.core.Basic
 import com.hp.hpl.jena.sparql.core.Var ;
 import com.hp.hpl.jena.sparql.sse.Item ;
 
-/** Machinary */
-public abstract class ReorderTransformationBase implements ReorderTransformation
+/** Machinary.
+ * This code implements the connectiveness assumed by execution based on substitution (index joins).
+ * i.e. if <code>{ ?x :p ?v . ?x :q ?w }</code> then <code>?x</code> is <code>TERM</code>
+ * at the second triple. 
+ */
+public abstract class ReorderTransformationSubstitution implements ReorderTransformation
 {
-    static public final Logger log = LoggerFactory.getLogger(ReorderTransformationBase.class) ;
+    static public final Logger log = LoggerFactory.getLogger(ReorderTransformationSubstitution.class) ;
     private final boolean DEBUG = log.isDebugEnabled() ;  
     
     @Override
@@ -227,7 +231,7 @@ public abstract class ReorderTransformat
         return idx ;
     }
     
-    /** Return the weight of the pattern, or -1 if no knowdleg for it */
+    /** Return the weight of the pattern, or -1 if no knowledge for it */
     protected abstract double weight(PatternTriple pt) ;
     
     protected enum DefaultChoice { ZERO, LAST, FIRST , NUMERIC ; }

Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderWeighted.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderWeighted.java?rev=1526999&r1=1526998&r2=1526999&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderWeighted.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/engine/optimizer/reorder/ReorderWeighted.java Fri Sep 27 17:50:40 2013
@@ -20,7 +20,7 @@ package com.hp.hpl.jena.sparql.engine.op
 
 import com.hp.hpl.jena.sparql.engine.optimizer.StatsMatcher ;
 
-public final class ReorderWeighted extends ReorderTransformationBase
+public final class ReorderWeighted extends ReorderTransformationSubstitution
 {
     private StatsMatcher stats ;
     

Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/util/StringUtils.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/util/StringUtils.java?rev=1526999&r1=1526998&r2=1526999&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/util/StringUtils.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/util/StringUtils.java Fri Sep 27 17:50:40 2013
@@ -22,6 +22,7 @@ import java.text.DateFormat ;
 import java.text.DecimalFormat ;
 import java.text.NumberFormat ;
 import java.text.SimpleDateFormat ;
+import java.util.Arrays ;
 import java.util.Date ;
 import java.util.List ;
 import java.util.regex.Pattern ;
@@ -54,6 +55,11 @@ public class StringUtils
         return decimalFormat.format(value) ;
     }
     
+    public static <T> String str(T[] array)
+    {
+        return Arrays.asList(array).toString() ;
+    }
+
     private static Pattern p = Pattern.compile("http:[^ \n]*[#/]([^/ \n]*)") ;
     /** Abbreviate, crudely, URI in strings, leaving only their last component. */ 
     public static String printAbbrev(Object obj)