You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by rv...@apache.org on 2014/04/09 05:00:15 UTC
svn commit: r1585883 - in
/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql:
algebra/optimize/Optimize.java expr/ExprFunctionN.java
Author: rvesse
Date: Wed Apr 9 03:00:15 2014
New Revision: 1585883
URL: http://svn.apache.org/r1585883
Log:
Enable Constant Folding in standard optimizer (JENA-630)
Modified:
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/Optimize.java
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/ExprFunctionN.java
Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/Optimize.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/Optimize.java?rev=1585883&r1=1585882&r2=1585883&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/Optimize.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/algebra/optimize/Optimize.java Wed Apr 9 03:00:15 2014
@@ -155,7 +155,7 @@ public class Optimize implements Rewrite
OpWalker.walk(op, new OpVisitorExprPrepare(context)) ;
// Expression constant folding
- if ( context.isTrue(ARQ.optExprConstantFolding) )
+ if ( context.isTrueOrUndef(ARQ.optExprConstantFolding) )
op = Transformer.transform(new TransformCopy(), new ExprTransformConstantFold(), op);
// Need to allow subsystems to play with this list.
Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/ExprFunctionN.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/ExprFunctionN.java?rev=1585883&r1=1585882&r2=1585883&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/ExprFunctionN.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/ExprFunctionN.java Wed Apr 9 03:00:15 2014
@@ -21,6 +21,7 @@ package com.hp.hpl.jena.sparql.expr;
import java.util.ArrayList ;
import java.util.List ;
+import com.hp.hpl.jena.sparql.ARQInternalErrorException;
import com.hp.hpl.jena.sparql.engine.binding.Binding ;
import com.hp.hpl.jena.sparql.function.FunctionEnv ;
import com.hp.hpl.jena.sparql.graph.NodeTransform ;
@@ -94,6 +95,9 @@ public abstract class ExprFunctionN exte
return eval(values);
} catch (ExprEvalException ex) {
return copy(newArgs);
+ } catch (ARQInternalErrorException ex) {
+ // May show up when trying to fold certain things
+ return copy(newArgs);
}
}