You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2022/05/22 06:40:24 UTC
[iotdb] 01/01: Merge branch 'master' into xingtanzjr/agg_distribution_plan
This is an automated email from the ASF dual-hosted git repository.
xingtanzjr pushed a commit to branch xingtanzjr/agg_distribution_plan
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit df427ed8b62bfd007120667b9d680898cf1ffdb1
Merge: 72478856fd 9a1bc7ccaf
Author: Jinrui.Zhang <xi...@gmail.com>
AuthorDate: Sun May 22 14:40:12 2022 +0800
Merge branch 'master' into xingtanzjr/agg_distribution_plan
LICENSE | 18 +-
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 2 +-
.../log/manage/PartitionedSnapshotLogManager.java | 4 +-
.../server/handlers/caller/ElectionHandler.java | 4 +-
.../cluster/utils/nodetool/ClusterMonitor.java | 4 +-
.../query/ClusterPhysicalGeneratorTest.java | 4 +-
.../query/last/ClusterLastQueryExecutorTest.java | 2 +-
confignode/pom.xml | 5 -
.../confignode/conf/ConfigNodeDescriptor.java | 1 -
.../consensus/request/ConfigRequest.java | 4 +
.../consensus/request/ConfigRequestType.java | 4 +-
.../request/read/GetChildNodesPartitionReq.java | 67 +
.../request/read/GetChildPathsPartitionReq.java | 67 +
.../response/SchemaNodeManagementResp.java | 73 +
.../iotdb/confignode/manager/ConfigManager.java | 38 +-
.../apache/iotdb/confignode/manager/Manager.java | 15 +
.../iotdb/confignode/manager/PartitionManager.java | 31 +
.../confignode/persistence/ClusterSchemaInfo.java | 56 +-
.../iotdb/confignode/persistence/NodeInfo.java | 43 +-
.../confignode/persistence/PartitionInfo.java | 50 +-
.../confignode/persistence/ProcedureInfo.java | 9 +-
.../executor/ConfigRequestExecutor.java | 43 +
.../iotdb/confignode/procedure/Procedure.java | 43 +-
.../confignode/procedure/ProcedureExecutor.java | 68 +-
.../procedure/StateMachineProcedure.java | 4 +-
.../procedure/conf/ProcedureNodeConfig.java | 155 --
.../conf/ProcedureNodeConfigDescriptor.java | 219 ---
.../procedure/conf/ProcedureNodeConstant.java | 32 -
.../procedure/store/ConfigProcedureStore.java | 6 +-
.../procedure/store/IProcedureStore.java | 4 +-
.../procedure/store/ProcedureFactory.java | 5 +-
.../confignode/procedure/store/ProcedureStore.java | 14 +-
.../thrift/ConfigNodeRPCServiceProcessor.java | 24 +
.../confignode/persistence/AuthorInfoTest.java | 6 -
.../confignode/procedure/NoopProcedureStore.java | 4 +-
.../confignode/procedure/TestProcedureBase.java | 7 +-
.../procedure/TestProcedureExecutor.java | 2 -
.../procedure/store/TestProcedureStore.java | 9 +-
.../thrift/ConfigNodeRPCServiceProcessorTest.java | 95 +-
.../GrafanaPlugin/Dockerfile-0.14.0-iotdb | 42 +
.../DockerCompose/GrafanaPlugin/docker-compose.yml | 48 +
.../GrafanaPlugin/iotdb/conf/iotdb-rest.properties | 58 +
docs/UserGuide/Maintenance-Tools/Metric-Tool.md | 205 ++-
docs/zh/UserGuide/Maintenance-Tools/Metric-Tool.md | 206 ++-
.../apache/iotdb/tsfile/TsFileSequenceRead.java | 2 +-
.../java/org/apache/iotdb/udf/UDTFExample.java | 14 +-
.../controller/DatabaseConnectController.java | 3 +
.../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 +-
.../iotdb/db/integration/IoTDBSnapshotIT.java | 259 ++++
.../IoTDBSyntaxConventionStringLiteralIT.java | 2 +-
.../iotdb/db/integration/IoTDBTagAlterIT.java | 4 +-
.../iotdb/db/integration/IoTDBUDFManagementIT.java | 2 +-
library-udf/pom.xml | 24 +-
.../UDTFMinMax.java => anomaly/UDTFIQR.java} | 83 +-
.../apache/iotdb/library/anomaly/UDTFKSigma.java | 153 ++
.../org/apache/iotdb/library/anomaly/UDTFLOF.java | 215 +++
.../iotdb/library/anomaly/UDTFMissDetect.java | 74 +
.../apache/iotdb/library/anomaly/UDTFRange.java | 97 ++
.../UDTFTwoSidedFilter.java} | 68 +-
.../iotdb/library/anomaly/util/MissDetector.java | 240 +++
.../library/anomaly/util/StreamMissDetector.java | 189 +++
.../iotdb/library/anomaly/util/WindowDetect.java | 96 ++
.../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 | 7 +-
.../apache/iotdb/library/anomaly/AnomalyTests.java | 1534 ++++++++++++++++++++
.../dropwizard/DropwizardMetricManager.java | 32 -
.../main/assembly/resources/conf/iotdb-metric.yml | 5 +-
.../iotdb/metrics/DoNothingMetricService.java | 14 +-
.../org/apache/iotdb/metrics/MetricManager.java | 8 -
.../org/apache/iotdb/metrics/MetricService.java | 21 +-
.../apache/iotdb/metrics/config/MetricConfig.java | 3 +-
.../iotdb/metrics/impl/DoNothingMetricManager.java | 4 -
.../IMetricSet.java} | 17 +-
.../predefined/jvm/JvmClassLoaderMetrics.java | 52 +
.../metrics/predefined/jvm/JvmCompileMetrics.java | 50 +
.../iotdb/metrics/predefined/jvm/JvmGcMetrics.java | 292 ++++
.../metrics/predefined/jvm/JvmMemoryMetrics.java | 105 ++
.../iotdb/metrics/predefined/jvm/JvmMetrics.java | 49 +
.../metrics/predefined/jvm/JvmThreadMetrics.java | 87 ++
.../metrics/predefined/logback/LogbackMetrics.java | 180 +++
.../utils/{PredefinedMetric.java => JvmUtils.java} | 28 +-
.../iotdb/metrics/utils/PredefinedMetric.java | 5 +-
.../micrometer/MicrometerMetricManager.java | 51 -
.../apache/iotdb/commons/conf/CommonConfig.java | 25 +-
.../iotdb/commons/conf/CommonDescriptor.java | 1 -
.../apache/iotdb/commons/conf/IoTDBConstant.java | 3 +
.../iotdb/commons/partition/DataPartition.java | 28 +-
.../partition/SchemaNodeManagementPartition.java | 58 +
.../iotdb/commons/partition/SchemaPartition.java | 45 +-
.../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 +-
.../commons/utils/ThriftConfigNodeSerDeUtils.java | 34 +
.../iotdb/commons/partition/DataPartitionTest.java | 12 +-
.../commons/partition/SchemaPartitionTest.java | 12 +-
.../apache/iotdb/db/client/ConfigNodeClient.java | 19 +
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 27 +-
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 1 -
.../statemachine/DataRegionStateMachine.java | 38 +-
.../apache/iotdb/db/engine/StorageEngineV2.java | 13 +
.../apache/iotdb/db/engine/cache/ChunkCache.java | 4 +-
.../db/engine/cache/TimeSeriesMetadataCache.java | 4 +-
.../compaction/CompactionMetricsManager.java | 4 +-
.../db/engine/compaction/CompactionScheduler.java | 4 +-
.../db/engine/compaction/CompactionUtils.java | 4 +-
.../constant/InnerSequenceCompactionSelector.java | 8 +-
.../InnerUnsequenceCompactionSelector.java | 8 +-
...ement.java => AbstractCrossSpaceEstimator.java} | 25 +-
.../rewrite/CrossSpaceCompactionResource.java | 89 ++
.../RewriteCrossSpaceCompactionResource.java | 206 ---
.../RewriteCrossSpaceCompactionSelector.java | 17 +-
.../selector/RewriteCompactionFileSelector.java | 195 +--
.../cross/utils/AbstractCompactionEstimator.java | 63 +
.../IFileQueryMemMeasurement.java | 2 +-
.../cross/utils/InplaceCompactionEstimator.java | 173 +++
.../utils/ReadPointCrossCompactionEstimator.java | 172 +++
.../AbstractInnerSpaceEstimator.java} | 25 +-
.../sizetiered/SizeTieredCompactionSelector.java | 9 +-
.../compaction/task/ICompactionSelector.java | 20 +
.../apache/iotdb/db/engine/flush/FlushManager.java | 4 +-
.../iotdb/db/engine/flush/MemTableFlushTask.java | 4 +-
.../iotdb/db/engine/memtable/AbstractMemTable.java | 4 +-
.../selectinto/InsertTabletPlansIterator.java | 2 +-
.../iotdb/db/engine/snapshot/SnapshotLoader.java | 196 +++
.../iotdb/db/engine/snapshot/SnapshotTaker.java | 166 +++
.../exception/DirectoryNotLegalException.java} | 11 +-
.../iotdb/db/engine/storagegroup/DataRegion.java | 8 +-
.../engine/storagegroup/TsFileNameGenerator.java | 2 +-
.../engine/storagegroup/TsFileProcessorInfo.java | 4 +-
.../iotdb/db/metadata/mtree/MTreeAboveSG.java | 55 +-
.../traverser/collector/MNodeAboveSGCollector.java | 6 +-
.../db/metadata/rescon/TimeseriesStatistics.java | 4 +-
.../apache/iotdb/db/metadata/utils/MetaUtils.java | 26 +-
.../iotdb/db/mpp/aggregation/Aggregator.java | 12 +-
.../db/mpp/aggregation/FirstValueAccumulator.java | 3 +
.../db/mpp/aggregation/LastValueAccumulator.java | 3 +
.../iotdb/db/mpp/common/header/DatasetHeader.java | 4 +
.../iotdb/db/mpp/common/header/HeaderConstant.java | 10 +
...egateOperator.java => AggregationOperator.java} | 8 +-
.../execution/operator/process/FillOperator.java | 50 +-
.../execution/operator/process/FilterOperator.java | 4 +-
.../execution/operator/process/LimitOperator.java | 3 +
.../operator/process/LinearFillOperator.java | 191 +++
.../execution/operator/process/OffsetOperator.java | 3 +
...erator.java => RawDataAggregationOperator.java} | 10 +-
.../operator/process/TransformOperator.java | 16 +-
.../execution/operator/process/fill/IFill.java} | 10 +-
.../process/fill/constant/BinaryConstantFill.java | 63 +
.../process/fill/constant/BooleanConstantFill.java | 62 +
.../process/fill/constant/DoubleConstantFill.java | 62 +
.../process/fill/constant/FloatConstantFill.java | 62 +
.../process/fill/constant/IntConstantFill.java | 62 +
.../process/fill/constant/LongConstantFill.java | 62 +
.../process/fill/linear/DoubleLinearFill.java | 94 ++
.../process/fill/linear/FloatLinearFill.java | 94 ++
.../process/fill/linear/IntLinearFill.java | 94 ++
.../operator/process/fill/linear/LinearFill.java | 186 +++
.../process/fill/linear/LongLinearFill.java | 94 ++
.../process/fill/previous/BinaryPreviousFill.java | 86 ++
.../process/fill/previous/BooleanPreviousFill.java | 85 ++
.../process/fill/previous/DoublePreviousFill.java | 85 ++
.../process/fill/previous/FloatPreviousFill.java | 85 ++
.../process/fill/previous/IntPreviousFill.java | 85 ++
.../process/fill/previous/LongPreviousFill.java | 85 ++
.../schema/ChildNodesSchemaScanOperator.java | 93 ++
.../schema/ChildPathsSchemaScanOperator.java | 93 ++
.../NodeManageMemoryMergeOperator.java} | 51 +-
...a => AlignedSeriesAggregationScanOperator.java} | 184 +--
...tor.java => SeriesAggregationScanOperator.java} | 26 +-
.../apache/iotdb/db/mpp/plan/analyze/Analysis.java | 194 ++-
.../apache/iotdb/db/mpp/plan/analyze/Analyzer.java | 638 ++++----
.../mpp/plan/analyze/ClusterPartitionFetcher.java | 44 +
.../db/mpp/plan/analyze/ConcatPathRewriter.java | 67 +-
.../db/mpp/plan/analyze/ExpressionAnalyzer.java | 440 +++---
.../iotdb/db/mpp/plan/analyze/ExpressionUtils.java | 50 +-
.../mpp/plan/analyze/FakePartitionFetcherImpl.java | 8 +
.../mpp/plan/analyze/GroupByLevelController.java | 6 +-
.../db/mpp/plan/analyze/IPartitionFetcher.java | 5 +
.../plan/analyze/StandalonePartitionFetcher.java | 8 +
.../db/mpp/plan/execution/QueryExecution.java | 2 +-
.../mpp/plan/execution/config/ConfigExecution.java | 2 +-
.../memory/StatementMemorySourceVisitor.java | 39 +
.../{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 | 80 +-
.../db/mpp/plan/parser/StatementGenerator.java | 16 +-
.../db/mpp/plan/planner/LocalExecutionPlanner.java | 269 +++-
.../db/mpp/plan/planner/LogicalPlanBuilder.java | 186 +--
.../iotdb/db/mpp/plan/planner/LogicalPlanner.java | 82 +-
.../mpp/plan/planner/plan/node/PlanNodeType.java | 14 +-
.../db/mpp/plan/planner/plan/node/PlanVisitor.java | 17 +-
.../metedata/read/ChildNodesSchemaScanNode.java | 87 ++
.../metedata/read/ChildPathsSchemaScanNode.java | 87 ++
.../read/NodeManagementMemoryMergeNode.java} | 92 +-
.../plan/planner/plan/node/process/FillNode.java | 8 +
.../plan/planner/plan/node/process/FilterNode.java | 2 +-
.../planner/plan/node/process/FilterNullNode.java | 2 +-
.../planner/plan/node/process/TransformNode.java | 2 +-
.../source/AlignedSeriesAggregationScanNode.java | 5 +-
.../plan/node/write/InsertMultiTabletsNode.java | 16 +
.../plan/planner/plan/node/write/InsertNode.java | 30 +
.../planner/plan/node/write/InsertRowNode.java | 10 +-
.../planner/plan/node/write/InsertRowsNode.java | 16 +
.../plan/node/write/InsertRowsOfOneDeviceNode.java | 16 +
.../planner/plan/node/write/InsertTabletNode.java | 9 +
.../plan/parameter/AggregationDescriptor.java | 2 +-
.../planner/plan/parameter/FillDescriptor.java | 8 +
.../plan/parameter/FilterNullParameter.java | 2 +-
.../scheduler/FragmentInstanceDispatcherImpl.java | 4 +-
.../db/mpp/plan/statement/StatementVisitor.java | 10 +
.../statement/component/FilterNullComponent.java | 2 +-
.../mpp/plan/statement/component/ResultColumn.java | 20 +-
.../plan/statement/component/SelectComponent.java | 25 +-
.../plan/statement/component/WhereCondition.java | 2 +-
.../db/mpp/plan/statement/crud/QueryStatement.java | 46 +-
.../mpp/plan/statement/literal/BooleanLiteral.java | 9 +-
.../mpp/plan/statement/literal/DoubleLiteral.java | 14 +-
.../db/mpp/plan/statement/literal/Literal.java | 25 +
.../db/mpp/plan/statement/literal/LongLiteral.java | 25 +-
.../mpp/plan/statement/literal/StringLiteral.java | 6 +
.../metadata/ShowChildNodesStatement.java} | 23 +-
.../metadata/ShowChildPathsStatement.java} | 23 +-
.../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 +-
.../apache/iotdb/db/qp/executor/PlanExecutor.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 | 58 +-
.../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 +-
.../groupby/impl/LocalAlignedGroupByExecutor.java | 2 -
.../db/query/pool/RawQueryReadTaskPoolManager.java | 4 +-
.../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 +-
.../iotdb/db/service/metrics/MetricsService.java | 150 +-
.../db/service/metrics/{ => enums}/Metric.java | 2 +-
.../db/service/metrics/{ => enums}/Operation.java | 2 +-
.../iotdb/db/service/metrics/{ => enums}/Tag.java | 2 +-
.../FileMetrics.java} | 132 +-
.../ProcessMetrics.java} | 51 +-
.../SystemMetrics.java} | 37 +-
.../db/service/thrift/ProcessorWithMetrics.java | 4 +-
.../thrift/impl/DataNodeTSIServiceImpl.java | 2 +-
.../service/thrift/impl/InternalServiceImpl.java | 59 +-
.../db/service/thrift/impl/TSServiceImpl.java | 2 +-
.../apache/iotdb/db/tools/TsFileSketchTool.java | 6 +-
.../db/tools/watermark/WatermarkDetector.java | 9 +-
.../org/apache/iotdb/db/utils/FileLoaderUtils.java | 2 +-
.../java/org/apache/iotdb/db/utils/MergeUtils.java | 69 -
.../compaction/cross/CrossSpaceCompactionTest.java | 17 +-
.../engine/compaction/cross/MergeUpgradeTest.java | 6 +-
.../cross/RewriteCompactionFileSelectorTest.java | 81 +-
.../iotdb/db/metadata/mtree/MTreeAboveSGTest.java | 18 +-
...ratorTest.java => AggregationOperatorTest.java} | 70 +-
... AlignedSeriesAggregationScanOperatorTest.java} | 436 +++---
.../mpp/execution/operator/FillOperatorTest.java | 353 +++++
.../execution/operator/LinearFillOperatorTest.java | 441 ++++++
...st.java => RawDataAggregationOperatorTest.java} | 50 +-
...java => SeriesAggregationScanOperatorTest.java} | 146 +-
.../iotdb/db/mpp/plan/analyze/AnalyzeFailTest.java | 18 +
.../iotdb/db/mpp/plan/plan/LogicalPlannerTest.java | 40 +
.../db/mpp/plan/plan/QueryLogicalPlanUtil.java | 360 ++---
.../NodeManagementMemoryMergeNodeSerdeTest.java | 111 ++
.../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 +-
.../plan/node/write/InsertTabletNodeSerdeTest.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 +-
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 1 +
.../.vuepress/theme/global-components/IoTDB.vue | 72 +-
thrift-commons/src/main/thrift/common.thrift | 2 +
.../src/main/thrift/confignode.thrift | 23 +
.../iotdb/tsfile/read/TsFileSequenceReader.java | 67 +-
.../org/apache/iotdb/tsfile/read/common/Path.java | 3 +-
.../tsfile/v2/read/TsFileSequenceReaderForV2.java | 3 +-
.../tsfile/write/MetadataIndexConstructorTest.java | 2 +-
.../iotdb/tsfile/write/TsFileIOWriterTest.java | 2 +-
573 files changed, 13491 insertions(+), 5353 deletions(-)
diff --cc server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/source/AlignedSeriesAggregationScanNode.java
index db9c3fe354,0345031d07..d735cad2cc
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/source/AlignedSeriesAggregationScanNode.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/source/AlignedSeriesAggregationScanNode.java
@@@ -69,8 -73,10 +70,10 @@@ public class AlignedSeriesAggregationSc
PlanNodeId id,
AlignedPath alignedPath,
List<AggregationDescriptor> aggregationDescriptorList) {
- super(id);
+ super(id, aggregationDescriptorList);
this.alignedPath = alignedPath;
+ this.aggregationDescriptorList =
+ AggregationNode.getDeduplicatedDescriptors(aggregationDescriptorList);
}
public AlignedSeriesAggregationScanNode(