[feature](Nereids): convert rightSemi to leftSemi for matching more rule. (#18648)
This commit is contained in:
@ -69,6 +69,7 @@ import org.apache.doris.nereids.rules.rewrite.logical.PushdownLimit;
|
||||
import org.apache.doris.nereids.rules.rewrite.logical.ReorderJoin;
|
||||
import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinAggTranspose;
|
||||
import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinAggTransposeProject;
|
||||
import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinCommute;
|
||||
import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinLogicalJoinTranspose;
|
||||
import org.apache.doris.nereids.rules.rewrite.logical.SemiJoinLogicalJoinTransposeProject;
|
||||
import org.apache.doris.nereids.rules.rewrite.logical.SplitLimit;
|
||||
@ -181,7 +182,7 @@ public class NereidsRewriter extends BatchRewriteJob {
|
||||
|
||||
// pushdown SEMI Join
|
||||
bottomUp(
|
||||
// new SemiJoinCommute(),
|
||||
new SemiJoinCommute(),
|
||||
new SemiJoinLogicalJoinTranspose(),
|
||||
new SemiJoinLogicalJoinTransposeProject(),
|
||||
new SemiJoinAggTranspose(),
|
||||
|
||||
@ -52,7 +52,7 @@ import java.util.stream.Collectors;
|
||||
/**
|
||||
* Tests ported from {@link org.apache.doris.planner.MaterializedViewFunctionTest}
|
||||
*/
|
||||
public class SelectMvIndexTest extends BaseMaterializedIndexSelectTest implements MemoPatternMatchSupported {
|
||||
class SelectMvIndexTest extends BaseMaterializedIndexSelectTest implements MemoPatternMatchSupported {
|
||||
|
||||
private static final String EMPS_TABLE_NAME = "emps";
|
||||
private static final String EMPS_MV_NAME = "emps_mv";
|
||||
|
||||
@ -124,9 +124,9 @@ class ReorderJoinTest implements MemoPatternMatchSupported {
|
||||
PlanChecker.from(MemoTestUtils.createConnectContext(), plan2)
|
||||
.rewrite()
|
||||
.matchesFromRoot(
|
||||
rightSemiLogicalJoin(
|
||||
logicalProject(logicalOlapScan()),
|
||||
innerLogicalJoin()
|
||||
innerLogicalJoin(
|
||||
leftSemiLogicalJoin(),
|
||||
logicalOlapScan()
|
||||
)
|
||||
);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user