splitJoinCondition(List, List, RexNode, List, List, List, List) |  | 0% |  | 0% | 42 | 42 | 97 | 97 | 1 | 1 |
pushDownJoinConditions(Join, RelBuilder) |  | 0% |  | 0% | 15 | 15 | 62 | 62 | 1 | 1 |
projectJoinInputs(RelNode[], List, List, int, List, List, List) |  | 0% |  | 0% | 10 | 10 | 58 | 58 | 1 | 1 |
pushDownEqualJoinConditions(RexNode, int, int, List, List, RexBuilder) |  | 0% |  | 0% | 15 | 15 | 49 | 49 | 1 | 1 |
classifyFilters(RelNode, List, JoinRelType, boolean, boolean, boolean, List, List, List) |  | 0% |  | 0% | 16 | 16 | 41 | 41 | 1 | 1 |
classifyFilters(RelNode, List, boolean, boolean, boolean, List, List, List) |  | 0% |  | 0% | 12 | 12 | 38 | 38 | 1 | 1 |
permute(RelNode, Permutation, List) |  | 0% |  | 0% | 10 | 10 | 38 | 38 | 1 | 1 |
getFullTypeDifferenceString(String, RelDataType, String, RelDataType) |  | 0% |  | 0% | 8 | 8 | 31 | 31 | 1 | 1 |
splitJoinCondition(RexBuilder, int, RexNode, List, List, List, List) |  | 0% |  | 0% | 17 | 17 | 36 | 36 | 1 | 1 |
createExistsPlan(RelNode, RelOptUtil.SubQueryType, RelOptUtil.Logic, boolean, RelBuilder) |  | 0% |  | 0% | 11 | 11 | 30 | 30 | 1 | 1 |
isDistinctFromInternal(RexBuilder, RexNode, RexNode, boolean) |  | 0% |  | 0% | 2 | 2 | 13 | 13 | 1 | 1 |
doCollapseExpandedIsNotDistinctFromOrExpr(RexCall, RexBuilder) |  | 0% |  | 0% | 15 | 15 | 29 | 29 | 1 | 1 |
splitCorrelatedFilterCondition(Filter, RexNode, List, List, List, boolean) |  | 0% |  | 0% | 14 | 14 | 32 | 32 | 1 | 1 |
isDistinctFrom(RexBuilder, RexNode, RexNode, boolean) |  | 0% |  | 0% | 9 | 9 | 27 | 27 | 1 | 1 |
doCollapseExpandedIsNotDistinctFromCaseExpr(RexCall, RexBuilder) |  | 0% |  | 0% | 15 | 15 | 24 | 24 | 1 | 1 |
projectMultiJoin(MultiJoin, Project) |  | 0% |  | 0% | 6 | 6 | 31 | 31 | 1 | 1 |
decomposeConjunction(RexNode, List, List) |  | 0% |  | 0% | 13 | 13 | 27 | 27 | 1 | 1 |
containsNullableFields(RelNode) |  | 0% |  | 0% | 7 | 7 | 23 | 23 | 1 | 1 |
createCastRel(RelNode, RelDataType, boolean, RelFactories.ProjectFactory) |  | 0% |  | 0% | 5 | 5 | 26 | 26 | 1 | 1 |
projectMapping(RelNode, Mapping, List, RelFactories.ProjectFactory) |  | 0% |  | 0% | 10 | 10 | 19 | 19 | 1 | 1 |
createNullFilter(RelNode, Integer[]) |  | 0% |  | 0% | 7 | 7 | 25 | 25 | 1 | 1 |
registerDefaultRules(RelOptPlanner, boolean, boolean) |  | 0% |  | 0% | 10 | 10 | 24 | 24 | 1 | 1 |
simplifyJoin(RelNode, ImmutableList, JoinRelType) |  | 0% |  | 0% | 10 | 10 | 24 | 24 | 1 | 1 |
splitCorrelatedFilterCondition(LogicalFilter, RexNode, List, List, List) |  | 0% |  | 0% | 9 | 9 | 22 | 22 | 1 | 1 |
inferViewPredicates(Map, List, RexNode) |  | 0% |  | 0% | 8 | 8 | 19 | 19 | 1 | 1 |
createExistsPlan(RelOptCluster, RelNode, List, RexLiteral, String) |  | 0% |  | 0% | 10 | 10 | 20 | 20 | 1 | 1 |
checkProjAndChildInputs(Project, boolean) |  | 0% |  | 0% | 9 | 9 | 20 | 20 | 1 | 1 |
analyzeSimpleEquiJoin(LogicalJoin, int[]) |  | 0% |  | 0% | 6 | 6 | 21 | 21 | 1 | 1 |
createRenameRel(RelDataType, RelNode) |  | 0% |  | 0% | 3 | 3 | 13 | 13 | 1 | 1 |
createProjectJoinRel(List, RelNode) |  | 0% |  | 0% | 4 | 4 | 19 | 19 | 1 | 1 |
areRowTypesEqual(RelDataType, RelDataType, boolean) |  | 0% |  | 0% | 8 | 8 | 18 | 18 | 1 | 1 |
dumpPlan(String, RelNode, SqlExplainFormat, SqlExplainLevel) |  | 0% |  | 0% | 5 | 5 | 16 | 16 | 1 | 1 |
createSwappedJoinExprs(RelNode, Join, boolean) |  | 0% |  | 0% | 4 | 4 | 11 | 11 | 1 | 1 |
permutationIgnoreCast(List, RelDataType) |  | 0% |  | 0% | 5 | 5 | 14 | 14 | 1 | 1 |
findAllTables(RelNode) |  | 0% |  | 0% | 5 | 5 | 13 | 13 | 1 | 1 |
doCollapseExpandedIsNotDistinctFrom(RexBuilder, RexCall, RexCall, RexCall, RexCall) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
eqUpToNullability(boolean, String, RelDataType, String, RelDataType, Litmus) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
getAllFields2(ImmutableBitSet, List) |  | 0% |  | 0% | 4 | 4 | 10 | 10 | 1 | 1 |
verifyTypeEquivalence(RelNode, RelNode, Object) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
getVariablesSetAndUsed(RelNode, RelNode) |  | 0% |  | 0% | 6 | 6 | 12 | 12 | 1 | 1 |
replaceRecurse(RelNode, RelNode, RelNode) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
copyRelHints(RelNode, RelNode, boolean) |  | 0% |  | 0% | 7 | 7 | 10 | 10 | 1 | 1 |
eq(String, RelDataType, String, RelDataType, Litmus) |  | 0% |  | 0% | 4 | 4 | 8 | 8 | 1 | 1 |
permutationPushDownProject(List, RelDataType, int, int) |  | 0% |  | 0% | 3 | 3 | 10 | 10 | 1 | 1 |
createSingleValueAggRel(RelOptCluster, RelNode) |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
pushPastProjectUnlessBloat(List, Project, int) |  | 0% |  | 0% | 5 | 5 | 12 | 12 | 1 | 1 |
createProject(RelFactories.ProjectFactory, RelNode, List) |  | 0% | | n/a | 1 | 1 | 10 | 10 | 1 | 1 |
correlationColumns(CorrelationId, RelNode) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
validateValueAgainstConstraint(SqlNode, RexNode, Supplier) |  | 0% |  | 0% | 3 | 3 | 11 | 11 | 1 | 1 |
andJoinFilters(RexBuilder, RexNode, RexNode) |  | 0% |  | 0% | 6 | 6 | 8 | 8 | 1 | 1 |
createRename(RelNode, List) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
permutation(List, RelDataType) |  | 0% |  | 0% | 3 | 3 | 10 | 10 | 1 | 1 |
getColumnConstraints(ModifiableView, RelDataType, RelDataTypeFactory) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
renameIfNecessary(RelNode, RelDataType) |  | 0% |  | 0% | 5 | 5 | 10 | 10 | 1 | 1 |
decomposeConjunction(RexNode, List) |  | 0% |  | 0% | 5 | 5 | 8 | 8 | 1 | 1 |
decomposeDisjunction(RexNode, List) |  | 0% |  | 0% | 5 | 5 | 8 | 8 | 1 | 1 |
isEqui(RelNode, RelNode, RexNode) |  | 0% | | n/a | 1 | 1 | 8 | 8 | 1 | 1 |
deduplicateColumns(List, List) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
dumpType(RelDataType) |  | 0% |  | 0% | 2 | 2 | 8 | 8 | 1 | 1 |
adjustKeys(List, int) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
splitFilters(ImmutableBitSet, RexNode, List, List) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
replace(RelNode, RelNode, RelNode) |  | 0% |  | 0% | 5 | 5 | 6 | 6 | 1 | 1 |
createDmlRowType(SqlKind, RelDataTypeFactory) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
toString(RelNode, SqlExplainLevel, boolean) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
shiftFilter(int, int, int, RexBuilder, List, int, List, RexNode) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
propagateRelHints(RelNode, RelNode) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
replaceInput(RelNode, int, RelNode) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
getVariablesUsed(List) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
op(SqlKind, SqlOperator) |  | 0% |  | 0% | 9 | 9 | 10 | 10 | 1 | 1 |
lambda$createRenameRel$2(PairList, RexBuilder, RelDataTypeField, RelDataTypeField) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
remapCorrelatesInSuqQuery(RexBuilder, RexSubQuery, CorrelationId, RelDataType, Mapping) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
splitJoinCondition(List, List, RexNode, List, List, List) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
createProject(RelNode, List, boolean) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
notContainsCorrelation(RelNode, CorrelationId, Litmus) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
propagateRelHints(RelNode, boolean) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
createFilter(RelNode, Iterable, RelFactories.FilterFactory) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
splitCorrelatedFilterCondition(Filter, List, List, boolean) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
createEquiJoinCondition(RelNode, List, RelNode, List, RexBuilder) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
pushPastProjectUnlessBloat(RexNode, Project, int) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
findTable(RelNode, String) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
createProject(RelNode, List, List, boolean) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
splitJoinCondition(RelNode, RelNode, RexNode, List, List, List) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
splitCorrelatedFilterCondition(LogicalFilter, List, List) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
addJoinKey(List, RexNode, boolean) |  | 0% |  | 0% | 3 | 3 | 4 | 4 | 1 | 1 |
equal(String, RelDataType, String, RelDataType, Litmus) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
registerAbstractRelationalRules(RelOptPlanner) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
contains(RelNode, RelNode) |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
pushShuttle(Calc) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
createProject(RelNode, List, List) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
static {...} |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
isPureOrder(RelNode) |  | 0% |  | 0% | 4 | 4 | 1 | 1 | 1 | 1 |
isOrder(RelNode) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
getVariablesUsed(RelNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
go(RelVisitor, RelNode) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
createExistsPlan(RelNode, RelOptUtil.SubQueryType, RelOptUtil.Logic, boolean) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
splitJoinCondition(RelNode, RelNode, RexNode, List, List, List, List) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
createProject(RelNode, List, List, boolean, RelBuilder) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
splitJoinCondition(List, RelNode, RelNode, RexNode, List, List, List, List) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
containsGet(RexNode) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
isLimit(RelNode) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
isOffset(RelNode) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
getVariablesSet(RelNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
isPureLimit(RelNode) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
createDistinctRel(RelNode) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
collapseExpandedIsNotDistinctFromExpr(RexCall, RexBuilder) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
dumpPlan(String, RelNode, boolean, SqlExplainLevel) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
pushDownJoinConditions(Join, RelFactories.ProjectFactory) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
fix(List, int, int) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
findAllTableQualifiedNames(RelNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
equalType(String, RelNode, String, RelNode, Litmus) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
conjunctions(RexNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
disjunctions(RexNode) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
addTrait(RelNode, RelTrait) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
createFilter(RelNode, RexNode) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
splitCorrelatedFilterCondition(LogicalFilter, RexNode, List, List, List, boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
registerAbstractRules(RelOptPlanner) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
registerEnumerableRules(RelOptPlanner) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
registerBaseRules(RelOptPlanner) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
registerReductionRules(RelOptPlanner) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
registerMaterializationRules(RelOptPlanner) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
registerCalcRules(RelOptPlanner) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
pushDownJoinConditions(Join, RelBuilderFactory) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
createProject(RelNode, Mappings.TargetMapping, RelFactories.ProjectFactory) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
permute(RelDataTypeFactory, RelDataType, Mapping) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
notContainsWindowedAgg(Calc) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
notContainsWindowedAgg(Filter) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
notContainsWindowedAgg(Project) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
lambda$fix$3(int, int, RexNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$static$0(Filter) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
findTables(RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
createFilter(RelNode, RexNode, RelFactories.FilterFactory) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
createCastRel(RelNode, RelDataType, boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
getAllFields(Aggregate) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
splitCorrelatedFilterCondition(LogicalFilter, List, List, boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
stripAll(RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
pushPastProject(RexNode, Project) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
pushPastCalc(RexNode, Calc) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
createProject(RelNode, Mappings.TargetMapping) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
countJoins(RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
getFieldTypeList(RelDataType) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
copyRelHints(RelNode, RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
createFilter(RelNode, Iterable) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
toString(RelNode, SqlExplainLevel) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
pushPastProject(List, Project) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
pushShuttle(Project) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
createProject(RelNode, List) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
toString(RelNode) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
pushFilterPastProject(RexNode, Project) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
pushDownJoinConditions(Join) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$findAllTableQualifiedNames$1(RelOptTable) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
RelOptUtil() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
registerAbstractRels(RelOptPlanner) | | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
getContext(RelOptCluster) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |