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

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


The following commit(s) were added to refs/heads/master by this push:
     new cf75b60a75c Pipe: Enable synonym detection for OpcUaConnector & 
Refactor remaining ids -> tags (#15573)
cf75b60a75c is described below

commit cf75b60a75c1188afa09084729b4a06007b1f55c
Author: Caideyipi <[email protected]>
AuthorDate: Mon May 26 16:45:17 2025 +0800

    Pipe: Enable synonym detection for OpcUaConnector & Refactor remaining ids 
-> tags (#15573)
---
 .../batch/PipeTransferBatchReqBuilder.java         |  7 +++--
 .../connector/protocol/opcua/OpcUaConnector.java   |  6 +++-
 .../PipeConsensusTransferBatchReqBuilder.java      |  7 +++--
 .../plan/planner/TableOperatorGenerator.java       | 13 +++++----
 .../plan/relational/planner/RelationPlanner.java   |  8 +++---
 .../distribute/TableDistributedPlanGenerator.java  | 16 +++++------
 .../iterative/rule/PruneTableScanColumns.java      |  4 +--
 .../planner/node/AggregationTableScanNode.java     | 14 +++++-----
 .../node/AggregationTreeDeviceViewScanNode.java    |  6 ++--
 .../planner/node/DeviceTableScanNode.java          | 32 +++++++++++-----------
 .../node/TreeAlignedDeviceViewScanNode.java        |  6 ++--
 .../planner/node/TreeDeviceViewScanNode.java       | 10 +++----
 .../node/TreeNonAlignedDeviceViewScanNode.java     |  6 ++--
 .../optimizations/PushPredicateIntoTableScan.java  |  2 +-
 .../optimizations/UnaliasSymbolReferences.java     |  4 +--
 .../relational/planner/optimizations/Util.java     |  4 +--
 ...nAlignedTreeDeviceViewScanOperatorTreeTest.java |  6 ++--
 .../plan/relational/analyzer/AnalyzerTest.java     | 10 +++----
 .../plan/relational/analyzer/SortTest.java         |  8 +++---
 .../plan/relational/analyzer/TestPlanBuilder.java  |  4 +--
 .../config/constant/PipeConnectorConstant.java     |  5 ++--
 .../pipe/connector/protocol/IoTDBConnector.java    |  6 ++--
 22 files changed, 96 insertions(+), 88 deletions(-)

diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/payload/evolvable/batch/PipeTransferBatchReqBuilder.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/payload/evolvable/batch/PipeTransferBatchReqBuilder.java
index eed3a7e5bd9..aa49eb3ee0f 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/payload/evolvable/batch/PipeTransferBatchReqBuilder.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/payload/evolvable/batch/PipeTransferBatchReqBuilder.java
@@ -44,8 +44,8 @@ import java.util.concurrent.ConcurrentHashMap;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_FORMAT_HYBRID_VALUE;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_FORMAT_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_FORMAT_TS_FILE_VALUE;
-import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_MS_KEY;
+import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_SECONDS_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_SIZE_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_PLAIN_BATCH_DELAY_DEFAULT_VALUE;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_PLAIN_BATCH_SIZE_DEFAULT_VALUE;
@@ -54,8 +54,8 @@ import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstan
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_LEADER_CACHE_ENABLE_DEFAULT_VALUE;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_LEADER_CACHE_ENABLE_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_FORMAT_KEY;
-import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_MS_KEY;
+import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_SECONDS_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_SIZE_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_LEADER_CACHE_ENABLE_KEY;
 
@@ -95,7 +95,8 @@ public class PipeTransferBatchReqBuilder implements 
AutoCloseable {
     if (Objects.isNull(requestMaxDelayInMillis)) {
       final int requestMaxDelayInSeconds =
           parameters.getIntOrDefault(
-              Arrays.asList(CONNECTOR_IOTDB_BATCH_DELAY_KEY, 
SINK_IOTDB_BATCH_DELAY_KEY),
+              Arrays.asList(
+                  CONNECTOR_IOTDB_BATCH_DELAY_SECONDS_KEY, 
SINK_IOTDB_BATCH_DELAY_SECONDS_KEY),
               usingTsFileBatch
                   ? CONNECTOR_IOTDB_TS_FILE_BATCH_DELAY_DEFAULT_VALUE
                   : CONNECTOR_IOTDB_PLAIN_BATCH_DELAY_DEFAULT_VALUE);
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/opcua/OpcUaConnector.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/opcua/OpcUaConnector.java
index 300edfec0f3..388ed67a32c 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/opcua/OpcUaConnector.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/opcua/OpcUaConnector.java
@@ -109,7 +109,11 @@ public class OpcUaConnector implements PipeConnector {
             SINK_OPC_UA_MODEL_KEY,
             true,
             CONNECTOR_OPC_UA_MODEL_CLIENT_SERVER_VALUE,
-            CONNECTOR_OPC_UA_MODEL_PUB_SUB_VALUE);
+            CONNECTOR_OPC_UA_MODEL_PUB_SUB_VALUE)
+        .validateSynonymAttributes(
+            Arrays.asList(CONNECTOR_IOTDB_USER_KEY, SINK_IOTDB_USER_KEY),
+            Arrays.asList(CONNECTOR_IOTDB_USERNAME_KEY, 
SINK_IOTDB_USERNAME_KEY),
+            false);
   }
 
   @Override
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/pipeconsensus/payload/builder/PipeConsensusTransferBatchReqBuilder.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/pipeconsensus/payload/builder/PipeConsensusTransferBatchReqBuilder.java
index 5d887526fa4..cf004b65f4d 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/pipeconsensus/payload/builder/PipeConsensusTransferBatchReqBuilder.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/pipeconsensus/payload/builder/PipeConsensusTransferBatchReqBuilder.java
@@ -46,13 +46,13 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
 
-import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_MS_KEY;
+import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_SECONDS_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_SIZE_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_PLAIN_BATCH_DELAY_DEFAULT_VALUE;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_PLAIN_BATCH_SIZE_DEFAULT_VALUE;
-import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_MS_KEY;
+import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_SECONDS_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_SIZE_KEY;
 
 public abstract class PipeConsensusTransferBatchReqBuilder implements 
AutoCloseable {
@@ -80,7 +80,8 @@ public abstract class PipeConsensusTransferBatchReqBuilder 
implements AutoClosea
     if (Objects.isNull(requestMaxDelayInMillis)) {
       final int requestMaxDelayInSeconds =
           parameters.getIntOrDefault(
-              Arrays.asList(CONNECTOR_IOTDB_BATCH_DELAY_KEY, 
SINK_IOTDB_BATCH_DELAY_KEY),
+              Arrays.asList(
+                  CONNECTOR_IOTDB_BATCH_DELAY_SECONDS_KEY, 
SINK_IOTDB_BATCH_DELAY_SECONDS_KEY),
               CONNECTOR_IOTDB_PLAIN_BATCH_DELAY_DEFAULT_VALUE);
       maxDelayInMs =
           requestMaxDelayInSeconds < 0 ? Integer.MAX_VALUE : 
requestMaxDelayInSeconds * 1000;
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java
index cc359fabfff..7d65cb1337d 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java
@@ -826,7 +826,7 @@ public class TableOperatorGenerator extends 
PlanVisitor<Operator, LocalExecution
     List<ColumnSchema> columnSchemas;
     int[] columnsIndexArray;
     Map<Symbol, ColumnSchema> columnSchemaMap;
-    Map<Symbol, Integer> idAndAttributeColumnsIndexMap;
+    Map<Symbol, Integer> tagAndAttributeColumnsIndexMap;
     List<String> measurementColumnNames;
     Map<String, Integer> measurementColumnsIndexMap;
     String timeColumnName;
@@ -844,7 +844,7 @@ public class TableOperatorGenerator extends 
PlanVisitor<Operator, LocalExecution
       columnSchemas = new ArrayList<>(outputColumnCount);
       columnsIndexArray = new int[outputColumnCount];
       columnSchemaMap = node.getAssignments();
-      idAndAttributeColumnsIndexMap = node.getIdAndAttributeIndexMap();
+      tagAndAttributeColumnsIndexMap = node.getTagAndAttributeIndexMap();
       measurementColumnNames = new ArrayList<>();
       measurementColumnsIndexMap = new HashMap<>();
       measurementSchemas = new ArrayList<>();
@@ -861,7 +861,7 @@ public class TableOperatorGenerator extends 
PlanVisitor<Operator, LocalExecution
           case ATTRIBUTE:
             columnsIndexArray[idx++] =
                 requireNonNull(
-                    idAndAttributeColumnsIndexMap.get(columnName), columnName 
+ " is null");
+                    tagAndAttributeColumnsIndexMap.get(columnName), columnName 
+ " is null");
             columnSchemas.add(schema);
             break;
           case FIELD:
@@ -2707,7 +2707,8 @@ public class TableOperatorGenerator extends 
PlanVisitor<Operator, LocalExecution
             case TAG:
             case ATTRIBUTE:
               aggColumnsIndexArray[channel] =
-                  requireNonNull(node.getIdAndAttributeIndexMap().get(symbol), 
symbol + " is null");
+                  requireNonNull(
+                      node.getTagAndAttributeIndexMap().get(symbol), symbol + 
" is null");
               break;
             case FIELD:
               aggColumnsIndexArray[channel] = measurementColumnCount;
@@ -2778,9 +2779,9 @@ public class TableOperatorGenerator extends 
PlanVisitor<Operator, LocalExecution
       for (int i = 0; i < node.getGroupingKeys().size(); i++) {
         Symbol groupingKey = node.getGroupingKeys().get(i);
 
-        if (node.getIdAndAttributeIndexMap().containsKey(groupingKey)) {
+        if (node.getTagAndAttributeIndexMap().containsKey(groupingKey)) {
           groupingKeySchemas.add(node.getAssignments().get(groupingKey));
-          groupingKeyIndex[i] = 
node.getIdAndAttributeIndexMap().get(groupingKey);
+          groupingKeyIndex[i] = 
node.getTagAndAttributeIndexMap().get(groupingKey);
         } else {
           if (node.getProjection() != null
               && !node.getProjection().getMap().isEmpty()
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationPlanner.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationPlanner.java
index 94f6137dc3c..1bda1423837 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationPlanner.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationPlanner.java
@@ -201,7 +201,7 @@ public class RelationPlanner extends 
AstVisitor<RelationPlan, Void> {
 
     // on the basis of that the order of fields is same with the column 
category order of segments
     // in DeviceEntry
-    final Map<Symbol, Integer> idAndAttributeIndexMap = new HashMap<>();
+    final Map<Symbol, Integer> tagAndAttributeIndexMap = new HashMap<>();
     int idIndex = 0;
     for (final Field field : fields) {
       final TsTableColumnCategory category = field.getColumnCategory();
@@ -212,7 +212,7 @@ public class RelationPlanner extends 
AstVisitor<RelationPlan, Void> {
           new ColumnSchema(
               field.getName().orElse(null), field.getType(), field.isHidden(), 
category));
       if (category == TsTableColumnCategory.TAG) {
-        idAndAttributeIndexMap.put(symbol, idIndex++);
+        tagAndAttributeIndexMap.put(symbol, idIndex++);
       }
     }
 
@@ -230,7 +230,7 @@ public class RelationPlanner extends 
AstVisitor<RelationPlan, Void> {
               qualifiedObjectName,
               outputSymbols,
               tableColumnSchema,
-              idAndAttributeIndexMap,
+              tagAndAttributeIndexMap,
               null,
               treeDeviceViewSchema.getColumn2OriginalNameMap()),
           scope,
@@ -247,7 +247,7 @@ public class RelationPlanner extends 
AstVisitor<RelationPlan, Void> {
                 qualifiedObjectName,
                 outputSymbols,
                 tableColumnSchema,
-                idAndAttributeIndexMap);
+                tagAndAttributeIndexMap);
     return new RelationPlan(tableScanNode, scope, outputSymbols, outerContext);
 
     // Collection<Field> fields = 
analysis.getMaterializedViewStorageTableFields(node);
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGenerator.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGenerator.java
index 085073596dc..095ab695ff6 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGenerator.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGenerator.java
@@ -565,7 +565,7 @@ public class TableDistributedPlanGenerator
                         node.getOutputSymbols(),
                         node.getAssignments(),
                         new ArrayList<>(),
-                        node.getIdAndAttributeIndexMap(),
+                        node.getTagAndAttributeIndexMap(),
                         node.getScanOrder(),
                         node.getTimePredicate().orElse(null),
                         node.getPushDownPredicate(),
@@ -640,7 +640,7 @@ public class TableDistributedPlanGenerator
                           node.getOutputSymbols(),
                           node.getAssignments(),
                           new ArrayList<>(),
-                          node.getIdAndAttributeIndexMap(),
+                          node.getTagAndAttributeIndexMap(),
                           node.getScanOrder(),
                           node.getTimePredicate().orElse(null),
                           node.getPushDownPredicate(),
@@ -727,7 +727,7 @@ public class TableDistributedPlanGenerator
                   node.getOutputSymbols(),
                   node.getAssignments(),
                   new ArrayList<>(),
-                  node.getIdAndAttributeIndexMap(),
+                  node.getTagAndAttributeIndexMap(),
                   node.getScanOrder(),
                   node.getTimePredicate().orElse(null),
                   node.getPushDownPredicate(),
@@ -749,7 +749,7 @@ public class TableDistributedPlanGenerator
                   node.getOutputSymbols(),
                   node.getAssignments(),
                   new ArrayList<>(),
-                  node.getIdAndAttributeIndexMap(),
+                  node.getTagAndAttributeIndexMap(),
                   node.getScanOrder(),
                   node.getTimePredicate().orElse(null),
                   node.getPushDownPredicate(),
@@ -1166,7 +1166,7 @@ public class TableDistributedPlanGenerator
                               partialAggTableScanNode.getOutputSymbols(),
                               partialAggTableScanNode.getAssignments(),
                               new ArrayList<>(),
-                              
partialAggTableScanNode.getIdAndAttributeIndexMap(),
+                              
partialAggTableScanNode.getTagAndAttributeIndexMap(),
                               partialAggTableScanNode.getScanOrder(),
                               
partialAggTableScanNode.getTimePredicate().orElse(null),
                               partialAggTableScanNode.getPushDownPredicate(),
@@ -1186,7 +1186,7 @@ public class TableDistributedPlanGenerator
                               partialAggTableScanNode.getOutputSymbols(),
                               partialAggTableScanNode.getAssignments(),
                               new ArrayList<>(),
-                              
partialAggTableScanNode.getIdAndAttributeIndexMap(),
+                              
partialAggTableScanNode.getTagAndAttributeIndexMap(),
                               partialAggTableScanNode.getScanOrder(),
                               
partialAggTableScanNode.getTimePredicate().orElse(null),
                               partialAggTableScanNode.getPushDownPredicate(),
@@ -1267,7 +1267,7 @@ public class TableDistributedPlanGenerator
         newSortOrders.add(expectedOrderingScheme.getOrdering(symbol));
         lastIsTimeRelated = true;
         break;
-      } else if 
(!deviceTableScanNode.getIdAndAttributeIndexMap().containsKey(symbol)) {
+      } else if 
(!deviceTableScanNode.getTagAndAttributeIndexMap().containsKey(symbol)) {
         break;
       }
 
@@ -1284,7 +1284,7 @@ public class TableDistributedPlanGenerator
         createTreeDeviceIdColumnValueExtractor(deviceTableScanNode);
     final List<Function<DeviceEntry, String>> orderingRules = new 
ArrayList<>();
     for (final Symbol symbol : newOrderingSymbols) {
-      final Integer idx = 
deviceTableScanNode.getIdAndAttributeIndexMap().get(symbol);
+      final Integer idx = 
deviceTableScanNode.getTagAndAttributeIndexMap().get(symbol);
       if (idx == null) {
         // time column or date_bin column
         break;
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneTableScanColumns.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneTableScanColumns.java
index 9635fee7789..ffce0b6693e 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneTableScanColumns.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneTableScanColumns.java
@@ -101,7 +101,7 @@ public class PruneTableScanColumns extends 
ProjectOffPushDownRule<TableScanNode>
                 newOutputs,
                 newAssignments,
                 deviceTableScanNode.getDeviceEntries(),
-                deviceTableScanNode.getIdAndAttributeIndexMap(),
+                deviceTableScanNode.getTagAndAttributeIndexMap(),
                 deviceTableScanNode.getScanOrder(),
                 deviceTableScanNode.getTimePredicate().orElse(null),
                 deviceTableScanNode.getPushDownPredicate(),
@@ -119,7 +119,7 @@ public class PruneTableScanColumns extends 
ProjectOffPushDownRule<TableScanNode>
                 newOutputs,
                 newAssignments,
                 deviceTableScanNode.getDeviceEntries(),
-                deviceTableScanNode.getIdAndAttributeIndexMap(),
+                deviceTableScanNode.getTagAndAttributeIndexMap(),
                 deviceTableScanNode.getScanOrder(),
                 deviceTableScanNode.getTimePredicate().orElse(null),
                 deviceTableScanNode.getPushDownPredicate(),
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTableScanNode.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTableScanNode.java
index e669a98c9fd..b56d76db6c1 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTableScanNode.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTableScanNode.java
@@ -74,7 +74,7 @@ public class AggregationTableScanNode extends 
DeviceTableScanNode {
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
       List<DeviceEntry> deviceEntries,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       Ordering scanOrder,
       Expression timePredicate,
       Expression pushDownPredicate,
@@ -94,7 +94,7 @@ public class AggregationTableScanNode extends 
DeviceTableScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
@@ -260,7 +260,7 @@ public class AggregationTableScanNode extends 
DeviceTableScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
@@ -294,7 +294,7 @@ public class AggregationTableScanNode extends 
DeviceTableScanNode {
           tableScanNode.getOutputSymbols(),
           tableScanNode.getAssignments(),
           tableScanNode.getDeviceEntries(),
-          tableScanNode.getIdAndAttributeIndexMap(),
+          tableScanNode.getTagAndAttributeIndexMap(),
           tableScanNode.getScanOrder(),
           tableScanNode.getTimePredicate().orElse(null),
           tableScanNode.getPushDownPredicate(),
@@ -318,7 +318,7 @@ public class AggregationTableScanNode extends 
DeviceTableScanNode {
         tableScanNode.getOutputSymbols(),
         tableScanNode.getAssignments(),
         tableScanNode.getDeviceEntries(),
-        tableScanNode.getIdAndAttributeIndexMap(),
+        tableScanNode.getTagAndAttributeIndexMap(),
         tableScanNode.getScanOrder(),
         tableScanNode.getTimePredicate().orElse(null),
         tableScanNode.getPushDownPredicate(),
@@ -348,7 +348,7 @@ public class AggregationTableScanNode extends 
DeviceTableScanNode {
           tableScanNode.getOutputSymbols(),
           tableScanNode.getAssignments(),
           tableScanNode.getDeviceEntries(),
-          tableScanNode.getIdAndAttributeIndexMap(),
+          tableScanNode.getTagAndAttributeIndexMap(),
           tableScanNode.getScanOrder(),
           tableScanNode.getTimePredicate().orElse(null),
           tableScanNode.getPushDownPredicate(),
@@ -372,7 +372,7 @@ public class AggregationTableScanNode extends 
DeviceTableScanNode {
         tableScanNode.getOutputSymbols(),
         tableScanNode.getAssignments(),
         tableScanNode.getDeviceEntries(),
-        tableScanNode.getIdAndAttributeIndexMap(),
+        tableScanNode.getTagAndAttributeIndexMap(),
         tableScanNode.getScanOrder(),
         tableScanNode.getTimePredicate().orElse(null),
         tableScanNode.getPushDownPredicate(),
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTreeDeviceViewScanNode.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTreeDeviceViewScanNode.java
index 3d2d793c328..b0fd554de31 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTreeDeviceViewScanNode.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTreeDeviceViewScanNode.java
@@ -51,7 +51,7 @@ public class AggregationTreeDeviceViewScanNode extends 
AggregationTableScanNode
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
       List<DeviceEntry> deviceEntries,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       Ordering scanOrder,
       Expression timePredicate,
       Expression pushDownPredicate,
@@ -73,7 +73,7 @@ public class AggregationTreeDeviceViewScanNode extends 
AggregationTableScanNode
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
@@ -140,7 +140,7 @@ public class AggregationTreeDeviceViewScanNode extends 
AggregationTableScanNode
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/DeviceTableScanNode.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/DeviceTableScanNode.java
index 81b8f04a1eb..b9173773935 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/DeviceTableScanNode.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/DeviceTableScanNode.java
@@ -50,9 +50,9 @@ public class DeviceTableScanNode extends TableScanNode {
 
   // Indicates the respective index order of ID and Attribute columns in 
DeviceEntry.
   // For example, for DeviceEntry 
`table1.tag1.tag2.attribute1.attribute2.s1.s2`, the content of
-  // `idAndAttributeIndexMap` will
+  // `tagAndAttributeIndexMap` will
   // be `tag1: 0, tag2: 1, attribute1: 0, attribute2: 1`.
-  protected Map<Symbol, Integer> idAndAttributeIndexMap;
+  protected Map<Symbol, Integer> tagAndAttributeIndexMap;
 
   // The order to traverse the data.
   // Currently, we only support TIMESTAMP_ASC and TIMESTAMP_DESC here.
@@ -84,9 +84,9 @@ public class DeviceTableScanNode extends TableScanNode {
       QualifiedObjectName qualifiedObjectName,
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
-      Map<Symbol, Integer> idAndAttributeIndexMap) {
+      Map<Symbol, Integer> tagAndAttributeIndexMap) {
     super(id, qualifiedObjectName, outputSymbols, assignments);
-    this.idAndAttributeIndexMap = idAndAttributeIndexMap;
+    this.tagAndAttributeIndexMap = tagAndAttributeIndexMap;
   }
 
   public DeviceTableScanNode(
@@ -95,7 +95,7 @@ public class DeviceTableScanNode extends TableScanNode {
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
       List<DeviceEntry> deviceEntries,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       Ordering scanOrder,
       Expression timePredicate,
       Expression pushDownPredicate,
@@ -112,7 +112,7 @@ public class DeviceTableScanNode extends TableScanNode {
         pushDownLimit,
         pushDownOffset);
     this.deviceEntries = deviceEntries;
-    this.idAndAttributeIndexMap = idAndAttributeIndexMap;
+    this.tagAndAttributeIndexMap = tagAndAttributeIndexMap;
     this.scanOrder = scanOrder;
     this.timePredicate = timePredicate;
     this.pushDownPredicate = pushDownPredicate;
@@ -133,7 +133,7 @@ public class DeviceTableScanNode extends TableScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
@@ -152,8 +152,8 @@ public class DeviceTableScanNode extends TableScanNode {
       entry.serialize(byteBuffer);
     }
 
-    ReadWriteIOUtils.write(node.idAndAttributeIndexMap.size(), byteBuffer);
-    for (Map.Entry<Symbol, Integer> entry : 
node.idAndAttributeIndexMap.entrySet()) {
+    ReadWriteIOUtils.write(node.tagAndAttributeIndexMap.size(), byteBuffer);
+    for (Map.Entry<Symbol, Integer> entry : 
node.tagAndAttributeIndexMap.entrySet()) {
       Symbol.serialize(entry.getKey(), byteBuffer);
       ReadWriteIOUtils.write(entry.getValue(), byteBuffer);
     }
@@ -180,8 +180,8 @@ public class DeviceTableScanNode extends TableScanNode {
       entry.serialize(stream);
     }
 
-    ReadWriteIOUtils.write(node.idAndAttributeIndexMap.size(), stream);
-    for (Map.Entry<Symbol, Integer> entry : 
node.idAndAttributeIndexMap.entrySet()) {
+    ReadWriteIOUtils.write(node.tagAndAttributeIndexMap.size(), stream);
+    for (Map.Entry<Symbol, Integer> entry : 
node.tagAndAttributeIndexMap.entrySet()) {
       Symbol.serialize(entry.getKey(), stream);
       ReadWriteIOUtils.write(entry.getValue(), stream);
     }
@@ -210,12 +210,12 @@ public class DeviceTableScanNode extends TableScanNode {
     node.deviceEntries = deviceEntries;
 
     size = ReadWriteIOUtils.readInt(byteBuffer);
-    Map<Symbol, Integer> idAndAttributeIndexMap = new HashMap<>(size);
+    Map<Symbol, Integer> tagAndAttributeIndexMap = new HashMap<>(size);
     while (size-- > 0) {
-      idAndAttributeIndexMap.put(
+      tagAndAttributeIndexMap.put(
           Symbol.deserialize(byteBuffer), 
ReadWriteIOUtils.readInt(byteBuffer));
     }
-    node.idAndAttributeIndexMap = idAndAttributeIndexMap;
+    node.tagAndAttributeIndexMap = tagAndAttributeIndexMap;
 
     node.scanOrder = Ordering.values()[ReadWriteIOUtils.readInt(byteBuffer)];
 
@@ -253,8 +253,8 @@ public class DeviceTableScanNode extends TableScanNode {
     this.deviceEntries = deviceEntries;
   }
 
-  public Map<Symbol, Integer> getIdAndAttributeIndexMap() {
-    return this.idAndAttributeIndexMap;
+  public Map<Symbol, Integer> getTagAndAttributeIndexMap() {
+    return this.tagAndAttributeIndexMap;
   }
 
   public void setScanOrder(Ordering scanOrder) {
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeAlignedDeviceViewScanNode.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeAlignedDeviceViewScanNode.java
index 79f2c3f81d2..8347a602c4d 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeAlignedDeviceViewScanNode.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeAlignedDeviceViewScanNode.java
@@ -43,7 +43,7 @@ public class TreeAlignedDeviceViewScanNode extends 
TreeDeviceViewScanNode {
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
       List<DeviceEntry> deviceEntries,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       Ordering scanOrder,
       Expression timePredicate,
       Expression pushDownPredicate,
@@ -59,7 +59,7 @@ public class TreeAlignedDeviceViewScanNode extends 
TreeDeviceViewScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
@@ -86,7 +86,7 @@ public class TreeAlignedDeviceViewScanNode extends 
TreeDeviceViewScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeDeviceViewScanNode.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeDeviceViewScanNode.java
index d24529b588d..bd933109807 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeDeviceViewScanNode.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeDeviceViewScanNode.java
@@ -47,10 +47,10 @@ public class TreeDeviceViewScanNode extends 
DeviceTableScanNode {
       QualifiedObjectName qualifiedObjectName,
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       String treeDBName,
       Map<String, String> measurementColumnNameMap) {
-    super(id, qualifiedObjectName, outputSymbols, assignments, 
idAndAttributeIndexMap);
+    super(id, qualifiedObjectName, outputSymbols, assignments, 
tagAndAttributeIndexMap);
     this.treeDBName = treeDBName;
     this.measurementColumnNameMap = measurementColumnNameMap;
   }
@@ -61,7 +61,7 @@ public class TreeDeviceViewScanNode extends 
DeviceTableScanNode {
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
       List<DeviceEntry> deviceEntries,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       Ordering scanOrder,
       Expression timePredicate,
       Expression pushDownPredicate,
@@ -77,7 +77,7 @@ public class TreeDeviceViewScanNode extends 
DeviceTableScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
@@ -116,7 +116,7 @@ public class TreeDeviceViewScanNode extends 
DeviceTableScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeNonAlignedDeviceViewScanNode.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeNonAlignedDeviceViewScanNode.java
index b485d8a8d5a..d1c1063592b 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeNonAlignedDeviceViewScanNode.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TreeNonAlignedDeviceViewScanNode.java
@@ -43,7 +43,7 @@ public class TreeNonAlignedDeviceViewScanNode extends 
TreeDeviceViewScanNode {
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
       List<DeviceEntry> deviceEntries,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       Ordering scanOrder,
       Expression timePredicate,
       Expression pushDownPredicate,
@@ -59,7 +59,7 @@ public class TreeNonAlignedDeviceViewScanNode extends 
TreeDeviceViewScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
@@ -86,7 +86,7 @@ public class TreeNonAlignedDeviceViewScanNode extends 
TreeDeviceViewScanNode {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         scanOrder,
         timePredicate,
         pushDownPredicate,
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PushPredicateIntoTableScan.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PushPredicateIntoTableScan.java
index 5cda1274ab8..dba42ec1d8c 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PushPredicateIntoTableScan.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PushPredicateIntoTableScan.java
@@ -566,7 +566,7 @@ public class PushPredicateIntoTableScan implements 
PlanOptimizer {
         final ColumnSchema columnSchema = entry.getValue();
         if (ATTRIBUTE.equals(columnSchema.getColumnCategory())) {
           attributeColumns.add(columnSchema.getName());
-          tableScanNode.getIdAndAttributeIndexMap().put(columnSymbol, 
attributeIndex++);
+          tableScanNode.getTagAndAttributeIndexMap().put(columnSymbol, 
attributeIndex++);
         }
       }
 
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/UnaliasSymbolReferences.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/UnaliasSymbolReferences.java
index 6a4ae87296b..e29d2ec0241 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/UnaliasSymbolReferences.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/UnaliasSymbolReferences.java
@@ -182,7 +182,7 @@ public class UnaliasSymbolReferences implements 
PlanOptimizer {
               newOutputs,
               newAssignments,
               node.getDeviceEntries(),
-              node.getIdAndAttributeIndexMap(),
+              node.getTagAndAttributeIndexMap(),
               node.getScanOrder(),
               node.getTimePredicate().orElse(null),
               node.getPushDownPredicate(),
@@ -217,7 +217,7 @@ public class UnaliasSymbolReferences implements 
PlanOptimizer {
               newOutputs,
               newAssignments,
               node.getDeviceEntries(),
-              node.getIdAndAttributeIndexMap(),
+              node.getTagAndAttributeIndexMap(),
               node.getScanOrder(),
               node.getTimePredicate().orElse(null),
               node.getPushDownPredicate(),
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/Util.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/Util.java
index 3423168f5c8..706b24a567b 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/Util.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/Util.java
@@ -175,7 +175,7 @@ public class Util {
                 node.getOutputSymbols(),
                 node.getAssignments(),
                 ImmutableList.of(),
-                node.getIdAndAttributeIndexMap(),
+                node.getTagAndAttributeIndexMap(),
                 node.getScanOrder(),
                 node.getTimePredicate().orElse(null),
                 node.getPushDownPredicate(),
@@ -195,7 +195,7 @@ public class Util {
                 node.getOutputSymbols(),
                 node.getAssignments(),
                 ImmutableList.of(),
-                node.getIdAndAttributeIndexMap(),
+                node.getTagAndAttributeIndexMap(),
                 node.getScanOrder(),
                 node.getTimePredicate().orElse(null),
                 node.getPushDownPredicate(),
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/NonAlignedTreeDeviceViewScanOperatorTreeTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/NonAlignedTreeDeviceViewScanOperatorTreeTest.java
index e5cfb1c2b2f..80e2d15a96d 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/NonAlignedTreeDeviceViewScanOperatorTreeTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/NonAlignedTreeDeviceViewScanOperatorTreeTest.java
@@ -652,8 +652,8 @@ public class NonAlignedTreeDeviceViewScanOperatorTreeTest {
       assignments.put(symbol, columnSchemaMap.get(symbol));
     }
 
-    Map<Symbol, Integer> idAndAttributeIndexMap = new HashMap<>();
-    idAndAttributeIndexMap.put(new Symbol("tag1"), 0);
+    Map<Symbol, Integer> tagAndAttributeIndexMap = new HashMap<>();
+    tagAndAttributeIndexMap.put(new Symbol("tag1"), 0);
 
     List<DeviceEntry> deviceEntries =
         Arrays.asList(
@@ -684,7 +684,7 @@ public class NonAlignedTreeDeviceViewScanOperatorTreeTest {
         outputSymbols,
         assignments,
         deviceEntries,
-        idAndAttributeIndexMap,
+        tagAndAttributeIndexMap,
         Ordering.ASC,
         timePredicate,
         pushDownPredicate,
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java
index fe404ab5a84..61698a84256 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java
@@ -204,7 +204,7 @@ public class AnalyzerTest {
     assertEquals(9, deviceTableScanNode.getOutputSymbols().size());
     assertEquals(9, deviceTableScanNode.getAssignments().size());
     assertEquals(6, deviceTableScanNode.getDeviceEntries().size());
-    assertEquals(5, deviceTableScanNode.getIdAndAttributeIndexMap().size());
+    assertEquals(5, deviceTableScanNode.getTagAndAttributeIndexMap().size());
     assertEquals(ASC, deviceTableScanNode.getScanOrder());
 
     distributionPlanner =
@@ -244,7 +244,7 @@ public class AnalyzerTest {
         this.deviceTableScanNode.getOutputColumnNames());
     assertEquals(9, this.deviceTableScanNode.getAssignments().size());
     assertEquals(6, this.deviceTableScanNode.getDeviceEntries().size());
-    assertEquals(5, 
this.deviceTableScanNode.getIdAndAttributeIndexMap().size());
+    assertEquals(5, 
this.deviceTableScanNode.getTagAndAttributeIndexMap().size());
     assertEquals(
         "(\"time\" > 1)",
         
this.deviceTableScanNode.getTimePredicate().map(Expression::toString).orElse(null));
@@ -293,8 +293,8 @@ public class AnalyzerTest {
     assertFalse(deviceTableScanNode.getTimePredicate().isPresent());
     assertTrue(
         Stream.of(Symbol.of("tag1"), Symbol.of("tag2"), Symbol.of("tag3"), 
Symbol.of("attr2"))
-            
.allMatch(deviceTableScanNode.getIdAndAttributeIndexMap()::containsKey));
-    assertEquals(0, (int) 
deviceTableScanNode.getIdAndAttributeIndexMap().get(Symbol.of("attr2")));
+            
.allMatch(deviceTableScanNode.getTagAndAttributeIndexMap()::containsKey));
+    assertEquals(0, (int) 
deviceTableScanNode.getTagAndAttributeIndexMap().get(Symbol.of("attr2")));
     assertEquals(Arrays.asList("tag1", "attr2", "s2"), 
deviceTableScanNode.getOutputColumnNames());
     assertEquals(
         ImmutableSet.of("tag1", "attr2", "s1", "s2"),
@@ -602,7 +602,7 @@ public class AnalyzerTest {
     assertTrue(rootNode.getChildren().get(0) instanceof DeviceTableScanNode);
     deviceTableScanNode = (DeviceTableScanNode) rootNode.getChildren().get(0);
     assertEquals(Arrays.asList("tag2", "attr2", "s2"), 
deviceTableScanNode.getOutputColumnNames());
-    assertEquals(4, deviceTableScanNode.getIdAndAttributeIndexMap().size());
+    assertEquals(4, deviceTableScanNode.getTagAndAttributeIndexMap().size());
   }
 
   @Test
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/SortTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/SortTest.java
index e7096d439f0..047063a1b65 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/SortTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/SortTest.java
@@ -106,7 +106,7 @@ public class SortTest {
     assertEquals("testdb.table1", 
deviceTableScanNode.getQualifiedObjectName().toString());
     assertEquals(8, deviceTableScanNode.getAssignments().size());
     assertEquals(6, deviceTableScanNode.getDeviceEntries().size());
-    assertEquals(4, deviceTableScanNode.getIdAndAttributeIndexMap().size());
+    assertEquals(4, deviceTableScanNode.getTagAndAttributeIndexMap().size());
     assertEquals(ASC, deviceTableScanNode.getScanOrder());
     assertEquals(0, deviceTableScanNode.getPushDownLimit());
     assertEquals(0, deviceTableScanNode.getPushDownOffset());
@@ -322,7 +322,7 @@ public class SortTest {
     assertEquals("testdb.table1", 
deviceTableScanNode.getQualifiedObjectName().toString());
     assertEquals(8, deviceTableScanNode.getAssignments().size());
     assertEquals(6, deviceTableScanNode.getDeviceEntries().size());
-    assertEquals(4, deviceTableScanNode.getIdAndAttributeIndexMap().size());
+    assertEquals(4, deviceTableScanNode.getTagAndAttributeIndexMap().size());
     assertEquals(ASC, deviceTableScanNode.getScanOrder());
     assertEquals(0, deviceTableScanNode.getPushDownLimit());
     assertEquals(0, deviceTableScanNode.getPushDownOffset());
@@ -387,7 +387,7 @@ public class SortTest {
     assertEquals("testdb.table1", 
deviceTableScanNode.getQualifiedObjectName().toString());
     assertEquals(8, deviceTableScanNode.getAssignments().size());
     assertEquals(6, deviceTableScanNode.getDeviceEntries().size());
-    assertEquals(4, deviceTableScanNode.getIdAndAttributeIndexMap().size());
+    assertEquals(4, deviceTableScanNode.getTagAndAttributeIndexMap().size());
 
     // DistributePlan: optimize
     // 
`Output-Offset-Limit-Project-MergeSort-StreamSort-Project-Filter-TableScan`
@@ -708,7 +708,7 @@ public class SortTest {
     assertEquals("testdb.table1", 
deviceTableScanNode.getQualifiedObjectName().toString());
     assertEquals(8, deviceTableScanNode.getAssignments().size());
     assertEquals(6, deviceTableScanNode.getDeviceEntries().size());
-    assertEquals(4, deviceTableScanNode.getIdAndAttributeIndexMap().size());
+    assertEquals(4, deviceTableScanNode.getTagAndAttributeIndexMap().size());
     assertEquals(expectedPushDownLimit, 
deviceTableScanNode.getPushDownLimit());
     assertEquals(expectedPushDownOffset, 
deviceTableScanNode.getPushDownOffset());
     assertEquals(isPushLimitToEachDevice, 
deviceTableScanNode.isPushLimitToEachDevice());
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestPlanBuilder.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestPlanBuilder.java
index ce5d7081780..4b0136d8923 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestPlanBuilder.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestPlanBuilder.java
@@ -79,7 +79,7 @@ public class TestPlanBuilder {
       List<Symbol> outputSymbols,
       Map<Symbol, ColumnSchema> assignments,
       List<DeviceEntry> deviceEntries,
-      Map<Symbol, Integer> idAndAttributeIndexMap,
+      Map<Symbol, Integer> tagAndAttributeIndexMap,
       Ordering scanOrder,
       Expression timePredicate,
       Expression pushDownPredicate,
@@ -94,7 +94,7 @@ public class TestPlanBuilder {
             outputSymbols,
             assignments,
             deviceEntries,
-            idAndAttributeIndexMap,
+            tagAndAttributeIndexMap,
             scanOrder,
             timePredicate,
             pushDownPredicate,
diff --git 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/config/constant/PipeConnectorConstant.java
 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/config/constant/PipeConnectorConstant.java
index f9433df11a4..5b8d5bc8959 100644
--- 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/config/constant/PipeConnectorConstant.java
+++ 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/config/constant/PipeConnectorConstant.java
@@ -63,8 +63,9 @@ public class PipeConnectorConstant {
   public static final String SINK_IOTDB_BATCH_MODE_ENABLE_KEY = 
"sink.batch.enable";
   public static final boolean CONNECTOR_IOTDB_BATCH_MODE_ENABLE_DEFAULT_VALUE 
= true;
 
-  public static final String CONNECTOR_IOTDB_BATCH_DELAY_KEY = 
"connector.batch.max-delay-seconds";
-  public static final String SINK_IOTDB_BATCH_DELAY_KEY = 
"sink.batch.max-delay-seconds";
+  public static final String CONNECTOR_IOTDB_BATCH_DELAY_SECONDS_KEY =
+      "connector.batch.max-delay-seconds";
+  public static final String SINK_IOTDB_BATCH_DELAY_SECONDS_KEY = 
"sink.batch.max-delay-seconds";
   public static final int CONNECTOR_IOTDB_PLAIN_BATCH_DELAY_DEFAULT_VALUE = 1;
   public static final int CONNECTOR_IOTDB_TS_FILE_BATCH_DELAY_DEFAULT_VALUE = 
5;
 
diff --git 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/connector/protocol/IoTDBConnector.java
 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/connector/protocol/IoTDBConnector.java
index 34e579aba5c..aef50daa701 100644
--- 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/connector/protocol/IoTDBConnector.java
+++ 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/connector/protocol/IoTDBConnector.java
@@ -79,8 +79,8 @@ import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstan
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_FORMAT_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_FORMAT_TABLET_VALUE;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_FORMAT_TS_FILE_VALUE;
-import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_MS_KEY;
+import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_DELAY_SECONDS_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_MODE_ENABLE_DEFAULT_VALUE;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_MODE_ENABLE_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.CONNECTOR_IOTDB_BATCH_SIZE_KEY;
@@ -118,8 +118,8 @@ import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstan
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_EXCEPTION_OTHERS_RECORD_IGNORED_DATA_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_EXCEPTION_OTHERS_RETRY_MAX_TIME_SECONDS_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_FORMAT_KEY;
-import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_MS_KEY;
+import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_DELAY_SECONDS_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_MODE_ENABLE_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_BATCH_SIZE_KEY;
 import static 
org.apache.iotdb.commons.pipe.config.constant.PipeConnectorConstant.SINK_IOTDB_HOST_KEY;
@@ -226,7 +226,7 @@ public abstract class IoTDBConnector implements 
PipeConnector {
     // Check coexistence of batch.max-delay-ms and batch.max-delay-seconds
     validator.validateSynonymAttributes(
         Arrays.asList(CONNECTOR_IOTDB_BATCH_DELAY_MS_KEY, 
SINK_IOTDB_BATCH_DELAY_MS_KEY),
-        Arrays.asList(CONNECTOR_IOTDB_BATCH_DELAY_KEY, 
SINK_IOTDB_BATCH_DELAY_KEY),
+        Arrays.asList(CONNECTOR_IOTDB_BATCH_DELAY_SECONDS_KEY, 
SINK_IOTDB_BATCH_DELAY_SECONDS_KEY),
         false);
 
     username =

Reply via email to