You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ji...@apache.org on 2021/12/20 01:51:27 UTC

[iotdb] branch expr updated (30a7c52 -> 40e876a)

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

jiangtian pushed a change to branch expr
in repository https://gitbox.apache.org/repos/asf/iotdb.git.


    from 30a7c52  add configs to file
     add 3922fac  modify aggregation with value filter IT (#4505)
     add 54fd017  [IOTDB-1233] Support create aligned time series containing only one measurement (#4499)
     add 2900391  [IOTDB-1773] Aligned timeseries support group by query without value filter for standalone mode (#4426)
     add a8fc9f0  fix postion < 0 (#4512)
     add e6d7c8f  [IOTDB-2077] Unexpected exception when executing raw data query without VF with limit clause (#4507)
     add 99f06aa  [IOTDB-2017][metric] Add a new gauge implement (#4506)
     add e78f1b6  [IOTDB-2088] Fix IndexOutOfBound exception in AggregationPlan.groupAggResultByLevel (#4518)
     add 2c30d33  update user guide for cpp-api & disable compiling nodejs (#4515)
     add 7eca660  [IOTDB-2024] Add annotation to compaction (#4523)
     add d514e00  fix priority of cross space task (#4524)
     add febdcb8  [IOTDB-2074] Fix NullPointerException when recovering compaction in MacOS (#4519)
     add fd4c14b  [IOTDB-1773] Aligned timeseries support group by query with value filter for standalone mode (#4511)
     add 08e0833  [IOTDB-1952] Add IT about group by level and multi level query for new vector (#4522)
     add 31548f4  [IOTDB-1852] Accelerate queryies by using statistics	 (#4260)
     add 45a6658  [IoTDB-1989] IoTDB support insert data from Spark (#4477)
     add a583ead  [IOTDB-1901] Compatibility of Apache IoTDB with InfluxDB - Server-side InfluxDB Metadata Manager (#4460)
     add 88f9a6b  memory leak fix: replace RandomDeleteCache with LoadingCache as its size can't limit in … (#4526)
     add 7aabea4  [IOTDB-2102] Push down limit to ReadTask in RawDataSetWithoutValueFilter (#4534)
     add e066317  [IoTDB-2119] IoTDB CSV export tools add timestamp accuracy setting function (#4531)
     add d2116cc  [IOTDB-2124] the filtering condition does not take efffect for last query in cluster (#4539)
     add 25c1918  [IOTDB-2072] Remove TVListAllocator to reduce the TVList mem cost (#4540)
     add 4d869fe  Fix all client connections are stuck bug caused by logback bug (#4545)
     add 9db966c  [IOTDB-1968] Mount the Metric Service as a Built-in IService (#4527)
     add 64f9662  [IOTDB-2123] Accelerate recovery process (#4533)
     add 1217c70  [IOTDB-1969] Remove old metric framework from iotdb-server (#4547)
     add 9dd7ab2  [IOTDB-2102] Push down limit to ReadTask supporting UDF (#4548)
     add 64f1e72  Bump jackson.version from 2.10.0 to 2.10.5 (#4504)
     add 9d5f4bc  [IOTDB-1969] Remove statistic resources of old metric framework from iotdb-server  (#4551)
     add 207b3e4  Fix deploying site fail caused by CI (#4553)
     add 76a4fa5  [IOTDB-2129] Wrong result returned when querying by nested expressions with aliases (#4552)
     add 45e4faf  [IOTDB-2130] IT fails on MQTTSinkTest.onEventUsingMultiSensorsHandler (#4554)
     add eaeaa52  [IOTDB-1970] Migrate the org.apache.iotdb.db.cost.statistic module to the new metric framework (#4556)
     add 5483abf  [IOTDB-2092] Basic support aggregation query with UDF nested (#4517)
     add 9d241c7  [IOTDB-2131] Change the fill syntax (#4550)
     add 9d2df64  [IOTDB-1973] Supports aggregate queries, constants, and arithmetic nested expressions in SELECT clauses (#4453)
     add d6394ad  [IOTDB-2135] Add configuration for influx DB RPC service (#4558)
     add dd1ea14  [IOTDB-2137] Fix incorrect column num in UDTFDataSet (#4562)
     add 2f12b9f  Fix IT framework disable Influx DB RPC service to avoid port conflict (#4565)
     add a67f1e4  [IOTDB-2139] Move example udfs to src/java package to pass cluster IT (#4569)
     add ae1938e  Fix connection refused using session when users forget to set client ip (#4567)
     add f9e8315  [IOTDB-2122] Migrate MQTT and REST modules to `org.apache.iotdb.db.protocol` (#4564)
     add 8779a95  [IOTDB-2151] Fix extreme() not supported in nested expression query (#4574)
     add ff669ed  [IOTDB-2152] PyClient: Override __eq__() of TSDataType, TSEncoding and Compressor to avoid unexpected comparation behaviour (#4576)
     add 5d9beb4  [IOTDB-2039] Fix data redundant after too many open files exception occurs during compaction (#4498)
     add 78b1ba9  [IOTDB-2136] Fix timeseries deletion issue (#4559)
     add 288d8e5  rethrow other exceptions in query main thread (#4579)
     add 93a2f40  [IOTDB-2141] Fix some issues in cluster test (#4571)
     add 5274c99  [IOTDB-2160] Fix cluster groupby memory leak (#4582)
     add 6c2c2f8  [DOC] Update TSDB-Comparison (#4588)
     add 5f97089  [IOTDB-2159] Fix wrong status code when inserting data to a read-only cluster (#4586)
     add fb7b18e  [IOTDB-2164] Fix IoTDBFlushQueryMergeIT (#4590)
     add fab1fa5  Update README_ZH.md (#4593)
     add 62d9c86  [IOTDB-2168] Fix IoTDBTtlIT (#4592)
     add f5a1cf6  [IOTDB-2102] Set rowLimit before init() in RawDataSetWithoutValueFilter (#4591)
     add 4c5d4ab  [IOTDB-2169] Fix iotdb-env.bat error in Windows platform (#4595)
     add a761a7f  [IOTDB-2075] Accelerate the process of insertTablets by using thread pool (#4502)
     add 6f5106d  [IOTDB-2162] Simplify the recovery merge process (#4575)
     add 385f34b  [IOTDB-2112] Do not use .tsfile when compacting the target file (#4549)
     add 583c186  [IOTDB-2173] Update document about group by level clause (#4599)
     new 40e876a  Merge branch 'master' into expr

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 Jenkinsfile                                        |   42 +-
 README_ZH.md                                       |    2 +-
 .../protocol/influxdb}/input/InfluxLineProtocol.g4 |    2 +-
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |    8 +-
 .../main/java/org/apache/iotdb/tool/ExportCsv.java |   10 +-
 client-py/iotdb/utils/IoTDBConstants.py            |   15 +
 cluster/src/assembly/resources/sbin/expr-bench.sh  |   89 --
 cluster/src/assembly/resources/sbin/expr-server.sh |   89 --
 cluster/src/assembly/resources/sbin/start-node.bat |   21 +-
 .../org/apache/iotdb/cluster/ClusterIoTDB.java     |    6 +
 .../cluster/client/sync/SyncClientAdaptor.java     |    5 +-
 .../cluster/query/ClusterDataQueryExecutor.java    |    6 +-
 .../iotdb/cluster/query/ClusterPlanExecutor.java   |    5 +-
 .../iotdb/cluster/query/LocalQueryExecutor.java    |    3 +-
 .../cluster/query/aggregate/ClusterAggregator.java |    9 +-
 .../ClusterGroupByFillNoVFilterDataSet.java        |    4 +-
 .../groupby/ClusterGroupByNoVFilterDataSet.java    |    4 +-
 .../groupby/ClusterGroupByVFilterDataSet.java      |   10 +-
 .../query/groupby/MergeGroupByExecutor.java        |    3 +-
 .../query/last/ClusterLastQueryExecutor.java       |   29 +-
 .../cluster/query/reader/ClusterReaderFactory.java |   13 +-
 .../iotdb/cluster/server/ClusterRPCService.java    |    2 +-
 .../iotdb/cluster/server/ClusterTSServiceImpl.java |    7 +-
 .../cluster/server/service/DataSyncService.java    |   11 +-
 .../apache/iotdb/cluster/utils/PartitionUtils.java |    2 +
 .../apache/iotdb/cluster/utils/StatusUtils.java    |    2 +-
 .../cluster/client/sync/SyncClientAdaptorTest.java |    1 +
 .../iotdb/cluster/common/TestAsyncDataClient.java  |   11 +
 .../query/groupby/MergeGroupByExecutorTest.java    |    4 +-
 .../query/last/ClusterLastQueryExecutorTest.java   |   95 ++
 compile-tools/thrift/pom.xml                       |    2 +
 docker/ReadMe.md                                   |    1 +
 docker/src/main/Dockerfile-single                  |    1 +
 docs/UserGuide/API/Programming-Cpp-Native-API.md   |   19 +-
 .../Advanced-Features/Continuous-Query.md          |    2 +-
 docs/UserGuide/Cluster/Cluster-Setup-Example.md    |    2 +-
 .../Programming-MQTT.md                            |   55 +-
 docs/UserGuide/Comparison/TSDB-Comparison.md       |    4 +-
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |   53 +-
 .../DML-Data-Manipulation-Language.md              |  382 +++++--
 docs/UserGuide/System-Tools/Metric-Tool.md         |   60 +
 .../Query-History-Visualization-Tool.md            |   31 -
 .../zh/UserGuide/API/Programming-Cpp-Native-API.md |   18 +-
 .../Advanced-Features/Continuous-Query.md          |    2 +-
 docs/zh/UserGuide/Cluster/Cluster-Setup-Example.md |    2 +-
 .../Programming-MQTT.md                            |   55 +-
 docs/zh/UserGuide/Comparison/TSDB-Comparison.md    |    4 +-
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |   58 +-
 .../DML-Data-Manipulation-Language.md              |  375 +++++--
 docs/zh/UserGuide/System-Tools/Metric-Tool.md      |   60 +
 .../server/CustomizedJsonPayloadFormatter.java     |    4 +-
 ...apache.iotdb.db.protocol.mqtt.PayloadFormatter} |    0
 influxdb-protocol/pom.xml                          |   85 +-
 .../org/apache/iotdb/influxdb/IoTDBInfluxDB.java   |   87 +-
 .../iotdb/influxdb/IoTDBInfluxDBFactory.java       |    2 +-
 .../iotdb/influxdb/example/InfluxDBExample.java    |   36 +-
 .../protocol/constant/InfluxDBConstant.java        |    2 -
 .../iotdb/influxdb/protocol/dto/IoTDBPoint.java    |   65 --
 .../iotdb/influxdb/protocol/dto/SessionPoint.java  |   52 +-
 .../protocol/impl/IoTDBInfluxDBService.java        |  131 +--
 .../influxdb/protocol/meta/MetaManagerHolder.java  |   54 -
 .../influxdb/protocol/util/DataTypeUtils.java      |   86 --
 .../iotdb/influxdb/session/InfluxDBSession.java    |  242 +++++
 .../influxdb/integration/IoTDBInfluxDBIT.java      |   94 +-
 .../iotdb/db/query/udf/example/Accumulator.java    |   30 +-
 .../apache/iotdb/db/query/udf/example/Adder.java   |    0
 .../apache/iotdb/db/query/udf/example/Counter.java |   39 +-
 .../db/query/udf/example/ExampleUDFConstant.java   |   18 +-
 .../org/apache/iotdb/db/query/udf/example/Max.java |    0
 .../iotdb/db/query/udf/example/Multiplier.java     |    0
 .../SlidingSizeWindowConstructorTester0.java       |    0
 .../SlidingSizeWindowConstructorTester1.java       |    0
 .../SlidingTimeWindowConstructionTester.java       |    4 +-
 .../db/query/udf/example/TerminateTester.java      |    0
 .../iotdb/db/query/udf/example/ValidateTester.java |    0
 .../iotdb/integration/env/ClusterEnvBase.java      |   10 +-
 .../iotdb/integration/env/ClusterEnvConfig.java    |   17 +
 .../apache/iotdb/integration/env/ClusterNode.java  |    1 +
 .../org/apache/iotdb/itbase/env/BaseConfig.java    |   12 +
 .../apache/iotdb/db/integration/IoTDBAliasIT.java  |   37 +-
 .../IoTDBCreateAlignedTimeseriesIT.java            |   35 +-
 .../apache/iotdb/db/integration/IoTDBFillIT.java   |  261 ++++-
 .../db/integration/IoTDBFlushQueryMergeIT.java     |   14 +-
 .../iotdb/db/integration/IoTDBGroupByFillIT.java   |  184 ++--
 .../db/integration/IoTDBGroupByFillMixPathsIT.java |  733 +++++++------
 .../iotdb/db/integration/IoTDBMetadataFetchIT.java |   28 +-
 .../iotdb/db/integration/IoTDBNestedQueryIT.java   |   54 +-
 .../IoTDBSetSystemReadOnlyWritableIT.java          |    6 +-
 .../apache/iotdb/db/integration/IoTDBTtlIT.java    |    6 +-
 .../db/integration/IoTDBUDFWindowQueryIT.java      |   34 +-
 .../db/integration/IoTDBUDTFHybridQueryIT.java     |   12 +-
 .../aggregation/IoTDBAggregationByLevelIT.java     |   66 +-
 .../aggregation/IoTDBAggregationLargeDataIT.java   |   81 +-
 .../aggregation/IoTDBAggregationSmallDataIT.java   |   48 +-
 .../aggregation/IoTDBUDFNestAggregationIT.java     |  550 ++++++++++
 .../IoTDBUserDefinedAggregationFunctionIT.java     |  725 +++++++++++++
 .../db/integration/aligned/AlignedWriteUtil.java   |    7 +
 .../aligned/IoTDBAggregationGroupByLevelIT.java    |  295 +++++
 .../IoTDBAggregationWithValueFilter2IT.java        |   66 ++
 .../aligned/IoTDBAggregationWithValueFilterIT.java |  265 +++++
 ...BAggregationWithValueFilterWithDeletion2IT.java |   86 ++
 ...DBAggregationWithValueFilterWithDeletionIT.java |  222 ++++
 .../IoTDBGroupByQueryWithValueFilter2IT.java       |   65 ++
 .../IoTDBGroupByQueryWithValueFilterIT.java        | 1094 +++++++++++++++++++
 ...GroupByQueryWithValueFilterWithDeletion2IT.java |   76 ++
 ...BGroupByQueryWithValueFilterWithDeletionIT.java |  826 ++++++++++++++
 .../IoTDBGroupByQueryWithoutValueFilter2IT.java    |   65 ++
 .../IoTDBGroupByQueryWithoutValueFilterIT.java     | 1142 ++++++++++++++++++++
 ...upByQueryWithoutValueFilterWithDeletion2IT.java |   77 ++
 ...oupByQueryWithoutValueFilterWithDeletionIT.java |  818 ++++++++++++++
 .../db/integration/env/StandaloneEnvConfig.java    |   19 +
 .../apache/iotdb/session/IoTDBSessionSimpleIT.java |    3 +-
 integration/src/test/resources/logback.xml         |    2 +-
 metrics/ReadMe.md                                  |    2 +-
 .../dropwizard/DropwizardMetricManager.java        |   22 +
 .../dropwizard/reporter/DropwizardJmxReporter.java |    2 +
 .../reporter/DropwizardPrometheusReporter.java     |    2 +-
 ...opwizardGauge.java => DropwizardAutoGauge.java} |   46 +-
 .../metrics/dropwizard/type/DropwizardGauge.java   |   10 +
 .../dropwizard/DropwizardMetricManagerTest.java    |   18 +
 .../main/assembly/resources/conf/iotdb-metric.yml  |    5 +-
 .../org/apache/iotdb/metrics/MetricManager.java    |   13 +
 .../apache/iotdb/metrics/config/MetricConfig.java  |    6 +-
 .../apache/iotdb/metrics/impl/DoNothingGauge.java  |    6 +
 .../iotdb/metrics/impl/DoNothingMetricManager.java |   13 +-
 .../java/org/apache/iotdb/metrics/type/Gauge.java  |    4 +
 .../micrometer/MicrometerMetricManager.java        |   44 +-
 .../micrometer/reporter/IoTDBJmxConfig.java}       |   15 +-
 .../micrometer/reporter/MicrometerJmxReporter.java |    8 +-
 .../reporter/MicrometerPrometheusReporter.java     |    3 +-
 ...crometerGauge.java => MicrometerAutoGauge.java} |   39 +-
 .../metrics/micrometer/type/MicrometerGauge.java   |   10 +
 .../micrometer/MicrometerMetricManagerTest.java    |   25 +-
 .../src/test/resources/iotdb-metric.yml            |    2 +-
 openapi/pom.xml                                    |    6 +-
 pom.xml                                            |    4 +-
 server/pom.xml                                     |   15 +
 .../resources/conf/iotdb-engine.properties         |   49 +-
 server/src/assembly/resources/conf/iotdb-env.bat   |    2 +-
 .../src/assembly/resources/sbin/start-server.bat   |   10 +-
 .../org/apache/iotdb/db/concurrent/ThreadName.java |    3 +
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  104 +-
 .../org/apache/iotdb/db/conf/IoTDBConstant.java    |    3 +
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |   47 +-
 .../db/cost/statistic/ConcurrentCircularArray.java |   67 --
 .../iotdb/db/cost/statistic/Measurement.java       |  423 --------
 .../iotdb/db/cost/statistic/MeasurementMBean.java  |   60 -
 .../db/engine/compaction/CompactionScheduler.java  |    3 +
 .../compaction/CompactionTaskComparator.java       |    2 +-
 .../engine/compaction/CompactionTaskManager.java   |   16 +-
 .../db/engine/compaction/TsFileIdentifier.java     |   12 +
 .../inplace/InplaceCompactionRecoverTask.java      |   11 +-
 .../cross/inplace/InplaceCompactionSelector.java   |    8 +
 .../inplace/selector/MaxFileMergeFileSelector.java |   20 +
 .../task/CleanLastCrossSpaceCompactionTask.java    |   67 ++
 .../cross/inplace/task/RecoverCrossMergeTask.java  |  305 ------
 .../inner/AbstractInnerSpaceCompactionTask.java    |    4 -
 .../InnerSpaceCompactionExceptionHandler.java      |  251 +++++
 .../SizeTieredCompactionRecoverTask.java           |  204 ++--
 .../sizetiered/SizeTieredCompactionSelector.java   |   23 +-
 .../inner/sizetiered/SizeTieredCompactionTask.java |  138 ++-
 .../inner/utils/InnerSpaceCompactionUtils.java     |  136 ++-
 .../engine/memtable/AlignedWritableMemChunk.java   |    5 +-
 .../iotdb/db/engine/memtable/WritableMemChunk.java |    5 +-
 .../querycontext/AlignedReadOnlyMemChunk.java      |    3 +-
 .../engine/storagegroup/StorageGroupProcessor.java |    9 +-
 .../db/engine/storagegroup/TsFileManager.java      |   10 +
 .../engine/storagegroup/TsFileNameGenerator.java   |    4 +-
 .../db/engine/storagegroup/TsFileProcessor.java    |   22 +-
 .../db/engine/storagegroup/TsFileResource.java     |   26 +-
 .../db/engine/storagegroup/TsFileResourceList.java |   59 +
 .../exception/StorageEngineReadonlyException.java  |   14 +-
 .../org/apache/iotdb/db/metadata/MManager.java     |   76 +-
 .../apache/iotdb/db/metadata/path/AlignedPath.java |    6 +
 .../apache/iotdb/db/metadata/utils/MetaUtils.java  |   70 ++
 .../apache/iotdb/db/metrics/server/JettyUtil.java  |  107 --
 .../iotdb/db/metrics/server/MetricsSystem.java     |   82 --
 .../iotdb/db/metrics/server/QueryServlet.java      |   56 -
 .../iotdb/db/metrics/server/ServerArgument.java    |  328 ------
 .../iotdb/db/metrics/server/SqlArgument.java       |   84 --
 .../apache/iotdb/db/metrics/sink/ConsoleSink.java  |   54 -
 .../iotdb/db/metrics/sink/MetricsServletSink.java  |   53 -
 .../apache/iotdb/db/metrics/source/JvmSource.java  |   50 -
 .../iotdb/db/metrics/source/MetricsSource.java     |  134 ---
 .../apache/iotdb/db/metrics/ui/MetricsPage.java    |  187 ----
 .../apache/iotdb/db/metrics/ui/MetricsWebUI.java   |   68 --
 .../influxdb/constant/InfluxDBConstant.java}       |   10 +-
 .../iotdb/db/protocol/influxdb/dto/IoTDBPoint.java |  128 ++-
 .../protocol/influxdb}/input/InfluxLineParser.java |   21 +-
 .../db/protocol/influxdb}/meta/MetaManager.java    |  127 ++-
 .../db/protocol/influxdb}/meta/TagInfoRecords.java |   30 +-
 .../{ => protocol}/mqtt/BrokerAuthenticator.java   |    2 +-
 .../{ => protocol}/mqtt/JSONPayloadFormatter.java  |    2 +-
 .../iotdb/db/{ => protocol}/mqtt/Message.java      |    2 +-
 .../{ => protocol}/mqtt/PayloadFormatManager.java  |    2 +-
 .../db/{ => protocol}/mqtt/PayloadFormatter.java   |    2 +-
 .../db/{ => protocol}/mqtt/PublishHandler.java     |    2 +-
 .../iotdb/db/{ => protocol}/rest/RestService.java  |    6 +-
 .../rest/filter/ApiOriginFilter.java               |    2 +-
 .../rest/filter/AuthorizationFilter.java           |    4 +-
 .../rest/filter/BasicSecurityContext.java          |    2 +-
 .../iotdb/db/{ => protocol}/rest/filter/User.java  |    2 +-
 .../db/{ => protocol}/rest/filter/UserCache.java   |    2 +-
 .../rest/handler/AuthorizationHandler.java         |    4 +-
 .../rest/handler/ExceptionHandler.java             |    4 +-
 .../handler/PhysicalPlanConstructionHandler.java   |    4 +-
 .../rest/handler/QueryDataSetHandler.java          |    6 +-
 .../rest/handler/RequestValidationHandler.java     |    6 +-
 .../rest/impl/PingApiServiceImpl.java              |    6 +-
 .../rest/impl/RestApiServiceImpl.java              |   22 +-
 .../apache/iotdb/db/qp/executor/PlanExecutor.java  |   86 +-
 .../qp/logical/crud/AggregationQueryOperator.java  |   38 +-
 .../db/qp/logical/crud/FillClauseComponent.java    |    9 +
 .../db/qp/logical/crud/FillQueryOperator.java      |    4 +-
 .../logical/crud/GroupByFillClauseComponent.java   |    9 +
 .../qp/logical/crud/GroupByFillQueryOperator.java  |    2 +
 .../iotdb/db/qp/logical/crud/QueryOperator.java    |   31 +-
 .../iotdb/db/qp/logical/crud/SelectComponent.java  |   29 +-
 .../db/qp/logical/crud/UDAFQueryOperator.java      |  179 +++
 ...DFQueryOperator.java => UDTFQueryOperator.java} |    6 +-
 .../iotdb/db/qp/physical/crud/AggregationPlan.java |    2 +-
 .../iotdb/db/qp/physical/crud/FillQueryPlan.java   |    9 +
 .../db/qp/physical/crud/GroupByTimeFillPlan.java   |    9 +
 .../db/qp/physical/crud/InsertMultiTabletPlan.java |   64 +-
 .../apache/iotdb/db/qp/physical/crud/UDAFPlan.java |   68 ++
 .../apache/iotdb/db/qp/physical/crud/UDTFPlan.java |   17 +-
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    |  143 ++-
 .../iotdb/db/qp/utils/GroupByLevelController.java  |   83 +-
 .../db/query/aggregation/impl/AvgAggrResult.java   |    2 +-
 .../db/query/aggregation/impl/CountAggrResult.java |    2 +-
 .../query/aggregation/impl/ExtremeAggrResult.java  |    2 +-
 .../aggregation/impl/FirstValueAggrResult.java     |    2 +-
 .../aggregation/impl/FirstValueDescAggrResult.java |    2 +-
 .../aggregation/impl/LastValueAggrResult.java      |    2 +-
 .../aggregation/impl/LastValueDescAggrResult.java  |    2 +-
 .../query/aggregation/impl/MaxTimeAggrResult.java  |    2 +-
 .../aggregation/impl/MaxTimeDescAggrResult.java    |    2 +-
 .../query/aggregation/impl/MaxValueAggrResult.java |    2 +-
 .../query/aggregation/impl/MinTimeAggrResult.java  |    2 +-
 .../aggregation/impl/MinTimeDescAggrResult.java    |    2 +-
 .../query/aggregation/impl/MinValueAggrResult.java |    2 +-
 .../db/query/aggregation/impl/SumAggrResult.java   |    2 +-
 ...{UDFInputDataSet.java => IUDFInputDataSet.java} |   10 +-
 .../dataset/RawQueryDataSetWithValueFilter.java    |    2 +-
 .../dataset/RawQueryDataSetWithoutValueFilter.java |   98 +-
 .../iotdb/db/query/dataset/UDFInputDataSet.java    |   42 +-
 .../UDFRawQueryInputDataSetWithoutValueFilter.java |   67 ++
 .../db/query/dataset/UDTFAlignByTimeDataSet.java   |  184 ++--
 .../apache/iotdb/db/query/dataset/UDTFDataSet.java |   21 +-
 .../db/query/dataset/UDTFNonAlignDataSet.java      |    2 +-
 .../groupby/AlignedGroupByExecutor.java}           |   22 +-
 .../dataset/groupby/GroupByEngineDataSet.java      |    3 -
 .../dataset/groupby/GroupByFillEngineDataSet.java  |   28 +-
 .../groupby/GroupByFillWithValueFilterDataSet.java |   23 +-
 .../GroupByFillWithoutValueFilterDataSet.java      |   29 +-
 .../groupby/GroupByWithValueFilterDataSet.java     |  127 ++-
 .../groupby/GroupByWithoutValueFilterDataSet.java  |  142 ++-
 ...cutor.java => LocalAlignedGroupByExecutor.java} |  362 ++++---
 .../dataset/groupby/LocalGroupByExecutor.java      |   42 +-
 .../db/query/executor/AggregationExecutor.java     |  144 +--
 .../iotdb/db/query/executor/FillQueryExecutor.java |   20 +-
 .../iotdb/db/query/executor/IQueryRouter.java      |    6 +
 .../iotdb/db/query/executor/QueryRouter.java       |   35 +-
 .../db/query/executor/RawDataQueryExecutor.java    |    6 +-
 ...DTFQueryExecutor.java => UDFQueryExecutor.java} |   16 +-
 .../iotdb/db/query/executor/fill/ValueFill.java    |   44 +-
 .../iotdb/db/query/expression/Expression.java      |   48 +-
 .../iotdb/db/query/expression/ResultColumn.java    |   17 +
 .../query/expression/binary/BinaryExpression.java  |   24 +-
 .../db/query/expression/unary/ConstantOperand.java |    6 +
 .../query/expression/unary/FunctionExpression.java |   69 +-
 .../query/expression/unary/NegationExpression.java |   14 +-
 .../query/expression/unary/TimeSeriesOperand.java  |    8 +-
 .../series/AlignedSeriesAggregateReader.java       |   36 +-
 .../iotdb/db/query/reader/series/SeriesReader.java |   37 +-
 .../db/query/udf/core/executor/UDTFExecutor.java   |   13 +-
 .../udf/core/layer/InputRowUtils.java}             |   36 +-
 .../db/query/udf/core/layer/LayerCacheUtils.java   |   53 +-
 .../layer/MultiInputColumnIntermediateLayer.java   |   65 +-
 .../query/udf/core/layer/RawQueryInputLayer.java   |   36 +-
 ...InputColumnMultiReferenceIntermediateLayer.java |   10 +
 ...nputColumnSingleReferenceIntermediateLayer.java |   11 +-
 .../udf/core/reader/ConstantLayerPointReader.java  |    5 +
 .../db/query/udf/core/reader/LayerPointReader.java |    2 +
 .../db/query/udf/core/reader/LayerRowReader.java   |    3 +
 .../transformer/ArithmeticBinaryTransformer.java   |   12 +-
 .../transformer/ArithmeticNegationTransformer.java |   36 +-
 .../db/query/udf/core/transformer/Transformer.java |   10 +-
 .../core/transformer/TransparentTransformer.java   |   93 ++
 .../core/transformer/UDFQueryRowTransformer.java   |    5 +-
 .../udf/core/transformer/UDFQueryTransformer.java  |   14 +-
 .../row/ElasticSerializableRowRecordList.java      |   30 +-
 .../row/SerializableRowRecordList.java             |    3 +-
 .../tv/ElasticSerializableBinaryTVList.java        |    8 +-
 .../tv/ElasticSerializableTVList.java              |   47 +
 .../datastructure/tv/SerializableBinaryTVList.java |    5 +-
 .../tv/SerializableBooleanTVList.java              |    5 +-
 .../datastructure/tv/SerializableDoubleTVList.java |    5 +-
 .../datastructure/tv/SerializableFloatTVList.java  |    5 +-
 .../datastructure/tv/SerializableIntTVList.java    |    3 +-
 .../datastructure/tv/SerializableLongTVList.java   |    5 +-
 .../apache/iotdb/db/rescon/TVListAllocator.java    |   98 --
 .../iotdb/db/rescon/TVListAllocatorMBean.java      |   24 -
 .../{RPCService.java => InfluxDBRPCService.java}   |   46 +-
 .../InfluxDBRPCServiceMBean.java}                  |    7 +-
 .../java/org/apache/iotdb/db/service/IoTDB.java    |   13 +-
 .../org/apache/iotdb/db/service/MQTTService.java   |    4 +-
 .../apache/iotdb/db/service/MetricsService.java    |  210 ----
 .../org/apache/iotdb/db/service/RPCService.java    |    2 +
 .../org/apache/iotdb/db/service/ServiceType.java   |    1 +
 .../org/apache/iotdb/db/service/StaticResps.java   |    4 +-
 .../db/service/basic/BasicServiceProvider.java     |   12 +-
 .../iotdb/db/service/metrics/MetricsService.java   |  188 ++++
 .../service/{ => metrics}/MetricsServiceMBean.java |    4 +-
 .../statistic => service/metrics}/Operation.java   |    2 +-
 .../handler/InfluxDBServiceThriftHandler.java      |   59 +
 .../handler}/RPCServiceThriftHandler.java          |    4 +-
 .../service/thrift/impl/InfluxDBServiceImpl.java   |  155 +++
 .../service/{ => thrift/impl}/TSServiceImpl.java   |   65 +-
 .../iotdb/db/utils/AlignedValueIterator.java       |    5 +-
 .../org/apache/iotdb/db/utils/DataTypeUtils.java   |  149 +++
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    9 +-
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |    4 +
 .../org/apache/iotdb/db/utils/ParameterUtils.java  |   21 +-
 .../java/org/apache/iotdb/db/utils/QueryUtils.java |   21 +
 .../apache/iotdb/db/utils/RandomDeleteCache.java   |   76 --
 .../apache/iotdb/db/utils/TypeInferenceUtils.java  |    1 +
 .../db/utils/datastructure/AlignedTVList.java      |   21 +-
 .../iotdb/db/utils/datastructure/TVList.java       |   17 +-
 .../writelog/recover/TsFileRecoverPerformer.java   |   26 +-
 ...apache.iotdb.db.protocol.mqtt.PayloadFormatter} |    2 +-
 .../src/main/resources/iotdb/ui/static/index.html  |   79 --
 .../main/resources/iotdb/ui/static/iotdb-logo.png  |  Bin 1187 -> 0 bytes
 .../src/main/resources/iotdb/ui/static/webui.css   |  194 ----
 .../db/cost/statistic/PerformanceStatTest.java     |  105 --
 .../compaction/CompactionTaskComparatorTest.java   |    3 +-
 .../inner/AbstractInnerSpaceCompactionTest.java    |  295 +++++
 .../compaction/inner/InnerSeqCompactionTest.java   |   15 +-
 .../inner/InnerSpaceCompactionExceptionTest.java   |  434 ++++++++
 .../inner/InnerSpaceCompactionUtilsTest.java       |    3 +-
 .../compaction/inner/InnerUnseqCompactionTest.java |    4 +-
 .../SizeTieredCompactionHandleExceptionTest.java   |  197 ++++
 .../SizeTieredCompactionRecoverTest.java           |  694 +++++++-----
 .../recover/SizeTieredCompactionRecoverTest.java   |   68 +-
 .../utils/CompactionFileGeneratorUtils.java        |    2 +-
 .../storagegroup/TsFileResourceListTest.java       |   30 +
 .../iotdb/db/metadata/MManagerBasicTest.java       |   18 +
 .../influxdb}/input/InfluxLineParserTest.java      |    3 +-
 .../mqtt/BrokerAuthenticatorTest.java              |    2 +-
 .../mqtt/JSONPayloadFormatterTest.java             |    2 +-
 .../mqtt/PayloadFormatManagerTest.java             |    2 +-
 .../db/{ => protocol}/mqtt/PublishHandlerTest.java |    2 +-
 .../db/{ => protocol}/rest/IoTDBRestServiceIT.java |    2 +-
 .../db/qp/physical/InsertTabletMultiPlanTest.java  |   94 ++
 .../ElasticSerializableRowRecordListTest.java      |  127 ++-
 .../ElasticSerializableTVListTest.java             |  175 ++-
 .../valuefilter/RawQueryWithValueFilterTest.java   |  145 +++
 .../org/apache/iotdb/db/sink/MQTTSinkTest.java     |   18 +-
 .../recover/RecoverResourceFromReaderTest.java     |   54 +-
 server/src/test/resources/logback.xml              |    2 +-
 service-rpc/pom.xml                                |    5 +
 .../iotdb/rpc/InfluxDBSynchronizedHandler.java     |   56 +
 .../main/java/org/apache/iotdb/rpc/RpcUtils.java   |   38 +
 .../iotdb/rpc/StatementExecutionException.java     |    7 +
 .../java/org/apache/iotdb/session/Session.java     |   93 +-
 .../apache/iotdb/session/SessionConnection.java    |    4 +
 .../apache/iotdb/session/util/SessionUtils.java    |   90 ++
 site/src/main/.vuepress/config.js                  |    6 +-
 spark-iotdb-connector/pom.xml                      |   36 +-
 .../org/apache/iotdb/spark/db/Converter.scala      |    6 +-
 .../org/apache/iotdb/spark/db/DefaultSource.scala  |   30 +-
 .../org/apache/iotdb/spark/db/IoTDBOptions.scala   |    2 +-
 .../scala/org/apache/iotdb/spark/db/IoTDBRDD.scala |    7 +-
 .../iotdb/spark/db/tools/DataFrameTools.java       |  162 +++
 .../apache/iotdb/spark/db/EnvironmentUtils.java    |    2 +-
 .../org/apache/iotdb/spark/db/IoTDBTest.scala      |   32 +-
 .../org/apache/iotdb/spark/db/IoTDBWriteTest.scala |  117 ++
 .../test/java/org/apache/iotdb/db/sql/Cases.java   |    5 +-
 .../README.md                                      |   14 +-
 {service-rpc => thrift-influxdb}/pom.xml           |   90 +-
 thrift-influxdb/src/main/thrift/influxdb.thrift    |   92 ++
 .../write/UnSupportedDataTypeException.java        |    2 +-
 .../iotdb/tsfile/read/TsFileSequenceReader.java    |    2 +-
 .../apache/iotdb/tsfile/read/common/BatchData.java |   16 +
 .../tsfile/read/common/IBatchDataIterator.java     |    2 +
 .../tsfile/read/reader/page/AlignedPageReader.java |    2 +-
 .../iotdb/tsfile/read/reader/page/PageReader.java  |   85 +-
 .../iotdb/tsfile/utils/ReadWriteIOUtils.java       |    3 +-
 388 files changed, 16150 insertions(+), 6912 deletions(-)
 rename {influxdb-protocol/src/main/antlr4/org/apache/iotdb/influxdb/protocol => antlr/src/main/antlr4/org/apache/iotdb/db/protocol/influxdb}/input/InfluxLineProtocol.g4 (99%)
 delete mode 100644 cluster/src/assembly/resources/sbin/expr-bench.sh
 delete mode 100644 cluster/src/assembly/resources/sbin/expr-server.sh
 create mode 100644 cluster/src/test/java/org/apache/iotdb/cluster/query/last/ClusterLastQueryExecutorTest.java
 create mode 100644 docs/UserGuide/System-Tools/Metric-Tool.md
 delete mode 100644 docs/UserGuide/System-Tools/Query-History-Visualization-Tool.md
 create mode 100644 docs/zh/UserGuide/System-Tools/Metric-Tool.md
 rename example/mqtt-customize/src/main/resources/META-INF/services/{org.apache.iotdb.db.mqtt.PayloadFormatter => org.apache.iotdb.db.org.apache.iotdb.db.protocol.mqtt.PayloadFormatter} (100%)
 delete mode 100644 influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol/dto/IoTDBPoint.java
 delete mode 100644 influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol/meta/MetaManagerHolder.java
 delete mode 100644 influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol/util/DataTypeUtils.java
 create mode 100644 influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/session/InfluxDBSession.java
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/Accumulator.java (71%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/Adder.java (100%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/Counter.java (61%)
 copy influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol/constant/InfluxDBConstant.java => integration/src/main/java/org/apache/iotdb/db/query/udf/example/ExampleUDFConstant.java (54%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/Max.java (100%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/Multiplier.java (100%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester0.java (100%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester1.java (100%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/SlidingTimeWindowConstructionTester.java (94%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/TerminateTester.java (100%)
 rename integration/src/{test => main}/java/org/apache/iotdb/db/query/udf/example/ValidateTester.java (100%)
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aggregation/IoTDBUDFNestAggregationIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aggregation/IoTDBUserDefinedAggregationFunctionIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationGroupByLevelIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilter2IT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilterIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilterWithDeletion2IT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilterWithDeletionIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithValueFilter2IT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithValueFilterIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithValueFilterWithDeletion2IT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithValueFilterWithDeletionIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithoutValueFilter2IT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithoutValueFilterIT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithoutValueFilterWithDeletion2IT.java
 create mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBGroupByQueryWithoutValueFilterWithDeletionIT.java
 copy metrics/dropwizard-metrics/src/main/java/org/apache/iotdb/metrics/dropwizard/type/{DropwizardGauge.java => DropwizardAutoGauge.java} (52%)
 copy metrics/{interface/src/main/java/org/apache/iotdb/metrics/impl/DoNothingGauge.java => micrometer-metrics/src/main/java/org/apache/iotdb/metrics/micrometer/reporter/IoTDBJmxConfig.java} (77%)
 copy metrics/micrometer-metrics/src/main/java/org/apache/iotdb/metrics/micrometer/type/{MicrometerGauge.java => MicrometerAutoGauge.java} (50%)
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/cost/statistic/ConcurrentCircularArray.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/cost/statistic/Measurement.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/cost/statistic/MeasurementMBean.java
 create mode 100644 server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/task/CleanLastCrossSpaceCompactionTask.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/task/RecoverCrossMergeTask.java
 create mode 100644 server/src/main/java/org/apache/iotdb/db/engine/compaction/inner/InnerSpaceCompactionExceptionHandler.java
 copy tsfile/src/main/java/org/apache/iotdb/tsfile/exception/write/UnSupportedDataTypeException.java => server/src/main/java/org/apache/iotdb/db/exception/StorageEngineReadonlyException.java (64%)
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/server/JettyUtil.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/server/MetricsSystem.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/server/QueryServlet.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/server/ServerArgument.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/server/SqlArgument.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/sink/ConsoleSink.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/sink/MetricsServletSink.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/source/JvmSource.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/source/MetricsSource.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/ui/MetricsPage.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/metrics/ui/MetricsWebUI.java
 rename server/src/main/java/org/apache/iotdb/db/{metrics/sink/Sink.java => protocol/influxdb/constant/InfluxDBConstant.java} (85%)
 copy influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol/impl/IoTDBInfluxDBService.java => server/src/main/java/org/apache/iotdb/db/protocol/influxdb/dto/IoTDBPoint.java (54%)
 rename {influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol => server/src/main/java/org/apache/iotdb/db/protocol/influxdb}/input/InfluxLineParser.java (87%)
 rename {influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol => server/src/main/java/org/apache/iotdb/db/protocol/influxdb}/meta/MetaManager.java (55%)
 rename {influxdb-protocol/src/main/java/org/apache/iotdb/influxdb/protocol => server/src/main/java/org/apache/iotdb/db/protocol/influxdb}/meta/TagInfoRecords.java (71%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/mqtt/BrokerAuthenticator.java (97%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/mqtt/JSONPayloadFormatter.java (98%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/mqtt/Message.java (97%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/mqtt/PayloadFormatManager.java (97%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/mqtt/PayloadFormatter.java (96%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/mqtt/PublishHandler.java (99%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/RestService.java (97%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/filter/ApiOriginFilter.java (97%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/filter/AuthorizationFilter.java (97%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/filter/BasicSecurityContext.java (96%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/filter/User.java (95%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/filter/UserCache.java (97%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/handler/AuthorizationHandler.java (94%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/handler/ExceptionHandler.java (96%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/handler/PhysicalPlanConstructionHandler.java (98%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/handler/QueryDataSetHandler.java (95%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/handler/RequestValidationHandler.java (90%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/impl/PingApiServiceImpl.java (88%)
 rename server/src/main/java/org/apache/iotdb/db/{ => protocol}/rest/impl/RestApiServiceImpl.java (88%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/qp/logical/crud/UDAFQueryOperator.java
 rename server/src/main/java/org/apache/iotdb/db/qp/logical/crud/{UDFQueryOperator.java => UDTFQueryOperator.java} (91%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDAFPlan.java
 copy server/src/main/java/org/apache/iotdb/db/query/dataset/{UDFInputDataSet.java => IUDFInputDataSet.java} (77%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/query/dataset/UDFRawQueryInputDataSetWithoutValueFilter.java
 copy server/src/main/java/org/apache/iotdb/db/query/{udf/core/reader/LayerRowReader.java => dataset/groupby/AlignedGroupByExecutor.java} (61%)
 copy server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/{LocalGroupByExecutor.java => LocalAlignedGroupByExecutor.java} (54%)
 rename server/src/main/java/org/apache/iotdb/db/query/executor/{UDTFQueryExecutor.java => UDFQueryExecutor.java} (86%)
 copy server/src/main/java/org/apache/iotdb/db/{cost/statistic/Operation.java => query/udf/core/layer/InputRowUtils.java} (55%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/TransparentTransformer.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/rescon/TVListAllocator.java
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/rescon/TVListAllocatorMBean.java
 copy server/src/main/java/org/apache/iotdb/db/service/{RPCService.java => InfluxDBRPCService.java} (68%)
 rename server/src/main/java/org/apache/iotdb/db/{metrics/source/Source.java => service/InfluxDBRPCServiceMBean.java} (88%)
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/service/MetricsService.java
 create mode 100644 server/src/main/java/org/apache/iotdb/db/service/metrics/MetricsService.java
 rename server/src/main/java/org/apache/iotdb/db/service/{ => metrics}/MetricsServiceMBean.java (94%)
 rename server/src/main/java/org/apache/iotdb/db/{cost/statistic => service/metrics}/Operation.java (96%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/service/thrift/handler/InfluxDBServiceThriftHandler.java
 rename server/src/main/java/org/apache/iotdb/db/service/{ => thrift/handler}/RPCServiceThriftHandler.java (93%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/service/thrift/impl/InfluxDBServiceImpl.java
 rename server/src/main/java/org/apache/iotdb/db/service/{ => thrift/impl}/TSServiceImpl.java (97%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/utils/DataTypeUtils.java
 copy tsfile/src/main/java/org/apache/iotdb/tsfile/exception/write/UnSupportedDataTypeException.java => server/src/main/java/org/apache/iotdb/db/utils/ParameterUtils.java (62%)
 delete mode 100644 server/src/main/java/org/apache/iotdb/db/utils/RandomDeleteCache.java
 rename server/src/main/resources/META-INF/services/{org.apache.iotdb.db.mqtt.PayloadFormatter => org.apache.iotdb.db.protocol.mqtt.PayloadFormatter} (93%)
 delete mode 100644 server/src/main/resources/iotdb/ui/static/index.html
 delete mode 100644 server/src/main/resources/iotdb/ui/static/iotdb-logo.png
 delete mode 100644 server/src/main/resources/iotdb/ui/static/webui.css
 delete mode 100644 server/src/test/java/org/apache/iotdb/db/cost/statistic/PerformanceStatTest.java
 create mode 100644 server/src/test/java/org/apache/iotdb/db/engine/compaction/inner/AbstractInnerSpaceCompactionTest.java
 create mode 100644 server/src/test/java/org/apache/iotdb/db/engine/compaction/inner/InnerSpaceCompactionExceptionTest.java
 create mode 100644 server/src/test/java/org/apache/iotdb/db/engine/compaction/inner/sizetiered/SizeTieredCompactionHandleExceptionTest.java
 rename {influxdb-protocol/src/test/java/org/apache/iotdb/influxdb/protocol => server/src/test/java/org/apache/iotdb/db/protocol/influxdb}/input/InfluxLineParserTest.java (97%)
 rename server/src/test/java/org/apache/iotdb/db/{ => protocol}/mqtt/BrokerAuthenticatorTest.java (97%)
 rename server/src/test/java/org/apache/iotdb/db/{ => protocol}/mqtt/JSONPayloadFormatterTest.java (98%)
 rename server/src/test/java/org/apache/iotdb/db/{ => protocol}/mqtt/PayloadFormatManagerTest.java (96%)
 rename server/src/test/java/org/apache/iotdb/db/{ => protocol}/mqtt/PublishHandlerTest.java (99%)
 rename server/src/test/java/org/apache/iotdb/db/{ => protocol}/rest/IoTDBRestServiceIT.java (99%)
 create mode 100644 server/src/test/java/org/apache/iotdb/db/query/valuefilter/RawQueryWithValueFilterTest.java
 create mode 100644 service-rpc/src/main/java/org/apache/iotdb/rpc/InfluxDBSynchronizedHandler.java
 create mode 100644 spark-iotdb-connector/src/main/scala/org/apache/iotdb/spark/db/tools/DataFrameTools.java
 create mode 100644 spark-iotdb-connector/src/test/scala/org/apache/iotdb/spark/db/IoTDBWriteTest.scala
 rename docs/zh/UserGuide/System-Tools/Query-History-Visualization-Tool.md => thrift-influxdb/README.md (51%)
 copy {service-rpc => thrift-influxdb}/pom.xml (52%)
 create mode 100644 thrift-influxdb/src/main/thrift/influxdb.thrift

[iotdb] 01/01: Merge branch 'master' into expr

Posted by ji...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 40e876a80cb1e94e0ce3aa3231f36996d6c3c75d
Merge: 30a7c52 583c186
Author: jt <jt...@163.com>
AuthorDate: Mon Dec 20 09:50:45 2021 +0800

    Merge branch 'master' into expr
    
    # Conflicts:
    #	integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilter2IT.java
    #	integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilterIT.java
    #	integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilterWithDeletion2IT.java
    #	integration/src/test/java/org/apache/iotdb/db/integration/aligned/IoTDBAggregationWithValueFilterWithDeletionIT.java

 Jenkinsfile                                        |   42 +-
 README_ZH.md                                       |    2 +-
 .../protocol/influxdb}/input/InfluxLineProtocol.g4 |    2 +-
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |    8 +-
 .../main/java/org/apache/iotdb/tool/ExportCsv.java |   10 +-
 client-py/iotdb/utils/IoTDBConstants.py            |   15 +
 cluster/src/assembly/resources/sbin/expr-bench.sh  |   89 --
 cluster/src/assembly/resources/sbin/expr-server.sh |   89 --
 cluster/src/assembly/resources/sbin/start-node.bat |   21 +-
 .../org/apache/iotdb/cluster/ClusterIoTDB.java     |    6 +
 .../cluster/client/sync/SyncClientAdaptor.java     |    5 +-
 .../cluster/query/ClusterDataQueryExecutor.java    |    6 +-
 .../iotdb/cluster/query/ClusterPlanExecutor.java   |    5 +-
 .../iotdb/cluster/query/LocalQueryExecutor.java    |    3 +-
 .../cluster/query/aggregate/ClusterAggregator.java |    9 +-
 .../ClusterGroupByFillNoVFilterDataSet.java        |    4 +-
 .../groupby/ClusterGroupByNoVFilterDataSet.java    |    4 +-
 .../groupby/ClusterGroupByVFilterDataSet.java      |   10 +-
 .../query/groupby/MergeGroupByExecutor.java        |    3 +-
 .../query/last/ClusterLastQueryExecutor.java       |   29 +-
 .../cluster/query/reader/ClusterReaderFactory.java |   13 +-
 .../iotdb/cluster/server/ClusterRPCService.java    |    2 +-
 .../iotdb/cluster/server/ClusterTSServiceImpl.java |    7 +-
 .../cluster/server/service/DataSyncService.java    |   11 +-
 .../apache/iotdb/cluster/utils/PartitionUtils.java |    2 +
 .../apache/iotdb/cluster/utils/StatusUtils.java    |    2 +-
 .../cluster/client/sync/SyncClientAdaptorTest.java |    1 +
 .../iotdb/cluster/common/TestAsyncDataClient.java  |   11 +
 .../query/groupby/MergeGroupByExecutorTest.java    |    4 +-
 .../query/last/ClusterLastQueryExecutorTest.java   |   95 ++
 compile-tools/thrift/pom.xml                       |    2 +
 docker/ReadMe.md                                   |    1 +
 docker/src/main/Dockerfile-single                  |    1 +
 docs/UserGuide/API/Programming-Cpp-Native-API.md   |   19 +-
 .../Advanced-Features/Continuous-Query.md          |    2 +-
 docs/UserGuide/Cluster/Cluster-Setup-Example.md    |    2 +-
 .../Programming-MQTT.md                            |   55 +-
 docs/UserGuide/Comparison/TSDB-Comparison.md       |    4 +-
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |   53 +-
 .../DML-Data-Manipulation-Language.md              |  382 +++++--
 docs/UserGuide/System-Tools/Metric-Tool.md         |   60 +
 .../Query-History-Visualization-Tool.md            |   31 -
 .../zh/UserGuide/API/Programming-Cpp-Native-API.md |   18 +-
 .../Advanced-Features/Continuous-Query.md          |    2 +-
 docs/zh/UserGuide/Cluster/Cluster-Setup-Example.md |    2 +-
 .../Programming-MQTT.md                            |   55 +-
 docs/zh/UserGuide/Comparison/TSDB-Comparison.md    |    4 +-
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |   58 +-
 .../DML-Data-Manipulation-Language.md              |  375 +++++--
 docs/zh/UserGuide/System-Tools/Metric-Tool.md      |   60 +
 .../server/CustomizedJsonPayloadFormatter.java     |    4 +-
 ...apache.iotdb.db.protocol.mqtt.PayloadFormatter} |    0
 influxdb-protocol/pom.xml                          |   85 +-
 .../org/apache/iotdb/influxdb/IoTDBInfluxDB.java   |   87 +-
 .../iotdb/influxdb/IoTDBInfluxDBFactory.java       |    2 +-
 .../iotdb/influxdb/example/InfluxDBExample.java    |   36 +-
 .../protocol/constant/InfluxDBConstant.java        |    2 -
 .../iotdb/influxdb/protocol/dto/IoTDBPoint.java    |   65 --
 .../iotdb/influxdb/protocol/dto/SessionPoint.java  |   52 +-
 .../protocol/impl/IoTDBInfluxDBService.java        |  131 +--
 .../influxdb/protocol/meta/MetaManagerHolder.java  |   54 -
 .../influxdb/protocol/util/DataTypeUtils.java      |   86 --
 .../iotdb/influxdb/session/InfluxDBSession.java    |  242 +++++
 .../influxdb/integration/IoTDBInfluxDBIT.java      |   94 +-
 .../iotdb/db/query/udf/example/Accumulator.java    |   30 +-
 .../apache/iotdb/db/query/udf/example/Adder.java   |    0
 .../apache/iotdb/db/query/udf/example/Counter.java |   39 +-
 .../db/query/udf/example/ExampleUDFConstant.java   |   18 +-
 .../org/apache/iotdb/db/query/udf/example/Max.java |    0
 .../iotdb/db/query/udf/example/Multiplier.java     |    0
 .../SlidingSizeWindowConstructorTester0.java       |    0
 .../SlidingSizeWindowConstructorTester1.java       |    0
 .../SlidingTimeWindowConstructionTester.java       |    4 +-
 .../db/query/udf/example/TerminateTester.java      |    0
 .../iotdb/db/query/udf/example/ValidateTester.java |    0
 .../iotdb/integration/env/ClusterEnvBase.java      |   10 +-
 .../iotdb/integration/env/ClusterEnvConfig.java    |   17 +
 .../apache/iotdb/integration/env/ClusterNode.java  |    1 +
 .../org/apache/iotdb/itbase/env/BaseConfig.java    |   12 +
 .../apache/iotdb/db/integration/IoTDBAliasIT.java  |   37 +-
 .../IoTDBCreateAlignedTimeseriesIT.java            |   35 +-
 .../apache/iotdb/db/integration/IoTDBFillIT.java   |  261 ++++-
 .../db/integration/IoTDBFlushQueryMergeIT.java     |   14 +-
 .../iotdb/db/integration/IoTDBGroupByFillIT.java   |  184 ++--
 .../db/integration/IoTDBGroupByFillMixPathsIT.java |  733 +++++++------
 .../iotdb/db/integration/IoTDBMetadataFetchIT.java |   28 +-
 .../iotdb/db/integration/IoTDBNestedQueryIT.java   |   54 +-
 .../IoTDBSetSystemReadOnlyWritableIT.java          |    6 +-
 .../apache/iotdb/db/integration/IoTDBTtlIT.java    |    6 +-
 .../db/integration/IoTDBUDFWindowQueryIT.java      |   34 +-
 .../db/integration/IoTDBUDTFHybridQueryIT.java     |   12 +-
 .../aggregation/IoTDBAggregationByLevelIT.java     |   66 +-
 .../aggregation/IoTDBAggregationLargeDataIT.java   |   81 +-
 .../aggregation/IoTDBAggregationSmallDataIT.java   |   48 +-
 .../aggregation/IoTDBUDFNestAggregationIT.java     |  550 ++++++++++
 .../IoTDBUserDefinedAggregationFunctionIT.java     |  725 +++++++++++++
 .../db/integration/aligned/AlignedWriteUtil.java   |    7 +
 .../aligned/IoTDBAggregationGroupByLevelIT.java    |  295 +++++
 .../IoTDBAggregationWithValueFilter2IT.java        |   66 ++
 .../aligned/IoTDBAggregationWithValueFilterIT.java |  265 +++++
 ...BAggregationWithValueFilterWithDeletion2IT.java |   86 ++
 ...DBAggregationWithValueFilterWithDeletionIT.java |  222 ++++
 .../IoTDBGroupByQueryWithValueFilter2IT.java       |   65 ++
 .../IoTDBGroupByQueryWithValueFilterIT.java        | 1094 +++++++++++++++++++
 ...GroupByQueryWithValueFilterWithDeletion2IT.java |   76 ++
 ...BGroupByQueryWithValueFilterWithDeletionIT.java |  826 ++++++++++++++
 .../IoTDBGroupByQueryWithoutValueFilter2IT.java    |   65 ++
 .../IoTDBGroupByQueryWithoutValueFilterIT.java     | 1142 ++++++++++++++++++++
 ...upByQueryWithoutValueFilterWithDeletion2IT.java |   77 ++
 ...oupByQueryWithoutValueFilterWithDeletionIT.java |  818 ++++++++++++++
 .../db/integration/env/StandaloneEnvConfig.java    |   19 +
 .../apache/iotdb/session/IoTDBSessionSimpleIT.java |    3 +-
 integration/src/test/resources/logback.xml         |    2 +-
 metrics/ReadMe.md                                  |    2 +-
 .../dropwizard/DropwizardMetricManager.java        |   22 +
 .../dropwizard/reporter/DropwizardJmxReporter.java |    2 +
 .../reporter/DropwizardPrometheusReporter.java     |    2 +-
 ...opwizardGauge.java => DropwizardAutoGauge.java} |   46 +-
 .../metrics/dropwizard/type/DropwizardGauge.java   |   10 +
 .../dropwizard/DropwizardMetricManagerTest.java    |   18 +
 .../main/assembly/resources/conf/iotdb-metric.yml  |    5 +-
 .../org/apache/iotdb/metrics/MetricManager.java    |   13 +
 .../apache/iotdb/metrics/config/MetricConfig.java  |    6 +-
 .../apache/iotdb/metrics/impl/DoNothingGauge.java  |    6 +
 .../iotdb/metrics/impl/DoNothingMetricManager.java |   13 +-
 .../java/org/apache/iotdb/metrics/type/Gauge.java  |    4 +
 .../micrometer/MicrometerMetricManager.java        |   44 +-
 .../micrometer/reporter/IoTDBJmxConfig.java}       |   15 +-
 .../micrometer/reporter/MicrometerJmxReporter.java |    8 +-
 .../reporter/MicrometerPrometheusReporter.java     |    3 +-
 ...crometerGauge.java => MicrometerAutoGauge.java} |   39 +-
 .../metrics/micrometer/type/MicrometerGauge.java   |   10 +
 .../micrometer/MicrometerMetricManagerTest.java    |   25 +-
 .../src/test/resources/iotdb-metric.yml            |    2 +-
 openapi/pom.xml                                    |    6 +-
 pom.xml                                            |    4 +-
 server/pom.xml                                     |   15 +
 .../resources/conf/iotdb-engine.properties         |   49 +-
 server/src/assembly/resources/conf/iotdb-env.bat   |    2 +-
 .../src/assembly/resources/sbin/start-server.bat   |   10 +-
 .../org/apache/iotdb/db/concurrent/ThreadName.java |    3 +
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  104 +-
 .../org/apache/iotdb/db/conf/IoTDBConstant.java    |    3 +
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |   47 +-
 .../db/cost/statistic/ConcurrentCircularArray.java |   67 --
 .../iotdb/db/cost/statistic/Measurement.java       |  423 --------
 .../iotdb/db/cost/statistic/MeasurementMBean.java  |   60 -
 .../db/engine/compaction/CompactionScheduler.java  |    3 +
 .../compaction/CompactionTaskComparator.java       |    2 +-
 .../engine/compaction/CompactionTaskManager.java   |   16 +-
 .../db/engine/compaction/TsFileIdentifier.java     |   12 +
 .../inplace/InplaceCompactionRecoverTask.java      |   11 +-
 .../cross/inplace/InplaceCompactionSelector.java   |    8 +
 .../inplace/selector/MaxFileMergeFileSelector.java |   20 +
 .../task/CleanLastCrossSpaceCompactionTask.java    |   67 ++
 .../cross/inplace/task/RecoverCrossMergeTask.java  |  305 ------
 .../inner/AbstractInnerSpaceCompactionTask.java    |    4 -
 .../InnerSpaceCompactionExceptionHandler.java      |  251 +++++
 .../SizeTieredCompactionRecoverTask.java           |  204 ++--
 .../sizetiered/SizeTieredCompactionSelector.java   |   23 +-
 .../inner/sizetiered/SizeTieredCompactionTask.java |  138 ++-
 .../inner/utils/InnerSpaceCompactionUtils.java     |  136 ++-
 .../engine/memtable/AlignedWritableMemChunk.java   |    5 +-
 .../iotdb/db/engine/memtable/WritableMemChunk.java |    5 +-
 .../querycontext/AlignedReadOnlyMemChunk.java      |    3 +-
 .../engine/storagegroup/StorageGroupProcessor.java |    9 +-
 .../db/engine/storagegroup/TsFileManager.java      |   10 +
 .../engine/storagegroup/TsFileNameGenerator.java   |    4 +-
 .../db/engine/storagegroup/TsFileProcessor.java    |   22 +-
 .../db/engine/storagegroup/TsFileResource.java     |   26 +-
 .../db/engine/storagegroup/TsFileResourceList.java |   59 +
 .../exception/StorageEngineReadonlyException.java  |   14 +-
 .../org/apache/iotdb/db/metadata/MManager.java     |   76 +-
 .../apache/iotdb/db/metadata/path/AlignedPath.java |    6 +
 .../apache/iotdb/db/metadata/utils/MetaUtils.java  |   70 ++
 .../apache/iotdb/db/metrics/server/JettyUtil.java  |  107 --
 .../iotdb/db/metrics/server/MetricsSystem.java     |   82 --
 .../iotdb/db/metrics/server/QueryServlet.java      |   56 -
 .../iotdb/db/metrics/server/ServerArgument.java    |  328 ------
 .../iotdb/db/metrics/server/SqlArgument.java       |   84 --
 .../apache/iotdb/db/metrics/sink/ConsoleSink.java  |   54 -
 .../iotdb/db/metrics/sink/MetricsServletSink.java  |   53 -
 .../apache/iotdb/db/metrics/source/JvmSource.java  |   50 -
 .../iotdb/db/metrics/source/MetricsSource.java     |  134 ---
 .../apache/iotdb/db/metrics/ui/MetricsPage.java    |  187 ----
 .../apache/iotdb/db/metrics/ui/MetricsWebUI.java   |   68 --
 .../influxdb/constant/InfluxDBConstant.java}       |   10 +-
 .../iotdb/db/protocol/influxdb/dto/IoTDBPoint.java |  128 ++-
 .../protocol/influxdb}/input/InfluxLineParser.java |   21 +-
 .../db/protocol/influxdb}/meta/MetaManager.java    |  127 ++-
 .../db/protocol/influxdb}/meta/TagInfoRecords.java |   30 +-
 .../{ => protocol}/mqtt/BrokerAuthenticator.java   |    2 +-
 .../{ => protocol}/mqtt/JSONPayloadFormatter.java  |    2 +-
 .../iotdb/db/{ => protocol}/mqtt/Message.java      |    2 +-
 .../{ => protocol}/mqtt/PayloadFormatManager.java  |    2 +-
 .../db/{ => protocol}/mqtt/PayloadFormatter.java   |    2 +-
 .../db/{ => protocol}/mqtt/PublishHandler.java     |    2 +-
 .../iotdb/db/{ => protocol}/rest/RestService.java  |    6 +-
 .../rest/filter/ApiOriginFilter.java               |    2 +-
 .../rest/filter/AuthorizationFilter.java           |    4 +-
 .../rest/filter/BasicSecurityContext.java          |    2 +-
 .../iotdb/db/{ => protocol}/rest/filter/User.java  |    2 +-
 .../db/{ => protocol}/rest/filter/UserCache.java   |    2 +-
 .../rest/handler/AuthorizationHandler.java         |    4 +-
 .../rest/handler/ExceptionHandler.java             |    4 +-
 .../handler/PhysicalPlanConstructionHandler.java   |    4 +-
 .../rest/handler/QueryDataSetHandler.java          |    6 +-
 .../rest/handler/RequestValidationHandler.java     |    6 +-
 .../rest/impl/PingApiServiceImpl.java              |    6 +-
 .../rest/impl/RestApiServiceImpl.java              |   22 +-
 .../apache/iotdb/db/qp/executor/PlanExecutor.java  |   86 +-
 .../qp/logical/crud/AggregationQueryOperator.java  |   38 +-
 .../db/qp/logical/crud/FillClauseComponent.java    |    9 +
 .../db/qp/logical/crud/FillQueryOperator.java      |    4 +-
 .../logical/crud/GroupByFillClauseComponent.java   |    9 +
 .../qp/logical/crud/GroupByFillQueryOperator.java  |    2 +
 .../iotdb/db/qp/logical/crud/QueryOperator.java    |   31 +-
 .../iotdb/db/qp/logical/crud/SelectComponent.java  |   29 +-
 .../db/qp/logical/crud/UDAFQueryOperator.java      |  179 +++
 ...DFQueryOperator.java => UDTFQueryOperator.java} |    6 +-
 .../iotdb/db/qp/physical/crud/AggregationPlan.java |    2 +-
 .../iotdb/db/qp/physical/crud/FillQueryPlan.java   |    9 +
 .../db/qp/physical/crud/GroupByTimeFillPlan.java   |    9 +
 .../db/qp/physical/crud/InsertMultiTabletPlan.java |   64 +-
 .../apache/iotdb/db/qp/physical/crud/UDAFPlan.java |   68 ++
 .../apache/iotdb/db/qp/physical/crud/UDTFPlan.java |   17 +-
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    |  143 ++-
 .../iotdb/db/qp/utils/GroupByLevelController.java  |   83 +-
 .../db/query/aggregation/impl/AvgAggrResult.java   |    2 +-
 .../db/query/aggregation/impl/CountAggrResult.java |    2 +-
 .../query/aggregation/impl/ExtremeAggrResult.java  |    2 +-
 .../aggregation/impl/FirstValueAggrResult.java     |    2 +-
 .../aggregation/impl/FirstValueDescAggrResult.java |    2 +-
 .../aggregation/impl/LastValueAggrResult.java      |    2 +-
 .../aggregation/impl/LastValueDescAggrResult.java  |    2 +-
 .../query/aggregation/impl/MaxTimeAggrResult.java  |    2 +-
 .../aggregation/impl/MaxTimeDescAggrResult.java    |    2 +-
 .../query/aggregation/impl/MaxValueAggrResult.java |    2 +-
 .../query/aggregation/impl/MinTimeAggrResult.java  |    2 +-
 .../aggregation/impl/MinTimeDescAggrResult.java    |    2 +-
 .../query/aggregation/impl/MinValueAggrResult.java |    2 +-
 .../db/query/aggregation/impl/SumAggrResult.java   |    2 +-
 ...{UDFInputDataSet.java => IUDFInputDataSet.java} |   10 +-
 .../dataset/RawQueryDataSetWithValueFilter.java    |    2 +-
 .../dataset/RawQueryDataSetWithoutValueFilter.java |   98 +-
 .../iotdb/db/query/dataset/UDFInputDataSet.java    |   42 +-
 .../UDFRawQueryInputDataSetWithoutValueFilter.java |   67 ++
 .../db/query/dataset/UDTFAlignByTimeDataSet.java   |  184 ++--
 .../apache/iotdb/db/query/dataset/UDTFDataSet.java |   21 +-
 .../db/query/dataset/UDTFNonAlignDataSet.java      |    2 +-
 .../groupby/AlignedGroupByExecutor.java}           |   22 +-
 .../dataset/groupby/GroupByEngineDataSet.java      |    3 -
 .../dataset/groupby/GroupByFillEngineDataSet.java  |   28 +-
 .../groupby/GroupByFillWithValueFilterDataSet.java |   23 +-
 .../GroupByFillWithoutValueFilterDataSet.java      |   29 +-
 .../groupby/GroupByWithValueFilterDataSet.java     |  127 ++-
 .../groupby/GroupByWithoutValueFilterDataSet.java  |  142 ++-
 ...cutor.java => LocalAlignedGroupByExecutor.java} |  362 ++++---
 .../dataset/groupby/LocalGroupByExecutor.java      |   42 +-
 .../db/query/executor/AggregationExecutor.java     |  144 +--
 .../iotdb/db/query/executor/FillQueryExecutor.java |   20 +-
 .../iotdb/db/query/executor/IQueryRouter.java      |    6 +
 .../iotdb/db/query/executor/QueryRouter.java       |   35 +-
 .../db/query/executor/RawDataQueryExecutor.java    |    6 +-
 ...DTFQueryExecutor.java => UDFQueryExecutor.java} |   16 +-
 .../iotdb/db/query/executor/fill/ValueFill.java    |   44 +-
 .../iotdb/db/query/expression/Expression.java      |   48 +-
 .../iotdb/db/query/expression/ResultColumn.java    |   17 +
 .../query/expression/binary/BinaryExpression.java  |   24 +-
 .../db/query/expression/unary/ConstantOperand.java |    6 +
 .../query/expression/unary/FunctionExpression.java |   69 +-
 .../query/expression/unary/NegationExpression.java |   14 +-
 .../query/expression/unary/TimeSeriesOperand.java  |    8 +-
 .../series/AlignedSeriesAggregateReader.java       |   36 +-
 .../iotdb/db/query/reader/series/SeriesReader.java |   37 +-
 .../db/query/udf/core/executor/UDTFExecutor.java   |   13 +-
 .../udf/core/layer/InputRowUtils.java}             |   36 +-
 .../db/query/udf/core/layer/LayerCacheUtils.java   |   53 +-
 .../layer/MultiInputColumnIntermediateLayer.java   |   65 +-
 .../query/udf/core/layer/RawQueryInputLayer.java   |   36 +-
 ...InputColumnMultiReferenceIntermediateLayer.java |   10 +
 ...nputColumnSingleReferenceIntermediateLayer.java |   11 +-
 .../udf/core/reader/ConstantLayerPointReader.java  |    5 +
 .../db/query/udf/core/reader/LayerPointReader.java |    2 +
 .../db/query/udf/core/reader/LayerRowReader.java   |    3 +
 .../transformer/ArithmeticBinaryTransformer.java   |   12 +-
 .../transformer/ArithmeticNegationTransformer.java |   36 +-
 .../db/query/udf/core/transformer/Transformer.java |   10 +-
 .../core/transformer/TransparentTransformer.java   |   93 ++
 .../core/transformer/UDFQueryRowTransformer.java   |    5 +-
 .../udf/core/transformer/UDFQueryTransformer.java  |   14 +-
 .../row/ElasticSerializableRowRecordList.java      |   30 +-
 .../row/SerializableRowRecordList.java             |    3 +-
 .../tv/ElasticSerializableBinaryTVList.java        |    8 +-
 .../tv/ElasticSerializableTVList.java              |   47 +
 .../datastructure/tv/SerializableBinaryTVList.java |    5 +-
 .../tv/SerializableBooleanTVList.java              |    5 +-
 .../datastructure/tv/SerializableDoubleTVList.java |    5 +-
 .../datastructure/tv/SerializableFloatTVList.java  |    5 +-
 .../datastructure/tv/SerializableIntTVList.java    |    3 +-
 .../datastructure/tv/SerializableLongTVList.java   |    5 +-
 .../apache/iotdb/db/rescon/TVListAllocator.java    |   98 --
 .../iotdb/db/rescon/TVListAllocatorMBean.java      |   24 -
 .../{RPCService.java => InfluxDBRPCService.java}   |   46 +-
 .../InfluxDBRPCServiceMBean.java}                  |    7 +-
 .../java/org/apache/iotdb/db/service/IoTDB.java    |   13 +-
 .../org/apache/iotdb/db/service/MQTTService.java   |    4 +-
 .../apache/iotdb/db/service/MetricsService.java    |  210 ----
 .../org/apache/iotdb/db/service/RPCService.java    |    2 +
 .../org/apache/iotdb/db/service/ServiceType.java   |    1 +
 .../org/apache/iotdb/db/service/StaticResps.java   |    4 +-
 .../db/service/basic/BasicServiceProvider.java     |   12 +-
 .../iotdb/db/service/metrics/MetricsService.java   |  188 ++++
 .../service/{ => metrics}/MetricsServiceMBean.java |    4 +-
 .../statistic => service/metrics}/Operation.java   |    2 +-
 .../handler/InfluxDBServiceThriftHandler.java      |   59 +
 .../handler}/RPCServiceThriftHandler.java          |    4 +-
 .../service/thrift/impl/InfluxDBServiceImpl.java   |  155 +++
 .../service/{ => thrift/impl}/TSServiceImpl.java   |   65 +-
 .../iotdb/db/utils/AlignedValueIterator.java       |    5 +-
 .../org/apache/iotdb/db/utils/DataTypeUtils.java   |  149 +++
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    9 +-
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |    4 +
 .../org/apache/iotdb/db/utils/ParameterUtils.java  |   21 +-
 .../java/org/apache/iotdb/db/utils/QueryUtils.java |   21 +
 .../apache/iotdb/db/utils/RandomDeleteCache.java   |   76 --
 .../apache/iotdb/db/utils/TypeInferenceUtils.java  |    1 +
 .../db/utils/datastructure/AlignedTVList.java      |   21 +-
 .../iotdb/db/utils/datastructure/TVList.java       |   17 +-
 .../writelog/recover/TsFileRecoverPerformer.java   |   26 +-
 ...apache.iotdb.db.protocol.mqtt.PayloadFormatter} |    2 +-
 .../src/main/resources/iotdb/ui/static/index.html  |   79 --
 .../main/resources/iotdb/ui/static/iotdb-logo.png  |  Bin 1187 -> 0 bytes
 .../src/main/resources/iotdb/ui/static/webui.css   |  194 ----
 .../db/cost/statistic/PerformanceStatTest.java     |  105 --
 .../compaction/CompactionTaskComparatorTest.java   |    3 +-
 .../inner/AbstractInnerSpaceCompactionTest.java    |  295 +++++
 .../compaction/inner/InnerSeqCompactionTest.java   |   15 +-
 .../inner/InnerSpaceCompactionExceptionTest.java   |  434 ++++++++
 .../inner/InnerSpaceCompactionUtilsTest.java       |    3 +-
 .../compaction/inner/InnerUnseqCompactionTest.java |    4 +-
 .../SizeTieredCompactionHandleExceptionTest.java   |  197 ++++
 .../SizeTieredCompactionRecoverTest.java           |  694 +++++++-----
 .../recover/SizeTieredCompactionRecoverTest.java   |   68 +-
 .../utils/CompactionFileGeneratorUtils.java        |    2 +-
 .../storagegroup/TsFileResourceListTest.java       |   30 +
 .../iotdb/db/metadata/MManagerBasicTest.java       |   18 +
 .../influxdb}/input/InfluxLineParserTest.java      |    3 +-
 .../mqtt/BrokerAuthenticatorTest.java              |    2 +-
 .../mqtt/JSONPayloadFormatterTest.java             |    2 +-
 .../mqtt/PayloadFormatManagerTest.java             |    2 +-
 .../db/{ => protocol}/mqtt/PublishHandlerTest.java |    2 +-
 .../db/{ => protocol}/rest/IoTDBRestServiceIT.java |    2 +-
 .../db/qp/physical/InsertTabletMultiPlanTest.java  |   94 ++
 .../ElasticSerializableRowRecordListTest.java      |  127 ++-
 .../ElasticSerializableTVListTest.java             |  175 ++-
 .../valuefilter/RawQueryWithValueFilterTest.java   |  145 +++
 .../org/apache/iotdb/db/sink/MQTTSinkTest.java     |   18 +-
 .../recover/RecoverResourceFromReaderTest.java     |   54 +-
 server/src/test/resources/logback.xml              |    2 +-
 service-rpc/pom.xml                                |    5 +
 .../iotdb/rpc/InfluxDBSynchronizedHandler.java     |   56 +
 .../main/java/org/apache/iotdb/rpc/RpcUtils.java   |   38 +
 .../iotdb/rpc/StatementExecutionException.java     |    7 +
 .../java/org/apache/iotdb/session/Session.java     |   93 +-
 .../apache/iotdb/session/SessionConnection.java    |    4 +
 .../apache/iotdb/session/util/SessionUtils.java    |   90 ++
 site/src/main/.vuepress/config.js                  |    6 +-
 spark-iotdb-connector/pom.xml                      |   36 +-
 .../org/apache/iotdb/spark/db/Converter.scala      |    6 +-
 .../org/apache/iotdb/spark/db/DefaultSource.scala  |   30 +-
 .../org/apache/iotdb/spark/db/IoTDBOptions.scala   |    2 +-
 .../scala/org/apache/iotdb/spark/db/IoTDBRDD.scala |    7 +-
 .../iotdb/spark/db/tools/DataFrameTools.java       |  162 +++
 .../apache/iotdb/spark/db/EnvironmentUtils.java    |    2 +-
 .../org/apache/iotdb/spark/db/IoTDBTest.scala      |   32 +-
 .../org/apache/iotdb/spark/db/IoTDBWriteTest.scala |  117 ++
 .../test/java/org/apache/iotdb/db/sql/Cases.java   |    5 +-
 .../README.md                                      |   14 +-
 {service-rpc => thrift-influxdb}/pom.xml           |   90 +-
 thrift-influxdb/src/main/thrift/influxdb.thrift    |   92 ++
 .../write/UnSupportedDataTypeException.java        |    2 +-
 .../iotdb/tsfile/read/TsFileSequenceReader.java    |    2 +-
 .../apache/iotdb/tsfile/read/common/BatchData.java |   16 +
 .../tsfile/read/common/IBatchDataIterator.java     |    2 +
 .../tsfile/read/reader/page/AlignedPageReader.java |    2 +-
 .../iotdb/tsfile/read/reader/page/PageReader.java  |   85 +-
 .../iotdb/tsfile/utils/ReadWriteIOUtils.java       |    3 +-
 388 files changed, 16150 insertions(+), 6912 deletions(-)

diff --cc server/src/main/java/org/apache/iotdb/db/service/thrift/impl/TSServiceImpl.java
index 76fdb33,3fda7c4..9452cba
--- a/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/TSServiceImpl.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/TSServiceImpl.java
@@@ -1159,11 -1142,10 +1146,11 @@@ public class TSServiceImpl extends Basi
      return status != null
          ? new TSExecuteStatementResp(status)
          : RpcUtils.getTSExecuteStatementResp(executeNonQueryPlan(plan))
 -            .setQueryId(sessionManager.requestQueryId(false));
 +            .setQueryId(sessionManager.requestQueryId(false))
 +            .setOperationType(plan.getOperatorType().name());
    }
  
-   protected void handleClientExit() {
+   public void handleClientExit() {
      Long sessionId = sessionManager.getCurrSessionId();
      if (sessionId != null) {
        TSCloseSessionReq req = new TSCloseSessionReq(sessionId);