You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by GitBox <gi...@apache.org> on 2021/09/07 07:08:00 UTC

[GitHub] [incubator-doris] liutang123 commented on a change in pull request #6580: [FOLLOWUP] create table like clause support copy rollup

liutang123 commented on a change in pull request #6580:
URL: https://github.com/apache/incubator-doris/pull/6580#discussion_r703225443



##########
File path: fe/fe-core/src/test/java/org/apache/doris/catalog/CreateTableLikeTest.java
##########
@@ -110,10 +113,10 @@ private static void checkCreateOlapTableLike(String createTableSql, String creat
                                                  String newTblName, String existedTblName, int rollupSize) throws Exception {
         createTable(createTableSql);
         createTableLike(createTableLikeSql);
-        Database newDb = Catalog.getCurrentCatalog().getDbOrDdlException("default_cluster:" + newDbName);
-        Database existedDb = Catalog.getCurrentCatalog().getDbOrDdlException("default_cluster:" + existedDbName);
-        OlapTable newTbl = (OlapTable) newDb.getTableOrDdlException(newTblName);
-        OlapTable existedTbl = (OlapTable) existedDb.getTableOrDdlException(existedTblName);
+        Database newDb = Catalog.getCurrentCatalog().getDb("default_cluster:" + newDbName);

Review comment:
       Why change here?

##########
File path: fe/fe-core/src/main/java/org/apache/doris/analysis/CreateTableLikeStmt.java
##########
@@ -99,7 +105,15 @@ public void analyze(Analyzer analyzer) throws UserException {
 
     @Override
     public String toSql() {
-        return String.format("CREATE TABLE %s LIKE %s", tableName.toSql(), existedTableName.toSql());
+        StringBuilder sb = new StringBuilder();
+        sb.append("CREATE TABLE ").append(tableName.toSql()).append(" LIKE ").append(existedTableName.toSql());
+        if (withAllRollup && rollupNames == null){
+            sb.append(" WITH ROLLUP");
+        }
+        if (!withAllRollup && rollupNames != null){

Review comment:
       if (!withAllRollup && !CollectionUtils.isEmpty(rollupNames)) {

##########
File path: fe/fe-core/src/test/java/org/apache/doris/catalog/CreateTableLikeTest.java
##########
@@ -123,10 +126,10 @@ private static void checkCreateMysqlTableLike(String createTableSql, String crea
 
         createTable(createTableSql);
         createTableLike(createTableLikeSql);
-        Database newDb = Catalog.getCurrentCatalog().getDbOrDdlException("default_cluster:" + newDbName);
-        Database existedDb = Catalog.getCurrentCatalog().getDbOrDdlException("default_cluster:" + existedDbName);
-        MysqlTable newTbl = (MysqlTable) newDb.getTableOrDdlException(newTblName);
-        MysqlTable existedTbl = (MysqlTable) existedDb.getTableOrDdlException(existedTblName);
+        Database newDb = Catalog.getCurrentCatalog().getDb("default_cluster:" + newDbName);

Review comment:
       here?

##########
File path: fe/fe-core/src/main/java/org/apache/doris/analysis/CreateTableLikeStmt.java
##########
@@ -99,7 +105,15 @@ public void analyze(Analyzer analyzer) throws UserException {
 
     @Override
     public String toSql() {
-        return String.format("CREATE TABLE %s LIKE %s", tableName.toSql(), existedTableName.toSql());
+        StringBuilder sb = new StringBuilder();
+        sb.append("CREATE TABLE ").append(tableName.toSql()).append(" LIKE ").append(existedTableName.toSql());
+        if (withAllRollup && rollupNames == null){

Review comment:
       if (withAllRollup && CollectionUtils.isEmpty(rollupNames)) {




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org