You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by sh...@apache.org on 2026/04/20 02:20:53 UTC
(iotdb) branch calc_commons updated (c48b443a53d -> 6bedeaf179b)
This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a change to branch calc_commons
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from c48b443a53d modify serializeUseTemplate
new 0839a5d2675 refactor Metadata
new 3a1aa55aaf3 move some configs
new 02bc3f28161 move TemporaryQueryDataFileService
new 6bedeaf179b fix
The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../constant/BuiltinAggregationFunctionEnum.java | 6 +-
.../iotdb/confignode/conf/ConfigNodeConfig.java | 2 +
.../src/main/codegen/templates/ModeAccumulator.ftl | 4 +-
.../execution/operator/OperatorContext.java | 4 +-
.../operator/process/AbstractSortOperator.java | 4 +-
.../process/function/PartitionRecognizer.java | 2 +-
.../process/function/TableFunctionOperator.java | 1 -
.../process/window/TableWindowOperator.java | 2 +-
.../aggregation/TableModeAccumulator.java | 4 +-
.../grouped/GroupedModeAccumulator.java | 4 +-
.../relational/ColumnTransformerBuilder.java | 12 +--
.../plan/planner/TableOperatorGenerator.java | 10 +-
.../plan/relational/metadata/ITypeMetadata.java} | 15 +--
.../plan/udf/BuiltinAggregationFunction.java | 2 +-
.../plan/udf/BuiltinScalarFunction.java | 2 +-
.../udf/BuiltinTimeSeriesGeneratingFunction.java | 2 +-
.../db/calc_commons/plan/udf/TableUDFUtils.java | 1 -
.../plan/udf/UDFManagementService.java | 2 +-
.../plan/udf/UDTFForecast.java | 2 +-
.../dag/adapter/PointCollectorAdaptor.java | 2 +-
.../column/multi/MappableUDFColumnTransformer.java | 2 +-
.../dag/udf/UDFParametersFactory.java | 2 +-
.../transformation/dag/udf/UDTFExecutor.java | 10 +-
.../transformation/dag/util/InputRowUtils.java | 10 +-
.../transformation/datastructure/Cache.java | 2 +-
.../datastructure/SerializableList.java | 10 +-
.../iterator/ListForwardIterator.java | 2 +-
.../iterator/RowListForwardIterator.java | 6 +-
.../iterator/TVListForwardIterator.java | 6 +-
.../row/ElasticSerializableRowList.java | 8 +-
.../datastructure/row/SerializableRowList.java | 8 +-
.../tv/ElasticSerializableBinaryTVList.java | 8 +-
.../tv/ElasticSerializableTVList.java | 6 +-
.../datastructure/tv/SerializableTVList.java | 8 +-
.../datastructure/util/BinaryUtils.java | 2 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 48 +---------
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 32 +++++--
.../relational/function/ITableFunctionFactory.java | 13 +--
...FunctionKind.java => TableFunctionFactory.java} | 32 +++----
.../relational/planner/node/AggregationNode.java | 34 -------
.../relational/planner/node/TableFunctionNode.java | 4 +-
.../planner/node/TableFunctionProcessorNode.java | 4 +-
.../AbstractTemporaryQueryDataFileService.java} | 66 ++++++-------
.../ITemporaryQueryDataFileServiceProvider.java} | 10 +-
.../processor/aggregate/AggregateProcessor.java | 2 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 2 +-
.../execution/aggregation/UDAFAccumulator.java | 4 +-
.../fragment/FragmentInstanceContext.java | 9 +-
.../execution/operator/AggregationUtil.java | 2 +-
.../operator/process/TransformOperator.java | 2 +-
.../execution/schedule/DriverTaskThread.java | 4 +-
.../plan/analyze/ExpressionAnalyzer.java | 4 +-
.../config/executor/ClusterConfigTaskExecutor.java | 2 +-
.../config/metadata/ShowFunctionsTask.java | 6 +-
.../db/queryengine/plan/expression/Expression.java | 2 +-
.../plan/expression/ExpressionFactory.java | 2 +-
.../plan/expression/binary/BinaryExpression.java | 2 +-
.../plan/expression/leaf/LeafOperand.java | 2 +-
.../plan/expression/multi/FunctionExpression.java | 6 +-
.../expression/other/CaseWhenThenExpression.java | 2 +-
.../expression/other/GroupByTimeExpression.java | 2 +-
.../plan/expression/ternary/TernaryExpression.java | 2 +-
.../plan/expression/unary/UnaryExpression.java | 2 +-
.../visitor/ColumnTransformerVisitor.java | 2 +-
.../visitor/IntermediateLayerVisitor.java | 2 +-
.../plan/optimization/AggregationPushDown.java | 2 +-
.../planner/DataNodeTableOperatorGenerator.java | 2 +-
.../plan/relational/metadata/Metadata.java | 10 +-
.../relational/metadata/TableMetadataImpl.java | 18 ----
.../db/queryengine/plan/udf/TreeUDFUtils.java | 1 +
...izableRowRecordListBackedMultiColumnWindow.java | 2 +-
...wRecordListBackedMultiColumnWindowIterator.java | 2 +-
...ticSerializableTVListBackedSingleColumnRow.java | 2 +-
...SerializableTVListBackedSingleColumnWindow.java | 2 +-
...ableTVListBackedSingleColumnWindowIterator.java | 2 +-
.../dag/input/QueryDataSetInputLayer.java | 4 +-
.../dag/intermediate/MultiInputLayer.java | 4 +-
.../SingleInputMultiReferenceLayer.java | 4 +-
.../SingleInputSingleReferenceLayer.java | 4 +-
.../transformation/dag/memory/SafetyLine.java | 2 +-
.../multi/MappableUDFQueryRowTransformer.java | 2 +-
.../transformer/multi/UDFQueryRowTransformer.java | 2 +-
.../multi/UDFQueryRowWindowTransformer.java | 2 +-
.../dag/transformer/multi/UDFQueryTransformer.java | 2 +-
.../multi/UniversalUDFQueryTransformer.java | 6 +-
.../dag/udf/UDAFInformationInferrer.java | 3 +-
.../transformation/dag/udf/UDTFContext.java | 5 +-
.../dag/udf/UDTFInformationInferrer.java | 3 +-
.../transformation/dag/util/LayerCacheUtils.java | 4 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 5 +-
...NodeTemporaryQueryDataFileServiceProvider.java} | 29 +++---
.../db/service/TemporaryQueryDataFileService.java | 105 +--------------------
....service.ITemporaryQueryDataFileServiceProvider | 1 +
.../db/queryengine/execution/DataDriverTest.java | 6 +-
.../execution/operator/OperatorMemoryTest.java | 6 +-
.../operator/SortOperatorSortBranchTest.java | 7 +-
.../execution/operator/TreeSortOperatorTest.java | 7 +-
.../process/TableStreamSortOperatorTest.java | 14 +--
.../process/tvf/TableFunctionOperatorTest.java | 2 +-
.../plan/relational/analyzer/TSBSMetadata.java | 7 +-
.../plan/relational/analyzer/TestMetadata.java | 7 +-
.../ElasticSerializableRowListTest.java | 5 +-
.../ElasticSerializableTVListTest.java | 5 +-
.../transformation/datastructure/LRUCache.java | 2 +
.../datastructure/SerializableRowListTest.java | 2 +-
.../datastructure/SerializableTVListTest.java | 2 +-
.../apache/iotdb/db/utils/EnvironmentUtils.java | 2 +-
.../apache/iotdb/db/utils/sort/SortUtilTest.java | 4 +-
.../apache/iotdb/commons/conf/CommonConfig.java | 57 +++++++++++
109 files changed, 349 insertions(+), 495 deletions(-)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/execution/operator/process/function/PartitionRecognizer.java (98%)
copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine/plan/relational/type/TypeCoercion.java => calc_commons/plan/relational/metadata/ITypeMetadata.java} (71%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/plan/udf/BuiltinAggregationFunction.java (98%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/plan/udf/BuiltinScalarFunction.java (97%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/plan/udf/BuiltinTimeSeriesGeneratingFunction.java (99%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/plan/udf/UDFManagementService.java (99%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/plan/udf/UDTFForecast.java (99%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/dag/adapter/PointCollectorAdaptor.java (97%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/dag/udf/UDFParametersFactory.java (96%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/dag/udf/UDTFExecutor.java (96%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/dag/util/InputRowUtils.java (82%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/Cache.java (96%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/SerializableList.java (91%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/iterator/ListForwardIterator.java (92%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/iterator/RowListForwardIterator.java (92%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/iterator/TVListForwardIterator.java (93%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/row/ElasticSerializableRowList.java (97%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/row/SerializableRowList.java (96%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java (95%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/tv/ElasticSerializableTVList.java (97%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/tv/SerializableTVList.java (96%)
rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{queryengine => calc_commons}/transformation/datastructure/util/BinaryUtils.java (96%)
copy iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/exception/PipeSinkException.java => iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/ITableFunctionFactory.java (73%)
copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/{FunctionKind.java => TableFunctionFactory.java} (56%)
copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{service/TemporaryQueryDataFileService.java => node_commons/service/AbstractTemporaryQueryDataFileService.java} (67%)
copy iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/pipe/plugin/DropPipePluginState.java => datanode/src/main/java/org/apache/iotdb/db/node_commons/service/ITemporaryQueryDataFileServiceProvider.java} (83%)
copy iotdb-core/datanode/src/{test/java/org/apache/iotdb/db/service/DaemonTest.java => main/java/org/apache/iotdb/db/service/DataNodeTemporaryQueryDataFileServiceProvider.java} (56%)
create mode 100644 iotdb-core/datanode/src/main/resources/META-INF/services/org.apache.iotdb.db.node_commons.service.ITemporaryQueryDataFileServiceProvider
(iotdb) 01/04: refactor Metadata
Posted by sh...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a commit to branch calc_commons
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 0839a5d26758212fe148103f68f072385241a1f6
Author: shuwenwei <s1...@gmail.com>
AuthorDate: Fri Apr 17 17:03:58 2026 +0800
refactor Metadata
---
.../relational/ColumnTransformerBuilder.java | 6 ++--
.../plan/planner/TableOperatorGenerator.java | 10 +++---
.../plan/relational/metadata/ITypeMetadata.java | 29 ++++++++++++++++
.../relational/function/ITableFunctionFactory.java | 28 ++++++++++++++++
.../relational/function/TableFunctionFactory.java | 39 ++++++++++++++++++++++
.../relational/planner/node/AggregationNode.java | 34 -------------------
.../relational/planner/node/TableFunctionNode.java | 4 +--
.../planner/node/TableFunctionProcessorNode.java | 4 +--
.../planner/DataNodeTableOperatorGenerator.java | 2 +-
.../plan/relational/metadata/Metadata.java | 10 ++----
.../relational/metadata/TableMetadataImpl.java | 18 ----------
.../plan/relational/analyzer/TSBSMetadata.java | 5 ---
.../plan/relational/analyzer/TestMetadata.java | 5 ---
13 files changed, 113 insertions(+), 81 deletions(-)
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java
index 8aeb4d80a4e..0f287136560 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java
@@ -21,6 +21,7 @@ package org.apache.iotdb.db.calc_commons.execution.relational;
import org.apache.iotdb.commons.udf.builtin.relational.TableBuiltinScalarFunction;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
+import org.apache.iotdb.db.calc_commons.plan.relational.metadata.ITypeMetadata;
import org.apache.iotdb.db.calc_commons.plan.udf.TableUDFUtils;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.ColumnTransformer;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.FailFunctionColumnTransformer;
@@ -195,7 +196,6 @@ import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.Trim;
import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.WhenClause;
import org.apache.iotdb.db.node_commons.plan.relational.type.InternalTypeManager;
import org.apache.iotdb.db.node_commons.plan.relational.type.TypeNotFoundException;
-import org.apache.iotdb.db.queryengine.plan.relational.metadata.Metadata;
import org.apache.iotdb.udf.api.customizer.analysis.ScalarFunctionAnalysis;
import org.apache.iotdb.udf.api.customizer.parameter.FunctionArguments;
import org.apache.iotdb.udf.api.relational.ScalarFunction;
@@ -1942,7 +1942,7 @@ public class ColumnTransformerBuilder
private final ITableTypeProvider typeProvider;
- private final Metadata metadata;
+ private final ITypeMetadata metadata;
public Context(
SessionInfo sessionInfo,
@@ -1954,7 +1954,7 @@ public class ColumnTransformerBuilder
List<TSDataType> inputDataTypes,
int originSize,
ITableTypeProvider typeProvider,
- Metadata metadata) {
+ ITypeMetadata metadata) {
this.sessionInfo = sessionInfo;
this.leafList = leafList;
this.inputLocations = inputLocations;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/planner/TableOperatorGenerator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/planner/TableOperatorGenerator.java
index eb631cb297a..0d23e34705d 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/planner/TableOperatorGenerator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/planner/TableOperatorGenerator.java
@@ -92,6 +92,7 @@ import org.apache.iotdb.db.calc_commons.execution.operator.source.relational.agg
import org.apache.iotdb.db.calc_commons.execution.operator.source.relational.aggregation.grouped.StreamingAggregationOperator;
import org.apache.iotdb.db.calc_commons.execution.operator.source.relational.aggregation.grouped.StreamingHashAggregationOperator;
import org.apache.iotdb.db.calc_commons.execution.relational.ColumnTransformerBuilder;
+import org.apache.iotdb.db.calc_commons.plan.relational.metadata.ITypeMetadata;
import org.apache.iotdb.db.calc_commons.plan.relational.planner.CastToBlobLiteralVisitor;
import org.apache.iotdb.db.calc_commons.plan.relational.planner.CastToBooleanLiteralVisitor;
import org.apache.iotdb.db.calc_commons.plan.relational.planner.CastToDateLiteralVisitor;
@@ -113,6 +114,7 @@ import org.apache.iotdb.db.node_commons.plan.planner.plan.node.process.SingleChi
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.node_commons.plan.relational.function.BoundSignature;
import org.apache.iotdb.db.node_commons.plan.relational.function.FunctionKind;
+import org.apache.iotdb.db.node_commons.plan.relational.function.ITableFunctionFactory;
import org.apache.iotdb.db.node_commons.plan.relational.metadata.ResolvedFunction;
import org.apache.iotdb.db.node_commons.plan.relational.planner.OrderingScheme;
import org.apache.iotdb.db.node_commons.plan.relational.planner.SortOrder;
@@ -161,7 +163,6 @@ import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.Expression;
import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.Literal;
import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.SymbolReference;
import org.apache.iotdb.db.node_commons.plan.relational.type.InternalTypeManager;
-import org.apache.iotdb.db.queryengine.plan.relational.metadata.Metadata;
import org.apache.iotdb.db.utils.datastructure.SortKey;
import org.apache.iotdb.udf.api.relational.TableFunction;
import org.apache.iotdb.udf.api.relational.table.TableFunctionProcessorProvider;
@@ -233,12 +234,13 @@ import static org.apache.tsfile.read.common.type.StringType.STRING;
import static org.apache.tsfile.read.common.type.TimestampType.TIMESTAMP;
/** This Visitor is responsible for transferring Table PlanNode Tree to Table Operator Tree. */
-public abstract class TableOperatorGenerator<C extends ITableOperatorGeneratorContext>
+public abstract class TableOperatorGenerator<
+ C extends ITableOperatorGeneratorContext, M extends ITypeMetadata & ITableFunctionFactory>
implements ICoreQueryPlanVisitor<Operator, C> {
- protected final Metadata metadata;
+ protected final M metadata;
- public TableOperatorGenerator(Metadata metadata) {
+ public TableOperatorGenerator(M metadata) {
this.metadata = metadata;
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/relational/metadata/ITypeMetadata.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/relational/metadata/ITypeMetadata.java
new file mode 100644
index 00000000000..251a343c8ed
--- /dev/null
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/relational/metadata/ITypeMetadata.java
@@ -0,0 +1,29 @@
+/*
+ * 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.calc_commons.plan.relational.metadata;
+
+import org.apache.iotdb.db.node_commons.plan.relational.type.TypeNotFoundException;
+import org.apache.iotdb.db.node_commons.plan.relational.type.TypeSignature;
+
+import org.apache.tsfile.read.common.type.Type;
+
+public interface ITypeMetadata {
+ Type getType(TypeSignature signature) throws TypeNotFoundException;
+}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/ITableFunctionFactory.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/ITableFunctionFactory.java
new file mode 100644
index 00000000000..9553ddc9fbb
--- /dev/null
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/ITableFunctionFactory.java
@@ -0,0 +1,28 @@
+/*
+ * 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.node_commons.plan.relational.function;
+
+import org.apache.iotdb.udf.api.relational.TableFunction;
+
+public interface ITableFunctionFactory {
+ default TableFunction getTableFunction(String functionName) {
+ return TableFunctionFactory.getTableFunction(functionName);
+ }
+}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/TableFunctionFactory.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/TableFunctionFactory.java
new file mode 100644
index 00000000000..75d34ec46e2
--- /dev/null
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/function/TableFunctionFactory.java
@@ -0,0 +1,39 @@
+/*
+ * 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.node_commons.plan.relational.function;
+
+import org.apache.iotdb.db.calc_commons.plan.udf.TableUDFUtils;
+import org.apache.iotdb.db.exception.sql.SemanticException;
+import org.apache.iotdb.udf.api.relational.TableFunction;
+
+public class TableFunctionFactory {
+
+ private TableFunctionFactory() {}
+
+ public static TableFunction getTableFunction(String functionName) {
+ if (TableBuiltinTableFunction.isBuiltInTableFunction(functionName)) {
+ return TableBuiltinTableFunction.getBuiltinTableFunction(functionName);
+ } else if (TableUDFUtils.isTableFunction(functionName)) {
+ return TableUDFUtils.getTableFunction(functionName);
+ } else {
+ throw new SemanticException("Unknown function: " + functionName);
+ }
+ }
+}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/AggregationNode.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/AggregationNode.java
index 05900d8425c..9c1a57dac5e 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/AggregationNode.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/AggregationNode.java
@@ -19,7 +19,6 @@
package org.apache.iotdb.db.node_commons.plan.relational.planner.node;
-import org.apache.iotdb.db.node_commons.common.SessionInfo;
import org.apache.iotdb.db.node_commons.plan.expression.multi.FunctionType;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.ICoreQueryPlanVisitor;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.IPlanVisitor;
@@ -32,7 +31,6 @@ import org.apache.iotdb.db.node_commons.plan.relational.planner.OrderingScheme;
import org.apache.iotdb.db.node_commons.plan.relational.planner.Symbol;
import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.Expression;
import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.SymbolReference;
-import org.apache.iotdb.db.queryengine.plan.relational.metadata.Metadata;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
@@ -342,38 +340,6 @@ public class AggregationNode extends SingleChildProcessNode {
&& outputs.containsAll(new HashSet<>(groupingSets.getGroupingKeys()));
}
- public boolean isDecomposable(SessionInfo session, Metadata metadata) {
- boolean hasOrderBy =
- getAggregations().values().stream()
- .map(Aggregation::getOrderingScheme)
- .anyMatch(Optional::isPresent);
-
- boolean hasDistinct = getAggregations().values().stream().anyMatch(Aggregation::isDistinct);
-
- /*boolean decomposableFunctions = getAggregations().values().stream()
- .map(Aggregation::getResolvedFunction)
- .map(resolvedFunction -> metadata.getAggregationFunctionMetadata(session, resolvedFunction))
- .allMatch(AggregationFunctionMetadata::isDecomposable);*/
-
- return !hasOrderBy && !hasDistinct;
- }
-
- public boolean hasSingleNodeExecutionPreference(SessionInfo session, Metadata metadata) {
- // There are two kinds of aggregations the have single node execution preference:
- //
- // 1. aggregations with only empty grouping sets like
- //
- // SELECT count(*) FROM lineitem;
- //
- // there is no need for distributed aggregation. Single node FINAL aggregation will suffice,
- // since all input have to be aggregated into one line output.
- //
- // 2. aggregations that must produce default output and are not decomposable, we cannot
- // distribute them.
- return (hasEmptyGroupingSet() && !hasNonEmptyGroupingSet())
- || (hasDefaultOutput() && !isDecomposable(session, metadata));
- }
-
public boolean isStreamable() {
return !preGroupedSymbols.isEmpty()
&& groupingSets.getGroupingSetCount() == 1
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionNode.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionNode.java
index f8f79f56c84..3b673ea8738 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionNode.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionNode.java
@@ -25,9 +25,9 @@ import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeType;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.process.MultiChildProcessNode;
+import org.apache.iotdb.db.node_commons.plan.relational.function.TableFunctionFactory;
import org.apache.iotdb.db.node_commons.plan.relational.planner.DataOrganizationSpecification;
import org.apache.iotdb.db.node_commons.plan.relational.planner.Symbol;
-import org.apache.iotdb.db.queryengine.plan.relational.metadata.TableMetadataImpl;
import org.apache.iotdb.udf.api.relational.table.TableFunctionHandle;
import com.google.common.collect.ImmutableList;
@@ -198,7 +198,7 @@ public class TableFunctionNode extends MultiChildProcessNode {
int size = ReadWriteIOUtils.readInt(byteBuffer);
byte[] bytes = ReadWriteIOUtils.readBytes(byteBuffer, size);
TableFunctionHandle tableFunctionHandle =
- new TableMetadataImpl().getTableFunction(name).createTableFunctionHandle();
+ TableFunctionFactory.getTableFunction(name).createTableFunctionHandle();
tableFunctionHandle.deserialize(bytes);
size = ReadWriteIOUtils.readInt(byteBuffer);
ImmutableList.Builder<Symbol> properOutputs = ImmutableList.builder();
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionProcessorNode.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionProcessorNode.java
index 2f6c2009d51..677e2da553a 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionProcessorNode.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/plan/relational/planner/node/TableFunctionProcessorNode.java
@@ -25,9 +25,9 @@ import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeType;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.process.SingleChildProcessNode;
+import org.apache.iotdb.db.node_commons.plan.relational.function.TableFunctionFactory;
import org.apache.iotdb.db.node_commons.plan.relational.planner.DataOrganizationSpecification;
import org.apache.iotdb.db.node_commons.plan.relational.planner.Symbol;
-import org.apache.iotdb.db.queryengine.plan.relational.metadata.TableMetadataImpl;
import org.apache.iotdb.udf.api.relational.table.TableFunctionHandle;
import com.google.common.collect.ImmutableList;
@@ -260,7 +260,7 @@ public class TableFunctionProcessorNode extends SingleChildProcessNode {
size = ReadWriteIOUtils.readInt(byteBuffer);
byte[] bytes = ReadWriteIOUtils.readBytes(byteBuffer, size);
TableFunctionHandle tableFunctionHandle =
- new TableMetadataImpl().getTableFunction(name).createTableFunctionHandle();
+ TableFunctionFactory.getTableFunction(name).createTableFunctionHandle();
tableFunctionHandle.deserialize(bytes);
boolean requireRecordSnapshot = ReadWriteIOUtils.readBoolean(byteBuffer);
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/DataNodeTableOperatorGenerator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/DataNodeTableOperatorGenerator.java
index 48ba79cb922..6aa266ff743 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/DataNodeTableOperatorGenerator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/DataNodeTableOperatorGenerator.java
@@ -197,7 +197,7 @@ import static org.apache.iotdb.db.utils.constant.SqlConstant.SUM;
import static org.apache.tsfile.read.common.type.TimestampType.TIMESTAMP;
public class DataNodeTableOperatorGenerator
- extends TableOperatorGenerator<LocalExecutionPlanContext>
+ extends TableOperatorGenerator<LocalExecutionPlanContext, Metadata>
implements PlanVisitor<Operator, LocalExecutionPlanContext> {
private static final MPPDataExchangeManager MPP_DATA_EXCHANGE_MANAGER =
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/Metadata.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/Metadata.java
index 873c31b5393..0a5cabbd0d3 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/Metadata.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/Metadata.java
@@ -24,18 +24,18 @@ import org.apache.iotdb.commons.partition.DataPartitionQueryParam;
import org.apache.iotdb.commons.partition.SchemaPartition;
import org.apache.iotdb.commons.schema.table.InsertNodeMeasurementInfo;
import org.apache.iotdb.commons.udf.builtin.relational.TableBuiltinWindowFunction;
+import org.apache.iotdb.db.calc_commons.plan.relational.metadata.ITypeMetadata;
import org.apache.iotdb.db.exception.load.LoadAnalyzeTableColumnDisorderException;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.node_commons.common.SessionInfo;
+import org.apache.iotdb.db.node_commons.plan.relational.function.ITableFunctionFactory;
import org.apache.iotdb.db.node_commons.plan.relational.function.OperatorType;
import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.Expression;
import org.apache.iotdb.db.node_commons.plan.relational.type.TypeNotFoundException;
import org.apache.iotdb.db.node_commons.plan.relational.type.TypeSignature;
import org.apache.iotdb.db.queryengine.common.MPPQueryContext;
-import org.apache.iotdb.db.queryengine.plan.analyze.IPartitionFetcher;
import org.apache.iotdb.db.queryengine.plan.relational.metadata.fetcher.TableHeaderSchemaValidator;
import org.apache.iotdb.db.queryengine.plan.relational.security.AccessControl;
-import org.apache.iotdb.udf.api.relational.TableFunction;
import org.apache.tsfile.file.metadata.IDeviceID;
import org.apache.tsfile.read.common.type.Type;
@@ -46,7 +46,7 @@ import java.util.Optional;
import java.util.concurrent.atomic.AtomicBoolean;
// All the input databases shall not contain "root"
-public interface Metadata {
+public interface Metadata extends ITypeMetadata, ITableFunctionFactory {
boolean tableExists(final QualifiedObjectName name);
@@ -76,8 +76,6 @@ public interface Metadata {
boolean canCoerce(final Type from, final Type to);
- IPartitionFetcher getPartitionFetcher();
-
/**
* Get all device ids and corresponding attributes from schema region
*
@@ -212,6 +210,4 @@ public interface Metadata {
*/
DataPartition getDataPartitionWithUnclosedTimeRange(
final String database, final List<DataPartitionQueryParam> sgNameToQueryParamsMap);
-
- TableFunction getTableFunction(final String functionName);
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableMetadataImpl.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableMetadataImpl.java
index c6351934348..bef1ea1b484 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableMetadataImpl.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableMetadataImpl.java
@@ -34,7 +34,6 @@ import org.apache.iotdb.db.exception.load.LoadAnalyzeTableColumnDisorderExceptio
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.node_commons.common.SessionInfo;
import org.apache.iotdb.db.node_commons.plan.relational.function.OperatorType;
-import org.apache.iotdb.db.node_commons.plan.relational.function.TableBuiltinTableFunction;
import org.apache.iotdb.db.node_commons.plan.relational.function.arithmetic.AdditionResolver;
import org.apache.iotdb.db.node_commons.plan.relational.function.arithmetic.DivisionResolver;
import org.apache.iotdb.db.node_commons.plan.relational.function.arithmetic.ModulusResolver;
@@ -59,7 +58,6 @@ import org.apache.iotdb.udf.api.customizer.analysis.ScalarFunctionAnalysis;
import org.apache.iotdb.udf.api.customizer.parameter.FunctionArguments;
import org.apache.iotdb.udf.api.relational.AggregateFunction;
import org.apache.iotdb.udf.api.relational.ScalarFunction;
-import org.apache.iotdb.udf.api.relational.TableFunction;
import org.apache.tsfile.file.metadata.IDeviceID;
import org.apache.tsfile.read.common.type.ObjectType;
@@ -1417,11 +1415,6 @@ public class TableMetadataImpl implements Metadata {
return true;
}
- @Override
- public IPartitionFetcher getPartitionFetcher() {
- return ClusterPartitionFetcher.getInstance();
- }
-
@Override
public Map<String, List<DeviceEntry>> indexScan(
final QualifiedObjectName tableName,
@@ -1516,15 +1509,4 @@ public class TableMetadataImpl implements Metadata {
return partitionFetcher.getDataPartitionWithUnclosedTimeRange(
Collections.singletonMap(database, sgNameToQueryParamsMap));
}
-
- @Override
- public TableFunction getTableFunction(String functionName) {
- if (TableBuiltinTableFunction.isBuiltInTableFunction(functionName)) {
- return TableBuiltinTableFunction.getBuiltinTableFunction(functionName);
- } else if (TableUDFUtils.isTableFunction(functionName)) {
- return TableUDFUtils.getTableFunction(functionName);
- } else {
- throw new SemanticException("Unknown function: " + functionName);
- }
- }
}
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java
index 2d4f50c3ee2..2eedf5c62e4 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java
@@ -278,11 +278,6 @@ public class TSBSMetadata implements Metadata {
return true;
}
- @Override
- public IPartitionFetcher getPartitionFetcher() {
- return getFakePartitionFetcher();
- }
-
@Override
public Map<String, List<DeviceEntry>> indexScan(
QualifiedObjectName tableName,
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java
index f152a9edff2..83ce87c2fe1 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java
@@ -318,11 +318,6 @@ public class TestMetadata implements Metadata {
return true;
}
- @Override
- public IPartitionFetcher getPartitionFetcher() {
- return getFakePartitionFetcher();
- }
-
@Override
public Map<String, List<DeviceEntry>> indexScan(
final QualifiedObjectName tableName,
(iotdb) 02/04: move some configs
Posted by sh...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a commit to branch calc_commons
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 3a1aa55aaf3681e02f6518eecb3eb324c153dcb0
Author: shuwenwei <s1...@gmail.com>
AuthorDate: Fri Apr 17 18:53:57 2026 +0800
move some configs
---
.../execution/operator/OperatorContext.java | 4 +--
.../operator/process/AbstractSortOperator.java | 4 +--
.../process/function/PartitionRecognizer.java | 2 +-
.../process/function/TableFunctionOperator.java | 1 -
.../process/window/TableWindowOperator.java | 2 +-
.../plan/udf/BuiltinAggregationFunction.java | 2 +-
.../plan/udf/BuiltinScalarFunction.java | 2 +-
.../udf/BuiltinTimeSeriesGeneratingFunction.java | 2 +-
.../db/calc_commons/plan/udf/TableUDFUtils.java | 1 -
.../plan/udf/UDFManagementService.java | 2 +-
.../plan/udf/UDTFForecast.java | 2 +-
.../dag/adapter/PointCollectorAdaptor.java | 2 +-
.../column/multi/MappableUDFColumnTransformer.java | 2 +-
.../dag/udf/UDFParametersFactory.java | 2 +-
.../transformation/dag/udf/UDTFExecutor.java | 10 +++---
.../transformation/dag/util/InputRowUtils.java | 10 +++---
.../transformation/datastructure/Cache.java | 2 +-
.../datastructure/SerializableList.java | 6 ++--
.../iterator/ListForwardIterator.java | 2 +-
.../iterator/RowListForwardIterator.java | 6 ++--
.../iterator/TVListForwardIterator.java | 6 ++--
.../row/ElasticSerializableRowList.java | 8 ++---
.../datastructure/row/SerializableRowList.java | 8 ++---
.../tv/ElasticSerializableBinaryTVList.java | 8 ++---
.../tv/ElasticSerializableTVList.java | 6 ++--
.../datastructure/tv/SerializableTVList.java | 8 ++---
.../datastructure/util/BinaryUtils.java | 2 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 37 ----------------------
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 23 ++++++++++----
.../processor/aggregate/AggregateProcessor.java | 2 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 2 +-
.../execution/aggregation/UDAFAccumulator.java | 4 +--
.../fragment/FragmentInstanceContext.java | 9 ++++--
.../execution/operator/AggregationUtil.java | 2 +-
.../operator/process/TransformOperator.java | 2 +-
.../execution/schedule/DriverTaskThread.java | 4 +--
.../plan/analyze/ExpressionAnalyzer.java | 4 +--
.../config/executor/ClusterConfigTaskExecutor.java | 2 +-
.../config/metadata/ShowFunctionsTask.java | 6 ++--
.../db/queryengine/plan/expression/Expression.java | 2 +-
.../plan/expression/ExpressionFactory.java | 2 +-
.../plan/expression/binary/BinaryExpression.java | 2 +-
.../plan/expression/leaf/LeafOperand.java | 2 +-
.../plan/expression/multi/FunctionExpression.java | 6 ++--
.../expression/other/CaseWhenThenExpression.java | 2 +-
.../expression/other/GroupByTimeExpression.java | 2 +-
.../plan/expression/ternary/TernaryExpression.java | 2 +-
.../plan/expression/unary/UnaryExpression.java | 2 +-
.../visitor/ColumnTransformerVisitor.java | 2 +-
.../visitor/IntermediateLayerVisitor.java | 2 +-
.../plan/optimization/AggregationPushDown.java | 2 +-
.../db/queryengine/plan/udf/TreeUDFUtils.java | 1 +
...izableRowRecordListBackedMultiColumnWindow.java | 2 +-
...wRecordListBackedMultiColumnWindowIterator.java | 2 +-
...ticSerializableTVListBackedSingleColumnRow.java | 2 +-
...SerializableTVListBackedSingleColumnWindow.java | 2 +-
...ableTVListBackedSingleColumnWindowIterator.java | 2 +-
.../dag/input/QueryDataSetInputLayer.java | 4 +--
.../dag/intermediate/MultiInputLayer.java | 4 +--
.../SingleInputMultiReferenceLayer.java | 4 +--
.../SingleInputSingleReferenceLayer.java | 4 +--
.../transformation/dag/memory/SafetyLine.java | 2 +-
.../multi/MappableUDFQueryRowTransformer.java | 2 +-
.../transformer/multi/UDFQueryRowTransformer.java | 2 +-
.../multi/UDFQueryRowWindowTransformer.java | 2 +-
.../dag/transformer/multi/UDFQueryTransformer.java | 2 +-
.../multi/UniversalUDFQueryTransformer.java | 6 ++--
.../dag/udf/UDAFInformationInferrer.java | 3 +-
.../transformation/dag/udf/UDTFContext.java | 1 +
.../dag/udf/UDTFInformationInferrer.java | 3 +-
.../transformation/dag/util/LayerCacheUtils.java | 4 +--
.../java/org/apache/iotdb/db/service/DataNode.java | 2 +-
.../db/service/TemporaryQueryDataFileService.java | 2 +-
.../db/queryengine/execution/DataDriverTest.java | 6 ++--
.../execution/operator/OperatorMemoryTest.java | 6 ++--
.../operator/SortOperatorSortBranchTest.java | 7 ++--
.../execution/operator/TreeSortOperatorTest.java | 7 ++--
.../process/TableStreamSortOperatorTest.java | 14 ++++----
.../process/tvf/TableFunctionOperatorTest.java | 2 +-
.../plan/relational/analyzer/TSBSMetadata.java | 2 +-
.../plan/relational/analyzer/TestMetadata.java | 2 +-
.../ElasticSerializableRowListTest.java | 5 +--
.../ElasticSerializableTVListTest.java | 5 +--
.../transformation/datastructure/LRUCache.java | 2 ++
.../datastructure/SerializableRowListTest.java | 2 +-
.../datastructure/SerializableTVListTest.java | 2 +-
.../apache/iotdb/db/utils/EnvironmentUtils.java | 2 +-
.../apache/iotdb/db/utils/sort/SortUtilTest.java | 4 +--
.../apache/iotdb/commons/conf/CommonConfig.java | 37 ++++++++++++++++++++++
89 files changed, 211 insertions(+), 189 deletions(-)
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/OperatorContext.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/OperatorContext.java
index c754c053414..a635a58aed8 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/OperatorContext.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/OperatorContext.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.calc_commons.execution.operator;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.utils.TestOnly;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.node_commons.common.SessionInfo;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeId;
@@ -46,7 +46,7 @@ public class OperatorContext implements Accountable {
private static Duration maxRunTime =
new Duration(
- IoTDBDescriptor.getInstance().getConfig().getDriverTaskExecutionTimeSliceInMs(),
+ CommonDescriptor.getInstance().getConfig().getDriverTaskExecutionTimeSliceInMs(),
TimeUnit.MILLISECONDS);
private static final long INSTANCE_SIZE =
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/AbstractSortOperator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/AbstractSortOperator.java
index 416899ab748..0c51fa0704c 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/AbstractSortOperator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/AbstractSortOperator.java
@@ -19,10 +19,10 @@
package org.apache.iotdb.db.calc_commons.execution.operator.process;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.IoTDBException;
import org.apache.iotdb.db.calc_commons.execution.operator.Operator;
import org.apache.iotdb.db.calc_commons.execution.operator.OperatorContext;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.utils.datastructure.MergeSortHeap;
import org.apache.iotdb.db.utils.datastructure.MergeSortKey;
import org.apache.iotdb.db.utils.datastructure.SortKey;
@@ -95,7 +95,7 @@ public abstract class AbstractSortOperator implements ProcessOperator {
this.sortBufferManager =
new SortBufferManager(
TSFileDescriptor.getInstance().getConfig().getMaxTsBlockSizeInBytes(),
- IoTDBDescriptor.getInstance().getConfig().getSortBufferSize());
+ CommonDescriptor.getInstance().getConfig().getSortBufferSize());
}
protected void buildResult() throws IoTDBException {
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/PartitionRecognizer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/function/PartitionRecognizer.java
similarity index 98%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/PartitionRecognizer.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/function/PartitionRecognizer.java
index 55eb324b92f..985192d5d29 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/PartitionRecognizer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/function/PartitionRecognizer.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.execution.operator.process.function;
+package org.apache.iotdb.db.calc_commons.execution.operator.process.function;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
import org.apache.iotdb.db.calc_commons.execution.operator.process.function.partition.PartitionState;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/function/TableFunctionOperator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/function/TableFunctionOperator.java
index 0b353a40d41..2a3c8e050c9 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/function/TableFunctionOperator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/function/TableFunctionOperator.java
@@ -28,7 +28,6 @@ import org.apache.iotdb.db.calc_commons.execution.operator.process.function.part
import org.apache.iotdb.db.calc_commons.execution.operator.process.function.partition.Slice;
import org.apache.iotdb.db.calc_commons.plan.planner.CommonOperatorUtils;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
-import org.apache.iotdb.db.queryengine.execution.operator.process.function.PartitionRecognizer;
import org.apache.iotdb.udf.api.relational.access.Record;
import org.apache.iotdb.udf.api.relational.table.TableFunctionProcessorProvider;
import org.apache.iotdb.udf.api.relational.table.processor.TableFunctionDataProcessor;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/window/TableWindowOperator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/window/TableWindowOperator.java
index 79ae9ff129b..2ed8af01a06 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/window/TableWindowOperator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/process/window/TableWindowOperator.java
@@ -22,6 +22,7 @@ package org.apache.iotdb.db.calc_commons.execution.operator.process.window;
import org.apache.iotdb.db.calc_commons.execution.operator.Operator;
import org.apache.iotdb.db.calc_commons.execution.operator.OperatorContext;
import org.apache.iotdb.db.calc_commons.execution.operator.process.ProcessOperator;
+import org.apache.iotdb.db.calc_commons.execution.operator.process.function.PartitionRecognizer;
import org.apache.iotdb.db.calc_commons.execution.operator.process.function.partition.PartitionCache;
import org.apache.iotdb.db.calc_commons.execution.operator.process.function.partition.PartitionState;
import org.apache.iotdb.db.calc_commons.execution.operator.process.function.partition.Slice;
@@ -32,7 +33,6 @@ import org.apache.iotdb.db.calc_commons.execution.operator.process.window.partit
import org.apache.iotdb.db.calc_commons.plan.planner.CommonOperatorUtils;
import org.apache.iotdb.db.calc_commons.plan.planner.memory.MemoryReservationManager;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
-import org.apache.iotdb.db.queryengine.execution.operator.process.function.PartitionRecognizer;
import com.google.common.collect.ImmutableList;
import com.google.common.util.concurrent.ListenableFuture;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinAggregationFunction.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinAggregationFunction.java
similarity index 98%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinAggregationFunction.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinAggregationFunction.java
index 2913ddf86db..8274e32bd30 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinAggregationFunction.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinAggregationFunction.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.plan.udf;
+package org.apache.iotdb.db.calc_commons.plan.udf;
import java.util.Arrays;
import java.util.HashSet;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinScalarFunction.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinScalarFunction.java
similarity index 97%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinScalarFunction.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinScalarFunction.java
index f47b738cc89..8db1027bd39 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinScalarFunction.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinScalarFunction.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.plan.udf;
+package org.apache.iotdb.db.calc_commons.plan.udf;
import com.google.common.collect.ImmutableSet;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinTimeSeriesGeneratingFunction.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinTimeSeriesGeneratingFunction.java
similarity index 99%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinTimeSeriesGeneratingFunction.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinTimeSeriesGeneratingFunction.java
index 533ab2d97ec..f085a3a17f6 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/BuiltinTimeSeriesGeneratingFunction.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/BuiltinTimeSeriesGeneratingFunction.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.plan.udf;
+package org.apache.iotdb.db.calc_commons.plan.udf;
import org.apache.iotdb.commons.udf.builtin.String.UDTFConcat;
import org.apache.iotdb.commons.udf.builtin.String.UDTFEndsWith;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/TableUDFUtils.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/TableUDFUtils.java
index a1e2a69ab76..bf907cd049b 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/TableUDFUtils.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/TableUDFUtils.java
@@ -22,7 +22,6 @@ package org.apache.iotdb.db.calc_commons.plan.udf;
import org.apache.iotdb.common.rpc.thrift.FunctionType;
import org.apache.iotdb.common.rpc.thrift.Model;
import org.apache.iotdb.commons.udf.UDFInformation;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.udf.api.exception.UDFException;
import org.apache.iotdb.udf.api.relational.AggregateFunction;
import org.apache.iotdb.udf.api.relational.ScalarFunction;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/UDFManagementService.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/UDFManagementService.java
similarity index 99%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/UDFManagementService.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/UDFManagementService.java
index f47ff93cf5e..a3534b8c9c8 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/UDFManagementService.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/UDFManagementService.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.plan.udf;
+package org.apache.iotdb.db.calc_commons.plan.udf;
import org.apache.iotdb.common.rpc.thrift.Model;
import org.apache.iotdb.commons.udf.UDFInformation;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/UDTFForecast.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/UDTFForecast.java
similarity index 99%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/UDTFForecast.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/UDTFForecast.java
index efcc4c82eaa..0b550d15732 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/UDTFForecast.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/plan/udf/UDTFForecast.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.plan.udf;
+package org.apache.iotdb.db.calc_commons.plan.udf;
import org.apache.iotdb.ainode.rpc.thrift.TForecastReq;
import org.apache.iotdb.ainode.rpc.thrift.TForecastResp;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/PointCollectorAdaptor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/adapter/PointCollectorAdaptor.java
similarity index 97%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/PointCollectorAdaptor.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/adapter/PointCollectorAdaptor.java
index 8ffb0a5bf34..ca13b14bc43 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/PointCollectorAdaptor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/adapter/PointCollectorAdaptor.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.dag.adapter;
+package org.apache.iotdb.db.calc_commons.transformation.dag.adapter;
import org.apache.iotdb.commons.udf.utils.UDFBinaryTransformer;
import org.apache.iotdb.udf.api.collector.PointCollector;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/column/multi/MappableUDFColumnTransformer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/column/multi/MappableUDFColumnTransformer.java
index d4254f6614e..4f4a4aa7df4 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/column/multi/MappableUDFColumnTransformer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/column/multi/MappableUDFColumnTransformer.java
@@ -20,7 +20,7 @@
package org.apache.iotdb.db.calc_commons.transformation.dag.column.multi;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.ColumnTransformer;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.block.column.ColumnBuilder;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDFParametersFactory.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/udf/UDFParametersFactory.java
similarity index 96%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDFParametersFactory.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/udf/UDFParametersFactory.java
index 23dca863682..71bc769d7c3 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDFParametersFactory.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/udf/UDFParametersFactory.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.dag.udf;
+package org.apache.iotdb.db.calc_commons.transformation.dag.udf;
import org.apache.iotdb.commons.conf.CommonConfig;
import org.apache.iotdb.commons.conf.CommonDescriptor;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFExecutor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/udf/UDTFExecutor.java
similarity index 96%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFExecutor.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/udf/UDTFExecutor.java
index f7a31fc00f1..f887e186e6b 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFExecutor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/udf/UDTFExecutor.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.dag.udf;
+package org.apache.iotdb.db.calc_commons.transformation.dag.udf;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
-import org.apache.iotdb.db.queryengine.transformation.dag.adapter.PointCollectorAdaptor;
-import org.apache.iotdb.db.queryengine.transformation.dag.util.InputRowUtils;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
+import org.apache.iotdb.db.calc_commons.transformation.dag.adapter.PointCollectorAdaptor;
+import org.apache.iotdb.db.calc_commons.transformation.dag.util.InputRowUtils;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.udf.api.UDTF;
import org.apache.iotdb.udf.api.access.Row;
import org.apache.iotdb.udf.api.access.RowWindow;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/util/InputRowUtils.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/util/InputRowUtils.java
similarity index 82%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/util/InputRowUtils.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/util/InputRowUtils.java
index 18682b17143..8d2ffde8218 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/util/InputRowUtils.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/dag/util/InputRowUtils.java
@@ -17,9 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.dag.util;
-
-import org.apache.iotdb.db.queryengine.transformation.dag.input.IUDFInputDataSet;
+package org.apache.iotdb.db.calc_commons.transformation.dag.util;
public class InputRowUtils {
@@ -31,7 +29,8 @@ public class InputRowUtils {
* this method checks whether the row returned by IUDFInputDataSet.nextRowInObjects() has all null
* fields except the timestamp
*
- * @param row the returned row by calling {@link IUDFInputDataSet#nextRowInObjects()}
+ * @param row the returned row by calling {@link
+ * org.apache.iotdb.db.queryengine.transformation.dag.input.IUDFInputDataSet#nextRowInObjects()}
* @return true if all row fields are null.
*/
public static boolean isAllNull(Object[] row) {
@@ -50,7 +49,8 @@ public class InputRowUtils {
* this method checks whether the row returned by IUDFInputDataSet.nextRowInObjects() has any null
* fields except the timestamp
*
- * @param row the returned row by calling {@link IUDFInputDataSet#nextRowInObjects()}
+ * @param row the returned row by calling {@link
+ * org.apache.iotdb.db.queryengine.transformation.dag.input.IUDFInputDataSet#nextRowInObjects()}
* @return true if any row field is null.
*/
public static boolean hasNullField(Object[] row) {
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/Cache.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/Cache.java
similarity index 96%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/Cache.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/Cache.java
index e9864fd21d6..264208dc2a3 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/Cache.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/Cache.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure;
import java.util.LinkedHashMap;
import java.util.Map;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/SerializableList.java
similarity index 95%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableList.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/SerializableList.java
index c6b7cee0f3a..f957d9a0c53 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/SerializableList.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.file.SystemFileFactory;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.service.TemporaryQueryDataFileService;
import org.apache.tsfile.utils.PublicBAOS;
@@ -33,7 +33,7 @@ import java.nio.channels.FileChannel;
public interface SerializableList {
int INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL =
- IoTDBDescriptor.getInstance().getConfig().getUdfInitialByteArrayLengthForMemoryControl();
+ CommonDescriptor.getInstance().getConfig().getUdfInitialByteArrayLengthForMemoryControl();
default void serialize() throws IOException {
SerializationRecorder recorder = getSerializationRecorder();
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/ListForwardIterator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/ListForwardIterator.java
similarity index 92%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/ListForwardIterator.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/ListForwardIterator.java
index 1a1bf942be9..d9fbf6551cb 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/ListForwardIterator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/ListForwardIterator.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.iterator;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator;
import java.io.IOException;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/RowListForwardIterator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/RowListForwardIterator.java
similarity index 92%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/RowListForwardIterator.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/RowListForwardIterator.java
index ee9cf6aaeef..28a3421efd1 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/RowListForwardIterator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/RowListForwardIterator.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.iterator;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.ElasticSerializableRowList;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.SerializableRowList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.ElasticSerializableRowList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.SerializableRowList;
import org.apache.tsfile.block.column.Column;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/TVListForwardIterator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/TVListForwardIterator.java
similarity index 93%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/TVListForwardIterator.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/TVListForwardIterator.java
index cd36f417ba7..d96262dd38e 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/iterator/TVListForwardIterator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/iterator/TVListForwardIterator.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.iterator;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.SerializableTVList;
import org.apache.tsfile.block.column.Column;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/row/ElasticSerializableRowList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/row/ElasticSerializableRowList.java
similarity index 97%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/row/ElasticSerializableRowList.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/row/ElasticSerializableRowList.java
index d3e2cecb7f5..34c5863cfe2 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/row/ElasticSerializableRowList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/row/ElasticSerializableRowList.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.row;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.row;
import org.apache.iotdb.commons.utils.TestOnly;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.Cache;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.RowListForwardIterator;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.Cache;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.SerializableList;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.RowListForwardIterator;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/row/SerializableRowList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/row/SerializableRowList.java
similarity index 96%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/row/SerializableRowList.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/row/SerializableRowList.java
index 3bacd1ac5e7..b3f63ceb69b 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/row/SerializableRowList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/row/SerializableRowList.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.row;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.row;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.SerializableList;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.enums.TSDataType;
@@ -36,8 +36,8 @@ import java.util.ArrayList;
import java.util.List;
import static org.apache.iotdb.commons.conf.IoTDBConstant.MB;
-import static org.apache.iotdb.db.queryengine.transformation.datastructure.util.BinaryUtils.MIN_ARRAY_HEADER_SIZE;
-import static org.apache.iotdb.db.queryengine.transformation.datastructure.util.BinaryUtils.MIN_OBJECT_HEADER_SIZE;
+import static org.apache.iotdb.db.calc_commons.transformation.datastructure.util.BinaryUtils.MIN_ARRAY_HEADER_SIZE;
+import static org.apache.iotdb.db.calc_commons.transformation.datastructure.util.BinaryUtils.MIN_OBJECT_HEADER_SIZE;
public class SerializableRowList implements SerializableList {
private final SerializationRecorder serializationRecorder;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
similarity index 95%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
index 098997fe0e7..43fc2b06dc5 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.tv;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.tv;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.SerializableList;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.TVListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.util.BinaryUtils;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.TVListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.util.BinaryUtils;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.block.column.ColumnBuilder;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/ElasticSerializableTVList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/ElasticSerializableTVList.java
similarity index 97%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/ElasticSerializableTVList.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/ElasticSerializableTVList.java
index f0d4e3dd174..c79c2936e5f 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/ElasticSerializableTVList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/ElasticSerializableTVList.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.tv;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.tv;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.Cache;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.TVListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.Cache;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.TVListForwardIterator;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.common.conf.TSFileConfig;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/SerializableTVList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/SerializableTVList.java
similarity index 96%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/SerializableTVList.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/SerializableTVList.java
index 57ac89f073a..758bd48c339 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/tv/SerializableTVList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/tv/SerializableTVList.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.tv;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.tv;
import org.apache.iotdb.commons.utils.TestOnly;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.SerializableList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.enums.TSDataType;
@@ -38,8 +38,8 @@ import java.util.List;
import static com.google.common.base.Preconditions.checkState;
import static org.apache.iotdb.commons.conf.IoTDBConstant.MB;
-import static org.apache.iotdb.db.queryengine.transformation.datastructure.util.BinaryUtils.MIN_ARRAY_HEADER_SIZE;
-import static org.apache.iotdb.db.queryengine.transformation.datastructure.util.BinaryUtils.MIN_OBJECT_HEADER_SIZE;
+import static org.apache.iotdb.db.calc_commons.transformation.datastructure.util.BinaryUtils.MIN_ARRAY_HEADER_SIZE;
+import static org.apache.iotdb.db.calc_commons.transformation.datastructure.util.BinaryUtils.MIN_OBJECT_HEADER_SIZE;
public class SerializableTVList implements SerializableList {
protected final SerializationRecorder serializationRecorder;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/util/BinaryUtils.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/util/BinaryUtils.java
similarity index 96%
rename from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/util/BinaryUtils.java
rename to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/util/BinaryUtils.java
index 38092efef8e..f0263b20db5 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/datastructure/util/BinaryUtils.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/util/BinaryUtils.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.queryengine.transformation.datastructure.util;
+package org.apache.iotdb.db.calc_commons.transformation.datastructure.util;
import org.apache.tsfile.common.conf.TSFileConfig;
import org.apache.tsfile.utils.ReadWriteIOUtils;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
index 31f446df270..6d6556987be 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
@@ -441,9 +441,6 @@ public class IoTDBConfig {
/** Enable auto repair compaction */
private volatile boolean enableAutoRepairCompaction = true;
- /** The buffer for sort operation */
- private long sortBufferSize = 32 * 1024 * 1024L;
-
/** The buffer for cte scan operation */
private long cteBufferSize = 128 * 1024L;
@@ -813,12 +810,6 @@ public class IoTDBConfig {
private boolean enable13DataInsertAdapt = false;
- /**
- * Used to estimate the memory usage of text fields in a UDF query. It is recommended to set this
- * value to be slightly larger than the average length of all text records.
- */
- private int udfInitialByteArrayLengthForMemoryControl = 48;
-
/**
* How much memory may be used in ONE UDF query (in MB).
*
@@ -1031,9 +1022,6 @@ public class IoTDBConfig {
private ReadConsistencyLevel readConsistencyLevel = ReadConsistencyLevel.STRONG;
- /** Maximum execution time of a DriverTask */
- private int driverTaskExecutionTimeSliceInMs = 200;
-
/** Maximum size of wal buffer used in IoTConsensus. Unit: byte */
private long throttleThreshold = 200 * 1024 * 1024 * 1024L;
@@ -1344,15 +1332,6 @@ public class IoTDBConfig {
this.udfCollectorMemoryBudgetInMB = udfCollectorMemoryBudgetInMB;
}
- public int getUdfInitialByteArrayLengthForMemoryControl() {
- return udfInitialByteArrayLengthForMemoryControl;
- }
-
- public void setUdfInitialByteArrayLengthForMemoryControl(
- int udfInitialByteArrayLengthForMemoryControl) {
- this.udfInitialByteArrayLengthForMemoryControl = udfInitialByteArrayLengthForMemoryControl;
- }
-
public int getDefaultFillInterval() {
return defaultFillInterval;
}
@@ -3483,14 +3462,6 @@ public class IoTDBConfig {
}
}
- public int getDriverTaskExecutionTimeSliceInMs() {
- return driverTaskExecutionTimeSliceInMs;
- }
-
- public void setDriverTaskExecutionTimeSliceInMs(int driverTaskExecutionTimeSliceInMs) {
- this.driverTaskExecutionTimeSliceInMs = driverTaskExecutionTimeSliceInMs;
- }
-
public static String getEnvironmentVariables() {
return "\n\t"
+ IoTDBConstant.IOTDB_HOME
@@ -4255,14 +4226,6 @@ public class IoTDBConfig {
RateLimiterType = rateLimiterType;
}
- public void setSortBufferSize(long sortBufferSize) {
- this.sortBufferSize = sortBufferSize;
- }
-
- public long getSortBufferSize() {
- return sortBufferSize;
- }
-
public void setCteBufferSize(long cteBufferSize) {
this.cteBufferSize = cteBufferSize;
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
index 5fad7697b93..966a5bc9934 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
@@ -101,6 +101,7 @@ public class IoTDBDescriptor {
private static final Logger LOGGER = LoggerFactory.getLogger(IoTDBDescriptor.class);
private static final CommonDescriptor commonDescriptor = CommonDescriptor.getInstance();
+ private static final CommonConfig commonConfig = commonDescriptor.getConfig();
private static final IoTDBConfig conf = new IoTDBConfig();
private static final DataNodeMemoryConfig memoryConfig = new DataNodeMemoryConfig();
@@ -1050,7 +1051,12 @@ public class IoTDBDescriptor {
properties.getProperty("quota_enable", String.valueOf(conf.isQuotaEnable()))));
// The buffer for sort operator to calculate
- loadFixedSizeLimitForQuery(properties, "sort_buffer_size_in_bytes", conf::setSortBufferSize);
+ loadFixedSizeLimitForQuery(
+ properties,
+ "sort_buffer_size_in_bytes",
+ (v) -> {
+ commonDescriptor.getConfig().setSortBufferSize(v);
+ });
// The buffer for cte materialization.
long cteBufferSizeInBytes =
@@ -2246,7 +2252,10 @@ public class IoTDBDescriptor {
ConfigurationFileUtils.getConfigurationDefaultValue("tvlist_sort_threshold"))));
// sort_buffer_size_in_bytes
- loadFixedSizeLimitForQuery(properties, "sort_buffer_size_in_bytes", conf::setSortBufferSize);
+ loadFixedSizeLimitForQuery(
+ properties,
+ "sort_buffer_size_in_bytes",
+ v -> commonDescriptor.getConfig().setSortBufferSize(v));
loadFixedSizeLimitForQuery(
properties, "mods_cache_size_limit_per_fi_in_bytes", conf::setModsCacheSizeLimitPerFI);
@@ -2610,8 +2619,10 @@ public class IoTDBDescriptor {
String initialByteArrayLengthForMemoryControl =
properties.getProperty("udf_initial_byte_array_length_for_memory_control");
if (initialByteArrayLengthForMemoryControl != null) {
- conf.setUdfInitialByteArrayLengthForMemoryControl(
- Integer.parseInt(initialByteArrayLengthForMemoryControl.trim()));
+ commonDescriptor
+ .getConfig()
+ .setUdfInitialByteArrayLengthForMemoryControl(
+ Integer.parseInt(initialByteArrayLengthForMemoryControl.trim()));
}
conf.setUdfDir(properties.getProperty("udf_lib_dir", conf.getUdfDir()));
@@ -2820,11 +2831,11 @@ public class IoTDBDescriptor {
properties.getProperty(
"partition_cache_size", Integer.toString(conf.getPartitionCacheSize()))));
- conf.setDriverTaskExecutionTimeSliceInMs(
+ commonConfig.setDriverTaskExecutionTimeSliceInMs(
Integer.parseInt(
properties.getProperty(
"driver_task_execution_time_slice_in_ms",
- Integer.toString(conf.getDriverTaskExecutionTimeSliceInMs()))));
+ Integer.toString(commonConfig.getDriverTaskExecutionTimeSliceInMs()))));
}
/** Get default encode algorithm by data type */
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/processor/aggregate/AggregateProcessor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/processor/aggregate/AggregateProcessor.java
index 43b09940780..459dec33331 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/processor/aggregate/AggregateProcessor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/processor/aggregate/AggregateProcessor.java
@@ -29,6 +29,7 @@ import org.apache.iotdb.commons.pipe.agent.task.meta.PipeTaskMeta;
import org.apache.iotdb.commons.pipe.config.plugin.env.PipeTaskProcessorRuntimeEnvironment;
import org.apache.iotdb.commons.pipe.event.EnrichedEvent;
import org.apache.iotdb.commons.utils.PathUtils;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDFParametersFactory;
import org.apache.iotdb.db.pipe.agent.PipeDataNodeAgent;
import org.apache.iotdb.db.pipe.agent.plugin.dataregion.PipeDataRegionPluginAgent;
import org.apache.iotdb.db.pipe.event.common.row.PipeResetTabletRow;
@@ -42,7 +43,6 @@ import org.apache.iotdb.db.pipe.processor.aggregate.operator.intermediateresult.
import org.apache.iotdb.db.pipe.processor.aggregate.operator.processor.AbstractOperatorProcessor;
import org.apache.iotdb.db.pipe.processor.aggregate.window.datastructure.WindowOutput;
import org.apache.iotdb.db.pipe.processor.aggregate.window.processor.AbstractWindowingProcessor;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDFParametersFactory;
import org.apache.iotdb.db.storageengine.StorageEngine;
import org.apache.iotdb.pipe.api.PipeProcessor;
import org.apache.iotdb.pipe.api.access.Row;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java
index 299a3b7594e..40f168aeee9 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java
@@ -100,6 +100,7 @@ import org.apache.iotdb.consensus.exception.ConsensusGroupAlreadyExistException;
import org.apache.iotdb.consensus.exception.ConsensusGroupNotExistException;
import org.apache.iotdb.db.audit.DNAuditLogger;
import org.apache.iotdb.db.auth.AuthorityChecker;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.consensus.DataRegionConsensusImpl;
import org.apache.iotdb.db.consensus.SchemaRegionConsensusImpl;
@@ -183,7 +184,6 @@ import org.apache.iotdb.db.queryengine.plan.scheduler.load.LoadTsFileScheduler;
import org.apache.iotdb.db.queryengine.plan.statement.component.WhereCondition;
import org.apache.iotdb.db.queryengine.plan.statement.crud.InsertRowStatement;
import org.apache.iotdb.db.queryengine.plan.statement.crud.QueryStatement;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.db.schemaengine.SchemaEngine;
import org.apache.iotdb.db.schemaengine.schemaregion.ISchemaRegion;
import org.apache.iotdb.db.schemaengine.schemaregion.read.resp.info.ITimeSeriesSchemaInfo;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/aggregation/UDAFAccumulator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/aggregation/UDAFAccumulator.java
index d0f6dfa5ff9..1a287b2e12d 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/aggregation/UDAFAccumulator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/aggregation/UDAFAccumulator.java
@@ -21,9 +21,9 @@ package org.apache.iotdb.db.queryengine.execution.aggregation;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
import org.apache.iotdb.db.calc_commons.execution.aggregation.Accumulator;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDFParametersFactory;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDFParametersFactory;
import org.apache.iotdb.udf.api.State;
import org.apache.iotdb.udf.api.UDAF;
import org.apache.iotdb.udf.api.customizer.config.UDAFConfigurations;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
index c50c1720b23..41f23b6bbe9 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
@@ -21,6 +21,8 @@ package org.apache.iotdb.db.queryengine.execution.fragment;
import org.apache.iotdb.common.rpc.thrift.TSStatus;
import org.apache.iotdb.commons.audit.UserEntity;
+import org.apache.iotdb.commons.conf.CommonConfig;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.IoTDBException;
import org.apache.iotdb.commons.exception.IoTDBRuntimeException;
import org.apache.iotdb.commons.path.AlignedFullPath;
@@ -91,6 +93,7 @@ public class FragmentInstanceContext extends QueryContext {
private static final Logger LOGGER = LoggerFactory.getLogger(FragmentInstanceContext.class);
private static final IoTDBConfig CONFIG = IoTDBDescriptor.getInstance().getConfig();
+ private static final CommonConfig COMMON_CONFIG = CommonDescriptor.getInstance().getConfig();
private static final long END_TIME_INITIAL_VALUE = -1L;
// wait over 5s for driver to close is abnormal
private static final long LONG_WAIT_DURATION = 5_000_000_000L;
@@ -641,7 +644,7 @@ public class FragmentInstanceContext extends QueryContext {
}
}
- long waitForLockTime = CONFIG.getDriverTaskExecutionTimeSliceInMs();
+ long waitForLockTime = COMMON_CONFIG.getDriverTaskExecutionTimeSliceInMs();
long startAcquireLockTime = System.nanoTime();
if (dataRegion.tryReadLock(waitForLockTime)) {
try {
@@ -694,7 +697,7 @@ public class FragmentInstanceContext extends QueryContext {
return true;
}
- long waitForLockTime = CONFIG.getDriverTaskExecutionTimeSliceInMs();
+ long waitForLockTime = COMMON_CONFIG.getDriverTaskExecutionTimeSliceInMs();
if (dataRegion.tryReadLock(waitForLockTime)) {
try {
// minus already consumed time
@@ -736,7 +739,7 @@ public class FragmentInstanceContext extends QueryContext {
if (pathList == null) {
return true;
}
- long waitForLockTime = CONFIG.getDriverTaskExecutionTimeSliceInMs();
+ long waitForLockTime = COMMON_CONFIG.getDriverTaskExecutionTimeSliceInMs();
if (dataRegion.tryReadLock(waitForLockTime)) {
// minus already consumed time
waitForLockTime -= (System.nanoTime() - startTime) / 1_000_000;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/AggregationUtil.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/AggregationUtil.java
index 2df0be4c339..f40693cea6e 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/AggregationUtil.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/AggregationUtil.java
@@ -19,6 +19,7 @@
package org.apache.iotdb.db.queryengine.execution.operator;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.db.queryengine.execution.aggregation.TreeAggregator;
import org.apache.iotdb.db.queryengine.execution.aggregation.timerangeiterator.ITimeRangeIterator;
import org.apache.iotdb.db.queryengine.execution.aggregation.timerangeiterator.SingleTimeWindowIterator;
@@ -28,7 +29,6 @@ import org.apache.iotdb.db.queryengine.execution.operator.window.TimeWindow;
import org.apache.iotdb.db.queryengine.plan.analyze.TypeProvider;
import org.apache.iotdb.db.queryengine.plan.planner.plan.parameter.AggregationDescriptor;
import org.apache.iotdb.db.queryengine.plan.planner.plan.parameter.GroupByTimeParameter;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.db.queryengine.statistics.StatisticsManager;
import org.apache.tsfile.block.column.Column;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/TransformOperator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/TransformOperator.java
index 60b92e9c769..d6694a056e4 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/TransformOperator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/TransformOperator.java
@@ -24,13 +24,13 @@ import org.apache.iotdb.commons.utils.TestOnly;
import org.apache.iotdb.db.calc_commons.execution.operator.Operator;
import org.apache.iotdb.db.calc_commons.execution.operator.OperatorContext;
import org.apache.iotdb.db.calc_commons.execution.operator.process.ProcessOperator;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
import org.apache.iotdb.db.queryengine.transformation.dag.builder.EvaluationDAGBuilder;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverTaskThread.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverTaskThread.java
index 132c11dadc1..976d096c1ca 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverTaskThread.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverTaskThread.java
@@ -21,7 +21,7 @@ package org.apache.iotdb.db.queryengine.execution.schedule;
import org.apache.iotdb.commons.concurrent.IoTDBThreadPoolFactory;
import org.apache.iotdb.commons.concurrent.ThreadName;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.db.queryengine.execution.driver.IDriver;
import org.apache.iotdb.db.queryengine.execution.schedule.queue.IndexedBlockingQueue;
import org.apache.iotdb.db.queryengine.execution.schedule.queue.multilevelqueue.MultilevelPriorityQueue;
@@ -40,7 +40,7 @@ import java.util.stream.IntStream;
public class DriverTaskThread extends AbstractDriverThread {
private static final double DRIVER_TASK_EXECUTION_TIME_SLICE_IN_MS =
- IoTDBDescriptor.getInstance().getConfig().getDriverTaskExecutionTimeSliceInMs();
+ CommonDescriptor.getInstance().getConfig().getDriverTaskExecutionTimeSliceInMs();
/**
* In multi-level feedback queue, levels with lower priority have longer time slices. Currently,
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/ExpressionAnalyzer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/ExpressionAnalyzer.java
index 9a847a9ebd1..fb2aa51a3a6 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/ExpressionAnalyzer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/ExpressionAnalyzer.java
@@ -24,6 +24,8 @@ import org.apache.iotdb.commons.path.MeasurementPath;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.path.PathPatternTree;
import org.apache.iotdb.commons.schema.column.ColumnHeader;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinScalarFunction;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinTimeSeriesGeneratingFunction;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.queryengine.common.MPPQueryContext;
import org.apache.iotdb.db.queryengine.common.schematree.ISchemaTree;
@@ -54,8 +56,6 @@ import org.apache.iotdb.db.queryengine.plan.expression.visitor.cartesian.ConcatD
import org.apache.iotdb.db.queryengine.plan.expression.visitor.cartesian.ConcatDeviceAndBindSchemaForPredicateVisitor;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.cartesian.ConcatExpressionWithSuffixPathsVisitor;
import org.apache.iotdb.db.queryengine.plan.statement.component.ResultColumn;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinScalarFunction;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinTimeSeriesGeneratingFunction;
import org.apache.iotdb.db.utils.constant.SqlConstant;
import org.apache.tsfile.common.constant.TsFileConstant;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java
index b67aff59b9c..bd330001966 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java
@@ -173,6 +173,7 @@ import org.apache.iotdb.confignode.rpc.thrift.TStartPipeReq;
import org.apache.iotdb.confignode.rpc.thrift.TStopPipeReq;
import org.apache.iotdb.confignode.rpc.thrift.TThrottleQuotaResp;
import org.apache.iotdb.confignode.rpc.thrift.TUnsetSchemaTemplateReq;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.BatchProcessException;
import org.apache.iotdb.db.exception.StorageEngineException;
@@ -312,7 +313,6 @@ import org.apache.iotdb.db.queryengine.plan.statement.sys.quota.SetSpaceQuotaSta
import org.apache.iotdb.db.queryengine.plan.statement.sys.quota.SetThrottleQuotaStatement;
import org.apache.iotdb.db.queryengine.plan.statement.sys.quota.ShowSpaceQuotaStatement;
import org.apache.iotdb.db.queryengine.plan.statement.sys.quota.ShowThrottleQuotaStatement;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.db.schemaengine.SchemaEngine;
import org.apache.iotdb.db.schemaengine.rescon.DataNodeSchemaQuotaManager;
import org.apache.iotdb.db.schemaengine.table.InformationSchemaUtils;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/ShowFunctionsTask.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/ShowFunctionsTask.java
index 0feb6cda37a..72bf03d56cb 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/ShowFunctionsTask.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/ShowFunctionsTask.java
@@ -26,6 +26,9 @@ import org.apache.iotdb.commons.udf.UDFInformation;
import org.apache.iotdb.commons.udf.UDFType;
import org.apache.iotdb.commons.udf.builtin.relational.TableBuiltinAggregationFunction;
import org.apache.iotdb.commons.udf.builtin.relational.TableBuiltinScalarFunction;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinAggregationFunction;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinScalarFunction;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinTimeSeriesGeneratingFunction;
import org.apache.iotdb.db.calc_commons.plan.udf.TableUDFUtils;
import org.apache.iotdb.db.node_commons.plan.relational.function.TableBuiltinTableFunction;
import org.apache.iotdb.db.queryengine.common.header.DatasetHeader;
@@ -33,9 +36,6 @@ import org.apache.iotdb.db.queryengine.common.header.DatasetHeaderFactory;
import org.apache.iotdb.db.queryengine.plan.execution.config.ConfigTaskResult;
import org.apache.iotdb.db.queryengine.plan.execution.config.IConfigTask;
import org.apache.iotdb.db.queryengine.plan.execution.config.executor.IConfigTaskExecutor;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinScalarFunction;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinTimeSeriesGeneratingFunction;
import org.apache.iotdb.db.queryengine.plan.udf.TreeUDFUtils;
import org.apache.iotdb.rpc.TSStatusCode;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/Expression.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/Expression.java
index cb0483d75d3..fd18cd98ed3 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/Expression.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/Expression.java
@@ -20,6 +20,7 @@
package org.apache.iotdb.db.queryengine.plan.expression;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.queryengine.plan.expression.binary.AdditionExpression;
@@ -53,7 +54,6 @@ import org.apache.iotdb.db.queryengine.plan.expression.unary.RegularExpression;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.ExpressionVisitor;
import org.apache.iotdb.db.queryengine.plan.statement.StatementNode;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.LayerMemoryAssigner;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.enums.TSDataType;
import org.apache.tsfile.utils.Accountable;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ExpressionFactory.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ExpressionFactory.java
index b45a90c5b80..2d362fdbb1c 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ExpressionFactory.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ExpressionFactory.java
@@ -23,6 +23,7 @@ import org.apache.iotdb.common.rpc.thrift.TAggregationType;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.MeasurementPath;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinTimeSeriesGeneratingFunction;
import org.apache.iotdb.db.queryengine.plan.expression.binary.AdditionExpression;
import org.apache.iotdb.db.queryengine.plan.expression.binary.EqualToExpression;
import org.apache.iotdb.db.queryengine.plan.expression.binary.GreaterEqualExpression;
@@ -45,7 +46,6 @@ import org.apache.iotdb.db.queryengine.plan.expression.unary.LikeExpression;
import org.apache.iotdb.db.queryengine.plan.expression.unary.LogicNotExpression;
import org.apache.iotdb.db.queryengine.plan.expression.unary.RegularExpression;
import org.apache.iotdb.db.queryengine.plan.planner.plan.parameter.GroupByTimeParameter;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinTimeSeriesGeneratingFunction;
import org.apache.tsfile.enums.TSDataType;
import org.apache.tsfile.utils.TimeDuration;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/binary/BinaryExpression.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/binary/BinaryExpression.java
index 31a75b2825e..2dd1188b91e 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/binary/BinaryExpression.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/binary/BinaryExpression.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.queryengine.plan.expression.binary;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.ExpressionVisitor;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.LayerMemoryAssigner;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.enums.TSDataType;
import org.apache.tsfile.utils.RamUsageEstimator;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/leaf/LeafOperand.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/leaf/LeafOperand.java
index f01051a5c38..cda2fe0153d 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/leaf/LeafOperand.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/leaf/LeafOperand.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.queryengine.plan.expression.leaf;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/multi/FunctionExpression.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/multi/FunctionExpression.java
index 638bdc79a89..9b847c46dbe 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/multi/FunctionExpression.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/multi/FunctionExpression.java
@@ -21,6 +21,9 @@ package org.apache.iotdb.db.queryengine.plan.expression.multi;
import org.apache.iotdb.commons.conf.IoTDBConstant;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinAggregationFunction;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinScalarFunction;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
import org.apache.iotdb.db.node_commons.plan.expression.multi.FunctionType;
@@ -30,11 +33,8 @@ import org.apache.iotdb.db.queryengine.plan.expression.ExpressionType;
import org.apache.iotdb.db.queryengine.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.queryengine.plan.expression.multi.builtin.BuiltInScalarFunctionHelperFactory;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.ExpressionVisitor;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinScalarFunction;
import org.apache.iotdb.db.queryengine.plan.udf.TreeUDFUtils;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.LayerMemoryAssigner;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFInformationInferrer;
import org.apache.iotdb.udf.api.customizer.strategy.AccessStrategy;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/CaseWhenThenExpression.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/CaseWhenThenExpression.java
index 07023786cf0..d9bc1618949 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/CaseWhenThenExpression.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/CaseWhenThenExpression.java
@@ -19,6 +19,7 @@
package org.apache.iotdb.db.queryengine.plan.expression.other;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
@@ -28,7 +29,6 @@ import org.apache.iotdb.db.queryengine.plan.expression.binary.WhenThenExpression
import org.apache.iotdb.db.queryengine.plan.expression.leaf.NullOperand;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.ExpressionVisitor;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.LayerMemoryAssigner;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.enums.TSDataType;
import org.apache.tsfile.external.commons.lang3.Validate;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/GroupByTimeExpression.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/GroupByTimeExpression.java
index 4a68d7f01db..d18eb56952b 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/GroupByTimeExpression.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/other/GroupByTimeExpression.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.queryengine.plan.expression.other;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.plan.expression.ExpressionType;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.ExpressionVisitor;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.LayerMemoryAssigner;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.enums.TSDataType;
import org.apache.tsfile.utils.RamUsageEstimator;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ternary/TernaryExpression.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ternary/TernaryExpression.java
index 4db828bc4f1..921d873399c 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ternary/TernaryExpression.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/ternary/TernaryExpression.java
@@ -21,12 +21,12 @@
package org.apache.iotdb.db.queryengine.plan.expression.ternary;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.ExpressionVisitor;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.LayerMemoryAssigner;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/unary/UnaryExpression.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/unary/UnaryExpression.java
index 50d673a564d..0f39aeb0e30 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/unary/UnaryExpression.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/unary/UnaryExpression.java
@@ -19,12 +19,12 @@
package org.apache.iotdb.db.queryengine.plan.expression.unary;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.plan.expression.visitor.ExpressionVisitor;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.LayerMemoryAssigner;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/ColumnTransformerVisitor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/ColumnTransformerVisitor.java
index 02cc6f58822..74e0a6ced9d 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/ColumnTransformerVisitor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/ColumnTransformerVisitor.java
@@ -49,6 +49,7 @@ import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.IsNullCo
import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.LikeColumnTransformer;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.LogicNotColumnTransformer;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.RegularColumnTransformer;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
import org.apache.iotdb.db.queryengine.plan.analyze.TypeProvider;
@@ -70,7 +71,6 @@ import org.apache.iotdb.db.queryengine.plan.expression.unary.LikeExpression;
import org.apache.iotdb.db.queryengine.plan.expression.unary.RegularExpression;
import org.apache.iotdb.db.queryengine.plan.expression.unary.UnaryExpression;
import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFContext;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.dag.util.TransformUtils;
import org.apache.tsfile.common.regexp.LikePattern;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/IntermediateLayerVisitor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/IntermediateLayerVisitor.java
index a7b11f2cfd2..6e4600cd8e5 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/IntermediateLayerVisitor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/IntermediateLayerVisitor.java
@@ -19,6 +19,7 @@
package org.apache.iotdb.db.queryengine.plan.expression.visitor;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.node_commons.common.NodeRef;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
@@ -72,7 +73,6 @@ import org.apache.iotdb.db.queryengine.transformation.dag.transformer.unary.Logi
import org.apache.iotdb.db.queryengine.transformation.dag.transformer.unary.RegularTransformer;
import org.apache.iotdb.db.queryengine.transformation.dag.transformer.unary.TransparentTransformer;
import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFContext;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.udf.api.customizer.strategy.AccessStrategy;
import org.apache.tsfile.common.regexp.LikePattern;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/optimization/AggregationPushDown.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/optimization/AggregationPushDown.java
index 6dac919560c..60818163d12 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/optimization/AggregationPushDown.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/optimization/AggregationPushDown.java
@@ -25,6 +25,7 @@ import org.apache.iotdb.commons.path.AlignedPath;
import org.apache.iotdb.commons.path.MeasurementPath;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.schema.column.ColumnHeaderConstant;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.db.node_commons.execution.MemoryEstimationHelper;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeId;
@@ -56,7 +57,6 @@ import org.apache.iotdb.db.queryengine.plan.planner.plan.parameter.GroupByTimePa
import org.apache.iotdb.db.queryengine.plan.statement.StatementType;
import org.apache.iotdb.db.queryengine.plan.statement.component.Ordering;
import org.apache.iotdb.db.queryengine.plan.statement.crud.QueryStatement;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.db.schemaengine.schemaregion.utils.MetaUtils;
import org.apache.iotdb.db.utils.SchemaUtils;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/TreeUDFUtils.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/TreeUDFUtils.java
index f04cfe08a0a..c3bd93a215e 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/TreeUDFUtils.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/TreeUDFUtils.java
@@ -19,6 +19,7 @@
package org.apache.iotdb.db.queryengine.plan.udf;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
import org.apache.iotdb.udf.api.UDAF;
import org.apache.iotdb.udf.api.UDTF;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindow.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
index caf44ad66dd..b5da95c3950 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
@@ -20,7 +20,7 @@
package org.apache.iotdb.db.queryengine.transformation.dag.adapter;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.ElasticSerializableRowList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.iotdb.udf.api.access.Row;
import org.apache.iotdb.udf.api.access.RowIterator;
import org.apache.iotdb.udf.api.access.RowWindow;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
index 396b34f3f40..cd73bd63b6f 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.queryengine.transformation.dag.adapter;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.ElasticSerializableRowList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.iotdb.udf.api.access.Row;
import org.apache.iotdb.udf.api.access.RowIterator;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnRow.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnRow.java
index a6ab7222457..bc90f1fe91a 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnRow.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnRow.java
@@ -21,7 +21,7 @@ package org.apache.iotdb.db.queryengine.transformation.dag.adapter;
import org.apache.iotdb.commons.udf.utils.UDFBinaryTransformer;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.udf.api.access.Row;
import org.apache.iotdb.udf.api.type.Binary;
import org.apache.iotdb.udf.api.type.Type;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindow.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindow.java
index 2aa00e1c8bb..bcb504eb156 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindow.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindow.java
@@ -20,7 +20,7 @@
package org.apache.iotdb.db.queryengine.transformation.dag.adapter;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.udf.api.access.Row;
import org.apache.iotdb.udf.api.access.RowIterator;
import org.apache.iotdb.udf.api.access.RowWindow;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindowIterator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
index 007f23499c6..dc463600dd3 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.queryengine.transformation.dag.adapter;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.udf.api.access.Row;
import org.apache.iotdb.udf.api.access.RowIterator;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/input/QueryDataSetInputLayer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/input/QueryDataSetInputLayer.java
index c42f3c8480b..635515f620f 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/input/QueryDataSetInputLayer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/input/QueryDataSetInputLayer.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.queryengine.transformation.dag.input;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.RowListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.SafetyLine;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.SafetyLine.SafetyPile;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.RowListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/MultiInputLayer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/MultiInputLayer.java
index 78e0c7451b7..107b4bb2005 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/MultiInputLayer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/MultiInputLayer.java
@@ -19,6 +19,8 @@
package org.apache.iotdb.db.queryengine.transformation.dag.intermediate;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.RowListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
@@ -28,8 +30,6 @@ import org.apache.iotdb.db.queryengine.transformation.dag.adapter.ElasticSeriali
import org.apache.iotdb.db.queryengine.transformation.dag.input.IUDFInputDataSet;
import org.apache.iotdb.db.queryengine.transformation.dag.util.LayerCacheUtils;
import org.apache.iotdb.db.queryengine.transformation.datastructure.TVColumns;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.RowListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.iotdb.db.utils.datastructure.TimeSelector;
import org.apache.iotdb.udf.api.access.RowWindow;
import org.apache.iotdb.udf.api.customizer.strategy.SessionTimeWindowAccessStrategy;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputMultiReferenceLayer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputMultiReferenceLayer.java
index 2bf5f2b3eb8..8ee52ab1b69 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputMultiReferenceLayer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputMultiReferenceLayer.java
@@ -19,6 +19,8 @@
package org.apache.iotdb.db.queryengine.transformation.dag.intermediate;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.TVListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
import org.apache.iotdb.db.queryengine.transformation.api.LayerRowWindowReader;
@@ -28,8 +30,6 @@ import org.apache.iotdb.db.queryengine.transformation.dag.memory.SafetyLine;
import org.apache.iotdb.db.queryengine.transformation.dag.memory.SafetyLine.SafetyPile;
import org.apache.iotdb.db.queryengine.transformation.dag.util.LayerCacheUtils;
import org.apache.iotdb.db.queryengine.transformation.dag.util.TransformUtils;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.TVListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.queryengine.transformation.datastructure.util.ValueRecorder;
import org.apache.iotdb.udf.api.access.RowWindow;
import org.apache.iotdb.udf.api.customizer.strategy.SessionTimeWindowAccessStrategy;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputSingleReferenceLayer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputSingleReferenceLayer.java
index e7d67c36349..5100a6de259 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputSingleReferenceLayer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/intermediate/SingleInputSingleReferenceLayer.java
@@ -19,6 +19,8 @@
package org.apache.iotdb.db.queryengine.transformation.dag.intermediate;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.TVListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
import org.apache.iotdb.db.queryengine.transformation.api.LayerRowWindowReader;
@@ -26,8 +28,6 @@ import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
import org.apache.iotdb.db.queryengine.transformation.dag.adapter.ElasticSerializableTVListBackedSingleColumnWindow;
import org.apache.iotdb.db.queryengine.transformation.dag.util.LayerCacheUtils;
import org.apache.iotdb.db.queryengine.transformation.dag.util.TransformUtils;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.TVListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.queryengine.transformation.datastructure.util.ValueRecorder;
import org.apache.iotdb.udf.api.access.RowWindow;
import org.apache.iotdb.udf.api.customizer.strategy.SessionTimeWindowAccessStrategy;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/memory/SafetyLine.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/memory/SafetyLine.java
index e29038f061d..5cca5d18bfd 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/memory/SafetyLine.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/memory/SafetyLine.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.queryengine.transformation.dag.memory;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
/** Tells the {@link ElasticSerializableTVList} if it is safe to remove a cache block. */
public class SafetyLine {
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/MappableUDFQueryRowTransformer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/MappableUDFQueryRowTransformer.java
index 43d04643a20..af87afb4412 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/MappableUDFQueryRowTransformer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/MappableUDFQueryRowTransformer.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.queryengine.transformation.dag.transformer.multi;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.dag.util.TypeUtils;
import org.apache.tsfile.block.column.Column;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowTransformer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowTransformer.java
index d219332d0ad..a7c25fcf575 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowTransformer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowTransformer.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.queryengine.transformation.dag.transformer.multi;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.dag.util.TypeUtils;
import org.apache.tsfile.block.column.Column;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowWindowTransformer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowWindowTransformer.java
index b0b9a438c77..117bf886546 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowWindowTransformer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryRowWindowTransformer.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.queryengine.transformation.dag.transformer.multi;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.api.LayerRowWindowReader;
import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.dag.util.TypeUtils;
import org.apache.tsfile.block.column.ColumnBuilder;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryTransformer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryTransformer.java
index 7ba137fe356..1cb8a4d4985 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryTransformer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UDFQueryTransformer.java
@@ -20,8 +20,8 @@
package org.apache.iotdb.db.queryengine.transformation.dag.transformer.multi;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.dag.transformer.Transformer;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.transformation.dag.util.TypeUtils;
import org.apache.tsfile.block.column.ColumnBuilder;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UniversalUDFQueryTransformer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UniversalUDFQueryTransformer.java
index 69e879656dd..b600df63a6b 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UniversalUDFQueryTransformer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/transformer/multi/UniversalUDFQueryTransformer.java
@@ -19,10 +19,10 @@
package org.apache.iotdb.db.queryengine.transformation.dag.transformer.multi;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.TVListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
-import org.apache.iotdb.db.queryengine.transformation.dag.udf.UDTFExecutor;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.TVListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.tsfile.block.column.Column;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDAFInformationInferrer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDAFInformationInferrer.java
index 9df49931bc8..f31e9dbdc35 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDAFInformationInferrer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDAFInformationInferrer.java
@@ -20,8 +20,9 @@
package org.apache.iotdb.db.queryengine.transformation.dag.udf;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDFParametersFactory;
import org.apache.iotdb.db.exception.sql.SemanticException;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.udf.api.UDAF;
import org.apache.iotdb.udf.api.customizer.config.UDAFConfigurations;
import org.apache.iotdb.udf.api.customizer.parameter.UDFParameterValidator;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java
index 771ecbd9b96..8c37045c124 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java
@@ -20,6 +20,7 @@
package org.apache.iotdb.db.queryengine.transformation.dag.udf;
import org.apache.iotdb.commons.udf.service.UDFClassLoaderManager;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.service.TemporaryQueryDataFileService;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFInformationInferrer.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFInformationInferrer.java
index 08b1e11c653..b8d75f6ed65 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFInformationInferrer.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFInformationInferrer.java
@@ -20,8 +20,9 @@
package org.apache.iotdb.db.queryengine.transformation.dag.udf;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
+import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDFParametersFactory;
import org.apache.iotdb.db.exception.sql.SemanticException;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.udf.api.UDTF;
import org.apache.iotdb.udf.api.customizer.config.UDTFConfigurations;
import org.apache.iotdb.udf.api.customizer.parameter.UDFParameterValidator;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/util/LayerCacheUtils.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/util/LayerCacheUtils.java
index e63b01403c2..6eec37adc37 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/util/LayerCacheUtils.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/util/LayerCacheUtils.java
@@ -19,11 +19,11 @@
package org.apache.iotdb.db.queryengine.transformation.dag.util;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.ElasticSerializableRowList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.queryengine.transformation.api.LayerReader;
import org.apache.iotdb.db.queryengine.transformation.api.YieldableState;
import org.apache.iotdb.db.queryengine.transformation.dag.input.IUDFInputDataSet;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.ElasticSerializableRowList;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.tsfile.block.column.Column;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java
index 7004d09872d..f042e56f45b 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java
@@ -70,6 +70,7 @@ import org.apache.iotdb.consensus.ConsensusFactory;
import org.apache.iotdb.consensus.common.Peer;
import org.apache.iotdb.db.audit.DNAuditLogger;
import org.apache.iotdb.db.auth.AuthorityChecker;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
import org.apache.iotdb.db.conf.DataNodeStartupCheck;
import org.apache.iotdb.db.conf.DataNodeSystemPropertiesHandler;
import org.apache.iotdb.db.conf.IoTDBConfig;
@@ -95,7 +96,6 @@ import org.apache.iotdb.db.queryengine.plan.planner.LogicalPlanVisitor;
import org.apache.iotdb.db.queryengine.plan.planner.distribution.DistributionPlanContext;
import org.apache.iotdb.db.queryengine.plan.planner.distribution.SourceRewriter;
import org.apache.iotdb.db.queryengine.plan.planner.plan.LogicalQueryPlan;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.db.schemaengine.SchemaEngine;
import org.apache.iotdb.db.schemaengine.schemaregion.attribute.update.GeneralRegionAttributeSecurityService;
import org.apache.iotdb.db.schemaengine.table.DataNodeTableCache;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
index c8150ea9295..1f789468ad7 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
@@ -23,8 +23,8 @@ import org.apache.iotdb.commons.exception.StartupException;
import org.apache.iotdb.commons.file.SystemFileFactory;
import org.apache.iotdb.commons.service.IService;
import org.apache.iotdb.commons.service.ServiceType;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList.SerializationRecorder;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.SerializableList.SerializationRecorder;
import org.apache.tsfile.external.commons.io.FileUtils;
import org.slf4j.Logger;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/DataDriverTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/DataDriverTest.java
index 9f05490296c..1968a2436e5 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/DataDriverTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/DataDriverTest.java
@@ -19,11 +19,11 @@
package org.apache.iotdb.db.queryengine.execution;
import org.apache.iotdb.commons.concurrent.IoTDBThreadPoolFactory;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.IFullPath;
import org.apache.iotdb.commons.path.NonAlignedFullPath;
import org.apache.iotdb.db.calc_commons.execution.operator.process.LimitOperator;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.node_commons.plan.planner.plan.parameter.InputLocation;
@@ -91,12 +91,12 @@ public class DataDriverTest {
private static final Duration EXECUTION_TIME_SLICE =
new Duration(
- IoTDBDescriptor.getInstance().getConfig().getDriverTaskExecutionTimeSliceInMs(),
+ CommonDescriptor.getInstance().getConfig().getDriverTaskExecutionTimeSliceInMs(),
TimeUnit.MILLISECONDS);
@Before
public void setUp() throws MetadataException, IOException, WriteProcessException {
- IoTDBDescriptor.getInstance().getConfig().setDriverTaskExecutionTimeSliceInMs(10000);
+ CommonDescriptor.getInstance().getConfig().setDriverTaskExecutionTimeSliceInMs(10000);
SeriesReaderTestUtil.setUp(
measurementSchemas, deviceIds, seqResources, unSeqResources, DATA_DRIVER_TEST_SG);
}
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/OperatorMemoryTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/OperatorMemoryTest.java
index 8ae12c07ef5..20e66401667 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/OperatorMemoryTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/OperatorMemoryTest.java
@@ -20,6 +20,7 @@ package org.apache.iotdb.db.queryengine.execution.operator;
import org.apache.iotdb.common.rpc.thrift.TAggregationType;
import org.apache.iotdb.commons.concurrent.IoTDBThreadPoolFactory;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.AlignedFullPath;
import org.apache.iotdb.commons.path.IFullPath;
@@ -37,7 +38,6 @@ import org.apache.iotdb.db.calc_commons.transformation.dag.column.binary.Arithme
import org.apache.iotdb.db.calc_commons.transformation.dag.column.binary.CompareLessEqualColumnTransformer;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.leaf.ConstantColumnTransformer;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.leaf.TimeColumnTransformer;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.queryengine.common.FragmentInstanceId;
import org.apache.iotdb.db.queryengine.common.PlanFragmentId;
@@ -530,13 +530,13 @@ public class OperatorMemoryTest {
null);
assertEquals(
- 2048 + 512 + IoTDBDescriptor.getInstance().getConfig().getSortBufferSize(),
+ 2048 + 512 + CommonDescriptor.getInstance().getConfig().getSortBufferSize(),
treeSortOperator.calculateMaxPeekMemory());
assertEquals(
TSFileDescriptor.getInstance().getConfig().getMaxTsBlockSizeInBytes(),
treeSortOperator.calculateMaxReturnSize());
assertEquals(
- 512 + IoTDBDescriptor.getInstance().getConfig().getSortBufferSize(),
+ 512 + CommonDescriptor.getInstance().getConfig().getSortBufferSize(),
treeSortOperator.calculateRetainedSizeAfterCallingNext());
}
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/SortOperatorSortBranchTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/SortOperatorSortBranchTest.java
index 62bdfe1cbf2..0b36fb00c44 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/SortOperatorSortBranchTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/SortOperatorSortBranchTest.java
@@ -20,6 +20,7 @@
package org.apache.iotdb.db.queryengine.execution.operator;
import org.apache.iotdb.commons.concurrent.IoTDBThreadPoolFactory;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.db.calc_commons.execution.operator.Operator;
import org.apache.iotdb.db.calc_commons.execution.operator.OperatorContext;
@@ -75,10 +76,10 @@ public class SortOperatorSortBranchTest {
public void setUp() throws MetadataException, IOException, WriteProcessException {
dataNodeId = IoTDBDescriptor.getInstance().getConfig().getDataNodeId();
maxTsBlockSizeInBytes = TSFileDescriptor.getInstance().getConfig().getMaxTsBlockSizeInBytes();
- sortBufferSize = IoTDBDescriptor.getInstance().getConfig().getSortBufferSize();
+ sortBufferSize = CommonDescriptor.getInstance().getConfig().getSortBufferSize();
IoTDBDescriptor.getInstance().getConfig().setDataNodeId(0);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockSizeInBytes(15);
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(150);
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(150);
}
@After
@@ -86,7 +87,7 @@ public class SortOperatorSortBranchTest {
cleanDir(sortDir);
IoTDBDescriptor.getInstance().getConfig().setDataNodeId(dataNodeId);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockSizeInBytes(maxTsBlockSizeInBytes);
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
}
private SortOperator genSortOperator() {
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/TreeSortOperatorTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/TreeSortOperatorTest.java
index 27ac2512732..11e35fdd0cc 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/TreeSortOperatorTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/TreeSortOperatorTest.java
@@ -20,6 +20,7 @@
package org.apache.iotdb.db.queryengine.execution.operator;
import org.apache.iotdb.commons.concurrent.IoTDBThreadPoolFactory;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.NonAlignedFullPath;
import org.apache.iotdb.db.calc_commons.execution.operator.Operator;
@@ -237,8 +238,8 @@ public class TreeSortOperatorTest {
// with data spilling
@Test
public void sortOperatorSpillingTest() throws Exception {
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(5000);
- long sortBufferSize = IoTDBDescriptor.getInstance().getConfig().getSortBufferSize();
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(5000);
+ long sortBufferSize = CommonDescriptor.getInstance().getConfig().getSortBufferSize();
try (TreeSortOperator root = (TreeSortOperator) genSortOperator(Ordering.ASC, true)) {
int lastValue = -1;
int count = 0;
@@ -258,7 +259,7 @@ public class TreeSortOperatorTest {
}
assertEquals(500, count);
} finally {
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
}
}
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/TableStreamSortOperatorTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/TableStreamSortOperatorTest.java
index d5ec53397ec..238fa37c94d 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/TableStreamSortOperatorTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/TableStreamSortOperatorTest.java
@@ -20,11 +20,11 @@
package org.apache.iotdb.db.queryengine.execution.operator.process;
import org.apache.iotdb.commons.concurrent.IoTDBThreadPoolFactory;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.db.calc_commons.execution.operator.Operator;
import org.apache.iotdb.db.calc_commons.execution.operator.OperatorContext;
import org.apache.iotdb.db.calc_commons.execution.operator.process.TableStreamSortOperator;
import org.apache.iotdb.db.calc_commons.plan.planner.CommonOperatorUtils;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.node_commons.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.node_commons.plan.relational.planner.SortOrder;
import org.apache.iotdb.db.queryengine.common.FragmentInstanceId;
@@ -241,10 +241,10 @@ public class TableStreamSortOperatorTest {
@Test
public void someInDiskTest() {
- long sortBufferSize = IoTDBDescriptor.getInstance().getConfig().getSortBufferSize();
+ long sortBufferSize = CommonDescriptor.getInstance().getConfig().getSortBufferSize();
int maxTsBlockSizeInBytes =
TSFileDescriptor.getInstance().getConfig().getMaxTsBlockSizeInBytes();
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(510);
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(510);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockSizeInBytes(50);
try (TableStreamSortOperator tableStreamSortOperator = genStreamSortOperator(1000)) {
int count = 0;
@@ -282,18 +282,18 @@ public class TableStreamSortOperatorTest {
e.printStackTrace();
fail(e.getMessage());
} finally {
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockSizeInBytes(maxTsBlockSizeInBytes);
}
}
@Test
public void someInDiskTest2() {
- long sortBufferSize = IoTDBDescriptor.getInstance().getConfig().getSortBufferSize();
+ long sortBufferSize = CommonDescriptor.getInstance().getConfig().getSortBufferSize();
int maxTsBlockSizeInBytes =
TSFileDescriptor.getInstance().getConfig().getMaxTsBlockSizeInBytes();
int maxTsBlockLineNumber = TSFileDescriptor.getInstance().getConfig().getMaxTsBlockLineNumber();
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(1000);
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(1000);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockSizeInBytes(100);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockLineNumber(2);
try (TableStreamSortOperator tableStreamSortOperator = genStreamSortOperator(2)) {
@@ -333,7 +333,7 @@ public class TableStreamSortOperatorTest {
e.printStackTrace();
fail(e.getMessage());
} finally {
- IoTDBDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
+ CommonDescriptor.getInstance().getConfig().setSortBufferSize(sortBufferSize);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockSizeInBytes(maxTsBlockSizeInBytes);
TSFileDescriptor.getInstance().getConfig().setMaxTsBlockLineNumber(maxTsBlockLineNumber);
}
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/tvf/TableFunctionOperatorTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/tvf/TableFunctionOperatorTest.java
index 035eeb9270e..ce6ce3d01b2 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/tvf/TableFunctionOperatorTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/tvf/TableFunctionOperatorTest.java
@@ -22,6 +22,7 @@ package org.apache.iotdb.db.queryengine.execution.operator.process.tvf;
import org.apache.iotdb.commons.concurrent.IoTDBThreadPoolFactory;
import org.apache.iotdb.db.calc_commons.execution.operator.Operator;
import org.apache.iotdb.db.calc_commons.execution.operator.OperatorContext;
+import org.apache.iotdb.db.calc_commons.execution.operator.process.function.PartitionRecognizer;
import org.apache.iotdb.db.calc_commons.execution.operator.process.function.partition.PartitionState;
import org.apache.iotdb.db.calc_commons.execution.operator.process.function.partition.Slice;
import org.apache.iotdb.db.queryengine.common.FragmentInstanceId;
@@ -30,7 +31,6 @@ import org.apache.iotdb.db.queryengine.common.QueryId;
import org.apache.iotdb.db.queryengine.execution.driver.DriverContext;
import org.apache.iotdb.db.queryengine.execution.fragment.FragmentInstanceContext;
import org.apache.iotdb.db.queryengine.execution.fragment.FragmentInstanceStateMachine;
-import org.apache.iotdb.db.queryengine.execution.operator.process.function.PartitionRecognizer;
import org.apache.iotdb.udf.api.relational.access.Record;
import org.apache.tsfile.common.conf.TSFileConfig;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java
index 2eedf5c62e4..6edb04d7ca8 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSMetadata.java
@@ -26,6 +26,7 @@ import org.apache.iotdb.commons.partition.SchemaPartition;
import org.apache.iotdb.commons.path.PathPatternTree;
import org.apache.iotdb.commons.schema.table.InsertNodeMeasurementInfo;
import org.apache.iotdb.commons.schema.table.column.TsTableColumnCategory;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.db.node_commons.common.SessionInfo;
import org.apache.iotdb.db.node_commons.plan.relational.function.OperatorType;
import org.apache.iotdb.db.node_commons.plan.relational.sql.ast.Expression;
@@ -46,7 +47,6 @@ import org.apache.iotdb.db.queryengine.plan.relational.metadata.QualifiedObjectN
import org.apache.iotdb.db.queryengine.plan.relational.metadata.TableSchema;
import org.apache.iotdb.db.queryengine.plan.relational.metadata.fetcher.TableHeaderSchemaValidator;
import org.apache.iotdb.db.queryengine.plan.relational.security.AccessControl;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.mpp.rpc.thrift.TRegionRouteReq;
import org.apache.iotdb.udf.api.relational.TableFunction;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java
index 83ce87c2fe1..87b84356baf 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMetadata.java
@@ -27,6 +27,7 @@ import org.apache.iotdb.commons.path.PathPatternTree;
import org.apache.iotdb.commons.schema.table.InsertNodeMeasurementInfo;
import org.apache.iotdb.commons.schema.table.TsTable;
import org.apache.iotdb.commons.schema.table.column.TsTableColumnCategory;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.db.calc_commons.plan.udf.TableUDFUtils;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.node_commons.common.SessionInfo;
@@ -59,7 +60,6 @@ import org.apache.iotdb.db.queryengine.plan.relational.metadata.TableSchema;
import org.apache.iotdb.db.queryengine.plan.relational.metadata.TreeDeviceViewSchema;
import org.apache.iotdb.db.queryengine.plan.relational.metadata.fetcher.TableHeaderSchemaValidator;
import org.apache.iotdb.db.queryengine.plan.relational.security.AccessControl;
-import org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction;
import org.apache.iotdb.db.schemaengine.table.InformationSchemaUtils;
import org.apache.iotdb.mpp.rpc.thrift.TRegionRouteReq;
import org.apache.iotdb.udf.api.relational.TableFunction;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableRowListTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableRowListTest.java
index 0544f18d4b6..8d3f6a10fc8 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableRowListTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableRowListTest.java
@@ -19,9 +19,10 @@
package org.apache.iotdb.db.queryengine.transformation.datastructure;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.RowListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.RowListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.ElasticSerializableRowList;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableTVListTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableTVListTest.java
index 148d34f54d6..c09b656a789 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableTVListTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/ElasticSerializableTVListTest.java
@@ -19,8 +19,9 @@
package org.apache.iotdb.db.queryengine.transformation.datastructure;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.iterator.TVListForwardIterator;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.iterator.TVListForwardIterator;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/LRUCache.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/LRUCache.java
index 8db52008a41..6d20e2c6ba8 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/LRUCache.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/LRUCache.java
@@ -19,6 +19,8 @@
package org.apache.iotdb.db.queryengine.transformation.datastructure;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.Cache;
+
import java.util.Arrays;
public class LRUCache extends Cache {
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableRowListTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableRowListTest.java
index 266623373e3..7a453b1f67f 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableRowListTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableRowListTest.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.queryengine.transformation.datastructure;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.row.SerializableRowList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.row.SerializableRowList;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.enums.TSDataType;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableTVListTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableTVListTest.java
index bf3f566be7d..5b354833d0b 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableTVListTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/datastructure/SerializableTVListTest.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.queryengine.transformation.datastructure;
-import org.apache.iotdb.db.queryengine.transformation.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.calc_commons.transformation.datastructure.tv.SerializableTVList;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.block.column.ColumnBuilder;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java
index 16cb7bd7327..a55017a1485 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java
@@ -22,13 +22,13 @@ import org.apache.iotdb.commons.cluster.NodeStatus;
import org.apache.iotdb.commons.conf.CommonConfig;
import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.StartupException;
+import org.apache.iotdb.db.calc_commons.plan.udf.UDFManagementService;
import org.apache.iotdb.db.conf.DataNodeMemoryConfig;
import org.apache.iotdb.db.conf.IoTDBConfig;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.StorageEngineException;
import org.apache.iotdb.db.queryengine.execution.fragment.FragmentInstanceContext;
import org.apache.iotdb.db.queryengine.execution.fragment.QueryContext;
-import org.apache.iotdb.db.queryengine.plan.udf.UDFManagementService;
import org.apache.iotdb.db.schemaengine.SchemaEngine;
import org.apache.iotdb.db.storageengine.StorageEngine;
import org.apache.iotdb.db.storageengine.buffer.BloomFilterCache;
diff --git a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/sort/SortUtilTest.java b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/sort/SortUtilTest.java
index dbe51988245..c3475eaa03f 100644
--- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/sort/SortUtilTest.java
+++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/sort/SortUtilTest.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.utils.sort;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.utils.FileUtils;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.utils.datastructure.MergeSortKey;
import org.apache.iotdb.db.utils.datastructure.SortKey;
@@ -98,7 +98,7 @@ public class SortUtilTest {
SortBufferManager sortBufferManager =
new SortBufferManager(
TSFileDescriptor.getInstance().getConfig().getMaxTsBlockSizeInBytes(),
- IoTDBDescriptor.getInstance().getConfig().getSortBufferSize());
+ CommonDescriptor.getInstance().getConfig().getSortBufferSize());
try {
sortBufferManager.allocateOneSortBranch();
diskSpiller.spillSortedData(sortKeyList);
diff --git a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java
index dcf5e36ea58..222dd1fce59 100644
--- a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java
+++ b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java
@@ -489,6 +489,18 @@ public class CommonConfig {
private int pathLogMaxSize = 100;
private boolean restrictObjectLimit = false;
+ /**
+ * Used to estimate the memory usage of text fields in a UDF query. It is recommended to set this
+ * value to be slightly larger than the average length of all text records.
+ */
+ private int udfInitialByteArrayLengthForMemoryControl = 48;
+
+ /** The buffer for sort operation */
+ private long sortBufferSize = 32 * 1024 * 1024L;
+
+ /** Maximum execution time of a DriverTask */
+ private int driverTaskExecutionTimeSliceInMs = 200;
+
CommonConfig() {
// Empty constructor
}
@@ -2856,4 +2868,29 @@ public class CommonConfig {
public void setRestrictObjectLimit(boolean restrictObjectLimit) {
this.restrictObjectLimit = restrictObjectLimit;
}
+
+ public int getUdfInitialByteArrayLengthForMemoryControl() {
+ return udfInitialByteArrayLengthForMemoryControl;
+ }
+
+ public void setUdfInitialByteArrayLengthForMemoryControl(
+ int udfInitialByteArrayLengthForMemoryControl) {
+ this.udfInitialByteArrayLengthForMemoryControl = udfInitialByteArrayLengthForMemoryControl;
+ }
+
+ public void setSortBufferSize(long sortBufferSize) {
+ this.sortBufferSize = sortBufferSize;
+ }
+
+ public long getSortBufferSize() {
+ return sortBufferSize;
+ }
+
+ public int getDriverTaskExecutionTimeSliceInMs() {
+ return driverTaskExecutionTimeSliceInMs;
+ }
+
+ public void setDriverTaskExecutionTimeSliceInMs(int driverTaskExecutionTimeSliceInMs) {
+ this.driverTaskExecutionTimeSliceInMs = driverTaskExecutionTimeSliceInMs;
+ }
}
(iotdb) 03/04: move TemporaryQueryDataFileService
Posted by sh...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a commit to branch calc_commons
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 02bc3f281612eca75ed5bbf5cfac6918f56ae44f
Author: shuwenwei <s1...@gmail.com>
AuthorDate: Mon Apr 20 10:09:41 2026 +0800
move TemporaryQueryDataFileService
---
.../iotdb/confignode/conf/ConfigNodeConfig.java | 2 +
.../aggregation/TableModeAccumulator.java | 4 +-
.../grouped/GroupedModeAccumulator.java | 4 +-
.../relational/ColumnTransformerBuilder.java | 6 +-
.../datastructure/SerializableList.java | 4 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 11 +--
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 9 +-
.../AbstractTemporaryQueryDataFileService.java} | 64 ++++++-------
.../ITemporaryQueryDataFileServiceProvider.java | 25 +++++
.../transformation/dag/udf/UDTFContext.java | 4 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 3 +-
...aNodeTemporaryQueryDataFileServiceProvider.java | 32 +++++++
.../db/service/TemporaryQueryDataFileService.java | 105 +--------------------
....service.ITemporaryQueryDataFileServiceProvider | 1 +
.../apache/iotdb/commons/conf/CommonConfig.java | 20 ++++
15 files changed, 135 insertions(+), 159 deletions(-)
diff --git a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java
index 59b318a4b11..3f92340d431 100644
--- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java
+++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java
@@ -24,6 +24,7 @@ import org.apache.iotdb.common.rpc.thrift.TConsensusGroupId;
import org.apache.iotdb.common.rpc.thrift.TConsensusGroupType;
import org.apache.iotdb.common.rpc.thrift.TEndPoint;
import org.apache.iotdb.commons.client.property.ClientPoolProperty.DefaultProperty;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.conf.IoTDBConstant;
import org.apache.iotdb.confignode.manager.load.balancer.RegionBalancer;
import org.apache.iotdb.confignode.manager.load.balancer.router.leader.AbstractLeaderBalancer;
@@ -377,6 +378,7 @@ public class ConfigNodeConfig {
public void setConfigNodeId(int configNodeId) {
this.configNodeId = configNodeId;
+ CommonDescriptor.getInstance().getConfig().setNodeId(configNodeId);
}
public String getInternalAddress() {
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/TableModeAccumulator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/TableModeAccumulator.java
index 01c3609d158..59e240c9bfe 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/TableModeAccumulator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/TableModeAccumulator.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.calc_commons.execution.operator.source.relational.aggregation;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.block.column.ColumnBuilder;
@@ -44,7 +44,7 @@ import static org.apache.tsfile.utils.BytesUtils.bytesToLongFromOffset;
public class TableModeAccumulator implements TableAccumulator {
private final int MAP_SIZE_THRESHOLD =
- IoTDBDescriptor.getInstance().getConfig().getModeMapSizeThreshold();
+ CommonDescriptor.getInstance().getConfig().getModeMapSizeThreshold();
private static final long INSTANCE_SIZE =
RamUsageEstimator.shallowSizeOfInstance(TableModeAccumulator.class);
private final TSDataType seriesDataType;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/grouped/GroupedModeAccumulator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/grouped/GroupedModeAccumulator.java
index 6697117e3bc..0bdc0755dbf 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/grouped/GroupedModeAccumulator.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/operator/source/relational/aggregation/grouped/GroupedModeAccumulator.java
@@ -19,10 +19,10 @@
package org.apache.iotdb.db.calc_commons.execution.operator.source.relational.aggregation.grouped;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.db.calc_commons.execution.operator.source.relational.aggregation.AggregationMask;
import org.apache.iotdb.db.calc_commons.execution.operator.source.relational.aggregation.grouped.array.LongBigArray;
import org.apache.iotdb.db.calc_commons.execution.operator.source.relational.aggregation.grouped.array.MapBigArray;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.tsfile.block.column.Column;
import org.apache.tsfile.block.column.ColumnBuilder;
@@ -48,7 +48,7 @@ import static org.apache.tsfile.utils.TsPrimitiveType.getByType;
public class GroupedModeAccumulator implements GroupedAccumulator {
private final int MAP_SIZE_THRESHOLD =
- IoTDBDescriptor.getInstance().getConfig().getModeMapSizeThreshold();
+ CommonDescriptor.getInstance().getConfig().getModeMapSizeThreshold();
private static final long INSTANCE_SIZE =
RamUsageEstimator.shallowSizeOfInstance(GroupedModeAccumulator.class);
private final TSDataType seriesDataType;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java
index 0f287136560..5dfba318449 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/execution/relational/ColumnTransformerBuilder.java
@@ -19,6 +19,7 @@
package org.apache.iotdb.db.calc_commons.execution.relational;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.udf.builtin.relational.TableBuiltinScalarFunction;
import org.apache.iotdb.commons.udf.utils.UDFDataTypeTransformer;
import org.apache.iotdb.db.calc_commons.plan.relational.metadata.ITypeMetadata;
@@ -146,7 +147,6 @@ import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.scalar.T
import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.scalar.UpperColumnTransformer;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.scalar.factory.CodecStrategiesFactory;
import org.apache.iotdb.db.calc_commons.transformation.dag.column.unary.scalar.factory.NumericCodecStrategiesFactory;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.node_commons.common.SessionInfo;
import org.apache.iotdb.db.node_commons.plan.analyze.ITableTypeProvider;
@@ -1493,8 +1493,8 @@ public class ColumnTransformerBuilder
}
throw new IllegalArgumentException(
String.format(
- "Unknown function %s on DataNode: %d.",
- functionName, IoTDBDescriptor.getInstance().getConfig().getDataNodeId()));
+ "Unknown function %s on Node: %d.",
+ functionName, CommonDescriptor.getInstance().getConfig().getNodeId()));
}
@Override
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/SerializableList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/SerializableList.java
index f957d9a0c53..7f43cdf29ce 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/SerializableList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/calc_commons/transformation/datastructure/SerializableList.java
@@ -21,7 +21,7 @@ package org.apache.iotdb.db.calc_commons.transformation.datastructure;
import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.iotdb.commons.file.SystemFileFactory;
-import org.apache.iotdb.db.service.TemporaryQueryDataFileService;
+import org.apache.iotdb.db.node_commons.service.AbstractTemporaryQueryDataFileService;
import org.apache.tsfile.utils.PublicBAOS;
@@ -129,7 +129,7 @@ public interface SerializableList {
public RandomAccessFile getFile() throws IOException {
if (file == null) {
if (fileName == null) {
- fileName = TemporaryQueryDataFileService.getInstance().register(this);
+ fileName = AbstractTemporaryQueryDataFileService.getInstance().register(this);
}
file = new RandomAccessFile(SystemFileFactory.INSTANCE.getFile(fileName), "rw");
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
index 6d6556987be..d147e39c659 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
@@ -340,8 +340,6 @@ public class IoTDBConfig {
private int mergeThresholdOfExplainAnalyze = 10;
- private int modeMapSizeThreshold = 10000;
-
/** How many queries can be concurrently executed. When <= 0, use 1000. */
private int maxAllowedConcurrentQueries = 1000;
@@ -3241,6 +3239,7 @@ public class IoTDBConfig {
public void setDataNodeId(int dataNodeId) {
this.dataNodeId = dataNodeId;
+ CommonDescriptor.getInstance().getConfig().setNodeId(dataNodeId);
}
public int getPartitionCacheSize() {
@@ -3864,14 +3863,6 @@ public class IoTDBConfig {
this.candidateCompactionTaskQueueSize = candidateCompactionTaskQueueSize;
}
- public void setModeMapSizeThreshold(int modeMapSizeThreshold) {
- this.modeMapSizeThreshold = modeMapSizeThreshold;
- }
-
- public int getModeMapSizeThreshold() {
- return modeMapSizeThreshold;
- }
-
public double getMaxAllocateMemoryRatioForLoad() {
return maxAllocateMemoryRatioForLoad;
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
index 966a5bc9934..e65b96d29ee 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
@@ -538,13 +538,14 @@ public class IoTDBDescriptor {
"merge_threshold_of_explain_analyze",
Integer.toString(conf.getMergeThresholdOfExplainAnalyze()))));
- conf.setModeMapSizeThreshold(
+ commonConfig.setModeMapSizeThreshold(
Integer.parseInt(
properties.getProperty(
- "mode_map_size_threshold", Integer.toString(conf.getModeMapSizeThreshold()))));
+ "mode_map_size_threshold",
+ Integer.toString(commonConfig.getModeMapSizeThreshold()))));
- if (conf.getModeMapSizeThreshold() <= 0) {
- conf.setModeMapSizeThreshold(10000);
+ if (commonConfig.getModeMapSizeThreshold() <= 0) {
+ commonConfig.setModeMapSizeThreshold(10000);
}
conf.setMaxAllowedConcurrentQueries(
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/service/AbstractTemporaryQueryDataFileService.java
similarity index 69%
copy from iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
copy to iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/service/AbstractTemporaryQueryDataFileService.java
index 1f789468ad7..9776a5bdeea 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/service/AbstractTemporaryQueryDataFileService.java
@@ -17,14 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.service;
+package org.apache.iotdb.db.node_commons.service;
import org.apache.iotdb.commons.exception.StartupException;
import org.apache.iotdb.commons.file.SystemFileFactory;
import org.apache.iotdb.commons.service.IService;
import org.apache.iotdb.commons.service.ServiceType;
import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList.SerializationRecorder;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.tsfile.external.commons.io.FileUtils;
import org.slf4j.Logger;
@@ -36,28 +35,41 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
+import java.util.ServiceLoader;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicLong;
-public class TemporaryQueryDataFileService implements IService {
+public abstract class AbstractTemporaryQueryDataFileService implements IService {
- private static final Logger logger = LoggerFactory.getLogger(TemporaryQueryDataFileService.class);
+ private static final Logger logger =
+ LoggerFactory.getLogger(AbstractTemporaryQueryDataFileService.class);
+ private static final AbstractTemporaryQueryDataFileService INSTANCE = loadService();
- private static final String TEMPORARY_FILE_DIR =
- IoTDBDescriptor.getInstance().getConfig().getSystemDir()
- + File.separator
- + "udf"
- + File.separator
- + "tmp";
+ private final AtomicLong uniqueDataId = new AtomicLong(0);
+ private final Map<String, List<SerializationRecorder>> recorders = new ConcurrentHashMap<>();
- private final AtomicLong uniqueDataId;
- private final Map<String, List<SerializationRecorder>> recorders;
+ public static AbstractTemporaryQueryDataFileService getInstance() {
+ return INSTANCE;
+ }
- private TemporaryQueryDataFileService() {
- uniqueDataId = new AtomicLong(0);
- recorders = new ConcurrentHashMap<>();
+ private static AbstractTemporaryQueryDataFileService loadService() {
+ AbstractTemporaryQueryDataFileService service = null;
+ ServiceLoader<ITemporaryQueryDataFileServiceProvider> loader =
+ ServiceLoader.load(ITemporaryQueryDataFileServiceProvider.class);
+ for (ITemporaryQueryDataFileServiceProvider provider : loader) {
+ if (service != null) {
+ throw new IllegalStateException("Multiple ITemporaryQueryDataFileServiceProvider found");
+ }
+ service = provider.getService();
+ }
+ if (service == null) {
+ throw new IllegalStateException("No ITemporaryQueryDataFileServiceProvider found");
+ }
+ return service;
}
+ protected abstract String getTemporaryFileDir();
+
public String register(SerializationRecorder recorder) throws IOException {
String queryId = recorder.getQueryId();
recorders
@@ -99,7 +111,7 @@ public class TemporaryQueryDataFileService implements IService {
}
private String getDirName(String queryId) {
- return TEMPORARY_FILE_DIR + File.separator + queryId + File.separator;
+ return getTemporaryFileDir() + File.separator + queryId + File.separator;
}
private String getFileName(String dir, long index) {
@@ -110,11 +122,11 @@ public class TemporaryQueryDataFileService implements IService {
public void start() throws StartupException {
try {
// Clean up stale temp directories left from previous runs (e.g., after a crash)
- File tmpDir = SystemFileFactory.INSTANCE.getFile(TEMPORARY_FILE_DIR);
+ File tmpDir = SystemFileFactory.INSTANCE.getFile(getTemporaryFileDir());
if (tmpDir.exists()) {
FileUtils.deleteDirectory(tmpDir);
}
- makeDirIfNecessary(TEMPORARY_FILE_DIR);
+ makeDirIfNecessary(getTemporaryFileDir());
} catch (IOException e) {
throw new StartupException(e);
}
@@ -124,9 +136,9 @@ public class TemporaryQueryDataFileService implements IService {
public void stop() {
recorders.clear();
try {
- FileUtils.deleteDirectory(SystemFileFactory.INSTANCE.getFile(TEMPORARY_FILE_DIR));
+ FileUtils.deleteDirectory(SystemFileFactory.INSTANCE.getFile(getTemporaryFileDir()));
} catch (IOException e) {
- logger.warn("Failed to delete temp dir {}.", TEMPORARY_FILE_DIR, e);
+ logger.warn("Failed to delete temp dir {}.", getTemporaryFileDir(), e);
}
}
@@ -134,16 +146,4 @@ public class TemporaryQueryDataFileService implements IService {
public ServiceType getID() {
return ServiceType.TEMPORARY_QUERY_DATA_FILE_SERVICE;
}
-
- public static TemporaryQueryDataFileService getInstance() {
- return TemporaryQueryDataFileServiceHelper.INSTANCE;
- }
-
- private static class TemporaryQueryDataFileServiceHelper {
-
- private static final TemporaryQueryDataFileService INSTANCE =
- new TemporaryQueryDataFileService();
-
- private TemporaryQueryDataFileServiceHelper() {}
- }
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/service/ITemporaryQueryDataFileServiceProvider.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/service/ITemporaryQueryDataFileServiceProvider.java
new file mode 100644
index 00000000000..204825a5573
--- /dev/null
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/node_commons/service/ITemporaryQueryDataFileServiceProvider.java
@@ -0,0 +1,25 @@
+/*
+ * 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.node_commons.service;
+
+public interface ITemporaryQueryDataFileServiceProvider {
+
+ AbstractTemporaryQueryDataFileService getService();
+}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java
index 8c37045c124..5cd7c56a8b3 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/udf/UDTFContext.java
@@ -21,9 +21,9 @@ package org.apache.iotdb.db.queryengine.transformation.dag.udf;
import org.apache.iotdb.commons.udf.service.UDFClassLoaderManager;
import org.apache.iotdb.db.calc_commons.transformation.dag.udf.UDTFExecutor;
+import org.apache.iotdb.db.node_commons.service.AbstractTemporaryQueryDataFileService;
import org.apache.iotdb.db.queryengine.plan.expression.Expression;
import org.apache.iotdb.db.queryengine.plan.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.service.TemporaryQueryDataFileService;
import java.time.ZoneId;
import java.util.HashMap;
@@ -53,7 +53,7 @@ public class UDTFContext {
} finally {
UDFClassLoaderManager.getInstance().finalizeUDFQuery(queryId);
// close and delete UDF temp files
- TemporaryQueryDataFileService.getInstance().deregister(queryId);
+ AbstractTemporaryQueryDataFileService.getInstance().deregister(queryId);
}
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java
index f042e56f45b..ae506274aca 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNode.java
@@ -78,6 +78,7 @@ import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.conf.IoTDBStartCheck;
import org.apache.iotdb.db.consensus.DataRegionConsensusImpl;
import org.apache.iotdb.db.consensus.SchemaRegionConsensusImpl;
+import org.apache.iotdb.db.node_commons.service.AbstractTemporaryQueryDataFileService;
import org.apache.iotdb.db.pipe.agent.PipeDataNodeAgent;
import org.apache.iotdb.db.protocol.client.ConfigNodeClient;
import org.apache.iotdb.db.protocol.client.ConfigNodeClientManager;
@@ -995,7 +996,7 @@ public class DataNode extends ServerCommandLine implements DataNodeMBean {
}
private void registerUdfServices() throws StartupException {
- registerManager.register(TemporaryQueryDataFileService.getInstance());
+ registerManager.register(AbstractTemporaryQueryDataFileService.getInstance());
registerManager.register(UDFClassLoaderManager.setupAndGetInstance(config.getUdfDir()));
}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNodeTemporaryQueryDataFileServiceProvider.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNodeTemporaryQueryDataFileServiceProvider.java
new file mode 100644
index 00000000000..ce4f49be03a
--- /dev/null
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/DataNodeTemporaryQueryDataFileServiceProvider.java
@@ -0,0 +1,32 @@
+/*
+ * 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.service;
+
+import org.apache.iotdb.db.node_commons.service.AbstractTemporaryQueryDataFileService;
+import org.apache.iotdb.db.node_commons.service.ITemporaryQueryDataFileServiceProvider;
+
+public class DataNodeTemporaryQueryDataFileServiceProvider
+ implements ITemporaryQueryDataFileServiceProvider {
+
+ @Override
+ public AbstractTemporaryQueryDataFileService getService() {
+ return TemporaryQueryDataFileService.getInstance();
+ }
+}
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
index 1f789468ad7..d9e05143a89 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
@@ -19,29 +19,12 @@
package org.apache.iotdb.db.service;
-import org.apache.iotdb.commons.exception.StartupException;
-import org.apache.iotdb.commons.file.SystemFileFactory;
-import org.apache.iotdb.commons.service.IService;
-import org.apache.iotdb.commons.service.ServiceType;
-import org.apache.iotdb.db.calc_commons.transformation.datastructure.SerializableList.SerializationRecorder;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
-
-import org.apache.tsfile.external.commons.io.FileUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.apache.iotdb.db.node_commons.service.AbstractTemporaryQueryDataFileService;
import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.atomic.AtomicLong;
-
-public class TemporaryQueryDataFileService implements IService {
- private static final Logger logger = LoggerFactory.getLogger(TemporaryQueryDataFileService.class);
+public class TemporaryQueryDataFileService extends AbstractTemporaryQueryDataFileService {
private static final String TEMPORARY_FILE_DIR =
IoTDBDescriptor.getInstance().getConfig().getSystemDir()
@@ -50,89 +33,9 @@ public class TemporaryQueryDataFileService implements IService {
+ File.separator
+ "tmp";
- private final AtomicLong uniqueDataId;
- private final Map<String, List<SerializationRecorder>> recorders;
-
- private TemporaryQueryDataFileService() {
- uniqueDataId = new AtomicLong(0);
- recorders = new ConcurrentHashMap<>();
- }
-
- public String register(SerializationRecorder recorder) throws IOException {
- String queryId = recorder.getQueryId();
- recorders
- .computeIfAbsent(queryId, k -> Collections.synchronizedList(new ArrayList<>()))
- .add(recorder);
-
- String dirName = getDirName(queryId);
- makeDirIfNecessary(dirName);
- return getFileName(dirName, uniqueDataId.getAndIncrement());
- }
-
- public void deregister(String queryId) {
- List<SerializationRecorder> recorderList = recorders.remove(queryId);
- if (recorderList == null) {
- return;
- }
- for (SerializationRecorder recorder : recorderList) {
- try {
- recorder.closeFile();
- } catch (IOException e) {
- logger.warn(
- String.format("Failed to close file in method deregister(%s), because %s", queryId, e));
- }
- }
- try {
- FileUtils.deleteDirectory(SystemFileFactory.INSTANCE.getFile(getDirName(queryId)));
- } catch (IOException e) {
- logger.warn(
- String.format("Failed to clean dir in method deregister(%s), because %s", queryId, e));
- }
- }
-
- private void makeDirIfNecessary(String dir) throws IOException {
- File file = SystemFileFactory.INSTANCE.getFile(dir);
- if (file.exists() && file.isDirectory()) {
- return;
- }
- FileUtils.forceMkdir(file);
- }
-
- private String getDirName(String queryId) {
- return TEMPORARY_FILE_DIR + File.separator + queryId + File.separator;
- }
-
- private String getFileName(String dir, long index) {
- return dir + index;
- }
-
- @Override
- public void start() throws StartupException {
- try {
- // Clean up stale temp directories left from previous runs (e.g., after a crash)
- File tmpDir = SystemFileFactory.INSTANCE.getFile(TEMPORARY_FILE_DIR);
- if (tmpDir.exists()) {
- FileUtils.deleteDirectory(tmpDir);
- }
- makeDirIfNecessary(TEMPORARY_FILE_DIR);
- } catch (IOException e) {
- throw new StartupException(e);
- }
- }
-
- @Override
- public void stop() {
- recorders.clear();
- try {
- FileUtils.deleteDirectory(SystemFileFactory.INSTANCE.getFile(TEMPORARY_FILE_DIR));
- } catch (IOException e) {
- logger.warn("Failed to delete temp dir {}.", TEMPORARY_FILE_DIR, e);
- }
- }
-
@Override
- public ServiceType getID() {
- return ServiceType.TEMPORARY_QUERY_DATA_FILE_SERVICE;
+ protected String getTemporaryFileDir() {
+ return TEMPORARY_FILE_DIR;
}
public static TemporaryQueryDataFileService getInstance() {
diff --git a/iotdb-core/datanode/src/main/resources/META-INF/services/org.apache.iotdb.db.node_commons.service.ITemporaryQueryDataFileServiceProvider b/iotdb-core/datanode/src/main/resources/META-INF/services/org.apache.iotdb.db.node_commons.service.ITemporaryQueryDataFileServiceProvider
new file mode 100644
index 00000000000..dbe0c7ff4d8
--- /dev/null
+++ b/iotdb-core/datanode/src/main/resources/META-INF/services/org.apache.iotdb.db.node_commons.service.ITemporaryQueryDataFileServiceProvider
@@ -0,0 +1 @@
+org.apache.iotdb.db.service.DataNodeTemporaryQueryDataFileServiceProvider
diff --git a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java
index 222dd1fce59..7af2e2738e0 100644
--- a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java
+++ b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/CommonConfig.java
@@ -501,6 +501,10 @@ public class CommonConfig {
/** Maximum execution time of a DriverTask */
private int driverTaskExecutionTimeSliceInMs = 200;
+ private int modeMapSizeThreshold = 10000;
+
+ private int nodeId = -1;
+
CommonConfig() {
// Empty constructor
}
@@ -2893,4 +2897,20 @@ public class CommonConfig {
public void setDriverTaskExecutionTimeSliceInMs(int driverTaskExecutionTimeSliceInMs) {
this.driverTaskExecutionTimeSliceInMs = driverTaskExecutionTimeSliceInMs;
}
+
+ public void setModeMapSizeThreshold(int modeMapSizeThreshold) {
+ this.modeMapSizeThreshold = modeMapSizeThreshold;
+ }
+
+ public int getModeMapSizeThreshold() {
+ return modeMapSizeThreshold;
+ }
+
+ public void setNodeId(int nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public int getNodeId() {
+ return nodeId;
+ }
}
(iotdb) 04/04: fix
Posted by sh...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a commit to branch calc_commons
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 6bedeaf179b06801c600b255a61ca27484ded44e
Author: shuwenwei <s1...@gmail.com>
AuthorDate: Mon Apr 20 10:20:40 2026 +0800
fix
---
.../iotdb/itbase/constant/BuiltinAggregationFunctionEnum.java | 6 ++++--
iotdb-core/datanode/src/main/codegen/templates/ModeAccumulator.ftl | 4 ++--
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/integration-test/src/main/java/org/apache/iotdb/itbase/constant/BuiltinAggregationFunctionEnum.java b/integration-test/src/main/java/org/apache/iotdb/itbase/constant/BuiltinAggregationFunctionEnum.java
index 85721cfb7a1..e24cbfbeea2 100644
--- a/integration-test/src/main/java/org/apache/iotdb/itbase/constant/BuiltinAggregationFunctionEnum.java
+++ b/integration-test/src/main/java/org/apache/iotdb/itbase/constant/BuiltinAggregationFunctionEnum.java
@@ -19,6 +19,8 @@
package org.apache.iotdb.itbase.constant;
+import org.apache.iotdb.db.calc_commons.plan.udf.BuiltinAggregationFunction;
+
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
@@ -57,9 +59,9 @@ public enum BuiltinAggregationFunctionEnum {
private static final Set<String> NATIVE_FUNCTION_NAMES =
new HashSet<>(
Arrays.stream(
- org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction.values())
+ BuiltinAggregationFunction.values())
.map(
- org.apache.iotdb.db.queryengine.plan.udf.BuiltinAggregationFunction
+ BuiltinAggregationFunction
::getFunctionName)
.collect(Collectors.toList()));
diff --git a/iotdb-core/datanode/src/main/codegen/templates/ModeAccumulator.ftl b/iotdb-core/datanode/src/main/codegen/templates/ModeAccumulator.ftl
index 4b1097dfd1d..7a3f154f002 100644
--- a/iotdb-core/datanode/src/main/codegen/templates/ModeAccumulator.ftl
+++ b/iotdb-core/datanode/src/main/codegen/templates/ModeAccumulator.ftl
@@ -26,8 +26,8 @@
package org.apache.iotdb.db.calc_commons.execution.aggregation;
import com.google.common.collect.ImmutableList;
+import org.apache.iotdb.commons.conf.CommonDescriptor;
import org.apache.tsfile.external.commons.collections4.comparators.ComparatorChain;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.tsfile.enums.TSDataType;
import org.apache.tsfile.file.metadata.statistics.Statistics;
import org.apache.tsfile.block.column.Column;
@@ -56,7 +56,7 @@ public class ${className} implements Accumulator {
private final Map<${type.javaBoxName}, Pair<Long, Long>> countMap = new HashMap<>();
<#if type.dataType != "boolean">
- private final int MAP_SIZE_THRESHOLD = IoTDBDescriptor.getInstance().getConfig().getModeMapSizeThreshold();
+ private final int MAP_SIZE_THRESHOLD = CommonDescriptor.getInstance().getConfig().getModeMapSizeThreshold();
</#if>
@Override