You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ro...@apache.org on 2022/05/20 20:06:18 UTC
[iotdb] branch master updated: [IOTDB-3249] Migrate udf package to node-commons and redesign the udf package (#5977)
This is an automated email from the ASF dual-hosted git repository.
rong pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 8f81a4334d [IOTDB-3249] Migrate udf package to node-commons and redesign the udf package (#5977)
8f81a4334d is described below
commit 8f81a4334d91734996e995a76c745e6be38458ca
Author: Steve Yurong Su <ro...@apache.org>
AuthorDate: Sat May 21 04:06:12 2022 +0800
[IOTDB-3249] Migrate udf package to node-commons and redesign the udf package (#5977)
1. Migrate part of the udf package to node-commons for further mpp cluster development
2. Redesign the package structure of udf for better understanding
3. Move the expression package and the transformer package into mpp package
---
.../query/ClusterPhysicalGeneratorTest.java | 4 +-
.../query/last/ClusterLastQueryExecutorTest.java | 2 +-
.../java/org/apache/iotdb/udf/UDTFExample.java | 14 +--
.../iotdb/db/query/udf/example/Accumulator.java | 22 ++---
.../apache/iotdb/db/query/udf/example/Adder.java | 14 +--
.../apache/iotdb/db/query/udf/example/Counter.java | 18 ++--
.../org/apache/iotdb/db/query/udf/example/Max.java | 14 +--
.../iotdb/db/query/udf/example/Multiplier.java | 14 +--
.../SlidingSizeWindowConstructorTester0.java | 12 +--
.../SlidingSizeWindowConstructorTester1.java | 14 +--
.../SlidingTimeWindowConstructionTester.java | 16 ++--
.../db/query/udf/example/TerminateTester.java | 12 +--
.../iotdb/db/query/udf/example/ValidateTester.java | 10 +-
.../iotdb/db/query/udf/example/WindowStartEnd.java | 14 +--
.../IoTDBSyntaxConventionStringLiteralIT.java | 2 +-
.../iotdb/db/integration/IoTDBUDFManagementIT.java | 2 +-
.../org/apache/iotdb/library/anomaly/UDTFIQR.java | 14 +--
.../apache/iotdb/library/anomaly/UDTFKSigma.java | 14 +--
.../org/apache/iotdb/library/anomaly/UDTFLOF.java | 14 +--
.../iotdb/library/anomaly/UDTFMissDetect.java | 14 +--
.../apache/iotdb/library/anomaly/UDTFRange.java | 14 +--
.../iotdb/library/anomaly/UDTFTwoSidedFilter.java | 14 +--
.../iotdb/library/anomaly/util/MissDetector.java | 4 +-
.../iotdb/library/anomaly/util/WindowDetect.java | 4 +-
.../org/apache/iotdb/library/dmatch/UDAFCov.java | 14 +--
.../org/apache/iotdb/library/dmatch/UDAFDtw.java | 16 ++--
.../apache/iotdb/library/dmatch/UDAFPearson.java | 14 +--
.../apache/iotdb/library/dmatch/UDTFPtnSym.java | 16 ++--
.../org/apache/iotdb/library/dmatch/UDTFXCorr.java | 14 +--
.../iotdb/library/dprofile/UDAFIntegral.java | 14 +--
.../iotdb/library/dprofile/UDAFIntegralAvg.java | 14 +--
.../org/apache/iotdb/library/dprofile/UDAFMad.java | 14 +--
.../apache/iotdb/library/dprofile/UDAFMedian.java | 14 +--
.../apache/iotdb/library/dprofile/UDAFMode.java | 14 +--
.../iotdb/library/dprofile/UDAFPercentile.java | 14 +--
.../apache/iotdb/library/dprofile/UDAFPeriod.java | 18 ++--
.../apache/iotdb/library/dprofile/UDAFSkew.java | 14 +--
.../apache/iotdb/library/dprofile/UDAFSpread.java | 14 +--
.../apache/iotdb/library/dprofile/UDAFStddev.java | 14 +--
.../org/apache/iotdb/library/dprofile/UDTFACF.java | 14 +--
.../iotdb/library/dprofile/UDTFDistinct.java | 14 +--
.../iotdb/library/dprofile/UDTFHistogram.java | 14 +--
.../apache/iotdb/library/dprofile/UDTFMinMax.java | 14 +--
.../apache/iotdb/library/dprofile/UDTFMvAvg.java | 14 +--
.../apache/iotdb/library/dprofile/UDTFPACF.java | 14 +--
.../org/apache/iotdb/library/dprofile/UDTFQLB.java | 14 +--
.../iotdb/library/dprofile/UDTFResample.java | 14 +--
.../apache/iotdb/library/dprofile/UDTFSample.java | 20 ++--
.../apache/iotdb/library/dprofile/UDTFSegment.java | 14 +--
.../apache/iotdb/library/dprofile/UDTFSpline.java | 14 +--
.../apache/iotdb/library/dprofile/UDTFZScore.java | 14 +--
.../dprofile/util/ExactOrderStatistics.java | 4 +-
.../iotdb/library/dquality/UDTFCompleteness.java | 14 +--
.../iotdb/library/dquality/UDTFConsistency.java | 14 +--
.../iotdb/library/dquality/UDTFTimeliness.java | 14 +--
.../iotdb/library/dquality/UDTFValidity.java | 14 +--
.../library/dquality/util/TimeSeriesQuality.java | 4 +-
.../iotdb/library/drepair/UDTFTimestampRepair.java | 14 +--
.../iotdb/library/drepair/UDTFValueFill.java | 14 +--
.../iotdb/library/drepair/UDTFValueRepair.java | 14 +--
.../apache/iotdb/library/drepair/util/ARFill.java | 4 +-
.../iotdb/library/drepair/util/LikelihoodFill.java | 2 +-
.../iotdb/library/drepair/util/LinearFill.java | 2 +-
.../iotdb/library/drepair/util/LsGreedy.java | 2 +-
.../apache/iotdb/library/drepair/util/MAFill.java | 2 +-
.../iotdb/library/drepair/util/MeanFill.java | 2 +-
.../iotdb/library/drepair/util/PreviousFill.java | 2 +-
.../apache/iotdb/library/drepair/util/Screen.java | 2 +-
.../iotdb/library/drepair/util/ScreenFill.java | 4 +-
.../library/drepair/util/TimestampRepair.java | 4 +-
.../iotdb/library/drepair/util/ValueFill.java | 6 +-
.../iotdb/library/drepair/util/ValueRepair.java | 4 +-
.../apache/iotdb/library/frequency/UDTFConv.java | 14 +--
.../apache/iotdb/library/frequency/UDTFDWT.java | 14 +--
.../apache/iotdb/library/frequency/UDTFDeconv.java | 14 +--
.../apache/iotdb/library/frequency/UDTFFFT.java | 14 +--
.../iotdb/library/frequency/UDTFHighPass.java | 14 +--
.../apache/iotdb/library/frequency/UDTFIDWT.java | 14 +--
.../apache/iotdb/library/frequency/UDTFIFFT.java | 14 +--
.../iotdb/library/frequency/UDTFLowPass.java | 14 +--
.../iotdb/library/frequency/util/FFTUtil.java | 2 +-
.../library/series/UDTFConsecutiveSequences.java | 14 +--
.../library/series/UDTFConsecutiveWindows.java | 14 +--
.../iotdb/library/series/util/ConsecutiveUtil.java | 4 +-
.../iotdb/library/string/UDTFRegexMatch.java | 14 +--
.../iotdb/library/string/UDTFRegexReplace.java | 14 +--
.../iotdb/library/string/UDTFRegexSplit.java | 14 +--
.../iotdb/library/string/UDTFStrReplace.java | 14 +--
.../iotdb/library/util/LinearRegression.java | 2 +-
.../java/org/apache/iotdb/library/util/Util.java | 4 +-
.../org/apache/iotdb/commons}/udf/api/UDF.java | 8 +-
.../org/apache/iotdb/commons}/udf/api/UDTF.java | 20 ++--
.../apache/iotdb/commons}/udf/api/access/Row.java | 2 +-
.../iotdb/commons}/udf/api/access/RowIterator.java | 2 +-
.../iotdb/commons}/udf/api/access/RowWindow.java | 6 +-
.../commons}/udf/api/collector/PointCollector.java | 21 ++---
.../api/customizer/config/UDFConfigurations.java | 7 +-
.../api/customizer/config/UDTFConfigurations.java | 25 +++--
.../parameter/UDFParameterValidator.java | 14 +--
.../api/customizer/parameter/UDFParameters.java | 57 ++++--------
.../api/customizer/strategy/AccessStrategy.java | 13 ++-
.../strategy/RowByRowAccessStrategy.java | 12 +--
.../strategy/SlidingSizeWindowAccessStrategy.java | 19 ++--
.../strategy/SlidingTimeWindowAccessStrategy.java | 101 +++++++--------------
.../UDFAttributeNotProvidedException.java | 2 +-
.../commons}/udf/api/exception/UDFException.java | 2 +-
.../UDFInputSeriesDataTypeNotValidException.java | 2 +-
.../UDFInputSeriesIndexNotValidException.java | 2 +-
.../UDFInputSeriesNumberNotValidException.java | 2 +-
.../UDFOutputSeriesDataTypeNotValidException.java | 2 +-
.../exception/UDFParameterNotValidException.java | 2 +-
.../commons}/udf/builtin/BuiltinFunction.java | 2 +-
.../apache/iotdb/commons}/udf/builtin/UDTFAbs.java | 14 +--
.../iotdb/commons}/udf/builtin/UDTFAcos.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFAsin.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFAtan.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFBottomK.java | 27 +++++-
.../iotdb/commons}/udf/builtin/UDTFCast.java | 42 ++++-----
.../iotdb/commons}/udf/builtin/UDTFCeil.java | 2 +-
.../commons}/udf/builtin/UDTFCommonDerivative.java | 8 +-
.../udf/builtin/UDTFCommonValueDifference.java | 8 +-
.../iotdb/commons}/udf/builtin/UDTFConst.java | 18 ++--
.../iotdb/commons}/udf/builtin/UDTFConstE.java | 14 +--
.../iotdb/commons}/udf/builtin/UDTFConstPi.java | 14 +--
.../iotdb/commons}/udf/builtin/UDTFContains.java | 18 ++--
.../udf/builtin/UDTFContinuouslySatisfy.java | 20 ++--
.../apache/iotdb/commons}/udf/builtin/UDTFCos.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFCosh.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFDegrees.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFDerivative.java | 14 +--
.../udf/builtin/UDTFEqualSizeBucketAggSample.java | 20 ++--
.../udf/builtin/UDTFEqualSizeBucketM4Sample.java | 20 ++--
.../builtin/UDTFEqualSizeBucketOutlierSample.java | 22 ++---
.../builtin/UDTFEqualSizeBucketRandomSample.java | 16 ++--
.../udf/builtin/UDTFEqualSizeBucketSample.java | 8 +-
.../apache/iotdb/commons}/udf/builtin/UDTFExp.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFFloor.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFInRange.java | 20 ++--
.../iotdb/commons}/udf/builtin/UDTFJexl.java | 49 +++++-----
.../apache/iotdb/commons}/udf/builtin/UDTFLog.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFLog10.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFMatches.java | 20 ++--
.../iotdb/commons}/udf/builtin/UDTFMath.java | 20 ++--
.../udf/builtin/UDTFNonNegativeDerivative.java | 8 +-
.../builtin/UDTFNonNegativeValueDifference.java | 8 +-
.../commons}/udf/builtin/UDTFNonZeroCount.java | 2 +-
.../commons}/udf/builtin/UDTFNonZeroDuration.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFOnOff.java | 18 ++--
.../iotdb/commons}/udf/builtin/UDTFRadians.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFRound.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFSelectK.java | 23 +++--
.../iotdb/commons}/udf/builtin/UDTFSign.java | 2 +-
.../apache/iotdb/commons}/udf/builtin/UDTFSin.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFSinh.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFSqrt.java | 2 +-
.../apache/iotdb/commons}/udf/builtin/UDTFTan.java | 2 +-
.../iotdb/commons}/udf/builtin/UDTFTanh.java | 2 +-
.../commons}/udf/builtin/UDTFTimeDifference.java | 16 ++--
.../iotdb/commons}/udf/builtin/UDTFTopK.java | 4 +-
.../commons}/udf/builtin/UDTFValueDifference.java | 14 +--
.../iotdb/commons}/udf/builtin/UDTFValueTrend.java | 14 +--
.../iotdb/commons}/udf/builtin/UDTFZeroCount.java | 2 +-
.../commons}/udf/builtin/UDTFZeroDuration.java | 2 +-
.../selectinto/InsertTabletPlansIterator.java | 2 +-
.../execution/operator/process/FilterOperator.java | 4 +-
.../operator/process/TransformOperator.java | 16 ++--
.../apache/iotdb/db/mpp/plan/analyze/Analysis.java | 2 +-
.../apache/iotdb/db/mpp/plan/analyze/Analyzer.java | 2 +-
.../db/mpp/plan/analyze/ConcatPathRewriter.java | 2 +-
.../db/mpp/plan/analyze/ExpressionAnalyzer.java | 38 ++++----
.../iotdb/db/mpp/plan/analyze/ExpressionUtils.java | 50 +++++-----
.../mpp/plan/analyze/GroupByLevelController.java | 6 +-
.../{query => mpp/plan}/expression/Expression.java | 60 ++++++------
.../plan}/expression/ExpressionType.java | 2 +-
.../plan}/expression/ResultColumn.java | 2 +-
.../expression/binary/AdditionExpression.java | 12 +--
.../binary/ArithmeticBinaryExpression.java | 4 +-
.../plan}/expression/binary/BinaryExpression.java | 28 +++---
.../expression/binary/CompareBinaryExpression.java | 4 +-
.../expression/binary/DivisionExpression.java | 12 +--
.../plan}/expression/binary/EqualToExpression.java | 12 +--
.../expression/binary/GreaterEqualExpression.java | 12 +--
.../expression/binary/GreaterThanExpression.java | 12 +--
.../expression/binary/LessEqualExpression.java | 12 +--
.../expression/binary/LessThanExpression.java | 12 +--
.../expression/binary/LogicAndExpression.java | 12 +--
.../expression/binary/LogicBinaryExpression.java | 4 +-
.../plan}/expression/binary/LogicOrExpression.java | 12 +--
.../plan}/expression/binary/ModuloExpression.java | 12 +--
.../binary/MultiplicationExpression.java | 12 +--
.../expression/binary/NonEqualExpression.java | 12 +--
.../expression/binary/SubtractionExpression.java | 12 +--
.../plan}/expression/leaf/ConstantOperand.java | 20 ++--
.../plan}/expression/leaf/LeafOperand.java | 6 +-
.../plan}/expression/leaf/TimeSeriesOperand.java | 24 ++---
.../plan}/expression/leaf/TimestampOperand.java | 24 ++---
.../plan}/expression/multi/FunctionExpression.java | 76 ++++++++++------
.../plan}/expression/unary/InExpression.java | 12 +--
.../plan}/expression/unary/LikeExpression.java | 14 +--
.../plan}/expression/unary/LogicNotExpression.java | 20 ++--
.../plan}/expression/unary/NegationExpression.java | 20 ++--
.../plan}/expression/unary/RegularExpression.java | 12 +--
.../plan}/expression/unary/UnaryExpression.java | 26 +++---
.../iotdb/db/mpp/plan/parser/ASTVisitor.java | 46 +++++-----
.../db/mpp/plan/parser/StatementGenerator.java | 12 +--
.../db/mpp/plan/planner/LocalExecutionPlanner.java | 2 +-
.../db/mpp/plan/planner/LogicalPlanBuilder.java | 6 +-
.../iotdb/db/mpp/plan/planner/LogicalPlanner.java | 2 +-
.../plan/planner/plan/node/process/FilterNode.java | 2 +-
.../planner/plan/node/process/FilterNullNode.java | 2 +-
.../planner/plan/node/process/TransformNode.java | 2 +-
.../plan/parameter/AggregationDescriptor.java | 2 +-
.../plan/parameter/FilterNullParameter.java | 2 +-
.../statement/component/FilterNullComponent.java | 2 +-
.../mpp/plan/statement/component/ResultColumn.java | 2 +-
.../plan/statement/component/SelectComponent.java | 2 +-
.../plan/statement/component/WhereCondition.java | 2 +-
.../db/mpp/plan/statement/crud/QueryStatement.java | 4 +-
.../transformation/api}/LayerPointReader.java | 2 +-
.../transformation/api}/LayerRowReader.java | 4 +-
.../transformation/api}/LayerRowWindowReader.java | 4 +-
...ializableRowRecordListBackedMultiColumnRow.java | 4 +-
...izableRowRecordListBackedMultiColumnWindow.java | 10 +-
...wRecordListBackedMultiColumnWindowIterator.java | 8 +-
...ticSerializableTVListBackedSingleColumnRow.java | 6 +-
...SerializableTVListBackedSingleColumnWindow.java | 10 +-
...ableTVListBackedSingleColumnWindowIterator.java | 8 +-
.../LayerPointReaderBackedSingleColumnRow.java | 6 +-
.../transformation/dag/builder}/DAGBuilder.java | 15 +--
.../dag/builder}/EvaluationDAGBuilder.java | 15 +--
.../dag/input/ConstantInputReader.java} | 9 +-
.../dag/input/QueryDataSetInputLayer.java} | 21 ++---
.../dag/input}/TsBlockInputDataSet.java | 2 +-
.../intermediate}/ConstantIntermediateLayer.java | 18 ++--
.../dag/intermediate}/IntermediateLayer.java | 16 ++--
.../MultiInputColumnIntermediateLayer.java | 26 +++---
...InputColumnMultiReferenceIntermediateLayer.java | 31 ++++---
...nputColumnSingleReferenceIntermediateLayer.java | 28 +++---
.../dag/memory}/LayerMemoryAssigner.java | 6 +-
.../transformation/dag/memory}/SafetyLine.java | 4 +-
.../dag}/transformer/Transformer.java | 4 +-
.../binary/ArithmeticAdditionTransformer.java | 4 +-
.../binary/ArithmeticBinaryTransformer.java | 4 +-
.../binary/ArithmeticDivisionTransformer.java | 4 +-
.../binary/ArithmeticModuloTransformer.java | 4 +-
.../ArithmeticMultiplicationTransformer.java | 4 +-
.../binary/ArithmeticSubtractionTransformer.java | 4 +-
.../dag}/transformer/binary/BinaryTransformer.java | 6 +-
.../binary/CompareBinaryTransformer.java | 4 +-
.../binary/CompareEqualToTransformer.java | 4 +-
.../binary/CompareGreaterEqualTransformer.java | 4 +-
.../binary/CompareGreaterThanTransformer.java | 4 +-
.../binary/CompareLessEqualTransformer.java | 4 +-
.../binary/CompareLessThanTransformer.java | 4 +-
.../binary/CompareNonEqualTransformer.java | 4 +-
.../transformer/binary/LogicAndTransformer.java | 5 +-
.../transformer/binary/LogicBinaryTransformer.java | 4 +-
.../transformer/binary/LogicOrTransformer.java | 4 +-
.../transformer/multi/UDFQueryRowTransformer.java | 6 +-
.../multi/UDFQueryRowWindowTransformer.java | 6 +-
.../transformer/multi/UDFQueryTransformer.java | 8 +-
.../unary/ArithmeticNegationTransformer.java | 4 +-
.../dag}/transformer/unary/InTransformer.java | 4 +-
.../transformer/unary/LogicNotTransformer.java | 4 +-
.../dag}/transformer/unary/RegularTransformer.java | 4 +-
.../transformer/unary/TransparentTransformer.java | 4 +-
.../dag}/transformer/unary/UnaryTransformer.java | 6 +-
.../transformation/dag/udf}/UDTFContext.java | 8 +-
.../transformation/dag/udf}/UDTFExecutor.java | 82 ++++++-----------
.../transformation/dag/udf}/UDTFTypeInferrer.java | 33 ++++---
.../transformation/dag/util}/InputRowUtils.java | 2 +-
.../transformation/dag/util}/LayerCacheUtils.java | 8 +-
.../transformation}/datastructure/Cache.java | 2 +-
.../datastructure/SerializableList.java | 4 +-
.../row/ElasticSerializableRowRecordList.java | 19 ++--
.../row/SerializableRowRecordList.java | 4 +-
.../tv/ElasticSerializableBinaryTVList.java | 28 +++---
.../tv/ElasticSerializableTVList.java | 27 +++---
.../datastructure/tv/SerializableBinaryTVList.java | 2 +-
.../tv/SerializableBooleanTVList.java | 2 +-
.../datastructure/tv/SerializableDoubleTVList.java | 2 +-
.../datastructure/tv/SerializableFloatTVList.java | 2 +-
.../datastructure/tv/SerializableIntTVList.java | 2 +-
.../datastructure/tv/SerializableLongTVList.java | 2 +-
.../datastructure/tv/SerializableTVList.java | 10 +-
.../protocol/influxdb/function/InfluxFunction.java | 4 +-
.../influxdb/function/InfluxFunctionFactory.java | 2 +-
.../function/aggregator/InfluxAggregator.java | 2 +-
.../function/aggregator/InfluxCountFunction.java | 2 +-
.../function/aggregator/InfluxMeanFunction.java | 2 +-
.../function/aggregator/InfluxMedianFunction.java | 2 +-
.../function/aggregator/InfluxModeFunction.java | 2 +-
.../function/aggregator/InfluxSpreadFunction.java | 2 +-
.../function/aggregator/InfluxStddevFunction.java | 2 +-
.../function/aggregator/InfluxSumFunction.java | 2 +-
.../function/selector/InfluxFirstFunction.java | 2 +-
.../function/selector/InfluxLastFunction.java | 2 +-
.../function/selector/InfluxMaxFunction.java | 2 +-
.../function/selector/InfluxMinFunction.java | 2 +-
.../influxdb/function/selector/InfluxSelector.java | 2 +-
.../db/protocol/influxdb/handler/QueryHandler.java | 8 +-
.../influxdb/operator/InfluxSelectComponent.java | 8 +-
.../protocol/influxdb/sql/InfluxDBSqlVisitor.java | 20 ++--
.../protocol/rest/handler/QueryDataSetHandler.java | 2 +-
.../iotdb/db/qp/constant/FilterConstant.java | 2 +-
.../qp/logical/crud/AggregationQueryOperator.java | 8 +-
.../db/qp/logical/crud/LastQueryOperator.java | 6 +-
.../iotdb/db/qp/logical/crud/QueryOperator.java | 8 +-
.../iotdb/db/qp/logical/crud/SelectComponent.java | 8 +-
.../db/qp/logical/crud/SpecialClauseComponent.java | 2 +-
.../db/qp/logical/crud/UDAFQueryOperator.java | 8 +-
.../iotdb/db/qp/physical/crud/AggregationPlan.java | 2 +-
.../db/qp/physical/crud/AlignByDevicePlan.java | 2 +-
.../iotdb/db/qp/physical/crud/LastQueryPlan.java | 2 +-
.../iotdb/db/qp/physical/crud/QueryPlan.java | 2 +-
.../db/qp/physical/crud/RawDataQueryPlan.java | 2 +-
.../apache/iotdb/db/qp/physical/crud/UDAFPlan.java | 2 +-
.../apache/iotdb/db/qp/physical/crud/UDFPlan.java | 2 +-
.../apache/iotdb/db/qp/physical/crud/UDTFPlan.java | 6 +-
.../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java | 50 +++++-----
.../iotdb/db/qp/strategy/LogicalGenerator.java | 4 +-
.../qp/strategy/optimizer/ConcatPathOptimizer.java | 6 +-
.../apache/iotdb/db/qp/utils/DatetimeUtils.java | 12 +--
.../iotdb/db/qp/utils/GroupByLevelController.java | 6 +-
.../apache/iotdb/db/qp/utils/WildcardsRemover.java | 4 +-
.../db/query/control/QueryResourceManager.java | 4 +-
.../db/query/dataset/UDTFAlignByTimeDataSet.java | 6 +-
.../apache/iotdb/db/query/dataset/UDTFDataSet.java | 21 +++--
.../db/query/dataset/UDTFNonAlignDataSet.java | 4 +-
.../query/dataset/groupby/GroupByFillDataSet.java | 2 +-
.../query/udf/service/UDFClassLoaderManager.java | 3 +-
.../udf/service/UDFRegistrationInformation.java | 2 +-
.../query/udf/service/UDFRegistrationService.java | 14 ++-
.../java/org/apache/iotdb/db/service/DataNode.java | 1 -
.../java/org/apache/iotdb/db/service/IoTDB.java | 1 -
.../service/TemporaryQueryDataFileService.java | 4 +-
.../db/tools/watermark/WatermarkDetector.java | 9 +-
.../db/mpp/plan/plan/QueryLogicalPlanUtil.java | 14 +--
.../node/process/AggregationNodeSerdeTest.java | 2 +-
.../plan/node/process/FilterNodeSerdeTest.java | 8 +-
.../plan/node/process/FilterNullNodeSerdeTest.java | 2 +-
.../node/process/GroupByLevelNodeSerdeTest.java | 2 +-
.../source/SeriesAggregationScanNodeSerdeTest.java | 2 +-
.../influxdb/sql/InfluxDBLogicalGeneratorTest.java | 4 +-
.../ElasticSerializableRowRecordListTest.java | 3 +-
.../ElasticSerializableTVListTest.java | 17 ++--
.../iotdb/db/query/udf/datastructure/LRUCache.java | 2 +
.../SerializableBinaryTVListTest.java | 4 +-
.../SerializableBooleanTVListTest.java | 4 +-
.../SerializableDoubleTVListTest.java | 4 +-
.../datastructure/SerializableFloatTVListTest.java | 4 +-
.../datastructure/SerializableIntTVListTest.java | 4 +-
.../udf/datastructure/SerializableListTest.java | 2 +-
.../datastructure/SerializableLongTVListTest.java | 4 +-
.../SerializableRowRecordListTest.java | 2 +-
.../apache/iotdb/db/query/udf/example/Adder.java | 14 +--
356 files changed, 1771 insertions(+), 1835 deletions(-)
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/query/ClusterPhysicalGeneratorTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/query/ClusterPhysicalGeneratorTest.java
index d0585de36b..c53f8e2eaf 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/query/ClusterPhysicalGeneratorTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/query/ClusterPhysicalGeneratorTest.java
@@ -23,12 +23,12 @@ import org.apache.iotdb.cluster.common.TestUtils;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.qp.logical.crud.FromComponent;
import org.apache.iotdb.db.qp.logical.crud.QueryOperator;
import org.apache.iotdb.db.qp.logical.crud.SelectComponent;
import org.apache.iotdb.db.qp.physical.crud.RawDataQueryPlan;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.junit.Before;
import org.junit.Test;
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/query/last/ClusterLastQueryExecutorTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/query/last/ClusterLastQueryExecutorTest.java
index 0cbd269cfa..39d54bf0a8 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/query/last/ClusterLastQueryExecutorTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/query/last/ClusterLastQueryExecutorTest.java
@@ -26,10 +26,10 @@ import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.db.exception.StorageEngineException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import org.apache.iotdb.db.qp.physical.crud.LastQueryPlan;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.control.QueryResourceManager;
-import org.apache.iotdb.db.query.expression.ResultColumn;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.expression.IExpression;
import org.apache.iotdb.tsfile.read.expression.impl.GlobalTimeExpression;
diff --git a/example/udf/src/main/java/org/apache/iotdb/udf/UDTFExample.java b/example/udf/src/main/java/org/apache/iotdb/udf/UDTFExample.java
index 66a07482d5..b5882d72fd 100644
--- a/example/udf/src/main/java/org/apache/iotdb/udf/UDTFExample.java
+++ b/example/udf/src/main/java/org/apache/iotdb/udf/UDTFExample.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.udf;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Accumulator.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Accumulator.java
index cb6387f2eb..e7393f85c9 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Accumulator.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Accumulator.java
@@ -19,17 +19,17 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java
index 2b1fc1f13d..8b9ea955f4 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Adder.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Counter.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Counter.java
index 6ca4deaac6..b6b8955e9f 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Counter.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Counter.java
@@ -19,15 +19,15 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Max.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Max.java
index ef4aa50c6a..42795487c0 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Max.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Max.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Multiplier.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Multiplier.java
index 9b90126381..8055ab1435 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Multiplier.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/Multiplier.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester0.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester0.java
index 436eaf9cb2..2ead453dd4 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester0.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester0.java
@@ -19,12 +19,12 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester1.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester1.java
index fc132333c7..ed6050c2ad 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester1.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester1.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingTimeWindowConstructionTester.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingTimeWindowConstructionTester.java
index 917811ff34..111aad3c75 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingTimeWindowConstructionTester.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/SlidingTimeWindowConstructionTester.java
@@ -19,14 +19,14 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/TerminateTester.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/TerminateTester.java
index a7fba82c72..909984940c 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/TerminateTester.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/TerminateTester.java
@@ -19,12 +19,12 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/ValidateTester.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/ValidateTester.java
index b5c0dea54f..7f53d9fe59 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/ValidateTester.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/ValidateTester.java
@@ -19,11 +19,11 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public class ValidateTester implements UDTF {
diff --git a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/WindowStartEnd.java b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/WindowStartEnd.java
index 2745becbdf..ccf002aea0 100644
--- a/integration/src/main/java/org/apache/iotdb/db/query/udf/example/WindowStartEnd.java
+++ b/integration/src/main/java/org/apache/iotdb/db/query/udf/example/WindowStartEnd.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSyntaxConventionStringLiteralIT.java b/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSyntaxConventionStringLiteralIT.java
index de3eba8a91..957c967453 100644
--- a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSyntaxConventionStringLiteralIT.java
+++ b/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSyntaxConventionStringLiteralIT.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.db.integration;
-import org.apache.iotdb.db.query.udf.builtin.BuiltinFunction;
+import org.apache.iotdb.commons.udf.builtin.BuiltinFunction;
import org.apache.iotdb.integration.env.EnvFactory;
import org.apache.iotdb.itbase.category.ClusterTest;
import org.apache.iotdb.itbase.category.LocalStandaloneTest;
diff --git a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBUDFManagementIT.java b/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBUDFManagementIT.java
index 4ad46aa1f5..84c1920805 100644
--- a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBUDFManagementIT.java
+++ b/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBUDFManagementIT.java
@@ -20,8 +20,8 @@
package org.apache.iotdb.db.integration;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.commons.udf.builtin.BuiltinFunction;
import org.apache.iotdb.db.qp.constant.SQLConstant;
-import org.apache.iotdb.db.query.udf.builtin.BuiltinFunction;
import org.apache.iotdb.db.query.udf.service.UDFRegistrationService;
import org.apache.iotdb.db.service.IoTDB;
import org.apache.iotdb.db.utils.EnvironmentUtils;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFIQR.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFIQR.java
index 5f358200ad..4646fe103d 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFIQR.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFIQR.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.anomaly;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFKSigma.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFKSigma.java
index 4c734115ef..1ddd01ad4d 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFKSigma.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFKSigma.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.anomaly;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.CircularQueue;
import org.apache.iotdb.library.util.LongCircularQueue;
import org.apache.iotdb.library.util.Util;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFLOF.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFLOF.java
index 5c5d8d2294..e747b2a066 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFLOF.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFLOF.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.anomaly;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFMissDetect.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFMissDetect.java
index a146799b19..29bc70c9d4 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFMissDetect.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFMissDetect.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.anomaly;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.anomaly.util.StreamMissDetector;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFRange.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFRange.java
index c0fec32696..26a9af205f 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFRange.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFRange.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.anomaly;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFTwoSidedFilter.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFTwoSidedFilter.java
index 80a4f545d5..f8f72a5437 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFTwoSidedFilter.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/UDTFTwoSidedFilter.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.anomaly;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.anomaly.util.WindowDetect;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/MissDetector.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/MissDetector.java
index 18a2db5cf2..8d654ace8a 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/MissDetector.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/MissDetector.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.library.anomaly.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import org.apache.iotdb.library.util.Util;
import org.apache.commons.math3.stat.regression.SimpleRegression;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/WindowDetect.java b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/WindowDetect.java
index 0d8e15d23e..9828d61acb 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/WindowDetect.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/anomaly/util/WindowDetect.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.library.anomaly.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import org.apache.iotdb.library.util.Util;
import java.util.ArrayList;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFCov.java b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFCov.java
index bf61929ac3..403f51d6d1 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFCov.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFCov.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dmatch;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFDtw.java b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFDtw.java
index 90fae2816e..fd9c408f8a 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFDtw.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFDtw.java
@@ -19,14 +19,14 @@
package org.apache.iotdb.library.dmatch;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFPearson.java b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFPearson.java
index 3a8e97ac1a..56a1a6dcf0 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFPearson.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDAFPearson.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dmatch;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFPtnSym.java b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFPtnSym.java
index 98478e751b..f95d46e4a9 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFPtnSym.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFPtnSym.java
@@ -19,14 +19,14 @@
package org.apache.iotdb.library.dmatch;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFXCorr.java b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFXCorr.java
index b72a3a276d..4f08709be8 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFXCorr.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dmatch/UDTFXCorr.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dmatch;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dmatch.util.CrossCorrelation;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegral.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegral.java
index 87fa45a63a..0299557484 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegral.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegral.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegralAvg.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegralAvg.java
index 2250ca9816..486ec29b38 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegralAvg.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFIntegralAvg.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMad.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMad.java
index 9164198c35..602b6f6cdc 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMad.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMad.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.ExactOrderStatistics;
import org.apache.iotdb.library.dprofile.util.MADSketch;
import org.apache.iotdb.library.util.Util;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMedian.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMedian.java
index 00b45af92c..8c61703245 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMedian.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMedian.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.ExactOrderStatistics;
import org.apache.iotdb.library.dprofile.util.GKArray;
import org.apache.iotdb.library.util.Util;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMode.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMode.java
index e19cce850a..002c52484b 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMode.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMode.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.MaxSelector;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPercentile.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPercentile.java
index 6eebfee988..100cd80109 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPercentile.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPercentile.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.ExactOrderStatistics;
import org.apache.iotdb.library.dprofile.util.GKArray;
import org.apache.iotdb.library.util.Util;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPeriod.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPeriod.java
index 892e553f79..c8f6469be0 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPeriod.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFPeriod.java
@@ -19,15 +19,15 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSkew.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSkew.java
index 559f1cc857..4d3c82c734 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSkew.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSkew.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSpread.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSpread.java
index 414ff37c0a..7a237fa938 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSpread.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFSpread.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.NoNumberException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFStddev.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFStddev.java
index 5611c0116c..b01598cdf3 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFStddev.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFStddev.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFACF.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFACF.java
index 3bc410c816..8ab3337f84 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFACF.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFACF.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.CrossCorrelation;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFDistinct.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFDistinct.java
index 5f0ab6c89d..d1b552ef16 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFDistinct.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFDistinct.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.eclipse.collections.api.iterator.MutableBooleanIterator;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFHistogram.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFHistogram.java
index 4f0c4ce529..a24dcc197b 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFHistogram.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFHistogram.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMinMax.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMinMax.java
index a7812c0c4a..ee5e0fb9c6 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMinMax.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMinMax.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMvAvg.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMvAvg.java
index 4226354db8..b5aea28fa1 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMvAvg.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFMvAvg.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.DoubleCircularQueue;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFPACF.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFPACF.java
index e9622ee2fb..7c73e53511 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFPACF.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFPACF.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.YuleWalker;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFQLB.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFQLB.java
index f213ef824b..6f014c894a 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFQLB.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFQLB.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFResample.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFResample.java
index 229dbef8c6..220b08f247 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFResample.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFResample.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.Resampler;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSample.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSample.java
index 370e244143..5df57ecf91 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSample.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSample.java
@@ -19,16 +19,16 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSegment.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSegment.java
index dbdfc08011..0c56942d00 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSegment.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSegment.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.dprofile.util.Segment;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSpline.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSpline.java
index cf6925e5db..13d3ef5fb7 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSpline.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFSpline.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFZScore.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFZScore.java
index 1f1a8ead60..4b1c5f0ceb 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFZScore.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDTFZScore.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dprofile;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/util/ExactOrderStatistics.java b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/util/ExactOrderStatistics.java
index e6aa0e9d3a..61d5aa24e8 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dprofile/util/ExactOrderStatistics.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dprofile/util/ExactOrderStatistics.java
@@ -18,8 +18,8 @@
*/
package org.apache.iotdb.library.dprofile.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.eclipse.collections.impl.list.mutable.primitive.DoubleArrayList;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFCompleteness.java b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFCompleteness.java
index db1d356632..d4d8b55ece 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFCompleteness.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFCompleteness.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dquality;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.library.dquality.util.TimeSeriesQuality;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFConsistency.java b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFConsistency.java
index b01a7f35a3..5b131d4a1f 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFConsistency.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFConsistency.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dquality;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.library.dquality.util.TimeSeriesQuality;
import org.apache.iotdb.library.util.NoNumberException;
import org.apache.iotdb.library.util.Util;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFTimeliness.java b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFTimeliness.java
index 89552f4b16..26203c026c 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFTimeliness.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFTimeliness.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dquality;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.library.dquality.util.TimeSeriesQuality;
import org.apache.iotdb.library.util.NoNumberException;
import org.apache.iotdb.library.util.Util;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFValidity.java b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFValidity.java
index 99e3345c72..2f66d491af 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFValidity.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dquality/UDTFValidity.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.dquality;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.library.dquality.util.TimeSeriesQuality;
import org.apache.iotdb.library.util.NoNumberException;
import org.apache.iotdb.library.util.Util;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/dquality/util/TimeSeriesQuality.java b/library-udf/src/main/java/org/apache/iotdb/library/dquality/util/TimeSeriesQuality.java
index 2734413d66..39e5a82d0e 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/dquality/util/TimeSeriesQuality.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/dquality/util/TimeSeriesQuality.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.library.dquality.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import org.apache.iotdb.library.util.Util;
import org.apache.commons.math3.stat.descriptive.rank.Median;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFTimestampRepair.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFTimestampRepair.java
index 85bcbc3bb0..143d77d575 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFTimestampRepair.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFTimestampRepair.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.drepair;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.drepair.util.TimestampRepair;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueFill.java
index 9d148b573b..a43d581fe1 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueFill.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.drepair;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.drepair.util.ARFill;
import org.apache.iotdb.library.drepair.util.LikelihoodFill;
import org.apache.iotdb.library.drepair.util.LinearFill;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueRepair.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueRepair.java
index a7cd8ca774..9207d8e4b8 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueRepair.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/UDTFValueRepair.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.drepair;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
import org.apache.iotdb.library.drepair.util.LsGreedy;
import org.apache.iotdb.library.drepair.util.Screen;
import org.apache.iotdb.library.drepair.util.ValueRepair;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ARFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ARFill.java
index cc362cbfe4..44a3f77c62 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ARFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ARFill.java
@@ -18,8 +18,8 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
public class ARFill extends ValueFill {
// TODO Higer order AR regression
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LikelihoodFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LikelihoodFill.java
index cc26be1a24..5e035cf3df 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LikelihoodFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LikelihoodFill.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import java.util.ArrayList;
import java.util.List;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LinearFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LinearFill.java
index 8c8a41b29b..635b6f6b11 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LinearFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LinearFill.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
public class LinearFill extends ValueFill {
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LsGreedy.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LsGreedy.java
index 21decefc20..52ea1023c0 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LsGreedy.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/LsGreedy.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import org.apache.iotdb.library.util.Util;
import java.util.PriorityQueue;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MAFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MAFill.java
index c1e90d5382..4488b4ad4f 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MAFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MAFill.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
public class MAFill extends ValueFill {
int window_size = 5;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MeanFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MeanFill.java
index f7d8d6377b..7db2f2fd78 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MeanFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/MeanFill.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
public class MeanFill extends ValueFill {
public MeanFill(RowIterator dataIterator) throws Exception {
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/PreviousFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/PreviousFill.java
index a424d50b99..a3a58d546b 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/PreviousFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/PreviousFill.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
public class PreviousFill extends ValueFill {
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/Screen.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/Screen.java
index 8c3877478a..7eb09c6093 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/Screen.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/Screen.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import org.apache.iotdb.library.util.Util;
import org.apache.commons.lang3.tuple.Pair;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ScreenFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ScreenFill.java
index 40131bc9e6..4c96e1ee76 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ScreenFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ScreenFill.java
@@ -18,8 +18,8 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
import org.apache.iotdb.library.util.Util;
import org.apache.commons.lang3.tuple.Pair;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/TimestampRepair.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/TimestampRepair.java
index b01e87a56f..196e35a64f 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/TimestampRepair.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/TimestampRepair.java
@@ -18,8 +18,8 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import org.apache.iotdb.library.util.Util;
import org.slf4j.Logger;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueFill.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueFill.java
index 1275f960db..3d1d9c7b0e 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueFill.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueFill.java
@@ -18,9 +18,9 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
import org.apache.iotdb.library.util.Util;
import java.util.ArrayList;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueRepair.java b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueRepair.java
index 0d8f53256a..49c0056ad9 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueRepair.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/drepair/util/ValueRepair.java
@@ -18,8 +18,8 @@
*/
package org.apache.iotdb.library.drepair.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
import org.apache.iotdb.library.util.Util;
import java.util.ArrayList;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFConv.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFConv.java
index e756f794fb..bddc15639a 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFConv.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFConv.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDWT.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDWT.java
index 615de54b4c..069a369b75 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDWT.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDWT.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.frequency.util.DWTUtil;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDeconv.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDeconv.java
index 7f6e743486..a44521271b 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDeconv.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFDeconv.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFFFT.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFFFT.java
index 2aae08c477..6dfece67cf 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFFFT.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFFFT.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.frequency.util.FFTUtil;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFHighPass.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFHighPass.java
index 070f193041..0a0eb49c84 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFHighPass.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFHighPass.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIDWT.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIDWT.java
index 38d75b24a4..b086499dd0 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIDWT.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIDWT.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.frequency.util.DWTUtil;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIFFT.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIFFT.java
index bf2ddb95fa..408654d503 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIFFT.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFIFFT.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFLowPass.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFLowPass.java
index 855d17041e..7260dc9935 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFLowPass.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/UDTFLowPass.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.library.frequency;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/frequency/util/FFTUtil.java b/library-udf/src/main/java/org/apache/iotdb/library/frequency/util/FFTUtil.java
index 848a158794..574f770a1d 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/frequency/util/FFTUtil.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/frequency/util/FFTUtil.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.frequency.util;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveSequences.java b/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveSequences.java
index 66d5abb24d..9c043bd47a 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveSequences.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveSequences.java
@@ -16,13 +16,13 @@
package org.apache.iotdb.library.series;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.series.util.ConsecutiveUtil;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveWindows.java b/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveWindows.java
index 9424a7ac26..9a2765fcf4 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveWindows.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/series/UDTFConsecutiveWindows.java
@@ -16,13 +16,13 @@
package org.apache.iotdb.library.series;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.library.series.util.ConsecutiveUtil;
import org.apache.iotdb.library.util.Util;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/series/util/ConsecutiveUtil.java b/library-udf/src/main/java/org/apache/iotdb/library/series/util/ConsecutiveUtil.java
index a5e085b46f..35d8d0d9d5 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/series/util/ConsecutiveUtil.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/series/util/ConsecutiveUtil.java
@@ -15,8 +15,8 @@
*/
package org.apache.iotdb.library.series.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
import org.apache.iotdb.library.util.Util;
import org.apache.commons.lang3.tuple.Pair;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexMatch.java b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexMatch.java
index cbe4ef62cf..5b4580a24f 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexMatch.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexMatch.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.string;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.util.regex.Matcher;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexReplace.java b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexReplace.java
index 2af3bbbc7c..80891ae0f2 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexReplace.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexReplace.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.string;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.eclipse.collections.impl.list.mutable.primitive.IntArrayList;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexSplit.java b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexSplit.java
index 45a9c79d1e..9f00641b18 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexSplit.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFRegexSplit.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.string;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
/** This function splits string from an input series according to given regex. */
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFStrReplace.java b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFStrReplace.java
index b6b19f4bcc..1b67789c96 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFStrReplace.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/string/UDTFStrReplace.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.library.string;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
/** This function does limited times of replacement of substring from an input series. */
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/util/LinearRegression.java b/library-udf/src/main/java/org/apache/iotdb/library/util/LinearRegression.java
index b79ac7f8c3..00d9d4b160 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/util/LinearRegression.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/util/LinearRegression.java
@@ -18,7 +18,7 @@
*/
package org.apache.iotdb.library.util;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
import java.util.Arrays;
diff --git a/library-udf/src/main/java/org/apache/iotdb/library/util/Util.java b/library-udf/src/main/java/org/apache/iotdb/library/util/Util.java
index f1a1896546..734005aa38 100644
--- a/library-udf/src/main/java/org/apache/iotdb/library/util/Util.java
+++ b/library-udf/src/main/java/org/apache/iotdb/library/util/Util.java
@@ -18,8 +18,8 @@
*/
package org.apache.iotdb.library.util;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.commons.math3.stat.descriptive.rank.Median;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/UDF.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/UDF.java
similarity index 82%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/UDF.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/UDF.java
index ffa19132e7..e7d37fdd02 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/UDF.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/UDF.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api;
+package org.apache.iotdb.commons.udf.api;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
public interface UDF {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/UDTF.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/UDTF.java
similarity index 86%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/UDTF.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/UDTF.java
index 7f29e1f1d1..48b8b1e91f 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/UDTF.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/UDTF.java
@@ -17,17 +17,17 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api;
+package org.apache.iotdb.commons.udf.api;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
/**
* User-defined Time-series Generating Function (UDTF)
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/access/Row.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/Row.java
similarity index 98%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/access/Row.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/Row.java
index eaf1f7c960..989a33c66d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/access/Row.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/Row.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.access;
+package org.apache.iotdb.commons.udf.api.access;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowIterator.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/RowIterator.java
similarity index 96%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowIterator.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/RowIterator.java
index fa941dfcc9..fd8b1bec99 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowIterator.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/RowIterator.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.access;
+package org.apache.iotdb.commons.udf.api.access;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowWindow.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/RowWindow.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowWindow.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/RowWindow.java
index 54b6caf0ec..99d5ff8550 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowWindow.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/access/RowWindow.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.access;
+package org.apache.iotdb.commons.udf.api.access;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/collector/PointCollector.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/collector/PointCollector.java
similarity index 88%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/collector/PointCollector.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/collector/PointCollector.java
index d1f4b9fafb..1867933902 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/collector/PointCollector.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/collector/PointCollector.java
@@ -17,14 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.collector;
+package org.apache.iotdb.commons.udf.api.collector;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
@@ -116,10 +115,10 @@ public interface PointCollector {
* @param timestamp timestamp to collect
* @param value Binary value to collect
* @throws IOException if any I/O errors occur
- * @throws QueryProcessException if memory is not enough to continue collecting data points
+ * @throws RuntimeException if memory is not enough to continue collecting data points
* @see TSDataType
*/
- void putBinary(long timestamp, Binary value) throws IOException, QueryProcessException;
+ void putBinary(long timestamp, Binary value) throws IOException;
/**
* Collects a String data point with timestamp.
@@ -131,8 +130,8 @@ public interface PointCollector {
* @param timestamp timestamp to collect
* @param value String value to collect
* @throws IOException if any I/O errors occur
- * @throws QueryProcessException if memory is not enough to continue collecting data points
+ * @throws RuntimeException if memory is not enough to continue collecting data points
* @see TSDataType
*/
- void putString(long timestamp, String value) throws IOException, QueryProcessException;
+ void putString(long timestamp, String value) throws IOException;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/config/UDFConfigurations.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/config/UDFConfigurations.java
similarity index 81%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/config/UDFConfigurations.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/config/UDFConfigurations.java
index 9b4c55f04a..713b6e162e 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/config/UDFConfigurations.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/config/UDFConfigurations.java
@@ -17,9 +17,8 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.config;
+package org.apache.iotdb.commons.udf.api.customizer.config;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public abstract class UDFConfigurations {
@@ -30,9 +29,9 @@ public abstract class UDFConfigurations {
return outputDataType;
}
- public void check() throws QueryProcessException {
+ public void check() {
if (outputDataType == null) {
- throw new QueryProcessException("UDF outputDataType is not set.");
+ throw new RuntimeException("UDF outputDataType is not set.");
}
}
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/config/UDTFConfigurations.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/config/UDTFConfigurations.java
similarity index 76%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/config/UDTFConfigurations.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/config/UDTFConfigurations.java
index ab431d6856..51985352cb 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/config/UDTFConfigurations.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/config/UDTFConfigurations.java
@@ -17,18 +17,17 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.config;
+package org.apache.iotdb.commons.udf.api.customizer.config;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.AccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.AccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.time.ZoneId;
@@ -96,10 +95,10 @@ public class UDTFConfigurations extends UDFConfigurations {
}
@Override
- public void check() throws QueryProcessException {
+ public void check() {
super.check();
if (accessStrategy == null) {
- throw new QueryProcessException("Access strategy is not set.");
+ throw new RuntimeException("Access strategy is not set.");
}
accessStrategy.check();
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/parameter/UDFParameterValidator.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/parameter/UDFParameterValidator.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/parameter/UDFParameterValidator.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/parameter/UDFParameterValidator.java
index abc983e930..34f9255423 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/parameter/UDFParameterValidator.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/parameter/UDFParameterValidator.java
@@ -17,15 +17,15 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.parameter;
+package org.apache.iotdb.commons.udf.api.customizer.parameter;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFAttributeNotProvidedException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesIndexNotValidException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesNumberNotValidException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFParameterNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFAttributeNotProvidedException;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesIndexNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesNumberNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFParameterNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public class UDFParameterValidator {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/parameter/UDFParameters.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/parameter/UDFParameters.java
similarity index 70%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/parameter/UDFParameters.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/parameter/UDFParameters.java
index 9b9b6640f0..65de587a88 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/parameter/UDFParameters.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/parameter/UDFParameters.java
@@ -17,19 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.parameter;
+package org.apache.iotdb.commons.udf.api.customizer.parameter;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -47,40 +42,28 @@ import java.util.Map;
*/
public class UDFParameters {
- private final List<Expression> expressions;
- private final List<PartialPath> paths;
+ private final List<String> childExpressions;
+ private final List<PartialPath> maybeTimeSeriesPaths;
+ private final List<TSDataType> childExpressionDataTypes;
private final Map<String, String> attributes;
- private final List<TSDataType> dataTypes;
public UDFParameters(
- FunctionExpression functionExpression, Map<Expression, TSDataType> expressionDataTypeMap)
- throws QueryProcessException {
- expressions = functionExpression.getExpressions();
- paths = functionExpression.getPaths();
- attributes = functionExpression.getFunctionAttributes();
- dataTypes = new ArrayList<>();
- for (Expression expression : expressions) {
- dataTypes.add(expressionDataTypeMap.get(expression));
- }
+ List<String> childExpressions,
+ List<PartialPath> maybeTimeSeriesPaths,
+ List<TSDataType> childExpressionDataTypes,
+ Map<String, String> attributes) {
+ this.childExpressions = childExpressions;
+ this.maybeTimeSeriesPaths = maybeTimeSeriesPaths;
+ this.childExpressionDataTypes = childExpressionDataTypes;
+ this.attributes = attributes;
}
- public UDFParameters(FunctionExpression functionExpression, TypeProvider typeProvider)
- throws QueryProcessException {
- expressions = functionExpression.getExpressions();
- paths = functionExpression.getPaths();
- attributes = functionExpression.getFunctionAttributes();
- dataTypes = new ArrayList<>();
- for (Expression expression : expressions) {
- dataTypes.add(typeProvider.getType(expression.toString()));
- }
- }
-
- public List<Expression> getExpressions() {
- return expressions;
+ public List<String> getChildExpressions() {
+ return childExpressions;
}
public List<PartialPath> getPaths() {
- return paths;
+ return maybeTimeSeriesPaths;
}
public Map<String, String> getAttributes() {
@@ -88,15 +71,15 @@ public class UDFParameters {
}
public List<TSDataType> getDataTypes() throws MetadataException {
- return dataTypes;
+ return childExpressionDataTypes;
}
public PartialPath getPath(int index) {
- return paths.get(index);
+ return maybeTimeSeriesPaths.get(index);
}
public TSDataType getDataType(int index) throws MetadataException {
- return dataTypes.get(index);
+ return childExpressionDataTypes.get(index);
}
public boolean hasAttribute(String attributeKey) {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/AccessStrategy.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/AccessStrategy.java
similarity index 76%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/AccessStrategy.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/AccessStrategy.java
index e825ad2179..15ff92910b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/AccessStrategy.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/AccessStrategy.java
@@ -17,12 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.strategy;
+package org.apache.iotdb.commons.udf.api.customizer.strategy;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
/**
* Used to customize the strategy for accessing raw data in {@link UDTF#beforeStart(UDFParameters,
@@ -45,9 +44,9 @@ public interface AccessStrategy {
/**
* Used by the system to check the access strategy.
*
- * @throws QueryProcessException if invalid strategy is set
+ * @throws RuntimeException if invalid strategy is set
*/
- void check() throws QueryProcessException;
+ void check();
/**
* Returns the actual access strategy type.
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/RowByRowAccessStrategy.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/RowByRowAccessStrategy.java
similarity index 83%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/RowByRowAccessStrategy.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/RowByRowAccessStrategy.java
index d441772370..7880af5528 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/RowByRowAccessStrategy.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/RowByRowAccessStrategy.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.strategy;
+package org.apache.iotdb.commons.udf.api.customizer.strategy;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
/**
* Used in {@link UDTF#beforeStart(UDFParameters, UDTFConfigurations)}.
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingSizeWindowAccessStrategy.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/SlidingSizeWindowAccessStrategy.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingSizeWindowAccessStrategy.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/SlidingSizeWindowAccessStrategy.java
index e7e7f101b7..c534a81fe5 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingSizeWindowAccessStrategy.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/SlidingSizeWindowAccessStrategy.java
@@ -17,14 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.strategy;
+package org.apache.iotdb.commons.udf.api.customizer.strategy;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
/**
* Used in {@link UDTF#beforeStart(UDFParameters, UDTFConfigurations)}.
@@ -98,13 +97,13 @@ public class SlidingSizeWindowAccessStrategy implements AccessStrategy {
}
@Override
- public void check() throws QueryProcessException {
+ public void check() {
if (windowSize <= 0) {
- throw new QueryProcessException(
+ throw new RuntimeException(
String.format("Parameter windowSize(%d) should be positive.", windowSize));
}
if (slidingStep <= 0) {
- throw new QueryProcessException(
+ throw new RuntimeException(
String.format("Parameter slidingStep(%d) should be positive.", slidingStep));
}
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingTimeWindowAccessStrategy.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/SlidingTimeWindowAccessStrategy.java
similarity index 71%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingTimeWindowAccessStrategy.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/SlidingTimeWindowAccessStrategy.java
index 2d08b464ae..4eab05ca35 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingTimeWindowAccessStrategy.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/customizer/strategy/SlidingTimeWindowAccessStrategy.java
@@ -17,15 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.customizer.strategy;
+package org.apache.iotdb.commons.udf.api.customizer.strategy;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.qp.utils.DatetimeUtils;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
import java.time.ZoneId;
@@ -62,7 +60,7 @@ import java.time.ZoneId;
* parameters.getLong(0), // display window begin
* parameters.getLong(10000))); // display window end
* }</pre>
- * <p>Style 2:
+ * <p>Style 2 (deprecated since v0.14):
* <pre>{@code
* @Override
* public void beforeStart(UDFParameters parameters, UDTFConfigurations configurations) {
@@ -78,21 +76,16 @@ import java.time.ZoneId;
*/
public class SlidingTimeWindowAccessStrategy implements AccessStrategy {
- private final boolean inputInString;
-
- private String timeIntervalString;
- private String slidingStepString;
- private String displayWindowBeginString;
- private String displayWindowEndString;
-
- private long timeInterval;
- private long slidingStep;
- private long displayWindowBegin;
- private long displayWindowEnd;
+ private final long timeInterval;
+ private final long slidingStep;
+ private final long displayWindowBegin;
+ private final long displayWindowEnd;
private ZoneId zoneId;
/**
+ * Deprecated since v0.14.
+ *
* @param timeIntervalString time interval in string. examples: 12d8m9ns, 1y1mo, etc. supported
* units: y, mo, w, d, h, m, s, ms, us, ns.
* @param slidingStepString sliding step in string. examples: 12d8m9ns, 1y1mo, etc. supported
@@ -101,49 +94,48 @@ public class SlidingTimeWindowAccessStrategy implements AccessStrategy {
* 2011-12-03T10:15:30+01:00.
* @param displayWindowEndString display window end in string. format: 2011-12-03T10:15:30 or
* 2011-12-03T10:15:30+01:00.
- * @see DatetimeUtils.DurationUnit
+ * @throws UnsupportedOperationException deprecated since v0.14
*/
+ @Deprecated
public SlidingTimeWindowAccessStrategy(
String timeIntervalString,
String slidingStepString,
String displayWindowBeginString,
String displayWindowEndString) {
- inputInString = true;
- this.timeIntervalString = timeIntervalString;
- this.slidingStepString = slidingStepString;
- this.displayWindowBeginString = displayWindowBeginString;
- this.displayWindowEndString = displayWindowEndString;
+ throw new UnsupportedOperationException("The method is deprecated since v0.14.");
}
/**
- * Display window begin will be set to the same as the minimum timestamp of the query result set,
- * and display window end will be set to the same as the maximum timestamp of the query result
- * set.
+ * Deprecated since v0.14.
+ *
+ * <p>Display window begin will be set to the same as the minimum timestamp of the query result
+ * set, and display window end will be set to the same as the maximum timestamp of the query
+ * result set.
*
* @param timeIntervalString time interval in string. examples: 12d8m9ns, 1y1mo, etc. supported
* units: y, mo, w, d, h, m, s, ms, us, ns.
* @param slidingStepString sliding step in string. examples: 12d8m9ns, 1y1mo, etc. supported
* units: y, mo, w, d, h, m, s, ms, us, ns.
- * @see DatetimeUtils.DurationUnit
+ * @throws UnsupportedOperationException deprecated since v0.14
*/
+ @Deprecated
public SlidingTimeWindowAccessStrategy(String timeIntervalString, String slidingStepString) {
- inputInString = true;
- this.timeIntervalString = timeIntervalString;
- this.slidingStepString = slidingStepString;
+ throw new UnsupportedOperationException("The method is deprecated since v0.14.");
}
/**
- * Sliding step will be set to the same as the time interval, display window begin will be set to
- * the same as the minimum timestamp of the query result set, and display window end will be set
- * to the same as the maximum timestamp of the query result set.
+ * Deprecated since v0.14.
+ *
+ * <p>Sliding step will be set to the same as the time interval, display window begin will be set
+ * to the same as the minimum timestamp of the query result set, and display window end will be
+ * set to the same as the maximum timestamp of the query result set.
*
* @param timeIntervalString time interval in string. examples: 12d8m9ns, 1y1mo, etc. supported
* units: y, mo, w, d, h, m, s, ms, us, ns.
- * @see DatetimeUtils.DurationUnit
+ * @throws UnsupportedOperationException deprecated since v0.14
*/
public SlidingTimeWindowAccessStrategy(String timeIntervalString) {
- inputInString = true;
- this.timeIntervalString = timeIntervalString;
+ throw new UnsupportedOperationException("The method is deprecated since v0.14.");
}
/**
@@ -154,7 +146,6 @@ public class SlidingTimeWindowAccessStrategy implements AccessStrategy {
*/
public SlidingTimeWindowAccessStrategy(
long timeInterval, long slidingStep, long displayWindowBegin, long displayWindowEnd) {
- inputInString = false;
this.timeInterval = timeInterval;
this.slidingStep = slidingStep;
this.displayWindowBegin = displayWindowBegin;
@@ -170,7 +161,6 @@ public class SlidingTimeWindowAccessStrategy implements AccessStrategy {
* @param slidingStep 0 < slidingStep
*/
public SlidingTimeWindowAccessStrategy(long timeInterval, long slidingStep) {
- inputInString = false;
this.timeInterval = timeInterval;
this.slidingStep = slidingStep;
this.displayWindowBegin = Long.MIN_VALUE;
@@ -185,7 +175,6 @@ public class SlidingTimeWindowAccessStrategy implements AccessStrategy {
* @param timeInterval 0 < timeInterval
*/
public SlidingTimeWindowAccessStrategy(long timeInterval) {
- inputInString = false;
this.timeInterval = timeInterval;
this.slidingStep = timeInterval;
this.displayWindowBegin = Long.MIN_VALUE;
@@ -193,21 +182,17 @@ public class SlidingTimeWindowAccessStrategy implements AccessStrategy {
}
@Override
- public void check() throws QueryProcessException {
- if (inputInString) {
- parseStringParameters();
- }
-
+ public void check() {
if (timeInterval <= 0) {
- throw new QueryProcessException(
+ throw new RuntimeException(
String.format("Parameter timeInterval(%d) should be positive.", timeInterval));
}
if (slidingStep <= 0) {
- throw new QueryProcessException(
+ throw new RuntimeException(
String.format("Parameter slidingStep(%d) should be positive.", slidingStep));
}
if (displayWindowEnd < displayWindowBegin) {
- throw new QueryProcessException(
+ throw new RuntimeException(
String.format(
"displayWindowEnd(%d) < displayWindowBegin(%d)",
displayWindowEnd, displayWindowBegin));
@@ -242,20 +227,4 @@ public class SlidingTimeWindowAccessStrategy implements AccessStrategy {
public AccessStrategyType getAccessStrategyType() {
return AccessStrategyType.SLIDING_TIME_WINDOW;
}
-
- private void parseStringParameters() throws QueryProcessException {
- timeInterval = DatetimeUtils.convertDurationStrToLong(timeIntervalString);
- slidingStep =
- slidingStepString == null
- ? timeInterval
- : DatetimeUtils.convertDurationStrToLong(slidingStepString);
- displayWindowBegin =
- displayWindowBeginString == null
- ? Long.MIN_VALUE
- : DatetimeUtils.convertDatetimeStrToLong(displayWindowBeginString, zoneId);
- displayWindowEnd =
- displayWindowEndString == null
- ? Long.MAX_VALUE
- : DatetimeUtils.convertDatetimeStrToLong(displayWindowEndString, zoneId);
- }
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFAttributeNotProvidedException.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFAttributeNotProvidedException.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFAttributeNotProvidedException.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFAttributeNotProvidedException.java
index 0ff2a128fc..fe966149dd 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFAttributeNotProvidedException.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFAttributeNotProvidedException.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.exception;
+package org.apache.iotdb.commons.udf.api.exception;
public class UDFAttributeNotProvidedException extends UDFParameterNotValidException {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFException.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFException.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFException.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFException.java
index b2dcd90a0f..c4a974cd34 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFException.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFException.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.exception;
+package org.apache.iotdb.commons.udf.api.exception;
public class UDFException extends Exception {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesDataTypeNotValidException.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesDataTypeNotValidException.java
similarity index 96%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesDataTypeNotValidException.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesDataTypeNotValidException.java
index 7bcd9bcd96..96df90aa63 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesDataTypeNotValidException.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesDataTypeNotValidException.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.exception;
+package org.apache.iotdb.commons.udf.api.exception;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesIndexNotValidException.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesIndexNotValidException.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesIndexNotValidException.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesIndexNotValidException.java
index 7239fd76f9..d5197298ed 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesIndexNotValidException.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesIndexNotValidException.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.exception;
+package org.apache.iotdb.commons.udf.api.exception;
public class UDFInputSeriesIndexNotValidException extends UDFParameterNotValidException {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesNumberNotValidException.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesNumberNotValidException.java
similarity index 96%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesNumberNotValidException.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesNumberNotValidException.java
index bd899763aa..3ee4e75f43 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFInputSeriesNumberNotValidException.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFInputSeriesNumberNotValidException.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.exception;
+package org.apache.iotdb.commons.udf.api.exception;
public class UDFInputSeriesNumberNotValidException extends UDFParameterNotValidException {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFOutputSeriesDataTypeNotValidException.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFOutputSeriesDataTypeNotValidException.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFOutputSeriesDataTypeNotValidException.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFOutputSeriesDataTypeNotValidException.java
index f94591d97e..ff484594a9 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFOutputSeriesDataTypeNotValidException.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFOutputSeriesDataTypeNotValidException.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.exception;
+package org.apache.iotdb.commons.udf.api.exception;
public class UDFOutputSeriesDataTypeNotValidException extends UDFParameterNotValidException {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFParameterNotValidException.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFParameterNotValidException.java
similarity index 94%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFParameterNotValidException.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFParameterNotValidException.java
index 0951c354aa..4fbfe2268b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/api/exception/UDFParameterNotValidException.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/api/exception/UDFParameterNotValidException.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.api.exception;
+package org.apache.iotdb.commons.udf.api.exception;
public class UDFParameterNotValidException extends UDFException {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/BuiltinFunction.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/BuiltinFunction.java
similarity index 98%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/BuiltinFunction.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/BuiltinFunction.java
index bf1b7031e8..ed8bc85d33 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/BuiltinFunction.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/BuiltinFunction.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
/** All built-in UDFs need to register their function names and classes here. */
public enum BuiltinFunction {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAbs.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAbs.java
similarity index 81%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAbs.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAbs.java
index 82ed1b7651..8de5c909ac 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAbs.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAbs.java
@@ -17,15 +17,15 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAcos.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAcos.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAcos.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAcos.java
index dbcd5b5c98..1491c239dd 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAcos.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAcos.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFAcos extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAsin.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAsin.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAsin.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAsin.java
index 7e375da6f5..f83394a7c1 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAsin.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAsin.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFAsin extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAtan.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAtan.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAtan.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAtan.java
index 8f03ae84ae..e36a04ea48 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFAtan.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFAtan.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFAtan extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFBottomK.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFBottomK.java
similarity index 79%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFBottomK.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFBottomK.java
index ccf21080b8..dcc692f842 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFBottomK.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFBottomK.java
@@ -17,15 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Pair;
-import org.apache.commons.collections4.ComparatorUtils;
-
import java.util.Comparator;
+import java.util.Objects;
import java.util.PriorityQueue;
public class UDTFBottomK extends UDTFSelectK {
@@ -48,7 +47,25 @@ public class UDTFBottomK extends UDTFSelectK {
case TEXT:
stringPQ =
new PriorityQueue<>(
- k, ComparatorUtils.reversedComparator(Comparator.comparing(o -> o.right)));
+ k,
+ (pairA, pairB) -> {
+ final String cs1 = pairB.right;
+ final String cs2 = pairA.right;
+
+ if (Objects.requireNonNull(cs1) == Objects.requireNonNull(cs2)) {
+ return 0;
+ }
+
+ for (int i = 0, len = Math.min(cs1.length(), cs2.length()); i < len; i++) {
+ final char a = cs1.charAt(i);
+ final char b = cs2.charAt(i);
+ if (a != b) {
+ return a - b;
+ }
+ }
+
+ return cs1.length() - cs2.length();
+ });
break;
default:
// This will not happen.
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCast.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCast.java
similarity index 84%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCast.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCast.java
index 2a2ad1e3e5..ca57453072 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCast.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCast.java
@@ -17,19 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFAttributeNotProvidedException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesNumberNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFAttributeNotProvidedException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesNumberNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
@@ -58,8 +57,7 @@ public class UDTFCast implements UDTF {
}
@Override
- public void transform(Row row, PointCollector collector)
- throws IOException, QueryProcessException {
+ public void transform(Row row, PointCollector collector) throws IOException {
switch (sourceDataType) {
case INT32:
cast(row.getTime(), row.getInt(0), collector);
@@ -84,8 +82,7 @@ public class UDTFCast implements UDTF {
}
}
- private void cast(long time, int value, PointCollector collector)
- throws IOException, QueryProcessException {
+ private void cast(long time, int value, PointCollector collector) throws IOException {
switch (targetDataType) {
case INT32:
collector.putInt(time, value);
@@ -110,8 +107,7 @@ public class UDTFCast implements UDTF {
}
}
- private void cast(long time, long value, PointCollector collector)
- throws IOException, QueryProcessException {
+ private void cast(long time, long value, PointCollector collector) throws IOException {
switch (targetDataType) {
case INT32:
collector.putInt(time, (int) value);
@@ -136,8 +132,7 @@ public class UDTFCast implements UDTF {
}
}
- private void cast(long time, float value, PointCollector collector)
- throws IOException, QueryProcessException {
+ private void cast(long time, float value, PointCollector collector) throws IOException {
switch (targetDataType) {
case INT32:
collector.putInt(time, (int) value);
@@ -162,8 +157,7 @@ public class UDTFCast implements UDTF {
}
}
- private void cast(long time, double value, PointCollector collector)
- throws IOException, QueryProcessException {
+ private void cast(long time, double value, PointCollector collector) throws IOException {
switch (targetDataType) {
case INT32:
collector.putInt(time, (int) value);
@@ -188,8 +182,7 @@ public class UDTFCast implements UDTF {
}
}
- private void cast(long time, boolean value, PointCollector collector)
- throws IOException, QueryProcessException {
+ private void cast(long time, boolean value, PointCollector collector) throws IOException {
switch (targetDataType) {
case INT32:
collector.putInt(time, value ? 1 : 0);
@@ -214,8 +207,7 @@ public class UDTFCast implements UDTF {
}
}
- private void cast(long time, Binary value, PointCollector collector)
- throws IOException, QueryProcessException {
+ private void cast(long time, Binary value, PointCollector collector) throws IOException {
String stringValue = value.getStringValue();
switch (targetDataType) {
case INT32:
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCeil.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCeil.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCeil.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCeil.java
index 76b49b4adf..a4ba41c8b0 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCeil.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCeil.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFCeil extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCommonDerivative.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCommonDerivative.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCommonDerivative.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCommonDerivative.java
index deb1c7b17b..4e3684a02a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCommonDerivative.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCommonDerivative.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCommonValueDifference.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCommonValueDifference.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCommonValueDifference.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCommonValueDifference.java
index 1dbd2222d4..6a16a5173f 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCommonValueDifference.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCommonValueDifference.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConst.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConst.java
similarity index 85%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConst.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConst.java
index 89784252f8..63849e2b0c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConst.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConst.java
@@ -17,16 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFParameterNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFParameterNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConstE.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConstE.java
similarity index 73%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConstE.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConstE.java
index 0e6ee37697..c6d831de69 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConstE.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConstE.java
@@ -17,14 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public class UDTFConstE implements UDTF {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConstPi.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConstPi.java
similarity index 73%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConstPi.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConstPi.java
index c2724c7c7e..30d158b8d6 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFConstPi.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFConstPi.java
@@ -17,14 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public class UDTFConstPi implements UDTF {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFContains.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFContains.java
similarity index 72%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFContains.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFContains.java
index 09ee073a60..a9b0fd10c1 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFContains.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFContains.java
@@ -17,16 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public class UDTFContains implements UDTF {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFContinuouslySatisfy.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFContinuouslySatisfy.java
similarity index 91%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFContinuouslySatisfy.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFContinuouslySatisfy.java
index 34569181c8..70d9d5480a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFContinuouslySatisfy.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFContinuouslySatisfy.java
@@ -17,18 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Pair;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCos.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCos.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCos.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCos.java
index 0bfe2459fa..777494050f 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCos.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCos.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFCos extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCosh.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCosh.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCosh.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCosh.java
index 01289d8f88..028d727d82 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFCosh.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFCosh.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFCosh extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFDegrees.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFDegrees.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFDegrees.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFDegrees.java
index 712278a46f..bfff41e1c0 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFDegrees.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFDegrees.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFDegrees extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFDerivative.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFDerivative.java
similarity index 77%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFDerivative.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFDerivative.java
index ffadabb339..f2308fd728 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFDerivative.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFDerivative.java
@@ -17,15 +17,15 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketAggSample.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketAggSample.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketAggSample.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketAggSample.java
index 84fa4688ea..1c26191dfa 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketAggSample.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketAggSample.java
@@ -17,18 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFParameterNotValidException;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFParameterNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketM4Sample.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketM4Sample.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketM4Sample.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketM4Sample.java
index b4b7b2c1c5..0e8859e7f1 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketM4Sample.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketM4Sample.java
@@ -17,16 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
-
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+package org.apache.iotdb.commons.udf.builtin;
+
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketOutlierSample.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketOutlierSample.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketOutlierSample.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketOutlierSample.java
index 249c46ecb1..ff33170fc0 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketOutlierSample.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketOutlierSample.java
@@ -17,19 +17,19 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFParameterNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFParameterNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Pair;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketRandomSample.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketRandomSample.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketRandomSample.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketRandomSample.java
index 3b45f194c8..e156b1622c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketRandomSample.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketRandomSample.java
@@ -17,15 +17,15 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketSample.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketSample.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketSample.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketSample.java
index 78f1fa57c0..447c38d9b7 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFEqualSizeBucketSample.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFEqualSizeBucketSample.java
@@ -17,12 +17,12 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public abstract class UDTFEqualSizeBucketSample implements UDTF {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFExp.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFExp.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFExp.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFExp.java
index e0e16ef7b8..f86c226919 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFExp.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFExp.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFExp extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFFloor.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFFloor.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFFloor.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFFloor.java
index 92b6063fb4..b9e392df3b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFFloor.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFFloor.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFFloor extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFInRange.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFInRange.java
similarity index 81%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFInRange.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFInRange.java
index 422bfd9d21..fd2820b9c2 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFInRange.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFInRange.java
@@ -17,18 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFJexl.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFJexl.java
similarity index 86%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFJexl.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFJexl.java
index 20a529e31d..04cabac29e 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFJexl.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFJexl.java
@@ -17,20 +17,19 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFOutputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFOutputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.commons.jexl3.JexlBuilder;
@@ -120,7 +119,7 @@ public class UDTFJexl implements UDTF {
// 23, 23L, 23f, 23d, "string", true are hard codes for probing
private HashMap<TSDataType, Object> initialMap() {
- HashMap<TSDataType, Object> map = new HashMap<TSDataType, Object>();
+ HashMap<TSDataType, Object> map = new HashMap<>();
map.put(TSDataType.INT32, 23);
map.put(TSDataType.INT64, 23L);
map.put(TSDataType.FLOAT, 23f);
@@ -153,7 +152,7 @@ public class UDTFJexl implements UDTF {
@Override
public void transform(Row row, PointCollector collector)
- throws IOException, UDFOutputSeriesDataTypeNotValidException, QueryProcessException,
+ throws IOException, UDFOutputSeriesDataTypeNotValidException,
UDFInputSeriesDataTypeNotValidException {
switch (outputDataType) {
case DOUBLE:
@@ -176,7 +175,7 @@ public class UDTFJexl implements UDTF {
throws IOException, UDFInputSeriesDataTypeNotValidException;
void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException, UDFInputSeriesDataTypeNotValidException;
+ throws IOException, UDFInputSeriesDataTypeNotValidException;
void evaluateBoolean(Row row, PointCollector collector)
throws IOException, UDFInputSeriesDataTypeNotValidException;
@@ -190,8 +189,7 @@ public class UDTFJexl implements UDTF {
}
@Override
- public void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException {
+ public void evaluateText(Row row, PointCollector collector) throws IOException {
collector.putString(row.getTime(), (String) script.execute(null, row.getInt(0)));
}
@@ -209,8 +207,7 @@ public class UDTFJexl implements UDTF {
}
@Override
- public void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException {
+ public void evaluateText(Row row, PointCollector collector) throws IOException {
collector.putString(row.getTime(), (String) script.execute(null, row.getLong(0)));
}
@@ -228,8 +225,7 @@ public class UDTFJexl implements UDTF {
}
@Override
- public void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException {
+ public void evaluateText(Row row, PointCollector collector) throws IOException {
collector.putString(row.getTime(), (String) script.execute(null, row.getFloat(0)));
}
@@ -247,8 +243,7 @@ public class UDTFJexl implements UDTF {
}
@Override
- public void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException {
+ public void evaluateText(Row row, PointCollector collector) throws IOException {
collector.putString(row.getTime(), (String) script.execute(null, row.getDouble(0)));
}
@@ -266,8 +261,7 @@ public class UDTFJexl implements UDTF {
}
@Override
- public void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException {
+ public void evaluateText(Row row, PointCollector collector) throws IOException {
collector.putString(row.getTime(), (String) script.execute(null, row.getString(0)));
}
@@ -285,8 +279,7 @@ public class UDTFJexl implements UDTF {
}
@Override
- public void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException {
+ public void evaluateText(Row row, PointCollector collector) throws IOException {
collector.putString(row.getTime(), (String) script.execute(null, row.getBoolean(0)));
}
@@ -309,7 +302,7 @@ public class UDTFJexl implements UDTF {
@Override
public void evaluateText(Row row, PointCollector collector)
- throws IOException, QueryProcessException, UDFInputSeriesDataTypeNotValidException {
+ throws IOException, UDFInputSeriesDataTypeNotValidException {
getValues(row);
collector.putString(row.getTime(), (String) script.execute(null, values));
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFLog.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFLog.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFLog.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFLog.java
index b968893654..7d0296fec0 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFLog.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFLog.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFLog extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFLog10.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFLog10.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFLog10.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFLog10.java
index 80d3546bf0..68ae840015 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFLog10.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFLog10.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFLog10 extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFMatches.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFMatches.java
similarity index 73%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFMatches.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFMatches.java
index cecb9db992..53301ad0ca 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFMatches.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFMatches.java
@@ -17,16 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
-
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
+package org.apache.iotdb.commons.udf.builtin;
+
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.util.regex.Pattern;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFMath.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFMath.java
similarity index 79%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFMath.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFMath.java
index 20c6963395..3e0b42fc46 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFMath.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFMath.java
@@ -17,18 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonNegativeDerivative.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonNegativeDerivative.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonNegativeDerivative.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonNegativeDerivative.java
index 8e44c50eaf..0666249735 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonNegativeDerivative.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonNegativeDerivative.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonNegativeValueDifference.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonNegativeValueDifference.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonNegativeValueDifference.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonNegativeValueDifference.java
index 0a6549a572..033d316210 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonNegativeValueDifference.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonNegativeValueDifference.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonZeroCount.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonZeroCount.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonZeroCount.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonZeroCount.java
index d777c69e16..f88dc376cf 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonZeroCount.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonZeroCount.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFNonZeroCount extends UDTFContinuouslySatisfy {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonZeroDuration.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonZeroDuration.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonZeroDuration.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonZeroDuration.java
index 145dc2a8b2..61407180c4 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFNonZeroDuration.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFNonZeroDuration.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFNonZeroDuration extends UDTFContinuouslySatisfy {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFOnOff.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFOnOff.java
similarity index 80%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFOnOff.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFOnOff.java
index fa2e9bff8d..f742225883 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFOnOff.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFOnOff.java
@@ -17,17 +17,17 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFRadians.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFRadians.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFRadians.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFRadians.java
index 150ad0eb60..d866e1b013 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFRadians.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFRadians.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFRadians extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFRound.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFRound.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFRound.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFRound.java
index 6587f2ac3a..85adb5f437 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFRound.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFRound.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFRound extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSelectK.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSelectK.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSelectK.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSelectK.java
index 6e7b2a5cc1..fef9908d57 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSelectK.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSelectK.java
@@ -17,19 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Pair;
@@ -121,7 +120,7 @@ public abstract class UDTFSelectK implements UDTF {
@Override
public void terminate(PointCollector collector)
- throws UDFInputSeriesDataTypeNotValidException, IOException, QueryProcessException {
+ throws UDFInputSeriesDataTypeNotValidException, IOException {
switch (dataType) {
case INT32:
for (Pair<Long, Integer> pair :
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSign.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSign.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSign.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSign.java
index ea9318691d..633f55c6e6 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSign.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSign.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFSign extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSin.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSin.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSin.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSin.java
index 882daac719..d141a7c967 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSin.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSin.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFSin extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSinh.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSinh.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSinh.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSinh.java
index 5403c3fbc5..b25cf132bf 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSinh.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSinh.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFSinh extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSqrt.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSqrt.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSqrt.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSqrt.java
index c246f6270d..9958998205 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFSqrt.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFSqrt.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFSqrt extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTan.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTan.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTan.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTan.java
index b5f5bf9411..984c6d7607 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTan.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTan.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFTan extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTanh.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTanh.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTanh.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTanh.java
index 034cd67259..f9291d4aee 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTanh.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTanh.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFTanh extends UDTFMath {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTimeDifference.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTimeDifference.java
similarity index 77%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTimeDifference.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTimeDifference.java
index ee2c69c7a4..6b13904a55 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTimeDifference.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTimeDifference.java
@@ -17,14 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
-
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+package org.apache.iotdb.commons.udf.builtin;
+
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTopK.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTopK.java
similarity index 96%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTopK.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTopK.java
index 3f35fe6af6..266100b67d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFTopK.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFTopK.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Pair;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFValueDifference.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFValueDifference.java
similarity index 75%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFValueDifference.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFValueDifference.java
index 0d7d41b5ba..6c48eb7104 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFValueDifference.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFValueDifference.java
@@ -17,15 +17,15 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFValueTrend.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFValueTrend.java
similarity index 83%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFValueTrend.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFValueTrend.java
index 8862ef1e03..d872df8762 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFValueTrend.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFValueTrend.java
@@ -17,14 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.exception.UDFException;
-import org.apache.iotdb.db.query.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.exception.UDFException;
+import org.apache.iotdb.commons.udf.api.exception.UDFInputSeriesDataTypeNotValidException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFZeroCount.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFZeroCount.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFZeroCount.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFZeroCount.java
index 3a7499d8eb..83add40462 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFZeroCount.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFZeroCount.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFZeroCount extends UDTFContinuouslySatisfy {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFZeroDuration.java b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFZeroDuration.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFZeroDuration.java
rename to node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFZeroDuration.java
index bacc1ed740..a0e40f25c3 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/builtin/UDTFZeroDuration.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFZeroDuration.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.builtin;
+package org.apache.iotdb.commons.udf.builtin;
public class UDTFZeroDuration extends UDTFContinuouslySatisfy {
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/selectinto/InsertTabletPlansIterator.java b/server/src/main/java/org/apache/iotdb/db/engine/selectinto/InsertTabletPlansIterator.java
index fd309d667d..da291e6ef4 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/selectinto/InsertTabletPlansIterator.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/selectinto/InsertTabletPlansIterator.java
@@ -22,9 +22,9 @@ package org.apache.iotdb.db.engine.selectinto;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import org.apache.iotdb.db.qp.physical.crud.InsertTabletPlan;
import org.apache.iotdb.db.qp.physical.crud.QueryPlan;
-import org.apache.iotdb.db.query.expression.ResultColumn;
import org.apache.iotdb.tsfile.read.common.Path;
import org.apache.iotdb.tsfile.read.common.RowRecord;
import org.apache.iotdb.tsfile.read.query.dataset.QueryDataSet;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/FilterOperator.java b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/FilterOperator.java
index 8522d065cc..b9050c27ad 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/FilterOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/FilterOperator.java
@@ -23,9 +23,9 @@ import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.execution.operator.Operator;
import org.apache.iotdb.db.mpp.execution.operator.OperatorContext;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.common.block.TsBlock;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/TransformOperator.java b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/TransformOperator.java
index 784573cd1b..ed0dbb0f86 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/TransformOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/process/TransformOperator.java
@@ -24,13 +24,13 @@ import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.execution.operator.Operator;
import org.apache.iotdb.db.mpp.execution.operator.OperatorContext;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.layer.EvaluationDAGBuilder;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
-import org.apache.iotdb.db.query.udf.core.layer.TsBlockInputDataSet;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.builder.EvaluationDAGBuilder;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.input.TsBlockInputDataSet;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
import org.apache.iotdb.db.query.udf.service.UDFClassLoaderManager;
import org.apache.iotdb.db.query.udf.service.UDFRegistrationService;
import org.apache.iotdb.db.utils.datastructure.TimeSelector;
@@ -67,7 +67,7 @@ public class TransformOperator implements ProcessOperator {
protected boolean isFirstIteration;
- protected RawQueryInputLayer inputLayer;
+ protected QueryDataSetInputLayer inputLayer;
protected UDTFContext udtfContext;
protected LayerPointReader[] transformers;
protected TimeSelector timeHeap;
@@ -96,7 +96,7 @@ public class TransformOperator implements ProcessOperator {
private void initInputLayer(List<TSDataType> inputDataTypes) throws QueryProcessException {
inputLayer =
- new RawQueryInputLayer(
+ new QueryDataSetInputLayer(
operatorContext.getOperatorId(),
udfReaderMemoryBudgetInMB,
new TsBlockInputDataSet(inputOperator, inputDataTypes));
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analysis.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analysis.java
index ded3afa59c..450bda895d 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analysis.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analysis.java
@@ -25,11 +25,11 @@ import org.apache.iotdb.commons.partition.SchemaPartition;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.mpp.common.header.DatasetHeader;
import org.apache.iotdb.db.mpp.common.schematree.SchemaTree;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.FillDescriptor;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.FilterNullParameter;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.GroupByTimeParameter;
import org.apache.iotdb.db.mpp.plan.statement.Statement;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java
index a47f4fce44..884b345b4b 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/Analyzer.java
@@ -35,6 +35,7 @@ import org.apache.iotdb.db.mpp.common.header.HeaderConstant;
import org.apache.iotdb.db.mpp.common.schematree.DeviceSchemaInfo;
import org.apache.iotdb.db.mpp.common.schematree.PathPatternTree;
import org.apache.iotdb.db.mpp.common.schematree.SchemaTree;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.FillDescriptor;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.FilterNullParameter;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.GroupByTimeParameter;
@@ -68,7 +69,6 @@ import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowDevicesStatement;
import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowStorageGroupStatement;
import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowTTLStatement;
import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowTimeSeriesStatement;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.filter.GroupByFilter;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ConcatPathRewriter.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ConcatPathRewriter.java
index f38351a50c..f3816fd289 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ConcatPathRewriter.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ConcatPathRewriter.java
@@ -22,12 +22,12 @@ import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.exception.sql.StatementAnalyzeException;
import org.apache.iotdb.db.mpp.common.schematree.PathPatternTree;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.statement.Statement;
import org.apache.iotdb.db.mpp.plan.statement.component.FilterNullComponent;
import org.apache.iotdb.db.mpp.plan.statement.component.ResultColumn;
import org.apache.iotdb.db.mpp.plan.statement.component.SelectComponent;
import org.apache.iotdb.db.mpp.plan.statement.crud.QueryStatement;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.ArrayList;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionAnalyzer.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionAnalyzer.java
index 104545e7fe..0c5cfc5b1d 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionAnalyzer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionAnalyzer.java
@@ -25,27 +25,27 @@ import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
import org.apache.iotdb.db.mpp.common.schematree.PathPatternTree;
import org.apache.iotdb.db.mpp.common.schematree.SchemaTree;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.plan.expression.binary.BinaryExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.EqualToExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicAndExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicOrExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.NonEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.LeafOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.InExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LogicNotExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.UnaryExpression;
import org.apache.iotdb.db.mpp.plan.statement.component.ResultColumn;
import org.apache.iotdb.db.qp.constant.SQLConstant;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.expression.binary.BinaryExpression;
-import org.apache.iotdb.db.query.expression.binary.EqualToExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LessEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.LessThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicAndExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicOrExpression;
-import org.apache.iotdb.db.query.expression.binary.NonEqualExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.LeafOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.expression.unary.InExpression;
-import org.apache.iotdb.db.query.expression.unary.LogicNotExpression;
-import org.apache.iotdb.db.query.expression.unary.UnaryExpression;
import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
import org.apache.iotdb.tsfile.read.filter.TimeFilter;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionUtils.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionUtils.java
index 2618d6ab6e..7664c51e5f 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/ExpressionUtils.java
@@ -20,31 +20,31 @@
package org.apache.iotdb.db.mpp.plan.analyze;
import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.expression.binary.AdditionExpression;
-import org.apache.iotdb.db.query.expression.binary.DivisionExpression;
-import org.apache.iotdb.db.query.expression.binary.EqualToExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LessEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.LessThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicAndExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicOrExpression;
-import org.apache.iotdb.db.query.expression.binary.ModuloExpression;
-import org.apache.iotdb.db.query.expression.binary.MultiplicationExpression;
-import org.apache.iotdb.db.query.expression.binary.NonEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.SubtractionExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.expression.unary.InExpression;
-import org.apache.iotdb.db.query.expression.unary.LikeExpression;
-import org.apache.iotdb.db.query.expression.unary.LogicNotExpression;
-import org.apache.iotdb.db.query.expression.unary.NegationExpression;
-import org.apache.iotdb.db.query.expression.unary.RegularExpression;
-import org.apache.iotdb.db.query.expression.unary.UnaryExpression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.plan.expression.binary.AdditionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.DivisionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.EqualToExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicAndExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicOrExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.ModuloExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.MultiplicationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.NonEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.SubtractionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.InExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LikeExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LogicNotExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.NegationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.RegularExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.UnaryExpression;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.filter.TimeFilter;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/GroupByLevelController.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/GroupByLevelController.java
index 7be09fd68e..1aa25ce06f 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/GroupByLevelController.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/analyze/GroupByLevelController.java
@@ -23,9 +23,9 @@ import org.apache.iotdb.commons.conf.IoTDBConstant;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.exception.sql.StatementAnalyzeException;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import java.util.ArrayList;
import java.util.Collections;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/Expression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/Expression.java
similarity index 85%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/Expression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/Expression.java
index ee460b61b4..bf0b1efcf7 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/Expression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/Expression.java
@@ -17,42 +17,42 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression;
+package org.apache.iotdb.db.mpp.plan.expression;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.binary.AdditionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.DivisionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.EqualToExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicAndExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicOrExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.ModuloExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.MultiplicationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.NonEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.SubtractionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.InExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LikeExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LogicNotExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.NegationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.RegularExpression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
-import org.apache.iotdb.db.query.expression.binary.AdditionExpression;
-import org.apache.iotdb.db.query.expression.binary.DivisionExpression;
-import org.apache.iotdb.db.query.expression.binary.EqualToExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LessEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.LessThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicAndExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicOrExpression;
-import org.apache.iotdb.db.query.expression.binary.ModuloExpression;
-import org.apache.iotdb.db.query.expression.binary.MultiplicationExpression;
-import org.apache.iotdb.db.query.expression.binary.NonEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.SubtractionExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.expression.unary.InExpression;
-import org.apache.iotdb.db.query.expression.unary.LikeExpression;
-import org.apache.iotdb.db.query.expression.unary.LogicNotExpression;
-import org.apache.iotdb.db.query.expression.unary.NegationExpression;
-import org.apache.iotdb.db.query.expression.unary.RegularExpression;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
-import org.apache.iotdb.db.query.udf.core.layer.IntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.LayerMemoryAssigner;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
@@ -150,7 +150,7 @@ public abstract class Expression {
public abstract IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -159,7 +159,7 @@ public abstract class Expression {
public abstract IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/ExpressionType.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/ExpressionType.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/ExpressionType.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/ExpressionType.java
index 180afeecc6..4d3352da2b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/ExpressionType.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/ExpressionType.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.iotdb.db.query.expression;
+package org.apache.iotdb.db.mpp.plan.expression;
public enum ExpressionType {
CONSTANT((short) -4, (short) 1400),
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/ResultColumn.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/ResultColumn.java
similarity index 99%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/ResultColumn.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/ResultColumn.java
index 32f7f92718..791da53e6e 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/ResultColumn.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/ResultColumn.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression;
+package org.apache.iotdb.db.mpp.plan.expression;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/AdditionExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/AdditionExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/AdditionExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/AdditionExpression.java
index 6fd5e698fc..d4c80fe955 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/AdditionExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/AdditionExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticAdditionTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticBinaryTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticAdditionTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticBinaryTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/ArithmeticBinaryExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/ArithmeticBinaryExpression.java
similarity index 94%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/ArithmeticBinaryExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/ArithmeticBinaryExpression.java
index 185a8ce617..3fdd5659a9 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/ArithmeticBinaryExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/ArithmeticBinaryExpression.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/BinaryExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/BinaryExpression.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/BinaryExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/BinaryExpression.java
index 6dac04bf29..218b67af82 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/BinaryExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/BinaryExpression.java
@@ -17,25 +17,25 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnMultiReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnSingleReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.BinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
-import org.apache.iotdb.db.query.udf.core.layer.IntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.LayerMemoryAssigner;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnMultiReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnSingleReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.BinaryTransformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
@@ -222,7 +222,7 @@ public abstract class BinaryExpression extends Expression {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -271,7 +271,7 @@ public abstract class BinaryExpression extends Expression {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/CompareBinaryExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/CompareBinaryExpression.java
similarity index 96%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/CompareBinaryExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/CompareBinaryExpression.java
index 66f795faa1..5ea63fe7d1 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/CompareBinaryExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/CompareBinaryExpression.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/DivisionExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/DivisionExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/DivisionExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/DivisionExpression.java
index 8eb9308d91..26ecfdb071 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/DivisionExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/DivisionExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticDivisionTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticDivisionTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/EqualToExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/EqualToExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/EqualToExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/EqualToExpression.java
index d966284402..a9a683ce87 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/EqualToExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/EqualToExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareEqualToTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareEqualToTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/GreaterEqualExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/GreaterEqualExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/GreaterEqualExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/GreaterEqualExpression.java
index 6d06a29284..d87a42046f 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/GreaterEqualExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/GreaterEqualExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareGreaterEqualTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareGreaterEqualTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/GreaterThanExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/GreaterThanExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/GreaterThanExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/GreaterThanExpression.java
index 6a574f68e9..848557695c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/GreaterThanExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/GreaterThanExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareGreaterThanTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareGreaterThanTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LessEqualExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LessEqualExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/LessEqualExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LessEqualExpression.java
index a0fff83b49..36c9e12294 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LessEqualExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LessEqualExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareLessEqualTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareLessEqualTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LessThanExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LessThanExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/LessThanExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LessThanExpression.java
index 8f49780392..630b7a4edc 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LessThanExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LessThanExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareLessThanTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareLessThanTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicAndExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicAndExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicAndExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicAndExpression.java
index 26ac76b3c2..68addddc49 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicAndExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicAndExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.LogicAndTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.LogicBinaryTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.LogicAndTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.LogicBinaryTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicBinaryExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicBinaryExpression.java
similarity index 94%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicBinaryExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicBinaryExpression.java
index 9ad7e20bfa..b4d644f681 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicBinaryExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicBinaryExpression.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicOrExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicOrExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicOrExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicOrExpression.java
index eff1d56357..785263b210 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/LogicOrExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/LogicOrExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.LogicBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.LogicOrTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.LogicBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.LogicOrTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/ModuloExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/ModuloExpression.java
similarity index 77%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/ModuloExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/ModuloExpression.java
index 39f4738aca..24f7ab6b40 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/ModuloExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/ModuloExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticModuloTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticModuloTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/MultiplicationExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/MultiplicationExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/MultiplicationExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/MultiplicationExpression.java
index 6b72d5a2d2..adc381612d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/MultiplicationExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/MultiplicationExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticMultiplicationTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticMultiplicationTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/NonEqualExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/NonEqualExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/NonEqualExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/NonEqualExpression.java
index 542d4a7c25..2a25f392f2 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/NonEqualExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/NonEqualExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.CompareNonEqualTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.CompareNonEqualTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/SubtractionExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/SubtractionExpression.java
similarity index 78%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/binary/SubtractionExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/SubtractionExpression.java
index 372d56cc73..946179f782 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/binary/SubtractionExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/binary/SubtractionExpression.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.binary;
+package org.apache.iotdb.db.mpp.plan.expression.binary;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticBinaryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.binary.ArithmeticSubtractionTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticBinaryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.binary.ArithmeticSubtractionTransformer;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/ConstantOperand.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/ConstantOperand.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/leaf/ConstantOperand.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/ConstantOperand.java
index 8a6c4589c0..db142fc023 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/ConstantOperand.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/ConstantOperand.java
@@ -17,20 +17,20 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.leaf;
+package org.apache.iotdb.db.mpp.plan.expression.leaf;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.ConstantIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.layer.ConstantIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.IntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.LayerMemoryAssigner;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
@@ -120,7 +120,7 @@ public class ConstantOperand extends LeafOperand {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -139,7 +139,7 @@ public class ConstantOperand extends LeafOperand {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/LeafOperand.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/LeafOperand.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/leaf/LeafOperand.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/LeafOperand.java
index 500ae89520..9f4bc80438 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/LeafOperand.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/LeafOperand.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.leaf;
+package org.apache.iotdb.db.mpp.plan.expression.leaf;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
import java.time.ZoneId;
import java.util.Collections;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/TimeSeriesOperand.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/TimeSeriesOperand.java
similarity index 86%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/leaf/TimeSeriesOperand.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/TimeSeriesOperand.java
index cdab2e4adc..9326672048 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/TimeSeriesOperand.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/TimeSeriesOperand.java
@@ -17,24 +17,24 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.leaf;
+package org.apache.iotdb.db.mpp.plan.expression.leaf;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.metadata.path.PathDeserializeUtil;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnMultiReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnSingleReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.layer.IntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.LayerMemoryAssigner;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnMultiReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnSingleReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
@@ -118,7 +118,7 @@ public class TimeSeriesOperand extends LeafOperand {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -146,7 +146,7 @@ public class TimeSeriesOperand extends LeafOperand {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/TimestampOperand.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/TimestampOperand.java
similarity index 85%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/leaf/TimestampOperand.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/TimestampOperand.java
index 8c9f6c741d..fec495d53e 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/leaf/TimestampOperand.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/TimestampOperand.java
@@ -17,23 +17,23 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.leaf;
+package org.apache.iotdb.db.mpp.plan.expression.leaf;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnMultiReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnSingleReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.layer.IntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.LayerMemoryAssigner;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnMultiReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnSingleReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
@@ -103,7 +103,7 @@ public class TimestampOperand extends LeafOperand {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -130,7 +130,7 @@ public class TimestampOperand extends LeafOperand {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/multi/FunctionExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/FunctionExpression.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/multi/FunctionExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/FunctionExpression.java
index caa87859e6..8dbe67c10d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/multi/FunctionExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/FunctionExpression.java
@@ -17,36 +17,36 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.multi;
+package org.apache.iotdb.db.mpp.plan.expression.multi;
import org.apache.iotdb.commons.conf.IoTDBConstant;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.AccessStrategy;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.MultiInputColumnIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnMultiReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnSingleReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.multi.UDFQueryRowTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.multi.UDFQueryRowWindowTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.multi.UDFQueryTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.unary.TransparentTransformer;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFTypeInferrer;
import org.apache.iotdb.db.qp.constant.SQLConstant;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
import org.apache.iotdb.db.qp.strategy.optimizer.ConcatPathOptimizer;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.AccessStrategy;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFTypeInferrer;
-import org.apache.iotdb.db.query.udf.core.layer.IntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.LayerMemoryAssigner;
-import org.apache.iotdb.db.query.udf.core.layer.MultiInputColumnIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnMultiReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnSingleReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
-import org.apache.iotdb.db.query.udf.core.transformer.multi.UDFQueryRowTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.multi.UDFQueryRowWindowTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.multi.UDFQueryTransformer;
-import org.apache.iotdb.db.query.udf.core.transformer.unary.TransparentTransformer;
import org.apache.iotdb.db.utils.TypeInferenceUtils;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
@@ -240,7 +240,7 @@ public class FunctionExpression extends Expression {
for (Expression expression : expressions) {
expression.constructUdfExecutors(expressionName2Executor, zoneId);
}
- expressionName2Executor.put(expressionString, new UDTFExecutor(this, zoneId));
+ expressionName2Executor.put(expressionString, new UDTFExecutor(functionName, zoneId));
}
@Override
@@ -254,7 +254,15 @@ public class FunctionExpression extends Expression {
if (isTimeSeriesGeneratingFunctionExpression()) {
typeProvider.setType(
- expressionString, new UDTFTypeInferrer(this).inferOutputType(typeProvider));
+ expressionString,
+ new UDTFTypeInferrer(functionName)
+ .inferOutputType(
+ expressions.stream().map(Expression::toString).collect(Collectors.toList()),
+ getPaths(),
+ expressions.stream()
+ .map(f -> typeProvider.getType(f.toString()))
+ .collect(Collectors.toList()),
+ functionAttributes));
} else {
if (expressions.size() != 1) {
throw new SemanticException(
@@ -305,7 +313,7 @@ public class FunctionExpression extends Expression {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
@@ -345,7 +353,7 @@ public class FunctionExpression extends Expression {
private IntermediateLayer constructUdfInputIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
@@ -381,7 +389,15 @@ public class FunctionExpression extends Expression {
throws QueryProcessException, IOException {
UDTFExecutor executor = udtfContext.getExecutorByFunctionExpression(this);
- executor.beforeStart(queryId, memoryAssigner.assign(), typeProvider);
+ executor.beforeStart(
+ queryId,
+ memoryAssigner.assign(),
+ expressions.stream().map(Expression::toString).collect(Collectors.toList()),
+ getPaths(),
+ expressions.stream()
+ .map(f -> typeProvider.getType(f.toString()))
+ .collect(Collectors.toList()),
+ functionAttributes);
AccessStrategy accessStrategy = executor.getConfigurations().getAccessStrategy();
switch (accessStrategy.getAccessStrategyType()) {
@@ -402,7 +418,7 @@ public class FunctionExpression extends Expression {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -449,7 +465,7 @@ public class FunctionExpression extends Expression {
private IntermediateLayer constructUdfInputIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -487,7 +503,13 @@ public class FunctionExpression extends Expression {
throws QueryProcessException, IOException {
UDTFExecutor executor = udtfContext.getExecutorByFunctionExpression(this);
- executor.beforeStart(queryId, memoryAssigner.assign(), expressionDataTypeMap);
+ executor.beforeStart(
+ queryId,
+ memoryAssigner.assign(),
+ expressions.stream().map(Expression::toString).collect(Collectors.toList()),
+ getPaths(),
+ expressions.stream().map(expressionDataTypeMap::get).collect(Collectors.toList()),
+ functionAttributes);
AccessStrategy accessStrategy = executor.getConfigurations().getAccessStrategy();
switch (accessStrategy.getAccessStrategyType()) {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/InExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/InExpression.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/unary/InExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/InExpression.java
index 979d4c2bbc..28e5c3307d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/InExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/InExpression.java
@@ -17,14 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.unary;
+package org.apache.iotdb.db.mpp.plan.expression.unary;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
-import org.apache.iotdb.db.query.udf.core.transformer.unary.InTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.unary.InTransformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/LikeExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/LikeExpression.java
similarity index 91%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/unary/LikeExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/LikeExpression.java
index 0e94037e72..1c9164240b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/LikeExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/LikeExpression.java
@@ -17,15 +17,15 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.unary;
+package org.apache.iotdb.db.mpp.plan.expression.unary;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
-import org.apache.iotdb.db.query.udf.core.transformer.unary.RegularTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.unary.RegularTransformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
@@ -122,7 +122,7 @@ public class LikeExpression extends UnaryExpression {
public TSDataType inferTypes(TypeProvider typeProvider) throws SemanticException {
final String expressionString = toString();
if (!typeProvider.containsTypeInfoOf(expressionString)) {
- checkInputExpressionDataType(
+ Expression.checkInputExpressionDataType(
expression.toString(), expression.inferTypes(typeProvider), TSDataType.TEXT);
typeProvider.setType(expressionString, TSDataType.TEXT);
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/LogicNotExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/LogicNotExpression.java
similarity index 77%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/unary/LogicNotExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/LogicNotExpression.java
index a538e4a028..9a7191d497 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/LogicNotExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/LogicNotExpression.java
@@ -17,18 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.unary;
+package org.apache.iotdb.db.mpp.plan.expression.unary;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
-import org.apache.iotdb.db.query.udf.core.transformer.unary.LogicNotTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.unary.LogicNotTransformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.nio.ByteBuffer;
@@ -57,7 +57,7 @@ public class LogicNotExpression extends UnaryExpression {
public TSDataType inferTypes(TypeProvider typeProvider) throws SemanticException {
final String expressionString = toString();
if (!typeProvider.containsTypeInfoOf(expressionString)) {
- checkInputExpressionDataType(
+ Expression.checkInputExpressionDataType(
expression.toString(), expression.inferTypes(typeProvider), TSDataType.BOOLEAN);
typeProvider.setType(expressionString, TSDataType.BOOLEAN);
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/NegationExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/NegationExpression.java
similarity index 79%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/unary/NegationExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/NegationExpression.java
index 6d8c111078..2b9cba69b8 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/NegationExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/NegationExpression.java
@@ -17,18 +17,18 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.unary;
+package org.apache.iotdb.db.mpp.plan.expression.unary;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
-import org.apache.iotdb.db.query.udf.core.transformer.unary.ArithmeticNegationTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.unary.ArithmeticNegationTransformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.nio.ByteBuffer;
@@ -58,7 +58,7 @@ public class NegationExpression extends UnaryExpression {
final String expressionString = toString();
if (!typeProvider.containsTypeInfoOf(expressionString)) {
TSDataType inputExpressionType = expression.inferTypes(typeProvider);
- checkInputExpressionDataType(
+ Expression.checkInputExpressionDataType(
expression.toString(),
inputExpressionType,
TSDataType.INT32,
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/RegularExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/RegularExpression.java
similarity index 88%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/unary/RegularExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/RegularExpression.java
index a8b30f0d5a..8d8b1e1186 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/RegularExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/RegularExpression.java
@@ -17,15 +17,15 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.unary;
+package org.apache.iotdb.db.mpp.plan.expression.unary;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ExpressionType;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
-import org.apache.iotdb.db.query.udf.core.transformer.unary.RegularTransformer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.unary.RegularTransformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/UnaryExpression.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/UnaryExpression.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/expression/unary/UnaryExpression.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/UnaryExpression.java
index 02ec49a4b1..8370eba56a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/expression/unary/UnaryExpression.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/unary/UnaryExpression.java
@@ -17,25 +17,25 @@
* under the License.
*/
-package org.apache.iotdb.db.query.expression.unary;
+package org.apache.iotdb.db.mpp.plan.expression.unary;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnMultiReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.SingleInputColumnSingleReferenceIntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
import org.apache.iotdb.db.qp.utils.WildcardsRemover;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
-import org.apache.iotdb.db.query.udf.core.layer.IntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.LayerMemoryAssigner;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnMultiReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.layer.SingleInputColumnSingleReferenceIntermediateLayer;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
@@ -118,7 +118,7 @@ public abstract class UnaryExpression extends Expression {
public final IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
Map<Expression, TSDataType> expressionDataTypeMap,
LayerMemoryAssigner memoryAssigner)
@@ -156,7 +156,7 @@ public abstract class UnaryExpression extends Expression {
public IntermediateLayer constructIntermediateLayer(
long queryId,
UDTFContext udtfContext,
- RawQueryInputLayer rawTimeSeriesInputLayer,
+ QueryDataSetInputLayer rawTimeSeriesInputLayer,
Map<Expression, IntermediateLayer> expressionIntermediateLayerMap,
TypeProvider typeProvider,
LayerMemoryAssigner memoryAssigner)
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
index dab981d3ea..ec6a293d53 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
@@ -28,6 +28,29 @@ import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.common.filter.BasicFunctionFilter;
import org.apache.iotdb.db.mpp.common.filter.QueryFilter;
import org.apache.iotdb.db.mpp.plan.analyze.ExpressionAnalyzer;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.AdditionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.DivisionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.EqualToExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicAndExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicOrExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.ModuloExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.MultiplicationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.NonEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.SubtractionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.InExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LikeExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LogicNotExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.NegationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.RegularExpression;
import org.apache.iotdb.db.mpp.plan.statement.Statement;
import org.apache.iotdb.db.mpp.plan.statement.component.FillComponent;
import org.apache.iotdb.db.mpp.plan.statement.component.FillPolicy;
@@ -78,29 +101,6 @@ import org.apache.iotdb.db.qp.sql.IoTDBSqlParser.CountTimeseriesContext;
import org.apache.iotdb.db.qp.sql.IoTDBSqlParser.ExpressionContext;
import org.apache.iotdb.db.qp.sql.IoTDBSqlParserBaseVisitor;
import org.apache.iotdb.db.qp.utils.DatetimeUtils;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.binary.AdditionExpression;
-import org.apache.iotdb.db.query.expression.binary.DivisionExpression;
-import org.apache.iotdb.db.query.expression.binary.EqualToExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LessEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.LessThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicAndExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicOrExpression;
-import org.apache.iotdb.db.query.expression.binary.ModuloExpression;
-import org.apache.iotdb.db.query.expression.binary.MultiplicationExpression;
-import org.apache.iotdb.db.query.expression.binary.NonEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.SubtractionExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.expression.unary.InExpression;
-import org.apache.iotdb.db.query.expression.unary.LikeExpression;
-import org.apache.iotdb.db.query.expression.unary.LogicNotExpression;
-import org.apache.iotdb.db.query.expression.unary.NegationExpression;
-import org.apache.iotdb.db.query.expression.unary.RegularExpression;
import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/StatementGenerator.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/StatementGenerator.java
index 6c3749afb0..7103246f38 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/StatementGenerator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/StatementGenerator.java
@@ -24,6 +24,12 @@ import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.common.filter.BasicFunctionFilter;
import org.apache.iotdb.db.mpp.plan.constant.FilterConstant;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicAndExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
import org.apache.iotdb.db.mpp.plan.statement.Statement;
import org.apache.iotdb.db.mpp.plan.statement.component.FromComponent;
import org.apache.iotdb.db.mpp.plan.statement.component.ResultColumn;
@@ -43,12 +49,6 @@ import org.apache.iotdb.db.mpp.plan.statement.metadata.SetStorageGroupStatement;
import org.apache.iotdb.db.qp.sql.IoTDBSqlParser;
import org.apache.iotdb.db.qp.sql.SqlLexer;
import org.apache.iotdb.db.qp.strategy.SQLParseError;
-import org.apache.iotdb.db.query.expression.binary.GreaterEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.LessThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicAndExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
import org.apache.iotdb.db.utils.QueryDataSetUtils;
import org.apache.iotdb.service.rpc.thrift.TSCreateAlignedTimeseriesReq;
import org.apache.iotdb.service.rpc.thrift.TSCreateMultiTimeseriesReq;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanner.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanner.java
index 6fae3156b0..34f18ad5e9 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanner.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanner.java
@@ -93,6 +93,7 @@ import org.apache.iotdb.db.mpp.execution.operator.source.ExchangeOperator;
import org.apache.iotdb.db.mpp.execution.operator.source.SeriesAggregationScanOperator;
import org.apache.iotdb.db.mpp.execution.operator.source.SeriesScanOperator;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanVisitor;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.metedata.read.ChildNodesSchemaScanNode;
@@ -133,7 +134,6 @@ import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.OutputColumn;
import org.apache.iotdb.db.mpp.plan.statement.component.FillPolicy;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
import org.apache.iotdb.db.mpp.plan.statement.literal.Literal;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.db.utils.datastructure.TimeSelector;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanBuilder.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanBuilder.java
index 45dab8de2d..589685a687 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanBuilder.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanBuilder.java
@@ -29,6 +29,9 @@ import org.apache.iotdb.db.mpp.common.MPPQueryContext;
import org.apache.iotdb.db.mpp.common.schematree.PathPatternTree;
import org.apache.iotdb.db.mpp.plan.analyze.ExpressionAnalyzer;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.metedata.read.ChildNodesSchemaScanNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.metedata.read.ChildPathsSchemaScanNode;
@@ -64,9 +67,6 @@ import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.FilterNullParameter;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.GroupByTimeParameter;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
import org.apache.iotdb.db.query.aggregation.AggregationType;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import org.apache.iotdb.db.utils.SchemaUtils;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanner.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanner.java
index 1265b4d6ab..4de3c11ab5 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanner.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LogicalPlanner.java
@@ -21,6 +21,7 @@ package org.apache.iotdb.db.mpp.plan.planner;
import org.apache.iotdb.confignode.rpc.thrift.NodeManagementType;
import org.apache.iotdb.db.mpp.common.MPPQueryContext;
import org.apache.iotdb.db.mpp.plan.analyze.Analysis;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.optimization.PlanOptimizer;
import org.apache.iotdb.db.mpp.plan.planner.plan.LogicalQueryPlan;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNode;
@@ -54,7 +55,6 @@ import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowChildNodesStatement;
import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowChildPathsStatement;
import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowDevicesStatement;
import org.apache.iotdb.db.mpp.plan.statement.metadata.ShowTimeSeriesStatement;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.ArrayList;
import java.util.HashMap;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNode.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNode.java
index 338a519123..3b9a1ec475 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNode.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNode.java
@@ -18,11 +18,11 @@
*/
package org.apache.iotdb.db.mpp.plan.planner.plan.node.process;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeType;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanVisitor;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNullNode.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNullNode.java
index c980aa5a9e..7c76a3cfc9 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNullNode.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/FilterNullNode.java
@@ -18,13 +18,13 @@
*/
package org.apache.iotdb.db.mpp.plan.planner.plan.node.process;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeType;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanVisitor;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.FilterNullParameter;
import org.apache.iotdb.db.mpp.plan.statement.component.FilterNullPolicy;
-import org.apache.iotdb.db.query.expression.Expression;
import com.google.common.collect.ImmutableList;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/TransformNode.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/TransformNode.java
index 75dd967780..7f9870fc18 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/TransformNode.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/process/TransformNode.java
@@ -19,11 +19,11 @@
package org.apache.iotdb.db.mpp.plan.planner.plan.node.process;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeType;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanVisitor;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import com.google.common.collect.ImmutableList;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/AggregationDescriptor.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/AggregationDescriptor.java
index 74fd995005..67ec816dfb 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/AggregationDescriptor.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/AggregationDescriptor.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.mpp.plan.planner.plan.parameter;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.query.aggregation.AggregationType;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/FilterNullParameter.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/FilterNullParameter.java
index cf8b61f10f..c357fb2966 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/FilterNullParameter.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/FilterNullParameter.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.mpp.plan.planner.plan.parameter;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.statement.component.FilterNullPolicy;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/FilterNullComponent.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/FilterNullComponent.java
index 3c29d3149b..e0e2c4c6e9 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/FilterNullComponent.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/FilterNullComponent.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.mpp.plan.statement.component;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.statement.StatementNode;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import java.nio.ByteBuffer;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/ResultColumn.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/ResultColumn.java
index a138f6bfa1..ae23d5e3d5 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/ResultColumn.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/ResultColumn.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.mpp.plan.statement.component;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.statement.StatementNode;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.Objects;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/SelectComponent.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/SelectComponent.java
index 3131d23ad5..cc92430f11 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/SelectComponent.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/SelectComponent.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.mpp.plan.statement.component;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.statement.StatementNode;
-import org.apache.iotdb.db.query.expression.Expression;
import java.time.ZoneId;
import java.util.ArrayList;
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/WhereCondition.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/WhereCondition.java
index cd62ab8742..9014f345f7 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/WhereCondition.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/component/WhereCondition.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.mpp.plan.statement.component;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.statement.StatementNode;
-import org.apache.iotdb.db.query.expression.Expression;
/** This class maintains information of {@code WHERE} clause. */
public class WhereCondition extends StatementNode {
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/crud/QueryStatement.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/crud/QueryStatement.java
index a626c17e0c..35a565f3e7 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/crud/QueryStatement.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/crud/QueryStatement.java
@@ -23,6 +23,8 @@ import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.sql.SemanticException;
import org.apache.iotdb.db.mpp.plan.analyze.ExpressionAnalyzer;
import org.apache.iotdb.db.mpp.plan.constant.StatementType;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.mpp.plan.statement.Statement;
import org.apache.iotdb.db.mpp.plan.statement.StatementVisitor;
import org.apache.iotdb.db.mpp.plan.statement.component.FillComponent;
@@ -35,8 +37,6 @@ import org.apache.iotdb.db.mpp.plan.statement.component.ResultColumn;
import org.apache.iotdb.db.mpp.plan.statement.component.ResultSetFormat;
import org.apache.iotdb.db.mpp.plan.statement.component.SelectComponent;
import org.apache.iotdb.db.mpp.plan.statement.component.WhereCondition;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerPointReader.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerPointReader.java
similarity index 96%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerPointReader.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerPointReader.java
index 3ee7c5a985..9f831e7bec 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerPointReader.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerPointReader.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.reader;
+package org.apache.iotdb.db.mpp.transformation.api;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerRowReader.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerRowReader.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerRowReader.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerRowReader.java
index e2a2f23872..798a882a32 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerRowReader.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerRowReader.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.reader;
+package org.apache.iotdb.db.mpp.transformation.api;
+import org.apache.iotdb.commons.udf.api.access.Row;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.access.Row;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerRowWindowReader.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerRowWindowReader.java
similarity index 91%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerRowWindowReader.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerRowWindowReader.java
index 4e2b129fd3..699dda9398 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerRowWindowReader.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/api/LayerRowWindowReader.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.reader;
+package org.apache.iotdb.db.mpp.transformation.api;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnRow.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnRow.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnRow.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnRow.java
index d29b0d5dc5..da49bc41fb 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnRow.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnRow.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.access;
+package org.apache.iotdb.db.mpp.transformation.dag.adapter;
-import org.apache.iotdb.db.query.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.Row;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnWindow.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
index d384267516..c7c6fbc314 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindow.java
@@ -17,12 +17,12 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.access;
+package org.apache.iotdb.db.mpp.transformation.dag.adapter;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.datastructure.row.ElasticSerializableRowRecordList;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.db.mpp.transformation.datastructure.row.ElasticSerializableRowRecordList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
index 801e43f35d..7333fd58f3 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableRowRecordListBackedMultiColumnWindowIterator.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.access;
+package org.apache.iotdb.db.mpp.transformation.dag.adapter;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.datastructure.row.ElasticSerializableRowRecordList;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.db.mpp.transformation.datastructure.row.ElasticSerializableRowRecordList;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnRow.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnRow.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnRow.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnRow.java
index 1207f32ee1..609f8faadc 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnRow.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnRow.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.access;
+package org.apache.iotdb.db.mpp.transformation.dag.adapter;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnWindow.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindow.java
similarity index 88%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnWindow.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindow.java
index f8fcf92d22..709f661ae5 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnWindow.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindow.java
@@ -17,12 +17,12 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.access;
+package org.apache.iotdb.db.mpp.transformation.dag.adapter;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
public class ElasticSerializableTVListBackedSingleColumnWindow implements RowWindow {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnWindowIterator.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
similarity index 86%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
index 7dc35d6c3f..beaefb13bb 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/ElasticSerializableTVListBackedSingleColumnWindowIterator.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.access;
+package org.apache.iotdb.db.mpp.transformation.dag.adapter;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowIterator;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowIterator;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/LayerPointReaderBackedSingleColumnRow.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/LayerPointReaderBackedSingleColumnRow.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/access/LayerPointReaderBackedSingleColumnRow.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/LayerPointReaderBackedSingleColumnRow.java
index a7258788bf..48a0badabf 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/access/LayerPointReaderBackedSingleColumnRow.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/LayerPointReaderBackedSingleColumnRow.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.access;
+package org.apache.iotdb.db.mpp.transformation.dag.adapter;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/DAGBuilder.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/builder/DAGBuilder.java
similarity index 85%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/DAGBuilder.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/builder/DAGBuilder.java
index 270482b1e6..abe194bf2a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/DAGBuilder.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/builder/DAGBuilder.java
@@ -17,13 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.builder;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
@@ -34,7 +37,7 @@ public class DAGBuilder {
private final long queryId;
private final UDTFPlan udtfPlan;
- private final RawQueryInputLayer rawTimeSeriesInputLayer;
+ private final QueryDataSetInputLayer rawTimeSeriesInputLayer;
// input
private final Expression[] resultColumnExpressions;
@@ -51,7 +54,7 @@ public class DAGBuilder {
private final Map<Expression, TSDataType> expressionDataTypeMap;
public DAGBuilder(
- long queryId, UDTFPlan udtfPlan, RawQueryInputLayer inputLayer, float memoryBudgetInMB) {
+ long queryId, UDTFPlan udtfPlan, QueryDataSetInputLayer inputLayer, float memoryBudgetInMB) {
this.queryId = queryId;
this.udtfPlan = udtfPlan;
this.rawTimeSeriesInputLayer = inputLayer;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/EvaluationDAGBuilder.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/builder/EvaluationDAGBuilder.java
similarity index 86%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/EvaluationDAGBuilder.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/builder/EvaluationDAGBuilder.java
index d083191b34..7a7a76bf5a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/EvaluationDAGBuilder.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/builder/EvaluationDAGBuilder.java
@@ -17,14 +17,17 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.builder;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.InputLocation;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.intermediate.IntermediateLayer;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.LayerMemoryAssigner;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
import java.io.IOException;
import java.util.HashMap;
@@ -35,7 +38,7 @@ public class EvaluationDAGBuilder {
private final long queryId;
- private final RawQueryInputLayer inputLayer;
+ private final QueryDataSetInputLayer inputLayer;
private final Map<String, List<InputLocation>> inputLocations;
private final Expression[] outputExpressions;
@@ -55,7 +58,7 @@ public class EvaluationDAGBuilder {
public EvaluationDAGBuilder(
long queryId,
- RawQueryInputLayer inputLayer,
+ QueryDataSetInputLayer inputLayer,
Map<String, List<InputLocation>> inputLocations,
Expression[] outputExpressions,
TypeProvider typeProvider,
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/ConstantLayerPointReader.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/ConstantInputReader.java
similarity index 90%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/ConstantLayerPointReader.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/ConstantInputReader.java
index c0d99e9189..a8cf12f972 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/ConstantLayerPointReader.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/ConstantInputReader.java
@@ -17,10 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.reader;
+package org.apache.iotdb.db.mpp.transformation.dag.input;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.db.utils.CommonUtils;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
@@ -30,7 +31,7 @@ import org.apache.commons.lang3.Validate;
import java.io.IOException;
/** LayerPointReader for constants. */
-public class ConstantLayerPointReader implements LayerPointReader {
+public class ConstantInputReader implements LayerPointReader {
private final ConstantOperand expression;
@@ -41,7 +42,7 @@ public class ConstantLayerPointReader implements LayerPointReader {
protected boolean cachedBoolean;
protected Binary cachedBinary;
- public ConstantLayerPointReader(ConstantOperand expression) throws QueryProcessException {
+ public ConstantInputReader(ConstantOperand expression) throws QueryProcessException {
this.expression = Validate.notNull(expression);
Object value =
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/RawQueryInputLayer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/QueryDataSetInputLayer.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/RawQueryInputLayer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/QueryDataSetInputLayer.java
index 4f5288d771..9490461bb0 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/RawQueryInputLayer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/QueryDataSetInputLayer.java
@@ -17,19 +17,20 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.input;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.SafetyLine;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.SafetyLine.SafetyPile;
+import org.apache.iotdb.db.mpp.transformation.datastructure.row.ElasticSerializableRowRecordList;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
import org.apache.iotdb.db.query.dataset.IUDFInputDataSet;
import org.apache.iotdb.db.query.dataset.RawQueryDataSetWithValueFilter;
import org.apache.iotdb.db.query.dataset.UDFRawQueryInputDataSetWithoutValueFilter;
import org.apache.iotdb.db.query.reader.series.IReaderByTimestamp;
import org.apache.iotdb.db.query.reader.series.ManagedSeriesReader;
-import org.apache.iotdb.db.query.udf.core.layer.SafetyLine.SafetyPile;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.datastructure.row.ElasticSerializableRowRecordList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.query.timegenerator.TimeGenerator;
import org.apache.iotdb.tsfile.utils.Binary;
@@ -37,7 +38,7 @@ import org.apache.iotdb.tsfile.utils.Binary;
import java.io.IOException;
import java.util.List;
-public class RawQueryInputLayer {
+public class QueryDataSetInputLayer {
private IUDFInputDataSet queryDataSet;
private TSDataType[] dataTypes;
@@ -47,7 +48,7 @@ public class RawQueryInputLayer {
private SafetyLine safetyLine;
/** InputLayerWithoutValueFilter */
- public RawQueryInputLayer(
+ public QueryDataSetInputLayer(
long queryId, float memoryBudgetInMB, UDTFPlan queryPlan, List<ManagedSeriesReader> readers)
throws QueryProcessException, IOException, InterruptedException {
construct(
@@ -57,7 +58,7 @@ public class RawQueryInputLayer {
}
/** InputLayerWithValueFilter */
- public RawQueryInputLayer(
+ public QueryDataSetInputLayer(
long queryId,
float memoryBudgetInMB,
List<PartialPath> paths,
@@ -74,7 +75,7 @@ public class RawQueryInputLayer {
paths, dataTypes, timeGenerator, readers, readerToIndexList, cached, true));
}
- public RawQueryInputLayer(long queryId, float memoryBudgetInMB, IUDFInputDataSet queryDataSet)
+ public QueryDataSetInputLayer(long queryId, float memoryBudgetInMB, IUDFInputDataSet queryDataSet)
throws QueryProcessException {
construct(queryId, memoryBudgetInMB, queryDataSet);
}
@@ -94,10 +95,6 @@ public class RawQueryInputLayer {
rowRecordList.setEvictionUpperBound(safetyLine.getSafetyLine());
}
- public int getInputColumnCount() {
- return dataTypes.length;
- }
-
public LayerPointReader constructTimePointReader() {
return new TimePointReader();
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/TsBlockInputDataSet.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/TsBlockInputDataSet.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/TsBlockInputDataSet.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/TsBlockInputDataSet.java
index ff9130d427..135c9c1f8d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/TsBlockInputDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/input/TsBlockInputDataSet.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.input;
import org.apache.iotdb.db.mpp.execution.operator.Operator;
import org.apache.iotdb.db.query.dataset.IUDFInputDataSet;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/ConstantIntermediateLayer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/ConstantIntermediateLayer.java
similarity index 75%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/ConstantIntermediateLayer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/ConstantIntermediateLayer.java
index b82b268976..1af198720a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/ConstantIntermediateLayer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/ConstantIntermediateLayer.java
@@ -17,16 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.intermediate;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.core.reader.ConstantLayerPointReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.transformation.dag.input.ConstantInputReader;
/** IntermediateLayer for constants. */
public class ConstantIntermediateLayer extends IntermediateLayer {
@@ -36,7 +36,7 @@ public class ConstantIntermediateLayer extends IntermediateLayer {
public ConstantIntermediateLayer(ConstantOperand expression, long queryId, float memoryBudgetInMB)
throws QueryProcessException {
super(expression, queryId, memoryBudgetInMB);
- constantLayerPointReaderCache = new ConstantLayerPointReader(expression);
+ constantLayerPointReaderCache = new ConstantInputReader(expression);
}
@Override
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/IntermediateLayer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/IntermediateLayer.java
similarity index 81%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/IntermediateLayer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/IntermediateLayer.java
index 890a6b4259..18fc3f84d9 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/IntermediateLayer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/IntermediateLayer.java
@@ -17,16 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.intermediate;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.AccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.AccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowWindowReader;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/MultiInputColumnIntermediateLayer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/MultiInputColumnIntermediateLayer.java
similarity index 91%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/MultiInputColumnIntermediateLayer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/MultiInputColumnIntermediateLayer.java
index 843bd85504..f7d14a396a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/MultiInputColumnIntermediateLayer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/MultiInputColumnIntermediateLayer.java
@@ -17,21 +17,23 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.intermediate;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.transformation.dag.adapter.ElasticSerializableRowRecordListBackedMultiColumnRow;
+import org.apache.iotdb.db.mpp.transformation.dag.adapter.ElasticSerializableRowRecordListBackedMultiColumnWindow;
+import org.apache.iotdb.db.mpp.transformation.dag.util.InputRowUtils;
+import org.apache.iotdb.db.mpp.transformation.dag.util.LayerCacheUtils;
+import org.apache.iotdb.db.mpp.transformation.datastructure.row.ElasticSerializableRowRecordList;
import org.apache.iotdb.db.query.dataset.IUDFInputDataSet;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.core.access.ElasticSerializableRowRecordListBackedMultiColumnRow;
-import org.apache.iotdb.db.query.udf.core.access.ElasticSerializableRowRecordListBackedMultiColumnWindow;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowWindowReader;
-import org.apache.iotdb.db.query.udf.datastructure.row.ElasticSerializableRowRecordList;
import org.apache.iotdb.db.utils.datastructure.TimeSelector;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SingleInputColumnMultiReferenceIntermediateLayer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/SingleInputColumnMultiReferenceIntermediateLayer.java
similarity index 90%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SingleInputColumnMultiReferenceIntermediateLayer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/SingleInputColumnMultiReferenceIntermediateLayer.java
index ba4f91a66f..7be2b1fdfa 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SingleInputColumnMultiReferenceIntermediateLayer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/SingleInputColumnMultiReferenceIntermediateLayer.java
@@ -17,21 +17,23 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.intermediate;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.core.access.ElasticSerializableTVListBackedSingleColumnRow;
-import org.apache.iotdb.db.query.udf.core.access.ElasticSerializableTVListBackedSingleColumnWindow;
-import org.apache.iotdb.db.query.udf.core.layer.SafetyLine.SafetyPile;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowWindowReader;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.transformation.dag.adapter.ElasticSerializableTVListBackedSingleColumnRow;
+import org.apache.iotdb.db.mpp.transformation.dag.adapter.ElasticSerializableTVListBackedSingleColumnWindow;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.SafetyLine;
+import org.apache.iotdb.db.mpp.transformation.dag.memory.SafetyLine.SafetyPile;
+import org.apache.iotdb.db.mpp.transformation.dag.util.LayerCacheUtils;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
@@ -55,8 +57,7 @@ public class SingleInputColumnMultiReferenceIntermediateLayer extends Intermedia
Expression expression,
long queryId,
float memoryBudgetInMB,
- LayerPointReader parentLayerPointReader)
- throws QueryProcessException {
+ LayerPointReader parentLayerPointReader) {
super(expression, queryId, memoryBudgetInMB);
this.parentLayerPointReader = parentLayerPointReader;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SingleInputColumnSingleReferenceIntermediateLayer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/SingleInputColumnSingleReferenceIntermediateLayer.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SingleInputColumnSingleReferenceIntermediateLayer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/SingleInputColumnSingleReferenceIntermediateLayer.java
index 29549ccdd0..846b77b738 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SingleInputColumnSingleReferenceIntermediateLayer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/intermediate/SingleInputColumnSingleReferenceIntermediateLayer.java
@@ -17,20 +17,21 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.intermediate;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingSizeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.SlidingTimeWindowAccessStrategy;
-import org.apache.iotdb.db.query.udf.core.access.ElasticSerializableTVListBackedSingleColumnWindow;
-import org.apache.iotdb.db.query.udf.core.access.LayerPointReaderBackedSingleColumnRow;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowWindowReader;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.transformation.dag.adapter.ElasticSerializableTVListBackedSingleColumnWindow;
+import org.apache.iotdb.db.mpp.transformation.dag.adapter.LayerPointReaderBackedSingleColumnRow;
+import org.apache.iotdb.db.mpp.transformation.dag.util.LayerCacheUtils;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.slf4j.Logger;
@@ -113,8 +114,7 @@ public class SingleInputColumnSingleReferenceIntermediateLayer extends Intermedi
@Override
protected LayerRowWindowReader constructRowSlidingSizeWindowReader(
- SlidingSizeWindowAccessStrategy strategy, float memoryBudgetInMB)
- throws QueryProcessException {
+ SlidingSizeWindowAccessStrategy strategy, float memoryBudgetInMB) {
return new LayerRowWindowReader() {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/LayerMemoryAssigner.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/memory/LayerMemoryAssigner.java
similarity index 91%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/LayerMemoryAssigner.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/memory/LayerMemoryAssigner.java
index 03f6fbe8b2..928c662883 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/LayerMemoryAssigner.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/memory/LayerMemoryAssigner.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.memory;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import java.util.HashMap;
import java.util.Map;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SafetyLine.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/memory/SafetyLine.java
similarity index 94%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SafetyLine.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/memory/SafetyLine.java
index 9f36b0540c..cdd61ab824 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/SafetyLine.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/memory/SafetyLine.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.memory;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
/** Tells the {@link ElasticSerializableTVList} if it is safe to remove a cache block. */
public class SafetyLine {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/Transformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/Transformer.java
similarity index 94%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/Transformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/Transformer.java
index a666924a5c..17d91d60a2 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/Transformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/Transformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.utils.Binary;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticAdditionTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticAdditionTransformer.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticAdditionTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticAdditionTransformer.java
index 439378f39b..1940fcbf2e 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticAdditionTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticAdditionTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class ArithmeticAdditionTransformer extends ArithmeticBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticBinaryTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticBinaryTransformer.java
similarity index 94%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticBinaryTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticBinaryTransformer.java
index 751fc534d6..5e3da9f1d6 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticBinaryTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticBinaryTransformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticDivisionTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticDivisionTransformer.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticDivisionTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticDivisionTransformer.java
index 30fb3d248f..8792fc4393 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticDivisionTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticDivisionTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class ArithmeticDivisionTransformer extends ArithmeticBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticModuloTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticModuloTransformer.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticModuloTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticModuloTransformer.java
index a22f2d4400..1b56cdfaab 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticModuloTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticModuloTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class ArithmeticModuloTransformer extends ArithmeticBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticMultiplicationTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticMultiplicationTransformer.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticMultiplicationTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticMultiplicationTransformer.java
index b24522267b..1a1733c245 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticMultiplicationTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticMultiplicationTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class ArithmeticMultiplicationTransformer extends ArithmeticBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticSubtractionTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticSubtractionTransformer.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticSubtractionTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticSubtractionTransformer.java
index 6659a40ff0..dde1b40ec8 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/ArithmeticSubtractionTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/ArithmeticSubtractionTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class ArithmeticSubtractionTransformer extends ArithmeticBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/BinaryTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/BinaryTransformer.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/BinaryTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/BinaryTransformer.java
index c99a4e1b3c..13cd2a4d5b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/BinaryTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/BinaryTransformer.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareBinaryTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareBinaryTransformer.java
similarity index 95%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareBinaryTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareBinaryTransformer.java
index 42b42e1058..e81b4e96c4 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareBinaryTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareBinaryTransformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareEqualToTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareEqualToTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareEqualToTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareEqualToTransformer.java
index af6b2c8d65..4ea813e083 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareEqualToTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareEqualToTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class CompareEqualToTransformer extends CompareBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareGreaterEqualTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareGreaterEqualTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareGreaterEqualTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareGreaterEqualTransformer.java
index 1e98bfe423..b5d53f0dc9 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareGreaterEqualTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareGreaterEqualTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class CompareGreaterEqualTransformer extends CompareBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareGreaterThanTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareGreaterThanTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareGreaterThanTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareGreaterThanTransformer.java
index 9e7a5ea3ba..798df4a1b7 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareGreaterThanTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareGreaterThanTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class CompareGreaterThanTransformer extends CompareBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareLessEqualTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareLessEqualTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareLessEqualTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareLessEqualTransformer.java
index 0c53e86949..9b322c7297 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareLessEqualTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareLessEqualTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class CompareLessEqualTransformer extends CompareBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareLessThanTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareLessThanTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareLessThanTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareLessThanTransformer.java
index 9e77e2aa21..19a65ce8ef 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareLessThanTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareLessThanTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class CompareLessThanTransformer extends CompareBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareNonEqualTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareNonEqualTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareNonEqualTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareNonEqualTransformer.java
index 024c54deb5..65bed1face 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/CompareNonEqualTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/CompareNonEqualTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
public class CompareNonEqualTransformer extends CompareBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicAndTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicAndTransformer.java
similarity index 88%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicAndTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicAndTransformer.java
index 3dc5c1d240..f2c25b46b8 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicAndTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicAndTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class LogicAndTransformer extends LogicBinaryTransformer {
@@ -27,6 +27,7 @@ public class LogicAndTransformer extends LogicBinaryTransformer {
super(leftPointReader, rightPointReader);
}
+ @Override
protected boolean evaluate(boolean leftOperand, boolean rightOperand) {
return leftOperand && rightOperand;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicBinaryTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicBinaryTransformer.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicBinaryTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicBinaryTransformer.java
index 7eee752775..15cf8aa75c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicBinaryTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicBinaryTransformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicOrTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicOrTransformer.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicOrTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicOrTransformer.java
index b8ac911a91..2ef1e35614 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/binary/LogicOrTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/binary/LogicOrTransformer.java
@@ -17,9 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.binary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.binary;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
public class LogicOrTransformer extends LogicBinaryTransformer {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryRowTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryRowTransformer.java
similarity index 88%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryRowTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryRowTransformer.java
index 354a102736..c96af9fd7f 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryRowTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryRowTransformer.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.multi;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.multi;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowReader;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryRowWindowTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryRowWindowTransformer.java
similarity index 87%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryRowWindowTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryRowWindowTransformer.java
index 1f810694e2..65188bed3d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryRowWindowTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryRowWindowTransformer.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.multi;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.multi;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
-import org.apache.iotdb.db.query.udf.core.reader.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerRowWindowReader;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryTransformer.java
index 28b18f6cfc..77e5a2ffa7 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/multi/UDFQueryTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/multi/UDFQueryTransformer.java
@@ -17,12 +17,12 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.multi;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.multi;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFExecutor;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFExecutor;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/ArithmeticNegationTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/ArithmeticNegationTransformer.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/ArithmeticNegationTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/ArithmeticNegationTransformer.java
index 1dbd1ba046..06bad592de 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/ArithmeticNegationTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/ArithmeticNegationTransformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.unary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.unary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/InTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/InTransformer.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/InTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/InTransformer.java
index 5d219f50cf..05673d3119 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/InTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/InTransformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.unary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.unary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/LogicNotTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/LogicNotTransformer.java
similarity index 92%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/LogicNotTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/LogicNotTransformer.java
index 558bd6caea..da23d377f4 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/LogicNotTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/LogicNotTransformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.unary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.unary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/RegularTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/RegularTransformer.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/RegularTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/RegularTransformer.java
index e7095eb010..862c7fe563 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/RegularTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/RegularTransformer.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.unary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.unary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/TransparentTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/TransparentTransformer.java
similarity index 94%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/TransparentTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/TransparentTransformer.java
index 5cec6149bc..6b544c1025 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/TransparentTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/TransparentTransformer.java
@@ -16,10 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.unary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.unary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/UnaryTransformer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/UnaryTransformer.java
similarity index 90%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/UnaryTransformer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/UnaryTransformer.java
index c291d131be..7953b12a1c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/unary/UnaryTransformer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/UnaryTransformer.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.transformer.unary;
+package org.apache.iotdb.db.mpp.transformation.dag.transformer.unary;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.core.transformer.Transformer;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFContext.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFContext.java
similarity index 89%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFContext.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFContext.java
index 9350376708..1876756d85 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFContext.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFContext.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.executor;
+package org.apache.iotdb.db.mpp.transformation.dag.udf;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.query.udf.service.UDFClassLoaderManager;
import java.time.ZoneId;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFExecutor.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFExecutor.java
similarity index 54%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFExecutor.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFExecutor.java
index b8f697f6b7..dd03c7e06c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFExecutor.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFExecutor.java
@@ -17,19 +17,16 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.executor;
-
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.access.RowWindow;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+package org.apache.iotdb.db.mpp.transformation.dag.udf;
+
+import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.access.RowWindow;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.query.udf.service.UDFRegistrationService;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
@@ -37,57 +34,36 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.time.ZoneId;
+import java.util.List;
import java.util.Map;
public class UDTFExecutor {
private static final Logger LOGGER = LoggerFactory.getLogger(UDTFExecutor.class);
- protected final FunctionExpression expression;
+ protected final String functionName;
protected final UDTFConfigurations configurations;
protected UDTF udtf;
protected ElasticSerializableTVList collector;
- public UDTFExecutor(FunctionExpression expression, ZoneId zoneId) {
- this.expression = expression;
+ public UDTFExecutor(String functionName, ZoneId zoneId) {
+ this.functionName = functionName;
configurations = new UDTFConfigurations(zoneId);
}
- public void beforeStart(long queryId, float collectorMemoryBudgetInMB, TypeProvider typeProvider)
- throws QueryProcessException {
- udtf = (UDTF) UDFRegistrationService.getInstance().reflect(expression);
-
- UDFParameters parameters = new UDFParameters(expression, typeProvider);
-
- try {
- udtf.validate(new UDFParameterValidator(parameters));
- } catch (Exception e) {
- onError("validate(UDFParameterValidator)", e);
- }
-
- try {
- udtf.beforeStart(parameters, configurations);
- } catch (Exception e) {
- onError("beforeStart(UDFParameters, UDTFConfigurations)", e);
- }
- configurations.check();
-
- collector =
- ElasticSerializableTVList.newElasticSerializableTVList(
- configurations.getOutputDataType(), queryId, collectorMemoryBudgetInMB, 1);
- }
-
- // TODO: remove it after MPP finished
- @Deprecated
public void beforeStart(
long queryId,
float collectorMemoryBudgetInMB,
- Map<Expression, TSDataType> expressionDataTypeMap)
- throws QueryProcessException {
- udtf = (UDTF) UDFRegistrationService.getInstance().reflect(expression);
+ List<String> childExpressions,
+ List<PartialPath> maybeTimeSeriesPaths,
+ List<TSDataType> childExpressionDataTypes,
+ Map<String, String> attributes) {
+ udtf = (UDTF) UDFRegistrationService.getInstance().reflect(functionName);
- UDFParameters parameters = new UDFParameters(expression, expressionDataTypeMap);
+ final UDFParameters parameters =
+ new UDFParameters(
+ childExpressions, maybeTimeSeriesPaths, childExpressionDataTypes, attributes);
try {
udtf.validate(new UDFParameterValidator(parameters));
@@ -107,7 +83,7 @@ public class UDTFExecutor {
configurations.getOutputDataType(), queryId, collectorMemoryBudgetInMB, 1);
}
- public void execute(Row row, boolean isCurrentRowNull) throws QueryProcessException {
+ public void execute(Row row, boolean isCurrentRowNull) {
try {
if (isCurrentRowNull) {
// A null row will never trigger any UDF computing
@@ -120,7 +96,7 @@ public class UDTFExecutor {
}
}
- public void execute(RowWindow rowWindow) throws QueryProcessException {
+ public void execute(RowWindow rowWindow) {
try {
udtf.transform(rowWindow, collector);
} catch (Exception e) {
@@ -128,7 +104,7 @@ public class UDTFExecutor {
}
}
- public void terminate() throws QueryProcessException {
+ public void terminate() {
try {
udtf.terminate(collector);
} catch (Exception e) {
@@ -142,18 +118,14 @@ public class UDTFExecutor {
}
}
- private void onError(String methodName, Exception e) throws QueryProcessException {
+ private void onError(String methodName, Exception e) {
LOGGER.warn("Error occurred during executing UDTF", e);
- throw new QueryProcessException(
+ throw new RuntimeException(
String.format(
"Error occurred during executing UDTF#%s: %s", methodName, System.lineSeparator())
+ e);
}
- public FunctionExpression getExpression() {
- return expression;
- }
-
public UDTFConfigurations getConfigurations() {
return configurations;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFTypeInferrer.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFTypeInferrer.java
similarity index 67%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFTypeInferrer.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFTypeInferrer.java
index ca7233906a..4e3342c202 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFTypeInferrer.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/udf/UDTFTypeInferrer.java
@@ -17,15 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.executor;
+package org.apache.iotdb.db.mpp.transformation.dag.udf;
+import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
import org.apache.iotdb.db.exception.sql.SemanticException;
-import org.apache.iotdb.db.mpp.plan.analyze.TypeProvider;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
import org.apache.iotdb.db.query.udf.service.UDFRegistrationService;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
@@ -33,22 +32,30 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.time.ZoneId;
+import java.util.List;
+import java.util.Map;
public class UDTFTypeInferrer {
private static final Logger LOGGER = LoggerFactory.getLogger(UDTFTypeInferrer.class);
- protected final FunctionExpression expression;
+ protected final String functionName;
- public UDTFTypeInferrer(FunctionExpression expression) {
- this.expression = expression;
+ public UDTFTypeInferrer(String functionName) {
+ this.functionName = functionName;
}
- public TSDataType inferOutputType(TypeProvider typeProvider) {
+ public TSDataType inferOutputType(
+ List<String> childExpressions,
+ List<PartialPath> maybeTimeSeriesPaths,
+ List<TSDataType> childExpressionDataTypes,
+ Map<String, String> attributes) {
try {
- UDTF udtf = (UDTF) UDFRegistrationService.getInstance().reflect(expression);
+ UDTF udtf = (UDTF) UDFRegistrationService.getInstance().reflect(functionName);
- UDFParameters parameters = new UDFParameters(expression, typeProvider);
+ UDFParameters parameters =
+ new UDFParameters(
+ childExpressions, maybeTimeSeriesPaths, childExpressionDataTypes, attributes);
udtf.validate(new UDFParameterValidator(parameters));
// use ZoneId.systemDefault() because UDF's data type is ZoneId independent
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/InputRowUtils.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/util/InputRowUtils.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/InputRowUtils.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/util/InputRowUtils.java
index 5a56256944..007b8f8397 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/InputRowUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/util/InputRowUtils.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.util;
import org.apache.iotdb.db.query.dataset.IUDFInputDataSet;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/LayerCacheUtils.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/util/LayerCacheUtils.java
similarity index 91%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/LayerCacheUtils.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/util/LayerCacheUtils.java
index ab63797f92..fdef1eb903 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/core/layer/LayerCacheUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/util/LayerCacheUtils.java
@@ -17,13 +17,13 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.core.layer;
+package org.apache.iotdb.db.mpp.transformation.dag.util;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.datastructure.row.ElasticSerializableRowRecordList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.query.dataset.IUDFInputDataSet;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.datastructure.row.ElasticSerializableRowRecordList;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/Cache.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/Cache.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/Cache.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/Cache.java
index 3194b821e8..c70f5446bb 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/Cache.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/Cache.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure;
+package org.apache.iotdb.db.mpp.transformation.datastructure;
/** <b>Note: It's not thread safe.</b> */
public abstract class Cache {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/SerializableList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/SerializableList.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/SerializableList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/SerializableList.java
index 7ab360be20..9ab4449a69 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/SerializableList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/SerializableList.java
@@ -17,11 +17,11 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure;
+package org.apache.iotdb.db.mpp.transformation.datastructure;
import org.apache.iotdb.commons.file.SystemFileFactory;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.query.udf.service.TemporaryQueryDataFileService;
+import org.apache.iotdb.db.service.TemporaryQueryDataFileService;
import org.apache.iotdb.tsfile.utils.PublicBAOS;
import java.io.IOException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/ElasticSerializableRowRecordList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/row/ElasticSerializableRowRecordList.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/ElasticSerializableRowRecordList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/row/ElasticSerializableRowRecordList.java
index d7d9ef6407..0d57428ea2 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/ElasticSerializableRowRecordList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/row/ElasticSerializableRowRecordList.java
@@ -17,11 +17,12 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.row;
+package org.apache.iotdb.db.mpp.transformation.datastructure.row;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.layer.InputRowUtils;
-import org.apache.iotdb.db.query.udf.datastructure.Cache;
+import org.apache.iotdb.db.mpp.transformation.dag.util.InputRowUtils;
+import org.apache.iotdb.db.mpp.transformation.datastructure.Cache;
+import org.apache.iotdb.db.mpp.transformation.datastructure.SerializableList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
import org.apache.iotdb.tsfile.utils.BitMap;
@@ -30,8 +31,6 @@ import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
-import static org.apache.iotdb.db.query.udf.datastructure.SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
-
/** An elastic list of records that implements memory control using LRU strategy. */
public class ElasticSerializableRowRecordList {
@@ -73,7 +72,9 @@ public class ElasticSerializableRowRecordList {
this.memoryLimitInMB = memoryLimitInMB;
int allocatableCapacity =
SerializableRowRecordList.calculateCapacity(
- dataTypes, memoryLimitInMB, INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL);
+ dataTypes,
+ memoryLimitInMB,
+ SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL);
internalRowRecordListCapacity = allocatableCapacity / numCacheBlock;
if (internalRowRecordListCapacity == 0) {
numCacheBlock = 1;
@@ -102,7 +103,7 @@ public class ElasticSerializableRowRecordList {
indexListOfTextFields[fieldIndex++] = i;
}
}
- byteArrayLengthForMemoryControl = INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
+ byteArrayLengthForMemoryControl = SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
totalByteArrayLengthLimit = 0;
totalByteArrayLength = 0;
}
@@ -222,10 +223,10 @@ public class ElasticSerializableRowRecordList {
((totalByteArrayLength - totalByteArrayLengthLimit)
/ size
/ indexListOfTextFields.length
- / INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL);
+ / SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL);
newByteArrayLengthForMemoryControl =
byteArrayLengthForMemoryControl
- + 2 * (delta + 1) * INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
+ + 2 * (delta + 1) * SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
newInternalTVListCapacity =
SerializableRowRecordList.calculateCapacity(
dataTypes, memoryLimitInMB, newByteArrayLengthForMemoryControl)
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/SerializableRowRecordList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/row/SerializableRowRecordList.java
similarity index 98%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/SerializableRowRecordList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/row/SerializableRowRecordList.java
index f49e449461..b13096659f 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/SerializableRowRecordList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/row/SerializableRowRecordList.java
@@ -17,10 +17,10 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.row;
+package org.apache.iotdb.db.mpp.transformation.datastructure.row;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.datastructure.SerializableList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.SerializableList;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableBinaryTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
similarity index 83%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableBinaryTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
index 0e481b7a5f..29f507aad1 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableBinaryTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/ElasticSerializableBinaryTVList.java
@@ -17,16 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.transformation.datastructure.SerializableList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
import java.io.IOException;
-import static org.apache.iotdb.db.query.udf.datastructure.SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
-
public class ElasticSerializableBinaryTVList extends ElasticSerializableTVList {
protected static final int MEMORY_CHECK_THRESHOLD = 1000;
@@ -36,16 +34,15 @@ public class ElasticSerializableBinaryTVList extends ElasticSerializableTVList {
protected long totalByteArrayLengthLimit;
protected long totalByteArrayLength;
- public ElasticSerializableBinaryTVList(long queryId, float memoryLimitInMB, int cacheSize)
- throws QueryProcessException {
+ public ElasticSerializableBinaryTVList(long queryId, float memoryLimitInMB, int cacheSize) {
super(TSDataType.TEXT, queryId, memoryLimitInMB, cacheSize);
- byteArrayLengthForMemoryControl = INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
+ byteArrayLengthForMemoryControl = SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
totalByteArrayLengthLimit = 0;
totalByteArrayLength = 0;
}
@Override
- public void putBinary(long timestamp, Binary value) throws IOException, QueryProcessException {
+ public void putBinary(long timestamp, Binary value) throws IOException {
super.putBinary(timestamp, value);
totalByteArrayLengthLimit += byteArrayLengthForMemoryControl;
totalByteArrayLength += value.getLength();
@@ -53,7 +50,7 @@ public class ElasticSerializableBinaryTVList extends ElasticSerializableTVList {
}
@Override
- public void putString(long timestamp, String value) throws IOException, QueryProcessException {
+ public void putString(long timestamp, String value) throws IOException {
Binary binary = Binary.valueOf(value);
super.putBinary(timestamp, binary);
totalByteArrayLengthLimit += byteArrayLengthForMemoryControl;
@@ -61,13 +58,13 @@ public class ElasticSerializableBinaryTVList extends ElasticSerializableTVList {
checkMemoryUsage();
}
- protected void checkMemoryUsage() throws IOException, QueryProcessException {
+ protected void checkMemoryUsage() throws IOException {
if (size % MEMORY_CHECK_THRESHOLD != 0 || totalByteArrayLength <= totalByteArrayLengthLimit) {
return;
}
int newByteArrayLengthForMemoryControl = byteArrayLengthForMemoryControl;
- while (newByteArrayLengthForMemoryControl * size < totalByteArrayLength) {
+ while ((long) newByteArrayLengthForMemoryControl * size < totalByteArrayLength) {
newByteArrayLengthForMemoryControl *= 2;
}
int newInternalTVListCapacity =
@@ -84,10 +81,10 @@ public class ElasticSerializableBinaryTVList extends ElasticSerializableTVList {
(int)
((totalByteArrayLength - totalByteArrayLengthLimit)
/ size
- / INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL);
+ / SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL);
newByteArrayLengthForMemoryControl =
byteArrayLengthForMemoryControl
- + 2 * (delta + 1) * INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
+ + 2 * (delta + 1) * SerializableList.INITIAL_BYTE_ARRAY_LENGTH_FOR_MEMORY_CONTROL;
newInternalTVListCapacity =
SerializableBinaryTVList.calculateCapacity(
memoryLimitInMB, newByteArrayLengthForMemoryControl)
@@ -98,12 +95,11 @@ public class ElasticSerializableBinaryTVList extends ElasticSerializableTVList {
return;
}
- throw new QueryProcessException("Memory is not enough for current query.");
+ throw new RuntimeException("Memory is not enough for current query.");
}
protected void applyNewMemoryControlParameters(
- int newByteArrayLengthForMemoryControl, int newInternalTVListCapacity)
- throws IOException, QueryProcessException {
+ int newByteArrayLengthForMemoryControl, int newInternalTVListCapacity) throws IOException {
ElasticSerializableTVList newElasticSerializableTVList =
new ElasticSerializableTVList(
TSDataType.TEXT, queryId, memoryLimitInMB, newInternalTVListCapacity, cacheSize);
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/ElasticSerializableTVList.java
similarity index 93%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/ElasticSerializableTVList.java
index adf9abc09a..91fa3de508 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/ElasticSerializableTVList.java
@@ -17,12 +17,12 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.datastructure.Cache;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.datastructure.Cache;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.common.BatchData;
@@ -36,12 +36,10 @@ import java.util.List;
public class ElasticSerializableTVList implements PointCollector {
public static ElasticSerializableTVList newElasticSerializableTVList(
- TSDataType dataType, long queryId, float memoryLimitInMB, int cacheSize)
- throws QueryProcessException {
- if (dataType.equals(TSDataType.TEXT)) {
- return new ElasticSerializableBinaryTVList(queryId, memoryLimitInMB, cacheSize);
- }
- return new ElasticSerializableTVList(dataType, queryId, memoryLimitInMB, cacheSize);
+ TSDataType dataType, long queryId, float memoryLimitInMB, int cacheSize) {
+ return dataType.equals(TSDataType.TEXT)
+ ? new ElasticSerializableBinaryTVList(queryId, memoryLimitInMB, cacheSize)
+ : new ElasticSerializableTVList(dataType, queryId, memoryLimitInMB, cacheSize);
}
protected TSDataType dataType;
@@ -62,8 +60,7 @@ public class ElasticSerializableTVList implements PointCollector {
protected int evictionUpperBound;
protected ElasticSerializableTVList(
- TSDataType dataType, long queryId, float memoryLimitInMB, int cacheSize)
- throws QueryProcessException {
+ TSDataType dataType, long queryId, float memoryLimitInMB, int cacheSize) {
this.dataType = dataType;
this.queryId = queryId;
this.memoryLimitInMB = memoryLimitInMB;
@@ -218,20 +215,20 @@ public class ElasticSerializableTVList implements PointCollector {
}
@Override
- public void putBinary(long timestamp, Binary value) throws IOException, QueryProcessException {
+ public void putBinary(long timestamp, Binary value) throws IOException {
checkExpansion();
cache.get(size / internalTVListCapacity).putBinary(timestamp, value);
++size;
}
@Override
- public void putString(long timestamp, String value) throws IOException, QueryProcessException {
+ public void putString(long timestamp, String value) throws IOException {
checkExpansion();
cache.get(size / internalTVListCapacity).putBinary(timestamp, Binary.valueOf(value));
++size;
}
- public void putNull(long timestamp) throws IOException, QueryProcessException {
+ public void putNull(long timestamp) throws IOException {
switch (dataType) {
case INT32:
putInt(timestamp, 0);
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBinaryTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableBinaryTVList.java
similarity index 98%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBinaryTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableBinaryTVList.java
index 80f3fc5d0b..b03467f12c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBinaryTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableBinaryTVList.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBooleanTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableBooleanTVList.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBooleanTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableBooleanTVList.java
index b19246e074..2cf5e22637 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBooleanTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableBooleanTVList.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableDoubleTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableDoubleTVList.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableDoubleTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableDoubleTVList.java
index f9d28856c3..1f1675e81f 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableDoubleTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableDoubleTVList.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableFloatTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableFloatTVList.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableFloatTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableFloatTVList.java
index 5415ad6b56..540749bb2d 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableFloatTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableFloatTVList.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableIntTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableIntTVList.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableIntTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableIntTVList.java
index 86a0106aaa..21894d55ba 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableIntTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableIntTVList.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableLongTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableLongTVList.java
similarity index 97%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableLongTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableLongTVList.java
index e3300b42b0..60fb06037c 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableLongTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableLongTVList.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableTVList.java b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableTVList.java
similarity index 90%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableTVList.java
rename to server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableTVList.java
index edbee1c376..a031be2a2b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableTVList.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/transformation/datastructure/tv/SerializableTVList.java
@@ -17,10 +17,9 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.datastructure.tv;
+package org.apache.iotdb.db.mpp.transformation.datastructure.tv;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.datastructure.SerializableList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.SerializableList;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.common.BatchData;
@@ -47,8 +46,7 @@ public abstract class SerializableTVList extends BatchData implements Serializab
}
}
- protected static int calculateCapacity(TSDataType dataType, float memoryLimitInMB)
- throws QueryProcessException {
+ protected static int calculateCapacity(TSDataType dataType, float memoryLimitInMB) {
int size;
switch (dataType) {
case INT32:
@@ -76,7 +74,7 @@ public abstract class SerializableTVList extends BatchData implements Serializab
}
if (size <= 0) {
- throw new QueryProcessException("Memory is not enough for current query.");
+ throw new RuntimeException("Memory is not enough for current query.");
}
return size;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunction.java
index 3c800af525..2904d1d220 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunction.java
@@ -18,8 +18,8 @@
*/
package org.apache.iotdb.db.protocol.influxdb.function;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunctionFactory.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunctionFactory.java
index 8c20c80a91..9310990b46 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunctionFactory.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/InfluxFunctionFactory.java
@@ -18,6 +18,7 @@
*/
package org.apache.iotdb.db.protocol.influxdb.function;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.aggregator.InfluxCountFunction;
import org.apache.iotdb.db.protocol.influxdb.function.aggregator.InfluxMeanFunction;
@@ -30,7 +31,6 @@ import org.apache.iotdb.db.protocol.influxdb.function.selector.InfluxFirstFuncti
import org.apache.iotdb.db.protocol.influxdb.function.selector.InfluxLastFunction;
import org.apache.iotdb.db.protocol.influxdb.function.selector.InfluxMaxFunction;
import org.apache.iotdb.db.protocol.influxdb.function.selector.InfluxMinFunction;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxAggregator.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxAggregator.java
index 5d82ad966d..458f378053 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxAggregator.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxAggregator.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunction;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxCountFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxCountFunction.java
index f6acb4287c..7cbc59971f 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxCountFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxCountFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMeanFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMeanFunction.java
index 8a5a0c6930..fb1b936e2a 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMeanFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMeanFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.db.utils.MathUtils;
import java.util.ArrayList;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMedianFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMedianFunction.java
index 33d919a0b3..eea844f9c0 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMedianFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxMedianFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.ArrayList;
import java.util.Collections;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxModeFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxModeFunction.java
index 48501047af..ff1f63c8e2 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxModeFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxModeFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.HashMap;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSpreadFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSpreadFunction.java
index b76ac494f6..a5cfcbde1e 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSpreadFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSpreadFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxStddevFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxStddevFunction.java
index 614f4026d9..21790b6177 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxStddevFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxStddevFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.db.utils.MathUtils;
import java.util.ArrayList;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSumFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSumFunction.java
index f175a1aaf2..a0ed37920c 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSumFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/aggregator/InfluxSumFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.aggregator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.db.utils.MathUtils;
import java.util.ArrayList;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxFirstFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxFirstFunction.java
index bba41c0acc..0599b8ddc5 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxFirstFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxFirstFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.selector;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxLastFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxLastFunction.java
index 2674e0e8ec..be9cce9119 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxLastFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxLastFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.selector;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMaxFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMaxFunction.java
index 448955fde8..c31f404b57 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMaxFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMaxFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.selector;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMinFunction.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMinFunction.java
index 073a640d86..52d6177c58 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMinFunction.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxMinFunction.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.selector;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxSelector.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxSelector.java
index c4c9e3367d..e13013b3b6 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxSelector.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/function/selector/InfluxSelector.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.protocol.influxdb.function.selector;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunction;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunctionValue;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/handler/QueryHandler.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/handler/QueryHandler.java
index 12f78ccde2..e7b0881b6d 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/handler/QueryHandler.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/handler/QueryHandler.java
@@ -23,6 +23,10 @@ import org.apache.iotdb.commons.auth.AuthException;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.db.exception.StorageEngineException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxConstant;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
import org.apache.iotdb.db.protocol.influxdb.function.InfluxFunction;
@@ -46,10 +50,6 @@ import org.apache.iotdb.db.qp.physical.PhysicalPlan;
import org.apache.iotdb.db.qp.physical.crud.QueryPlan;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.control.SessionManager;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import org.apache.iotdb.db.service.basic.ServiceProvider;
import org.apache.iotdb.protocol.influxdb.rpc.thrift.InfluxQueryResultRsp;
import org.apache.iotdb.rpc.RpcUtils;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/operator/InfluxSelectComponent.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/operator/InfluxSelectComponent.java
index 05e5c39fec..79a1150f66 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/operator/InfluxSelectComponent.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/operator/InfluxSelectComponent.java
@@ -18,11 +18,11 @@
*/
package org.apache.iotdb.db.protocol.influxdb.operator;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.protocol.influxdb.constant.InfluxSQLConstant;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import java.time.ZoneId;
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBSqlVisitor.java b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBSqlVisitor.java
index b66e14ce47..f413a4a4b3 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBSqlVisitor.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBSqlVisitor.java
@@ -19,6 +19,16 @@
package org.apache.iotdb.db.protocol.influxdb.sql;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.binary.AdditionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.DivisionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.ModuloExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.MultiplicationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.SubtractionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.NegationExpression;
import org.apache.iotdb.db.protocol.influxdb.operator.InfluxQueryOperator;
import org.apache.iotdb.db.protocol.influxdb.operator.InfluxSelectComponent;
import org.apache.iotdb.db.qp.constant.FilterConstant;
@@ -31,16 +41,6 @@ import org.apache.iotdb.db.qp.logical.crud.WhereComponent;
import org.apache.iotdb.db.qp.sql.InfluxDBSqlParser;
import org.apache.iotdb.db.qp.sql.InfluxDBSqlParserBaseVisitor;
import org.apache.iotdb.db.qp.utils.DatetimeUtils;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.binary.AdditionExpression;
-import org.apache.iotdb.db.query.expression.binary.DivisionExpression;
-import org.apache.iotdb.db.query.expression.binary.ModuloExpression;
-import org.apache.iotdb.db.query.expression.binary.MultiplicationExpression;
-import org.apache.iotdb.db.query.expression.binary.SubtractionExpression;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.expression.unary.NegationExpression;
public class InfluxDBSqlVisitor extends InfluxDBSqlParserBaseVisitor<Operator> {
diff --git a/server/src/main/java/org/apache/iotdb/db/protocol/rest/handler/QueryDataSetHandler.java b/server/src/main/java/org/apache/iotdb/db/protocol/rest/handler/QueryDataSetHandler.java
index 6f68d4df19..f12c02e179 100644
--- a/server/src/main/java/org/apache/iotdb/db/protocol/rest/handler/QueryDataSetHandler.java
+++ b/server/src/main/java/org/apache/iotdb/db/protocol/rest/handler/QueryDataSetHandler.java
@@ -17,6 +17,7 @@
package org.apache.iotdb.db.protocol.rest.handler;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import org.apache.iotdb.db.protocol.rest.model.ExecutionStatus;
import org.apache.iotdb.db.qp.physical.PhysicalPlan;
import org.apache.iotdb.db.qp.physical.crud.AggregationPlan;
@@ -29,7 +30,6 @@ import org.apache.iotdb.db.query.dataset.ShowDevicesDataSet;
import org.apache.iotdb.db.query.dataset.ShowTimeseriesDataSet;
import org.apache.iotdb.db.query.dataset.SingleDataSet;
import org.apache.iotdb.db.query.dataset.groupby.GroupByLevelDataSet;
-import org.apache.iotdb.db.query.expression.ResultColumn;
import org.apache.iotdb.rpc.TSStatusCode;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.common.Field;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/constant/FilterConstant.java b/server/src/main/java/org/apache/iotdb/db/qp/constant/FilterConstant.java
index 2e4ebbe383..5a92fa4ecd 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/constant/FilterConstant.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/constant/FilterConstant.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.qp.constant;
+import org.apache.iotdb.db.mpp.plan.expression.ExpressionType;
import org.apache.iotdb.db.qp.sql.SqlLexer;
-import org.apache.iotdb.db.query.expression.ExpressionType;
import java.util.EnumMap;
import java.util.HashMap;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java
index e5d80719ca..8bd7d6a7a9 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/AggregationQueryOperator.java
@@ -23,16 +23,16 @@ import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOperatorException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.qp.constant.SQLConstant;
import org.apache.iotdb.db.qp.physical.PhysicalPlan;
import org.apache.iotdb.db.qp.physical.crud.AggregationPlan;
import org.apache.iotdb.db.qp.physical.crud.AlignByDevicePlan;
import org.apache.iotdb.db.qp.physical.crud.QueryPlan;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import org.apache.iotdb.db.utils.SchemaUtils;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/LastQueryOperator.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/LastQueryOperator.java
index 63eddbe346..98ecd4c220 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/LastQueryOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/LastQueryOperator.java
@@ -21,12 +21,12 @@ package org.apache.iotdb.db.qp.logical.crud;
import org.apache.iotdb.db.exception.query.LogicalOperatorException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.qp.physical.PhysicalPlan;
import org.apache.iotdb.db.qp.physical.crud.LastQueryPlan;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
public class LastQueryOperator extends QueryOperator {
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/QueryOperator.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/QueryOperator.java
index 9d426332d3..3259f3ae6c 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/QueryOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/QueryOperator.java
@@ -25,6 +25,10 @@ import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.index.common.IndexType;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.qp.constant.SQLConstant;
import org.apache.iotdb.db.qp.logical.Operator;
import org.apache.iotdb.db.qp.physical.PhysicalPlan;
@@ -34,10 +38,6 @@ import org.apache.iotdb.db.qp.physical.crud.QueryIndexPlan;
import org.apache.iotdb.db.qp.physical.crud.QueryPlan;
import org.apache.iotdb.db.qp.physical.crud.RawDataQueryPlan;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import org.apache.iotdb.db.service.IoTDB;
import org.apache.iotdb.tsfile.exception.filter.QueryFilterOptimizationException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectComponent.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectComponent.java
index 19e2840224..2b4616278e 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectComponent.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SelectComponent.java
@@ -20,10 +20,10 @@
package org.apache.iotdb.db.qp.logical.crud;
import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import java.time.ZoneId;
import java.util.ArrayList;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java
index ec0c3a74de..f9b411a1b8 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/SpecialClauseComponent.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.qp.logical.crud;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.qp.utils.GroupByLevelController;
-import org.apache.iotdb.db.query.expression.Expression;
import java.util.ArrayList;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/UDAFQueryOperator.java b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/UDAFQueryOperator.java
index fd9888f36e..be2b53a8c9 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/UDAFQueryOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/logical/crud/UDAFQueryOperator.java
@@ -20,14 +20,14 @@ package org.apache.iotdb.db.qp.logical.crud;
import org.apache.iotdb.db.exception.query.LogicalOperatorException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.qp.physical.PhysicalPlan;
import org.apache.iotdb.db.qp.physical.crud.AggregationPlan;
import org.apache.iotdb.db.qp.physical.crud.UDAFPlan;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import java.util.ArrayList;
import java.util.HashMap;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AggregationPlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AggregationPlan.java
index d0a87bf44d..b8954ec81c 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AggregationPlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AggregationPlan.java
@@ -20,10 +20,10 @@ package org.apache.iotdb.db.qp.physical.crud;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import org.apache.iotdb.db.qp.logical.Operator;
import org.apache.iotdb.db.qp.utils.GroupByLevelController;
import org.apache.iotdb.db.query.aggregation.AggregateResult;
-import org.apache.iotdb.db.query.expression.ResultColumn;
import org.apache.iotdb.db.utils.SchemaUtils;
import org.apache.iotdb.rpc.RpcUtils;
import org.apache.iotdb.rpc.TSStatusCode;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AlignByDevicePlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AlignByDevicePlan.java
index 35a22188e4..561aae819d 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AlignByDevicePlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/AlignByDevicePlan.java
@@ -20,12 +20,12 @@ package org.apache.iotdb.db.qp.physical.crud;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.qp.constant.SQLConstant;
import org.apache.iotdb.db.qp.logical.Operator;
import org.apache.iotdb.db.qp.logical.Operator.OperatorType;
import org.apache.iotdb.db.qp.logical.crud.SpecialClauseComponent;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.rpc.RpcUtils;
import org.apache.iotdb.rpc.TSStatusCode;
import org.apache.iotdb.service.rpc.thrift.TSExecuteStatementResp;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/LastQueryPlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/LastQueryPlan.java
index b7a54911eb..eea48cf4ed 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/LastQueryPlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/LastQueryPlan.java
@@ -21,9 +21,9 @@ package org.apache.iotdb.db.qp.physical.crud;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import org.apache.iotdb.db.qp.logical.Operator;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.ResultColumn;
import org.apache.iotdb.db.service.StaticResps;
import org.apache.iotdb.service.rpc.thrift.TSExecuteStatementResp;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/QueryPlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/QueryPlan.java
index 0dc86af4fc..ba8b4ad5ba 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/QueryPlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/QueryPlan.java
@@ -22,11 +22,11 @@ import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import org.apache.iotdb.db.qp.logical.Operator;
import org.apache.iotdb.db.qp.logical.crud.SpecialClauseComponent;
import org.apache.iotdb.db.qp.physical.PhysicalPlan;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.ResultColumn;
import org.apache.iotdb.db.service.IoTDB;
import org.apache.iotdb.db.utils.SchemaUtils;
import org.apache.iotdb.rpc.RpcUtils;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/RawDataQueryPlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/RawDataQueryPlan.java
index 2f9dce7afc..b6952e754b 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/RawDataQueryPlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/RawDataQueryPlan.java
@@ -22,9 +22,9 @@ import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.metadata.path.AlignedPath;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.qp.logical.crud.SpecialClauseComponent;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.db.utils.SchemaUtils;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.common.Path;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDAFPlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDAFPlan.java
index 483e2cdb23..7205fff532 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDAFPlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDAFPlan.java
@@ -19,9 +19,9 @@
package org.apache.iotdb.db.qp.physical.crud;
import org.apache.iotdb.commons.exception.MetadataException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
import org.apache.iotdb.db.qp.logical.Operator.OperatorType;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.Expression;
import org.apache.iotdb.service.rpc.thrift.TSExecuteStatementResp;
import org.apache.thrift.TException;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDFPlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDFPlan.java
index a60640b1f1..9fb119f4ef 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDFPlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDFPlan.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.qp.physical.crud;
-import org.apache.iotdb.db.query.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import java.util.List;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDTFPlan.java b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDTFPlan.java
index 5ee605a460..158e454c8d 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDTFPlan.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDTFPlan.java
@@ -22,11 +22,11 @@ package org.apache.iotdb.db.qp.physical.crud;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
+import org.apache.iotdb.db.mpp.transformation.dag.udf.UDTFContext;
import org.apache.iotdb.db.qp.logical.Operator;
import org.apache.iotdb.db.qp.strategy.PhysicalGenerator;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
-import org.apache.iotdb.db.query.udf.core.executor.UDTFContext;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Pair;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java b/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java
index a81179f435..954d043a62 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java
@@ -24,6 +24,31 @@ import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.engine.trigger.executor.TriggerEvent;
import org.apache.iotdb.db.exception.sql.SQLParserException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.binary.AdditionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.BinaryExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.DivisionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.EqualToExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LessThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicAndExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicOrExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.ModuloExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.MultiplicationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.NonEqualExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.SubtractionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.InExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LikeExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.LogicNotExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.NegationExpression;
+import org.apache.iotdb.db.mpp.plan.expression.unary.RegularExpression;
import org.apache.iotdb.db.qp.constant.FilterConstant;
import org.apache.iotdb.db.qp.constant.FilterConstant.FilterType;
import org.apache.iotdb.db.qp.constant.SQLConstant;
@@ -126,31 +151,6 @@ import org.apache.iotdb.db.query.executor.fill.IFill;
import org.apache.iotdb.db.query.executor.fill.LinearFill;
import org.apache.iotdb.db.query.executor.fill.PreviousFill;
import org.apache.iotdb.db.query.executor.fill.ValueFill;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.binary.AdditionExpression;
-import org.apache.iotdb.db.query.expression.binary.BinaryExpression;
-import org.apache.iotdb.db.query.expression.binary.DivisionExpression;
-import org.apache.iotdb.db.query.expression.binary.EqualToExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.GreaterThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LessEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.LessThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicAndExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicOrExpression;
-import org.apache.iotdb.db.query.expression.binary.ModuloExpression;
-import org.apache.iotdb.db.query.expression.binary.MultiplicationExpression;
-import org.apache.iotdb.db.query.expression.binary.NonEqualExpression;
-import org.apache.iotdb.db.query.expression.binary.SubtractionExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.expression.unary.InExpression;
-import org.apache.iotdb.db.query.expression.unary.LikeExpression;
-import org.apache.iotdb.db.query.expression.unary.LogicNotExpression;
-import org.apache.iotdb.db.query.expression.unary.NegationExpression;
-import org.apache.iotdb.db.query.expression.unary.RegularExpression;
import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/strategy/LogicalGenerator.java b/server/src/main/java/org/apache/iotdb/db/qp/strategy/LogicalGenerator.java
index 9e12f0655c..b7944c64ee 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/strategy/LogicalGenerator.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/strategy/LogicalGenerator.java
@@ -22,6 +22,8 @@ import org.apache.iotdb.commons.conf.IoTDBConstant;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.utils.TestOnly;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.qp.constant.FilterConstant.FilterType;
import org.apache.iotdb.db.qp.logical.Operator;
import org.apache.iotdb.db.qp.logical.crud.BasicFunctionOperator;
@@ -34,8 +36,6 @@ import org.apache.iotdb.db.qp.logical.crud.WhereComponent;
import org.apache.iotdb.db.qp.sql.IoTDBSqlParser;
import org.apache.iotdb.db.qp.sql.IoTDBSqlVisitor;
import org.apache.iotdb.db.qp.sql.SqlLexer;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.service.rpc.thrift.TSLastDataQueryReq;
import org.apache.iotdb.service.rpc.thrift.TSRawDataQueryReq;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/strategy/optimizer/ConcatPathOptimizer.java b/server/src/main/java/org/apache/iotdb/db/qp/strategy/optimizer/ConcatPathOptimizer.java
index 46a37fe3e9..c25498042d 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/strategy/optimizer/ConcatPathOptimizer.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/strategy/optimizer/ConcatPathOptimizer.java
@@ -26,6 +26,9 @@ import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.PathNumOverLimitException;
import org.apache.iotdb.db.exception.sql.SQLParserException;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.qp.constant.FilterConstant.FilterType;
import org.apache.iotdb.db.qp.constant.SQLConstant;
import org.apache.iotdb.db.qp.logical.Operator;
@@ -41,9 +44,6 @@ import org.apache.iotdb.db.qp.logical.crud.SelectComponent;
import org.apache.iotdb.db.qp.logical.crud.WhereComponent;
import org.apache.iotdb.db.qp.utils.GroupByLevelController;
import org.apache.iotdb.db.qp.utils.WildcardsRemover;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.service.IoTDB;
import org.slf4j.Logger;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/utils/DatetimeUtils.java b/server/src/main/java/org/apache/iotdb/db/qp/utils/DatetimeUtils.java
index 9a1dd4fc64..e77d67344b 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/utils/DatetimeUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/utils/DatetimeUtils.java
@@ -20,7 +20,6 @@ package org.apache.iotdb.db.qp.utils;
import org.apache.iotdb.commons.utils.TestOnly;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.exception.query.LogicalOperatorException;
import org.apache.iotdb.db.query.control.SessionManager;
import java.time.DateTimeException;
@@ -450,13 +449,11 @@ public class DatetimeUtils {
.appendOptional(ISO_OFFSET_DATE_TIME_WITH_DOT_WITH_SPACE_NS)
.toFormatter();
- public static long convertDatetimeStrToLong(String str, ZoneId zoneId)
- throws LogicalOperatorException {
+ public static long convertDatetimeStrToLong(String str, ZoneId zoneId) {
return convertDatetimeStrToLong(str, toZoneOffset(zoneId), 0);
}
- public static long getInstantWithPrecision(String str, String timestampPrecision)
- throws LogicalOperatorException {
+ public static long getInstantWithPrecision(String str, String timestampPrecision) {
try {
ZonedDateTime zonedDateTime = ZonedDateTime.parse(str, formatter);
Instant instant = zonedDateTime.toInstant();
@@ -476,13 +473,12 @@ public class DatetimeUtils {
}
return instant.toEpochMilli();
} catch (DateTimeParseException e) {
- throw new LogicalOperatorException(e.getMessage());
+ throw new RuntimeException(e.getMessage());
}
}
/** convert date time string to millisecond, microsecond or nanosecond. */
- public static long convertDatetimeStrToLong(String str, ZoneOffset offset, int depth)
- throws LogicalOperatorException {
+ public static long convertDatetimeStrToLong(String str, ZoneOffset offset, int depth) {
String timestampPrecision = IoTDBDescriptor.getInstance().getConfig().getTimestampPrecision();
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/utils/GroupByLevelController.java b/server/src/main/java/org/apache/iotdb/db/qp/utils/GroupByLevelController.java
index c1fb4657f8..781838c88b 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/utils/GroupByLevelController.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/utils/GroupByLevelController.java
@@ -22,10 +22,10 @@ package org.apache.iotdb.db.qp.utils;
import org.apache.iotdb.commons.conf.IoTDBConstant;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.qp.logical.crud.QueryOperator;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
diff --git a/server/src/main/java/org/apache/iotdb/db/qp/utils/WildcardsRemover.java b/server/src/main/java/org/apache/iotdb/db/qp/utils/WildcardsRemover.java
index e0c22188f6..30cf3df9f3 100644
--- a/server/src/main/java/org/apache/iotdb/db/qp/utils/WildcardsRemover.java
+++ b/server/src/main/java/org/apache/iotdb/db/qp/utils/WildcardsRemover.java
@@ -25,10 +25,10 @@ import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.query.LogicalOptimizeException;
import org.apache.iotdb.db.exception.query.PathNumOverLimitException;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
import org.apache.iotdb.db.qp.logical.crud.QueryOperator;
import org.apache.iotdb.db.qp.strategy.optimizer.ConcatPathOptimizer;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.ResultColumn;
import org.apache.iotdb.db.service.IoTDB;
import org.apache.iotdb.tsfile.utils.Pair;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java b/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java
index 5dd6e0a648..2f436fd392 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java
@@ -27,7 +27,7 @@ import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.metadata.idtable.IDTable;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.externalsort.serialize.IExternalSortFileDeserializer;
-import org.apache.iotdb.db.query.udf.service.TemporaryQueryDataFileService;
+import org.apache.iotdb.db.service.TemporaryQueryDataFileService;
import org.apache.iotdb.db.utils.QueryUtils;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
@@ -199,7 +199,7 @@ public class QueryResourceManager {
* Whenever the jdbc request is closed normally or abnormally, this method must be invoked. All
* query tokens created by this jdbc request must be cleared.
*/
- @SuppressWarnings("squid:S3776") // Suppress high Cognitive Complexity warning
+ // Suppress high Cognitive Complexity warning
public void endQuery(long queryId) throws StorageEngineException {
// close file stream of external sort files, and delete
if (externalSortFileMap.get(queryId) != null) {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFAlignByTimeDataSet.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFAlignByTimeDataSet.java
index 4752434a7f..71a5708979 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFAlignByTimeDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFAlignByTimeDataSet.java
@@ -20,11 +20,11 @@
package org.apache.iotdb.db.query.dataset;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.reader.series.IReaderByTimestamp;
import org.apache.iotdb.db.query.reader.series.ManagedSeriesReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
import org.apache.iotdb.db.tools.watermark.WatermarkEncoder;
import org.apache.iotdb.db.utils.datastructure.TimeSelector;
import org.apache.iotdb.service.rpc.thrift.TSQueryDataSet;
@@ -246,7 +246,7 @@ public class UDTFAlignByTimeDataSet extends UDTFDataSet implements DirectAlignBy
--rowOffset;
}
- rawQueryInputLayer.updateRowRecordListEvictionUpperBound();
+ queryDataSetInputLayer.updateRowRecordListEvictionUpperBound();
}
/*
@@ -350,7 +350,7 @@ public class UDTFAlignByTimeDataSet extends UDTFDataSet implements DirectAlignBy
throw new IOException(e.getMessage());
}
- rawQueryInputLayer.updateRowRecordListEvictionUpperBound();
+ queryDataSetInputLayer.updateRowRecordListEvictionUpperBound();
return rowRecord;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFDataSet.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFDataSet.java
index 7c1dfa2af9..1f816f1a2a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFDataSet.java
@@ -22,13 +22,13 @@ package org.apache.iotdb.db.query.dataset;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.dag.builder.DAGBuilder;
+import org.apache.iotdb.db.mpp.transformation.dag.input.QueryDataSetInputLayer;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.reader.series.IReaderByTimestamp;
import org.apache.iotdb.db.query.reader.series.ManagedSeriesReader;
-import org.apache.iotdb.db.query.udf.core.layer.DAGBuilder;
-import org.apache.iotdb.db.query.udf.core.layer.RawQueryInputLayer;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
import org.apache.iotdb.db.query.udf.service.UDFClassLoaderManager;
import org.apache.iotdb.db.query.udf.service.UDFRegistrationService;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
@@ -50,7 +50,7 @@ public abstract class UDTFDataSet extends QueryDataSet {
protected final long queryId;
protected final UDTFPlan udtfPlan;
- protected final RawQueryInputLayer rawQueryInputLayer;
+ protected final QueryDataSetInputLayer queryDataSetInputLayer;
protected LayerPointReader[] transformers;
@@ -68,8 +68,8 @@ public abstract class UDTFDataSet extends QueryDataSet {
super(new ArrayList<>(deduplicatedPaths), deduplicatedDataTypes);
queryId = queryContext.getQueryId();
this.udtfPlan = udtfPlan;
- rawQueryInputLayer =
- new RawQueryInputLayer(
+ queryDataSetInputLayer =
+ new QueryDataSetInputLayer(
queryId,
UDF_READER_MEMORY_BUDGET_IN_MB,
deduplicatedPaths,
@@ -94,8 +94,8 @@ public abstract class UDTFDataSet extends QueryDataSet {
super(new ArrayList<>(deduplicatedPaths), deduplicatedDataTypes);
queryId = queryContext.getQueryId();
this.udtfPlan = udtfPlan;
- rawQueryInputLayer =
- new RawQueryInputLayer(
+ queryDataSetInputLayer =
+ new QueryDataSetInputLayer(
queryId, UDF_READER_MEMORY_BUDGET_IN_MB, udtfPlan, readersOfSelectedSeries);
initTransformers();
@@ -106,7 +106,8 @@ public abstract class UDTFDataSet extends QueryDataSet {
throws QueryProcessException, IOException {
queryId = queryContext.getQueryId();
this.udtfPlan = udtfPlan;
- rawQueryInputLayer = new RawQueryInputLayer(queryId, UDF_READER_MEMORY_BUDGET_IN_MB, dataSet);
+ queryDataSetInputLayer =
+ new QueryDataSetInputLayer(queryId, UDF_READER_MEMORY_BUDGET_IN_MB, dataSet);
initTransformers();
initDataSetFields();
}
@@ -121,7 +122,7 @@ public abstract class UDTFDataSet extends QueryDataSet {
new DAGBuilder(
queryId,
udtfPlan,
- rawQueryInputLayer,
+ queryDataSetInputLayer,
UDF_TRANSFORMER_MEMORY_BUDGET_IN_MB + UDF_COLLECTOR_MEMORY_BUDGET_IN_MB)
.bindInputLayerColumnIndexWithExpression()
.buildLayerMemoryAssigner()
diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFNonAlignDataSet.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFNonAlignDataSet.java
index 01af59cac8..53a2acf177 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFNonAlignDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFNonAlignDataSet.java
@@ -20,11 +20,11 @@
package org.apache.iotdb.db.query.dataset;
import org.apache.iotdb.db.exception.query.QueryProcessException;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
import org.apache.iotdb.db.qp.physical.crud.UDTFPlan;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.reader.series.IReaderByTimestamp;
import org.apache.iotdb.db.query.reader.series.ManagedSeriesReader;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
import org.apache.iotdb.db.tools.watermark.WatermarkEncoder;
import org.apache.iotdb.service.rpc.thrift.TSQueryNonAlignDataSet;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
@@ -115,7 +115,7 @@ public class UDTFNonAlignDataSet extends UDTFDataSet implements DirectNonAlignDa
valueBufferList.add(timeValueByteBufferPair.right);
}
- rawQueryInputLayer.updateRowRecordListEvictionUpperBound();
+ queryDataSetInputLayer.updateRowRecordListEvictionUpperBound();
tsQueryNonAlignDataSet.setTimeList(timeBufferList);
tsQueryNonAlignDataSet.setValueList(valueBufferList);
diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByFillDataSet.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByFillDataSet.java
index 5b0c9a7607..d88fadc167 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByFillDataSet.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/GroupByFillDataSet.java
@@ -22,13 +22,13 @@ import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.StorageEngineException;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.exception.query.UnSupportedFillTypeException;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.qp.physical.crud.GroupByTimeFillPlan;
import org.apache.iotdb.db.query.context.QueryContext;
import org.apache.iotdb.db.query.executor.fill.IFill;
import org.apache.iotdb.db.query.executor.fill.LinearFill;
import org.apache.iotdb.db.query.executor.fill.PreviousFill;
import org.apache.iotdb.db.query.executor.fill.ValueFill;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.db.utils.TypeInferenceUtils;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.TimeValuePair;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFClassLoaderManager.java b/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFClassLoaderManager.java
index 2af5764747..99cf877d3e 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFClassLoaderManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFClassLoaderManager.java
@@ -46,9 +46,8 @@ public class UDFClassLoaderManager implements IService {
/**
* activeClassLoader is used to load all classes under libRoot. libRoot may be updated before the
* user executes CREATE FUNCTION or after the user executes DROP FUNCTION. Therefore, we need to
- * continuously maintain the activeClassLoader so that the classes it loads are always up to date.
+ * continuously maintain the activeClassLoader so that the classes it loads are always up-to-date.
*/
- @SuppressWarnings("squid:S3077")
private volatile UDFClassLoader activeClassLoader;
UDFClassLoaderManager() {
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationInformation.java b/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationInformation.java
index c09092fada..729629c0b2 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationInformation.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationInformation.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.query.udf.service;
-import org.apache.iotdb.db.query.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.UDTF;
import java.lang.reflect.InvocationTargetException;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationService.java b/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationService.java
index af451f5e38..6c890da7f2 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationService.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationService.java
@@ -23,14 +23,12 @@ 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.commons.udf.api.UDF;
+import org.apache.iotdb.commons.udf.builtin.BuiltinFunction;
import org.apache.iotdb.commons.utils.TestOnly;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
import org.apache.iotdb.db.exception.UDFRegistrationException;
-import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.qp.constant.SQLConstant;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
-import org.apache.iotdb.db.query.udf.api.UDF;
-import org.apache.iotdb.db.query.udf.builtin.BuiltinFunction;
import org.apache.iotdb.tsfile.fileSystem.FSFactoryProducer;
import org.apache.commons.io.FileUtils;
@@ -239,8 +237,8 @@ public class UDFRegistrationService implements IService {
}
}
- public UDF reflect(FunctionExpression expression) throws QueryProcessException {
- String functionName = expression.getFunctionName().toUpperCase();
+ public UDF reflect(String functionName) {
+ functionName = functionName.toUpperCase();
UDFRegistrationInformation information = registrationInformation.get(functionName);
if (information == null) {
String errorMessage =
@@ -248,7 +246,7 @@ public class UDFRegistrationService implements IService {
"Failed to reflect UDF instance, because UDF %s has not been registered.",
functionName);
logger.warn(errorMessage);
- throw new QueryProcessException(errorMessage);
+ throw new RuntimeException(errorMessage);
}
if (!information.isBuiltin()) {
@@ -267,7 +265,7 @@ public class UDFRegistrationService implements IService {
"Failed to reflect UDF %s(%s) instance, because %s",
functionName, information.getClassName(), e);
logger.warn(errorMessage);
- throw new QueryProcessException(errorMessage);
+ throw new RuntimeException(errorMessage);
}
}
diff --git a/server/src/main/java/org/apache/iotdb/db/service/DataNode.java b/server/src/main/java/org/apache/iotdb/db/service/DataNode.java
index 8f51106bf9..d2333c674b 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/DataNode.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/DataNode.java
@@ -49,7 +49,6 @@ import org.apache.iotdb.db.mpp.execution.datatransfer.DataBlockService;
import org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler;
import org.apache.iotdb.db.protocol.influxdb.meta.InfluxDBMetaManager;
import org.apache.iotdb.db.protocol.rest.RestService;
-import org.apache.iotdb.db.query.udf.service.TemporaryQueryDataFileService;
import org.apache.iotdb.db.query.udf.service.UDFClassLoaderManager;
import org.apache.iotdb.db.query.udf.service.UDFRegistrationService;
import org.apache.iotdb.db.service.basic.ServiceProvider;
diff --git a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java
index 54e2b3073a..ced6730c57 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java
@@ -44,7 +44,6 @@ import org.apache.iotdb.db.mpp.execution.datatransfer.DataBlockService;
import org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler;
import org.apache.iotdb.db.protocol.influxdb.meta.InfluxDBMetaManager;
import org.apache.iotdb.db.protocol.rest.RestService;
-import org.apache.iotdb.db.query.udf.service.TemporaryQueryDataFileService;
import org.apache.iotdb.db.query.udf.service.UDFClassLoaderManager;
import org.apache.iotdb.db.query.udf.service.UDFRegistrationService;
import org.apache.iotdb.db.rescon.PrimitiveArrayManager;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/udf/service/TemporaryQueryDataFileService.java b/server/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
similarity index 96%
rename from server/src/main/java/org/apache/iotdb/db/query/udf/service/TemporaryQueryDataFileService.java
rename to server/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
index 5c691bc8c4..4cd00dde1a 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/udf/service/TemporaryQueryDataFileService.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/TemporaryQueryDataFileService.java
@@ -17,14 +17,14 @@
* under the License.
*/
-package org.apache.iotdb.db.query.udf.service;
+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.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.query.udf.datastructure.SerializableList.SerializationRecorder;
+import org.apache.iotdb.db.mpp.transformation.datastructure.SerializableList.SerializationRecorder;
import org.apache.commons.io.FileUtils;
import org.slf4j.Logger;
diff --git a/server/src/main/java/org/apache/iotdb/db/tools/watermark/WatermarkDetector.java b/server/src/main/java/org/apache/iotdb/db/tools/watermark/WatermarkDetector.java
index 54b0a0bbf6..45f9e35a6f 100644
--- a/server/src/main/java/org/apache/iotdb/db/tools/watermark/WatermarkDetector.java
+++ b/server/src/main/java/org/apache/iotdb/db/tools/watermark/WatermarkDetector.java
@@ -68,7 +68,7 @@ public class WatermarkDetector {
dataType);
}
- @SuppressWarnings("squid:S3776") // Suppress high Cognitive Complexity warning
+ // Suppress high Cognitive Complexity warning
public static boolean isWatermarked(
String filePath,
String secretKey,
@@ -171,12 +171,7 @@ public class WatermarkDetector {
try {
timestamp = Long.parseLong(str);
} catch (NumberFormatException e) {
- try {
- ZoneId zoneId = ZoneId.systemDefault();
- timestamp = DatetimeUtils.convertDatetimeStrToLong(str, zoneId);
- } catch (LogicalOperatorException e1) {
- throw new LogicalOperatorException("The format of timestamp is not unexpected.");
- }
+ timestamp = DatetimeUtils.convertDatetimeStrToLong(str, ZoneId.systemDefault());
}
return timestamp;
}
diff --git a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/QueryLogicalPlanUtil.java b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/QueryLogicalPlanUtil.java
index 411396ecd3..fdcabbe1b4 100644
--- a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/QueryLogicalPlanUtil.java
+++ b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/QueryLogicalPlanUtil.java
@@ -25,6 +25,13 @@ import org.apache.iotdb.db.metadata.path.AlignedPath;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
import org.apache.iotdb.db.mpp.common.QueryId;
import org.apache.iotdb.db.mpp.common.header.HeaderConstant;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.LogicAndExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimestampOperand;
+import org.apache.iotdb.db.mpp.plan.expression.multi.FunctionExpression;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.AggregationNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.DeviceViewNode;
@@ -44,13 +51,6 @@ import org.apache.iotdb.db.mpp.plan.statement.component.FilterNullPolicy;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
import org.apache.iotdb.db.qp.constant.SQLConstant;
import org.apache.iotdb.db.query.aggregation.AggregationType;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.binary.GreaterThanExpression;
-import org.apache.iotdb.db.query.expression.binary.LogicAndExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimestampOperand;
-import org.apache.iotdb.db.query.expression.multi.FunctionExpression;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.filter.TimeFilter;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
diff --git a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/AggregationNodeSerdeTest.java b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/AggregationNodeSerdeTest.java
index 1ebddfd736..1393453af9 100644
--- a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/AggregationNodeSerdeTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/AggregationNodeSerdeTest.java
@@ -24,6 +24,7 @@ import org.apache.iotdb.common.rpc.thrift.TRegionReplicaSet;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.mpp.plan.plan.node.PlanNodeDeserializeHelper;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.AggregationNode;
@@ -33,7 +34,6 @@ import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.AggregationStep;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.GroupByTimeParameter;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
import org.apache.iotdb.db.query.aggregation.AggregationType;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.filter.operator.In;
diff --git a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNodeSerdeTest.java b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNodeSerdeTest.java
index 35346f29d8..43310e8f47 100644
--- a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNodeSerdeTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNodeSerdeTest.java
@@ -20,15 +20,15 @@ package org.apache.iotdb.db.mpp.plan.plan.node.process;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.db.mpp.plan.expression.Expression;
+import org.apache.iotdb.db.mpp.plan.expression.binary.GreaterThanExpression;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.ConstantOperand;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.mpp.plan.plan.node.PlanNodeDeserializeHelper;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.FilterNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.TimeJoinNode;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
-import org.apache.iotdb.db.query.expression.Expression;
-import org.apache.iotdb.db.query.expression.binary.GreaterThanExpression;
-import org.apache.iotdb.db.query.expression.leaf.ConstantOperand;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.junit.Test;
diff --git a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNullNodeSerdeTest.java b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNullNodeSerdeTest.java
index 2aeac41871..360b644d8d 100644
--- a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNullNodeSerdeTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/FilterNullNodeSerdeTest.java
@@ -20,13 +20,13 @@ package org.apache.iotdb.db.mpp.plan.plan.node.process;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.mpp.plan.plan.node.PlanNodeDeserializeHelper;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.FilterNullNode;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.TimeJoinNode;
import org.apache.iotdb.db.mpp.plan.statement.component.FilterNullPolicy;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.junit.Test;
diff --git a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/GroupByLevelNodeSerdeTest.java b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/GroupByLevelNodeSerdeTest.java
index 7e94ffff86..53a4b72b68 100644
--- a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/GroupByLevelNodeSerdeTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/process/GroupByLevelNodeSerdeTest.java
@@ -24,6 +24,7 @@ import org.apache.iotdb.common.rpc.thrift.TRegionReplicaSet;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.mpp.plan.plan.node.PlanNodeDeserializeHelper;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.process.GroupByLevelNode;
@@ -33,7 +34,6 @@ import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.AggregationStep;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.GroupByTimeParameter;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
import org.apache.iotdb.db.query.aggregation.AggregationType;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.junit.Test;
diff --git a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/source/SeriesAggregationScanNodeSerdeTest.java b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/source/SeriesAggregationScanNodeSerdeTest.java
index 072cf1a0a4..9b07836baf 100644
--- a/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/source/SeriesAggregationScanNodeSerdeTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/mpp/plan/plan/node/source/SeriesAggregationScanNodeSerdeTest.java
@@ -25,6 +25,7 @@ import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.db.exception.query.QueryProcessException;
import org.apache.iotdb.db.metadata.path.MeasurementPath;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.mpp.plan.plan.node.PlanNodeDeserializeHelper;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.PlanNodeId;
import org.apache.iotdb.db.mpp.plan.planner.plan.node.source.SeriesAggregationScanNode;
@@ -33,7 +34,6 @@ import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.AggregationStep;
import org.apache.iotdb.db.mpp.plan.planner.plan.parameter.GroupByTimeParameter;
import org.apache.iotdb.db.mpp.plan.statement.component.OrderBy;
import org.apache.iotdb.db.query.aggregation.AggregationType;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.filter.operator.In;
diff --git a/server/src/test/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBLogicalGeneratorTest.java b/server/src/test/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBLogicalGeneratorTest.java
index 31c662cdef..11ab3a6a1f 100644
--- a/server/src/test/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBLogicalGeneratorTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/protocol/influxdb/sql/InfluxDBLogicalGeneratorTest.java
@@ -18,12 +18,12 @@
*/
package org.apache.iotdb.db.protocol.influxdb.sql;
+import org.apache.iotdb.db.mpp.plan.expression.ResultColumn;
+import org.apache.iotdb.db.mpp.plan.expression.leaf.TimeSeriesOperand;
import org.apache.iotdb.db.protocol.influxdb.operator.InfluxQueryOperator;
import org.apache.iotdb.db.qp.logical.crud.BasicFunctionOperator;
import org.apache.iotdb.db.qp.logical.crud.FilterOperator;
import org.apache.iotdb.db.qp.logical.crud.WhereComponent;
-import org.apache.iotdb.db.query.expression.ResultColumn;
-import org.apache.iotdb.db.query.expression.leaf.TimeSeriesOperand;
import org.junit.Test;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableRowRecordListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableRowRecordListTest.java
index 6ed4fb2b31..4a10c08463 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableRowRecordListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableRowRecordListTest.java
@@ -20,7 +20,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.datastructure.row.ElasticSerializableRowRecordList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.SerializableList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.row.ElasticSerializableRowRecordList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableTVListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableTVListTest.java
index 865c270266..18a12b8d73 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableTVListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableTVListTest.java
@@ -20,8 +20,9 @@
package org.apache.iotdb.db.query.udf.datastructure;
import org.apache.iotdb.db.exception.query.QueryProcessException;
-import org.apache.iotdb.db.query.udf.core.reader.LayerPointReader;
-import org.apache.iotdb.db.query.udf.datastructure.tv.ElasticSerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.api.LayerPointReader;
+import org.apache.iotdb.db.mpp.transformation.datastructure.SerializableList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.ElasticSerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
@@ -92,13 +93,9 @@ public class ElasticSerializableTVListTest extends SerializableListTest {
}
private void initESTVList(TSDataType dataType) {
- try {
- tvList =
- ElasticSerializableTVList.newElasticSerializableTVList(
- dataType, QUERY_ID, MEMORY_USAGE_LIMIT_IN_MB, CACHE_SIZE);
- } catch (QueryProcessException e) {
- fail(e.toString());
- }
+ tvList =
+ ElasticSerializableTVList.newElasticSerializableTVList(
+ dataType, QUERY_ID, MEMORY_USAGE_LIMIT_IN_MB, CACHE_SIZE);
assertEquals(0, tvList.size());
}
@@ -160,7 +157,7 @@ public class ElasticSerializableTVListTest extends SerializableListTest {
}
break;
}
- } catch (IOException | QueryProcessException e) {
+ } catch (IOException e) {
fail(e.toString());
}
assertEquals(ITERATION_TIMES, tvList.size());
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/LRUCache.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/LRUCache.java
index 5761b09c90..9447b22419 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/LRUCache.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/LRUCache.java
@@ -19,6 +19,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
+import org.apache.iotdb.db.mpp.transformation.datastructure.Cache;
+
import java.util.Arrays;
public class LRUCache extends Cache {
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBinaryTVListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBinaryTVListTest.java
index 1338f27bfb..726a629da6 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBinaryTVListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBinaryTVListTest.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableBinaryTVList;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableBinaryTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.utils.Binary;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBooleanTVListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBooleanTVListTest.java
index 6203fe3581..736f605d12 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBooleanTVListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBooleanTVListTest.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableBooleanTVList;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableBooleanTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.junit.After;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableDoubleTVListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableDoubleTVListTest.java
index 6f1914bc81..9c0a484abe 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableDoubleTVListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableDoubleTVListTest.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableDoubleTVList;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableDoubleTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.junit.After;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableFloatTVListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableFloatTVListTest.java
index 346ccbd3af..ce43b3eb60 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableFloatTVListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableFloatTVListTest.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableFloatTVList;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableFloatTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.junit.After;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableIntTVListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableIntTVListTest.java
index 33d9b4c126..0571979795 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableIntTVListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableIntTVListTest.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableIntTVList;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableIntTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.junit.After;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableListTest.java
index 81bb35aadd..dbbd2c2bfa 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableListTest.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.service.TemporaryQueryDataFileService;
+import org.apache.iotdb.db.service.TemporaryQueryDataFileService;
public abstract class SerializableListTest {
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableLongTVListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableLongTVListTest.java
index dfc181fb22..ace0af9720 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableLongTVListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableLongTVListTest.java
@@ -19,8 +19,8 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableLongTVList;
-import org.apache.iotdb.db.query.udf.datastructure.tv.SerializableTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableLongTVList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.tv.SerializableTVList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.junit.After;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableRowRecordListTest.java b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableRowRecordListTest.java
index 29084b4ab5..af19c6cc1f 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableRowRecordListTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableRowRecordListTest.java
@@ -19,7 +19,7 @@
package org.apache.iotdb.db.query.udf.datastructure;
-import org.apache.iotdb.db.query.udf.datastructure.row.SerializableRowRecordList;
+import org.apache.iotdb.db.mpp.transformation.datastructure.row.SerializableRowRecordList;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.apache.iotdb.tsfile.read.common.Field;
import org.apache.iotdb.tsfile.read.common.RowRecord;
diff --git a/server/src/test/java/org/apache/iotdb/db/query/udf/example/Adder.java b/server/src/test/java/org/apache/iotdb/db/query/udf/example/Adder.java
index 2b1fc1f13d..8b9ea955f4 100644
--- a/server/src/test/java/org/apache/iotdb/db/query/udf/example/Adder.java
+++ b/server/src/test/java/org/apache/iotdb/db/query/udf/example/Adder.java
@@ -19,13 +19,13 @@
package org.apache.iotdb.db.query.udf.example;
-import org.apache.iotdb.db.query.udf.api.UDTF;
-import org.apache.iotdb.db.query.udf.api.access.Row;
-import org.apache.iotdb.db.query.udf.api.collector.PointCollector;
-import org.apache.iotdb.db.query.udf.api.customizer.config.UDTFConfigurations;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameterValidator;
-import org.apache.iotdb.db.query.udf.api.customizer.parameter.UDFParameters;
-import org.apache.iotdb.db.query.udf.api.customizer.strategy.RowByRowAccessStrategy;
+import org.apache.iotdb.commons.udf.api.UDTF;
+import org.apache.iotdb.commons.udf.api.access.Row;
+import org.apache.iotdb.commons.udf.api.collector.PointCollector;
+import org.apache.iotdb.commons.udf.api.customizer.config.UDTFConfigurations;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameterValidator;
+import org.apache.iotdb.commons.udf.api.customizer.parameter.UDFParameters;
+import org.apache.iotdb.commons.udf.api.customizer.strategy.RowByRowAccessStrategy;
import org.apache.iotdb.tsfile.exception.write.UnSupportedDataTypeException;
import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;