Package | Description |
---|---|
org.tikv.common.expression | |
org.tikv.common.expression.visitor | |
org.tikv.common.meta | |
org.tikv.common.parser | |
org.tikv.common.predicates |
Modifier and Type | Class and Description |
---|---|
class |
AggregateFunction |
class |
ArithmeticBinaryExpression |
class |
ColumnRef |
class |
ComparisonBinaryExpression |
class |
Constant |
class |
FuncCallExpr |
class |
IsNull |
class |
LogicalBinaryExpression |
class |
Not |
class |
StringRegExpression |
Modifier and Type | Method and Description |
---|---|
Expression |
AggregateFunction.getArgument() |
Expression |
ByItem.getExpr() |
Expression |
Not.getExpression() |
Expression |
FuncCallExpr.getExpression() |
Expression |
IsNull.getExpression() |
Expression |
LogicalBinaryExpression.getLeft() |
Expression |
ArithmeticBinaryExpression.getLeft() |
Expression |
StringRegExpression.getLeft() |
Expression |
ComparisonBinaryExpression.getLeft() |
Expression |
StringRegExpression.getReg() |
Expression |
LogicalBinaryExpression.getRight() |
Expression |
ArithmeticBinaryExpression.getRight() |
Expression |
StringRegExpression.getRight() |
Expression |
ComparisonBinaryExpression.getRight() |
Modifier and Type | Method and Description |
---|---|
static List<Expression> |
PartitionPruner.extractLogicalOrComparisonExpr(List<Expression> filters) |
List<Expression> |
Not.getChildren() |
List<Expression> |
LogicalBinaryExpression.getChildren() |
abstract List<Expression> |
Expression.getChildren() |
List<Expression> |
FuncCallExpr.getChildren() |
List<Expression> |
IsNull.getChildren() |
List<Expression> |
ArithmeticBinaryExpression.getChildren() |
List<Expression> |
StringRegExpression.getChildren() |
List<Expression> |
ComparisonBinaryExpression.getChildren() |
List<Expression> |
Constant.getChildren() |
List<Expression> |
ColumnRef.getChildren() |
List<Expression> |
AggregateFunction.getChildren() |
Modifier and Type | Method and Description |
---|---|
static LogicalBinaryExpression |
LogicalBinaryExpression.and(Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.bitAnd(Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.bitOr(Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.bitXor(Expression left,
Expression right) |
boolean |
RangePartitionPruner.canBePruned(Expression filter)
return false if table cannot be pruning or partition table is not enabled.
|
static StringRegExpression |
StringRegExpression.contains(Expression left,
Expression right) |
static ByItem |
ByItem.create(Expression expr,
boolean desc) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.divide(DataType dataType,
Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.divide(Expression left,
Expression right) |
static StringRegExpression |
StringRegExpression.endsWith(Expression left,
Expression right) |
static ComparisonBinaryExpression |
ComparisonBinaryExpression.equal(Expression left,
Expression right) |
static ComparisonBinaryExpression |
ComparisonBinaryExpression.greaterEqual(Expression left,
Expression right) |
static ComparisonBinaryExpression |
ComparisonBinaryExpression.greaterThan(Expression left,
Expression right) |
static ComparisonBinaryExpression |
ComparisonBinaryExpression.lessEqual(Expression left,
Expression right) |
static ComparisonBinaryExpression |
ComparisonBinaryExpression.lessThan(Expression left,
Expression right) |
static StringRegExpression |
StringRegExpression.like(Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.minus(Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.multiply(DataType dataType,
Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.multiply(Expression left,
Expression right) |
static AggregateFunction |
AggregateFunction.newCall(AggregateFunction.FunctionType type,
Expression argument) |
static AggregateFunction |
AggregateFunction.newCall(AggregateFunction.FunctionType type,
Expression argument,
DataType dataType) |
static Not |
Not.not(Expression expression) |
static ComparisonBinaryExpression |
ComparisonBinaryExpression.notEqual(Expression left,
Expression right) |
static LogicalBinaryExpression |
LogicalBinaryExpression.or(Expression left,
Expression right) |
static ArithmeticBinaryExpression |
ArithmeticBinaryExpression.plus(Expression left,
Expression right) |
static StringRegExpression |
StringRegExpression.startsWith(Expression left,
Expression right) |
static LogicalBinaryExpression |
LogicalBinaryExpression.xor(Expression left,
Expression right) |
static FuncCallExpr |
FuncCallExpr.year(Expression expr) |
Modifier and Type | Method and Description |
---|---|
static List<Expression> |
PartitionPruner.extractLogicalOrComparisonExpr(List<Expression> filters) |
List<TiPartitionDef> |
RangePartitionPruner.prune(List<Expression> filters)
When table is a partition table and its type is range.
|
List<TiPartitionDef> |
RangeColumnPartitionPruner.prune(List<Expression> filters) |
static List<TiPartitionDef> |
PartitionPruner.prune(TiTableInfo tableInfo,
List<Expression> filters) |
Constructor and Description |
---|
ArithmeticBinaryExpression(DataType dataType,
ArithmeticBinaryExpression.Type type,
Expression left,
Expression right) |
ComparisonBinaryExpression(ComparisonBinaryExpression.Operator operator,
Expression left,
Expression right) |
FuncCallExpr(Expression expr,
FuncCallExpr.Type funcTp) |
IsNull(Expression expression) |
LogicalBinaryExpression(LogicalBinaryExpression.Type type,
Expression left,
Expression right) |
Not(Expression expression) |
StringRegExpression(StringRegExpression.Type type,
Expression left,
Expression right,
Expression reg) |
Modifier and Type | Method and Description |
---|---|
protected Expression |
PartAndFilterExprRewriter.process(Expression node,
Void context) |
Expression |
PartAndFilterExprRewriter.rewrite(Expression target) |
Expression |
PartAndFilterExprRewriter.visit(ComparisonBinaryExpression node,
Void context) |
Expression |
PartAndFilterExprRewriter.visit(Constant node,
Void context) |
Expression |
PartAndFilterExprRewriter.visit(FuncCallExpr node,
Void context) |
Expression |
PartAndFilterExprRewriter.visit(LogicalBinaryExpression node,
Void context) |
Modifier and Type | Method and Description |
---|---|
com.google.common.collect.RangeSet<C> |
RangeSetBuilder.buildRange(Expression predicate) |
static double |
PseudoCostCalculator.calculateCost(Expression expr) |
static boolean |
SupportedExpressionValidator.isSupportedExpression(Expression node,
ExpressionBlocklist blocklist) |
static Boolean |
ColumnMatcher.match(ColumnRef col,
Expression expression) |
boolean |
IndexMatcher.match(Expression expression) |
protected R |
DefaultVisitor.process(Expression node,
C context) |
protected Boolean |
SupportedExpressionValidator.process(Expression node,
ExpressionBlocklist blocklist) |
protected Boolean |
IndexMatcher.process(Expression node,
Void context) |
protected com.google.common.collect.RangeSet<TypedKey> |
PrunedPartitionBuilder.process(Expression node,
Void context) |
protected Double |
PseudoCostCalculator.process(Expression node,
Void context) |
protected Boolean |
ColumnMatcher.process(Expression node,
Void context) |
protected com.google.common.collect.RangeSet<C> |
RangeSetBuilder.process(Expression node,
Void context) |
protected Expression |
PartAndFilterExprRewriter.process(Expression node,
Void context) |
void |
MetaResolver.resolve(Expression expression) |
static void |
MetaResolver.resolve(Expression expression,
TiTableInfo table) |
Expression |
PartAndFilterExprRewriter.rewrite(Expression target) |
static Expr |
ProtoConverter.toProto(Expression expression) |
static Expr |
ProtoConverter.toProto(Expression expression,
Object context) |
protected Void |
MetaResolver.visit(ColumnRef node,
Expression parent) |
protected Void |
MetaResolver.visit(ComparisonBinaryExpression node,
Expression parent) |
Modifier and Type | Method and Description |
---|---|
void |
MetaResolver.resolve(List<? extends Expression> expressions) |
static void |
MetaResolver.resolve(List<? extends Expression> expressions,
TiTableInfo table) |
Constructor and Description |
---|
PartAndFilterExprRewriter(Expression partExpr) |
Modifier and Type | Method and Description |
---|---|
Expression |
TiPartitionExpr.getColumn() |
Modifier and Type | Method and Description |
---|---|
List<Expression> |
TiDAGRequest.getDowngradeFilters() |
List<Expression> |
TiDAGRequest.getFilters() |
List<Expression> |
TiPartitionExpr.getRanges() |
List<Expression> |
TiPartitionExpr.getUpperBound() |
Modifier and Type | Method and Description |
---|---|
void |
TiDAGRequest.addDowngradeFilter(Expression filter) |
TiDAGRequest.Builder |
TiDAGRequest.Builder.addFilter(Expression filter) |
TiDAGRequest |
TiDAGRequest.setHaving(Expression having)
set having clause to select query
|
Modifier and Type | Method and Description |
---|---|
TiDAGRequest |
TiDAGRequest.addFilters(List<Expression> filters) |
void |
TiDAGRequest.resetFilters(List<Expression> filters) |
Constructor and Description |
---|
TiPartitionExpr(List<Expression> ranges,
List<Expression> upperBound,
Expression column) |
Constructor and Description |
---|
TiPartitionExpr(List<Expression> ranges,
List<Expression> upperBound,
Expression column) |
TiPartitionExpr(List<Expression> ranges,
List<Expression> upperBound,
Expression column) |
Modifier and Type | Method and Description |
---|---|
static Expression |
PredicateUtils.mergeCNFExpressions(List<Expression> exprs) |
Modifier and Type | Method and Description |
---|---|
Set<Expression> |
TiKVScanAnalyzer.TiKVScanPlan.getFilters() |
List<Expression> |
ScanSpec.getPointPredicates() |
Optional<Expression> |
ScanSpec.getRangePredicate() |
Set<Expression> |
ScanSpec.getResidualPredicates() |
Modifier and Type | Method and Description |
---|---|
static Set<ColumnRef> |
PredicateUtils.extractColumnRefFromExpression(Expression expr) |
protected Double |
SelectivityCalculator.process(Expression node,
Void context) |
Modifier and Type | Method and Description |
---|---|
TiDAGRequest |
TiKVScanAnalyzer.buildTiDAGReq(boolean allowIndexScan,
boolean canUseTiKV,
boolean canUseTiFlash,
List<TiColumnInfo> columnList,
List<Expression> conditions,
TiTableInfo table,
TableStatistics tableStatistics,
TiTimestamp ts,
TiDAGRequest dagRequest) |
TiDAGRequest |
TiKVScanAnalyzer.buildTiDAGReq(List<TiColumnInfo> columnList,
List<Expression> conditions,
TiTableInfo table,
TiTimestamp ts,
TiDAGRequest dagRequest) |
static List<IndexRange> |
PredicateUtils.expressionToIndexRanges(List<Expression> pointPredicates,
Optional<Expression> rangePredicate,
TiTableInfo table,
TiIndexInfo index)
Build index ranges from access points and access conditions
|
static List<IndexRange> |
PredicateUtils.expressionToIndexRanges(List<Expression> pointPredicates,
Optional<Expression> rangePredicate,
TiTableInfo table,
TiIndexInfo index)
Build index ranges from access points and access conditions
|
static ScanSpec |
TiKVScanAnalyzer.extractConditions(List<Expression> conditions,
TiTableInfo table,
TiIndexInfo index) |
static Expression |
PredicateUtils.mergeCNFExpressions(List<Expression> exprs) |
TiKVScanAnalyzer.TiKVScanPlan.Builder |
TiKVScanAnalyzer.TiKVScanPlan.Builder.setFilters(Set<Expression> filters) |
Copyright © 2024 PingCAP. All rights reserved.