Class LimitOptimizer
java.lang.Object
org.eclipse.rdf4j.query.algebra.helpers.AbstractQueryModelVisitor<OptimizationException>
org.eclipse.rdf4j.federated.optimizer.LimitOptimizer
- All Implemented Interfaces:
FedXOptimizer
,QueryModelVisitor<OptimizationException>
public class LimitOptimizer
extends AbstractQueryModelVisitor<OptimizationException>
implements FedXOptimizer
An optimizer that attempts to push upper limits into BGPs of the query.
Currently upper limits are only pushed for simple queries consisting of a single BGP.
- Author:
- Andreas Schwarte
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
meet
(Projection proj) void
void
meetOther
(QueryModelNode node) void
Optimize the provided tuple expressionprotected void
pushLimit
(FedXStatementPattern stmt, long upperLimit) Methods inherited from class org.eclipse.rdf4j.query.algebra.helpers.AbstractQueryModelVisitor
meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meetBinaryTupleOperator, meetBinaryValueOperator, meetCompareSubQueryValueOperator, meetNAryValueOperator, meetNode, meetSubQueryValueOperator, meetUnaryTupleOperator, meetUnaryValueOperator, meetUpdateExpr
-
Constructor Details
-
LimitOptimizer
public LimitOptimizer()
-
-
Method Details
-
optimize
Description copied from interface:FedXOptimizer
Optimize the provided tuple expression- Specified by:
optimize
in interfaceFedXOptimizer
-
meetOther
- Specified by:
meetOther
in interfaceQueryModelVisitor<OptimizationException>
- Overrides:
meetOther
in classAbstractQueryModelVisitor<OptimizationException>
- Throws:
OptimizationException
-
meet
- Specified by:
meet
in interfaceQueryModelVisitor<OptimizationException>
- Overrides:
meet
in classAbstractQueryModelVisitor<OptimizationException>
- Throws:
OptimizationException
-
meet
- Specified by:
meet
in interfaceQueryModelVisitor<OptimizationException>
- Overrides:
meet
in classAbstractQueryModelVisitor<OptimizationException>
- Throws:
OptimizationException
-
pushLimit
-