diff --git a/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/SimpleUnnestToProductRule.java b/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/SimpleUnnestToProductRule.java index 58a15e23e8f..a95f209be9b 100644 --- a/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/SimpleUnnestToProductRule.java +++ b/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/SimpleUnnestToProductRule.java @@ -37,6 +37,7 @@ import org.apache.hyracks.algebricks.core.algebra.operators.logical.visitors.VariableUtilities; import org.apache.hyracks.algebricks.core.algebra.util.OperatorPropertiesUtil; import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import org.apache.hyracks.algebricks.rewriter.util.JoinUtils; public class SimpleUnnestToProductRule implements IAlgebraicRewriteRule { @@ -142,6 +143,8 @@ && descOrSelfIsSourceScan(currentOpRef.getValue())) { context.computeAndSetTypeEnvironmentForOperator(boundaryOperator); context.computeAndSetTypeEnvironmentForOperator(innerBranchOperator); context.computeAndSetTypeEnvironmentForOperator(join); + JoinUtils.warnIfCrossProduct(join.getCondition().getValue(), + innerBranchOperator.getSourceLocation(), context); return true; } diff --git a/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/util/JoinUtils.java b/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/util/JoinUtils.java index 085580f08ea..f4afb6fe5de 100644 --- a/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/util/JoinUtils.java +++ b/hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/util/JoinUtils.java @@ -340,7 +340,7 @@ private static BuildSide getHashJoinBuildSide(ILogicalExpression e, List