Package org.apache.calcite.rel.rules
Class ConflictDetectionHelper
java.lang.Object
org.apache.calcite.rel.rules.ConflictDetectionHelper
Conflict detection algorithm based on CD-C. More details are in paper:
On the correct and complete enumeration of the core search space.
-
Method Summary
Modifier and TypeMethodDescriptionstatic booleanisAssociative(JoinRelType operatorA, JoinRelType operatorB) static booleanisCommutative(JoinRelType operator) static booleanisLeftAsscom(JoinRelType operatorA, JoinRelType operatorB) static booleanisRightAsscom(JoinRelType operatorA, JoinRelType operatorB) static List<ConflictRule>makeConflictRules(List<HyperEdge> leftSubEdges, List<HyperEdge> rightSubEdges, JoinRelType joinType) Make conflict rules for join operator based on CD-C.
-
Method Details
-
makeConflictRules
public static List<ConflictRule> makeConflictRules(List<HyperEdge> leftSubEdges, List<HyperEdge> rightSubEdges, JoinRelType joinType) Make conflict rules for join operator based on CD-C. See Figure.11 in paper.- Parameters:
leftSubEdges- left sub operatorsrightSubEdges- right sub operatorsjoinType- current join operator- Returns:
- conflict rule list
-
isCommutative
-
isAssociative
-
isLeftAsscom
-
isRightAsscom
-