From 539efb35328c09da22567dbc7ca0df3df9333000 Mon Sep 17 00:00:00 2001 From: Mingyu Chen Date: Mon, 18 May 2020 13:07:21 +0800 Subject: [PATCH] Revert "[Fix]SlotRef.tosql() is the same as the SQL returned by different sql" (#3610) This revert is used to correct the mess of the commit timeline caused by the wrong merge method. --- .../org/apache/doris/analysis/SlotRef.java | 9 ----- .../doris/analysis/StmtRewriterTest.java | 39 +++++-------------- 2 files changed, 10 insertions(+), 38 deletions(-) diff --git a/fe/src/main/java/org/apache/doris/analysis/SlotRef.java b/fe/src/main/java/org/apache/doris/analysis/SlotRef.java index 572be393fa..8f99bb0dba 100644 --- a/fe/src/main/java/org/apache/doris/analysis/SlotRef.java +++ b/fe/src/main/java/org/apache/doris/analysis/SlotRef.java @@ -162,15 +162,6 @@ public class SlotRef extends Expr { return tblName.toSql() + "." + label + sb.toString(); } else if (label != null) { return label + sb.toString(); - } else if (desc.getSourceExprs() != null) { - if (desc.getId().asInt() != 1) { - sb.append(""); - } - for (Expr expr : desc.getSourceExprs()) { - sb.append(" "); - sb.append(expr.toSql()); - } - return sb.toString(); } else { return "" + sb.toString(); } diff --git a/fe/src/test/java/org/apache/doris/analysis/StmtRewriterTest.java b/fe/src/test/java/org/apache/doris/analysis/StmtRewriterTest.java index 039a1901ad..77e1d4b47b 100644 --- a/fe/src/test/java/org/apache/doris/analysis/StmtRewriterTest.java +++ b/fe/src/test/java/org/apache/doris/analysis/StmtRewriterTest.java @@ -21,8 +21,6 @@ import org.apache.doris.common.FeConstants; import org.apache.doris.utframe.DorisAssert; import org.apache.doris.utframe.UtFrameUtils; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -30,7 +28,6 @@ import org.junit.Test; import java.util.UUID; public class StmtRewriterTest { - private static final Logger LOG = LogManager.getLogger(StmtRewriterTest.class); private static String baseDir = "fe"; private static String runningDir = baseDir + "/mocked/StmtRewriterTest/" @@ -152,9 +149,7 @@ public class StmtRewriterTest { String subquery = "select avg(salary) from " + TABLE_NAME; String query = "select empid, sum(salary) from " + TABLE_NAME + " group by empid having sum(salary) > (" + subquery + ");"; - LOG.info("EXPLAIN:{}", dorisAssert.query(query).explainQuery()); - dorisAssert.query(query).explainContains("CROSS JOIN", - "predicates: sum(`salary`) > avg(`salary`)"); + dorisAssert.query(query).explainContains("CROSS JOIN", "predicates: > "); } /** @@ -263,10 +258,8 @@ public class StmtRewriterTest { String subquery = "select avg(salary) from " + TABLE_NAME; String query = "select empid a, sum(salary) from " + TABLE_NAME + " group by empid having sum(salary) > (" + subquery + ") order by a;"; - LOG.info("EXPLAIN:{}", dorisAssert.query(query).explainQuery()); - dorisAssert.query(query).explainContains("CROSS JOIN", - "predicates: sum(`salary`) > avg(`salary`)", - "order by: `$a$1`.`$c$1` ASC"); + dorisAssert.query(query).explainContains("CROSS JOIN", "predicates: > ", + "order by: ASC"); } /** @@ -375,12 +368,9 @@ public class StmtRewriterTest { String subquery = "select avg(salary) from " + TABLE_NAME; String query = "select empid a from " + TABLE_NAME + " group by empid having sum(salary) > (" + subquery + ") order by sum(salary);"; - LOG.info("EXPLAIN:{}", dorisAssert.query(query).explainQuery()); dorisAssert.query(query).explainContains("group by: `empid`", - "CROSS JOIN", - "predicates: sum(`salary`) > avg(`salary`)", - "order by: `$a$1`.`$c$2` ASC", - "OUTPUT EXPRS: `$a$1`.`$c$1`"); + "CROSS JOIN", "predicates: > ", + "order by: ASC", "OUTPUT EXPRS:"); } /** @@ -490,12 +480,9 @@ public class StmtRewriterTest { String subquery = "select avg(salary) from " + TABLE_NAME; String query = "select empid a, sum(salary) b from " + TABLE_NAME + " group by a having b > (" + subquery + ") order by b;"; - LOG.info("EXPLAIN:{}", dorisAssert.query(query).explainQuery()); dorisAssert.query(query).explainContains("group by: `empid`", - "CROSS JOIN", - "predicates: sum(`salary`) > avg(`salary`)", - "order by: `$a$1`.`$c$2` ASC", - "OUTPUT EXPRS: `$a$1`.`$c$1` | `$a$1`.`$c$2`"); + "CROSS JOIN", "predicates: > ", + "order by: ASC", "OUTPUT EXPRS: | "); } /** @@ -604,12 +591,9 @@ public class StmtRewriterTest { String subquery = "select avg(salary) from " + TABLE_NAME; String query = "select empid a, sum(salary) b from " + TABLE_NAME + " group by a having b > (" + subquery + ") order by b limit 100;"; - LOG.info("EXPLAIN:{}", dorisAssert.query(query).explainQuery()); dorisAssert.query(query).explainContains("group by: `empid`", - "CROSS JOIN", - "predicates: sum(`salary`) > avg(`salary`)", - "order by: `$a$1`.`$c$2` ASC", - "OUTPUT EXPRS: `$a$1`.`$c$1` | `$a$1`.`$c$2`"); + "CROSS JOIN", "predicates: > ", + "order by: ASC", "OUTPUT EXPRS: | ", "limit: 100"); } /** @@ -620,11 +604,8 @@ public class StmtRewriterTest { String subquery = "select avg(salary) from " + TABLE_NAME + " where empid between 1 and 2"; String query = "select empid a, sum(salary) b from " + TABLE_NAME + " group by a having b > (" + subquery + ");"; - LOG.info("EXPLAIN:{}", dorisAssert.query(query).explainQuery()); dorisAssert.query(query).explainContains( - "CROSS JOIN", - "predicates: sum(`salary`) > avg(`salary`)", - "PREDICATES: `empid` >= 1, `empid` <= 2"); + "CROSS JOIN", "predicates: > ", "`empid` >= 1, `empid` <= 2"); } @AfterClass