You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2021/06/06 07:08:34 UTC

[iotdb] 03/04: remove group by level operator

This is an automated email from the ASF dual-hosted git repository.

xiangweiwei pushed a commit to branch removeTokenType
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 6f09c1544bda0160a9585b14608c41bb99efd44f
Author: Alima777 <wx...@gmail.com>
AuthorDate: Fri Jun 4 17:25:10 2021 +0800

    remove group by level operator
---
 .../qp/logical/crud/AggregationQueryOperator.java  |  7 +++++--
 .../logical/crud/GroupByLevelClauseComponent.java  | 22 ----------------------
 .../db/qp/logical/crud/SpecialClauseComponent.java |  4 ----
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    |  3 +--
 4 files changed, 6 insertions(+), 30 deletions(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java
index 6a9ab43..e7070a2 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java
@@ -68,7 +68,7 @@ public class AggregationQueryOperator extends QueryOperator {
       }
     }
 
-    if (specialClauseComponent.isGroupByLevel()) {
+    if (isGroupByLevel()) {
       try {
         if (!verifyAllAggregationDataTypesEqual()) {
           throw new LogicalOperatorException("Aggregate among unmatched data types");
@@ -86,7 +86,10 @@ public class AggregationQueryOperator extends QueryOperator {
 
     queryPlan.setPaths(selectComponent.getPaths());
     queryPlan.setAggregations(selectComponent.getAggregationFunctions());
-    queryPlan.setLevel(specialClauseComponent.getLevel());
+
+    if (isGroupByLevel()) {
+      queryPlan.setLevel(specialClauseComponent.getLevel());
+    }
 
     return queryPlan;
   }
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/GroupByLevelClauseComponent.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/GroupByLevelClauseComponent.java
deleted file mode 100644
index 5013987..0000000
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/GroupByLevelClauseComponent.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.iotdb.db.qp.logical.crud;
-
-public class GroupByLevelClauseComponent extends SpecialClauseComponent {}
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java
index 5b63bd9..f935433 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java
@@ -111,10 +111,6 @@ public class SpecialClauseComponent {
     this.level = level;
   }
 
-  public boolean isGroupByLevel() {
-    return level != -1;
-  }
-
   public boolean isAlignByDevice() {
     return isAlignByDevice;
   }
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java b/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java
index bffb037..1481cab 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java
@@ -39,7 +39,6 @@ import org.apache.iotdb.db.qp.logical.crud.FromComponent;
 import org.apache.iotdb.db.qp.logical.crud.GroupByClauseComponent;
 import org.apache.iotdb.db.qp.logical.crud.GroupByFillClauseComponent;
 import org.apache.iotdb.db.qp.logical.crud.GroupByFillQueryOperator;
-import org.apache.iotdb.db.qp.logical.crud.GroupByLevelClauseComponent;
 import org.apache.iotdb.db.qp.logical.crud.GroupByQueryOperator;
 import org.apache.iotdb.db.qp.logical.crud.InOperator;
 import org.apache.iotdb.db.qp.logical.crud.InsertOperator;
@@ -1353,7 +1352,7 @@ public class IoTDBSqlVisitor extends SqlBaseBaseVisitor<Operator> {
   }
 
   public void parseGroupByLevelClause(GroupByLevelClauseContext ctx) {
-    GroupByLevelClauseComponent groupByLevelClauseComponent = new GroupByLevelClauseComponent();
+    SpecialClauseComponent groupByLevelClauseComponent = new SpecialClauseComponent();
     groupByLevelClauseComponent.setLevel(Integer.parseInt(ctx.INT().getText()));
     queryOp.setSpecialClauseComponent(groupByLevelClauseComponent);
   }