You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by yu...@apache.org on 2022/02/06 11:37:29 UTC

[iotdb] 01/01: init

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

yuyuankang pushed a commit to branch research_quality-validity
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 6ade124bce1e65bdb8b1da94171c9447a76bb32b
Author: Ring-k <yu...@hotmail.com>
AuthorDate: Sun Feb 6 19:36:16 2022 +0800

    init
---
 .github/ISSUE_TEMPLATE/bug_report.md               |     31 -
 .github/ISSUE_TEMPLATE/custom.md                   |      7 -
 .github/ISSUE_TEMPLATE/feature_request.md          |     17 -
 .github/dependabot.yml                             |     71 -
 .github/pull_request_template.md                   |     60 -
 .github/workflows/client-go.yml                    |     54 -
 .github/workflows/client.yml                       |     97 -
 .github/workflows/cluster.yml                      |     48 -
 .github/workflows/e2e.yml                          |     57 -
 .github/workflows/grafana-plugin.yml               |     47 -
 .github/workflows/greetings.yml                    |     13 -
 .github/workflows/influxdb-protocol.yml            |     68 -
 .github/workflows/main-unix.yml                    |     56 -
 .github/workflows/main-win.yml                     |    113 -
 .github/workflows/sonar-coveralls.yml              |     74 -
 .gitignore                                         |    115 -
 Jenkinsfile                                        |    210 -
 NOTICE                                             |     24 -
 NOTICE-binary                                      |     24 -
 RELEASE_NOTES.md                                   |   1154 -
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlLexer.g4    |   1002 -
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |    923 -
 cli/src/assembly/resources/sbin/start-cli.bat      |     74 -
 cli/src/assembly/resources/sbin/start-cli.sh       |     83 -
 cli/src/assembly/resources/tools/export-csv.bat    |     56 -
 cli/src/assembly/resources/tools/export-csv.sh     |     53 -
 cli/src/assembly/resources/tools/import-csv.bat    |     57 -
 cli/src/assembly/resources/tools/import-csv.sh     |     53 -
 .../java/org/apache/iotdb/cli/AbstractCli.java     |    759 -
 cli/src/main/java/org/apache/iotdb/cli/Cli.java    |    190 -
 .../org/apache/iotdb/cli/utils/JlineUtils.java     |    111 -
 .../main/java/org/apache/iotdb/tool/ExportCsv.java |    379 -
 .../main/java/org/apache/iotdb/tool/ImportCsv.java |    817 -
 .../org/apache/iotdb/cli/StartClientScriptIT.java  |    138 -
 client-cpp/src/main/CMakeLists.txt                 |     54 -
 client-cpp/src/main/Session.cpp                    |   1762 -
 client-cpp/src/main/Session.h                      |   1157 -
 client-cpp/src/test/CMakeLists.txt                 |     62 -
 client-cpp/src/test/cpp/sessionIT.cpp              |    295 -
 client-go                                          |      1 -
 client-py/SessionAlignedTimeseriesExample.py       |    197 -
 client-py/SessionAlignedTimeseriesTest.py          |    280 -
 client-py/iotdb/Session.py                         |    949 -
 client-py/iotdb/utils/IoTDBConstants.py            |     78 -
 client-py/requirements.txt                         |     22 -
 client-py/requirements_dev.txt                     |     27 -
 .../resources/conf/iotdb-cluster.properties        |    200 -
 .../java/org/apache/iotdb/cluster/ClientMain.java  |    469 -
 .../org/apache/iotdb/cluster/ClusterIoTDB.java     |    724 -
 .../iotdb/cluster/client/ClientPoolFactory.java    |    101 -
 .../cluster/client/sync/SyncClientAdaptor.java     |    532 -
 .../apache/iotdb/cluster/config/ClusterConfig.java |    584 -
 .../iotdb/cluster/config/ClusterDescriptor.java    |    418 -
 .../iotdb/cluster/log/applier/BaseApplier.java     |    263 -
 .../apache/iotdb/cluster/metadata/CMManager.java   |   1758 -
 .../apache/iotdb/cluster/metadata/MetaPuller.java  |    453 -
 .../iotdb/cluster/query/ClusterPlanExecutor.java   |    923 -
 .../apache/iotdb/cluster/query/ClusterPlanner.java |     34 -
 .../cluster/query/ClusterUDTFQueryExecutor.java    |    103 -
 .../iotdb/cluster/query/LocalQueryExecutor.java    |   1065 -
 .../cluster/query/reader/ClusterReaderFactory.java |   1227 -
 .../iotdb/cluster/server/ClusterTSServiceImpl.java |     47 -
 .../org/apache/iotdb/cluster/server/Response.java  |     63 -
 .../server/basic/ClusterServiceProvider.java       |     95 -
 .../server/handlers/caller/LogCatchUpHandler.java  |    113 -
 .../caller/PullMeasurementSchemaHandler.java       |     78 -
 .../cluster/server/member/DataGroupMember.java     |   1158 -
 .../iotdb/cluster/server/member/RaftMember.java    |   2208 -
 .../cluster/server/service/DataAsyncService.java   |    497 -
 .../server/service/DataGroupServiceImpls.java      |    749 -
 .../cluster/server/service/DataSyncService.java    |    458 -
 .../iotdb/cluster/utils/ClusterQueryUtils.java     |     84 -
 .../cluster/utils/nodetool/ClusterMonitor.java     |    320 -
 .../cluster/client/ClientPoolFactoryTest.java      |    293 -
 .../cluster/client/sync/SyncClientAdaptorTest.java |    452 -
 .../org/apache/iotdb/cluster/common/IoTDBTest.java |    176 -
 .../iotdb/cluster/common/TestAsyncDataClient.java  |    303 -
 .../iotdb/cluster/common/TestLogApplier.java       |     66 -
 .../org/apache/iotdb/cluster/common/TestUtils.java |    439 -
 .../cluster/log/applier/DataLogApplierTest.java    |    498 -
 .../FilePartitionedSnapshotLogManagerTest.java     |    115 -
 .../query/ClusterDataQueryExecutorTest.java        |    240 -
 .../query/ClusterUDTFQueryExecutorTest.java        |    121 -
 .../iotdb/cluster/server/member/BaseMember.java    |    327 -
 .../cluster/server/member/DataGroupMemberTest.java |   1253 -
 .../cluster/server/member/MetaGroupMemberTest.java |   1487 -
 .../tests/tools/importCsv/ExportCsvTestIT.java     |    141 -
 .../tests/tools/importCsv/ImportCsvTestIT.java     |    401 -
 docs/Development/ContributeGuide.md                |    193 -
 docs/SystemDesign/SchemaManager/SchemaManager.md   |    356 -
 docs/UserGuide/API/Programming-Cpp-Native-API.md   |    409 -
 docs/UserGuide/API/Programming-JDBC.md             |    218 -
 docs/UserGuide/API/Programming-Java-Native-API.md  |    626 -
 docs/UserGuide/API/RestService.md                  |    910 -
 docs/UserGuide/API/Status-Codes.md                 |    108 -
 .../Administration-Management/Administration.md    |    323 -
 docs/UserGuide/Data-Concept/Compression.md         |    138 -
 .../Data-Concept/Data-Model-and-Terminology.md     |    150 -
 docs/UserGuide/Data-Concept/Data-Type.md           |    163 -
 docs/UserGuide/Data-Concept/Encoding.md            |     75 -
 docs/UserGuide/Data-Concept/Schema-Template.md     |     50 -
 docs/UserGuide/Data-Concept/Time-Partition.md      |     66 -
 .../UserGuide/Data-Modeling/VirtualStorageGroup.md |     55 -
 .../Ecosystem Integration/Grafana Connector.md     |    181 -
 .../Ecosystem Integration/Grafana Plugin.md        |    241 -
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |    215 -
 .../Maintenance-Tools/Maintenance-Command.md       |    124 -
 docs/UserGuide/Maintenance-Tools/Metric-Tool.md    |    322 -
 .../Maintenance-Tools/Monitor-and-Log-Tools.md     |    115 -
 .../Maintenance-Tools/TsFile-Split-Tool.md         |     53 -
 .../Maintenance-Tools/TsFileSelfCheck-Tool.md      |     42 -
 .../Operate-Metadata/Auto-Create-MetaData.md       |    112 -
 docs/UserGuide/Operate-Metadata/Node.md            |    209 -
 docs/UserGuide/Operate-Metadata/Storage-Group.md   |     77 -
 docs/UserGuide/Operate-Metadata/TTL.md             |     59 -
 docs/UserGuide/Operate-Metadata/Template.md        |    190 -
 docs/UserGuide/Operate-Metadata/Timeseries.md      |    300 -
 docs/UserGuide/Process-Data/Continuous-Query.md    |    287 -
 docs/UserGuide/Process-Data/Select-Into.md         |    261 -
 docs/UserGuide/Process-Data/Triggers.md            |    893 -
 docs/UserGuide/Process-Data/UDF-Library.md         |   4542 -
 .../Process-Data/UDF-User-Defined-Function.md      |    594 -
 docs/UserGuide/Query-Data/Aggregate-Query.md       |    431 -
 docs/UserGuide/Query-Data/Fill-Null-Value.md       |    390 -
 docs/UserGuide/Query-Data/Last-Query.md            |     71 -
 docs/UserGuide/Query-Data/Overview.md              |    215 -
 docs/UserGuide/Query-Data/Pagination.md            |    376 -
 docs/UserGuide/Query-Data/Query-Filter.md          |    175 -
 docs/UserGuide/Query-Data/Result-Format.md         |     76 -
 docs/UserGuide/Query-Data/Select-Expression.md     |    607 -
 docs/UserGuide/Query-Data/Tracing-Tool.md          |     48 -
 docs/UserGuide/Query-Data/Without-Null.md          |     37 -
 .../UserGuide/QuickStart/Command-Line-Interface.md |    243 -
 docs/UserGuide/QuickStart/Files.md                 |     60 -
 docs/UserGuide/QuickStart/QuickStart.md            |    239 -
 docs/UserGuide/Reference/Config-Manual.md          |   1125 -
 docs/UserGuide/Reference/Keywords.md               |    212 -
 docs/UserGuide/Reference/SQL-Reference.md          |   1265 -
 docs/UserGuide/Reference/Syntax-Conventions.md     |    191 -
 docs/UserGuide/Reference/TSDB-Comparison.md        |    395 -
 docs/UserGuide/Write-And-Delete-Data/CSV-Tool.md   |    213 -
 .../UserGuide/Write-And-Delete-Data/Delete-Data.md |     98 -
 .../Write-And-Delete-Data/Load-External-Tsfile.md  |     92 -
 docs/UserGuide/Write-And-Delete-Data/Write-Data.md |    108 -
 .../zh/SystemDesign/SchemaManager/SchemaManager.md |    345 -
 docs/zh/SystemDesign/StorageEngine/FileLists.md    |    157 -
 docs/zh/SystemDesign/StorageEngine/MergeManager.md |    109 -
 docs/zh/SystemDesign/TsFile/Format.md              |    746 -
 .../zh/UserGuide/API/Programming-Cpp-Native-API.md |    400 -
 docs/zh/UserGuide/API/Programming-JDBC.md          |    208 -
 .../UserGuide/API/Programming-Java-Native-API.md   |    605 -
 docs/zh/UserGuide/API/RestService.md               |    923 -
 docs/zh/UserGuide/API/Status-Codes.md              |    107 -
 .../Administration-Management/Administration.md    |    330 -
 docs/zh/UserGuide/Data-Concept/Compression.md      |    130 -
 .../Data-Concept/Data-Model-and-Terminology.md     |    146 -
 docs/zh/UserGuide/Data-Concept/Data-Type.md        |    161 -
 docs/zh/UserGuide/Data-Concept/Encoding.md         |     74 -
 docs/zh/UserGuide/Data-Concept/Schema-Template.md  |    110 -
 docs/zh/UserGuide/Data-Concept/Time-Partition.md   |     66 -
 .../UserGuide/Data-Modeling/VirtualStorageGroup.md |     53 -
 .../Ecosystem Integration/Grafana Plugin.md        |    250 -
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |    222 -
 .../Maintenance-Tools/Maintenance-Command.md       |    120 -
 docs/zh/UserGuide/Maintenance-Tools/Metric-Tool.md |    319 -
 .../Maintenance-Tools/Monitor-and-Log-Tools.md     |    117 -
 docs/zh/UserGuide/Maintenance-Tools/Sync-Tool.md   |    185 -
 .../Maintenance-Tools/TsFile-Split-Tool.md         |     52 -
 .../Maintenance-Tools/TsFileSelfCheck-Tool.md      |     42 -
 .../Operate-Metadata/Auto-Create-MetaData.md       |    111 -
 docs/zh/UserGuide/Operate-Metadata/Node.md         |    213 -
 .../zh/UserGuide/Operate-Metadata/Storage-Group.md |     79 -
 docs/zh/UserGuide/Operate-Metadata/TTL.md          |     57 -
 docs/zh/UserGuide/Operate-Metadata/Template.md     |    190 -
 docs/zh/UserGuide/Operate-Metadata/Timeseries.md   |    299 -
 docs/zh/UserGuide/Process-Data/Continuous-Query.md |    289 -
 docs/zh/UserGuide/Process-Data/Select-Into.md      |    261 -
 docs/zh/UserGuide/Process-Data/Triggers.md         |    823 -
 docs/zh/UserGuide/Process-Data/UDF-Library.md      |   4520 -
 .../Process-Data/UDF-User-Defined-Function.md      |    521 -
 docs/zh/UserGuide/Query-Data/Aggregate-Query.md    |    428 -
 docs/zh/UserGuide/Query-Data/Fill-Null-Value.md    |    396 -
 docs/zh/UserGuide/Query-Data/Last-Query.md         |     69 -
 docs/zh/UserGuide/Query-Data/Overview.md           |    222 -
 docs/zh/UserGuide/Query-Data/Pagination.md         |    367 -
 .../Query-Data/Performance-Tracing-Tool.md         |     51 -
 docs/zh/UserGuide/Query-Data/Query-Filter.md       |    170 -
 docs/zh/UserGuide/Query-Data/Result-Format.md      |     83 -
 docs/zh/UserGuide/Query-Data/Select-Expression.md  |    612 -
 docs/zh/UserGuide/Query-Data/Tracing-Tool.md       |     48 -
 docs/zh/UserGuide/Query-Data/Without-Null.md       |     36 -
 .../UserGuide/QuickStart/Command-Line-Interface.md |    236 -
 docs/zh/UserGuide/QuickStart/Files.md              |     60 -
 docs/zh/UserGuide/QuickStart/QuickStart.md         |    263 -
 docs/zh/UserGuide/QuickStart/WayToGetIoTDB.md      |    145 -
 docs/zh/UserGuide/Reference/Config-Manual.md       |   1683 -
 docs/zh/UserGuide/Reference/Keywords.md            |    212 -
 docs/zh/UserGuide/Reference/SQL-Reference.md       |   1226 -
 docs/zh/UserGuide/Reference/Syntax-Conventions.md  |    190 -
 .../zh/UserGuide/Write-And-Delete-Data/CSV-Tool.md |    213 -
 .../UserGuide/Write-And-Delete-Data/Delete-Data.md |     92 -
 .../Write-And-Delete-Data/Load-External-Tsfile.md  |     91 -
 .../UserGuide/Write-And-Delete-Data/Write-Data.md  |    110 -
 example/client-cpp-example/pom.xml                 |    198 -
 .../src/AlignedTimeseriesSessionExample.cpp        |    372 -
 example/client-cpp-example/src/CMakeLists.txt      |     47 -
 example/client-cpp-example/src/SessionExample.cpp  |    435 -
 .../apache/iotdb/flink/FlinkTsFileBatchSink.java   |    123 -
 .../apache/iotdb/flink/FlinkTsFileStreamSink.java  |    124 -
 .../java/org/apache/iotdb/flink/TsFileUtils.java   |    107 -
 .../iotdb/hadoop/tsfile/TSMRWriteExample.java      |    181 -
 .../apache/iotdb/hadoop/tsfile/TsFileHelper.java   |    139 -
 .../iotdb/hadoop/tsfile/TsFileWriteToHDFS.java     |     78 -
 .../main/java/org/apache/iotdb/JDBCExample.java    |    108 -
 example/kafka/pom.xml                              |     55 -
 example/kafka/readme.md                            |     75 -
 .../main/java/org/apache/iotdb/kafka/Constant.java |     67 -
 .../main/java/org/apache/iotdb/kafka/Consumer.java |    129 -
 .../org/apache/iotdb/kafka/ConsumerThread.java     |    159 -
 .../main/java/org/apache/iotdb/kafka/Producer.java |     62 -
 .../java/org/apache/iotdb/mqtt/MQTTClient.java     |     56 -
 example/pulsar/pom.xml                             |     50 -
 .../java/org/apache/iotdb/pulsar/Constant.java     |     66 -
 .../org/apache/iotdb/pulsar/PulsarConsumer.java    |    110 -
 .../apache/iotdb/pulsar/PulsarConsumerThread.java  |    158 -
 .../org/apache/iotdb/pulsar/PulsarProducer.java    |     54 -
 .../iotdb/AlignedTimeseriesSessionExample.java     |    641 -
 .../org/apache/iotdb/DataMigrationExample.java     |    186 -
 .../iotdb/HybridTimeseriesSessionExample.java      |    124 -
 .../org/apache/iotdb/SessionConcurrentExample.java |    188 -
 .../main/java/org/apache/iotdb/SessionExample.java |    805 -
 .../main/java/org/apache/iotdb/TabletExample.java  |    194 -
 .../org/apache/iotdb/trigger/TriggerExample.java   |    147 -
 .../iotdb/tsfile/TsFileForceAppendWrite.java       |    115 -
 .../apache/iotdb/tsfile/TsFileSequenceRead.java    |    202 -
 .../tsfile/TsFileWriteAlignedWithTSRecord.java     |     89 -
 .../iotdb/tsfile/TsFileWriteAlignedWithTablet.java |    140 -
 .../iotdb/tsfile/TsFileWriteWithTSRecord.java      |     95 -
 .../apache/iotdb/tsfile/TsFileWriteWithTablet.java |    105 -
 .../java/org/apache/iotdb/udf/UDTFExample.java     |     74 -
 .../iotdb/flink/tsfile/util/TSFileConfigUtil.java  |     64 -
 .../tsfile/RowTsFileOutputFormatTestBase.java      |    120 -
 .../apache/iotdb/flink/util/TsFileWriteUtil.java   |    233 -
 .../iotdb/web/grafana/dao/impl/BasicDaoImpl.java   |    206 -
 grafana-plugin/package.json                        |     32 -
 grafana-plugin/pom.xml                             |    101 -
 grafana-plugin/src/datasource.ts                   |    164 -
 grafana-plugin/yarn.lock                           |  14317 --
 .../iotdb/hadoop/tsfile/TsFileTestHelper.java      |    122 -
 .../org/apache/iotdb/hive/TsFileTestHelper.java    |    127 -
 .../iotdb/influxdb/session/InfluxDBSession.java    |    248 -
 .../iotdb/integration/env/ClusterEnvBase.java      |    276 -
 .../iotdb/integration/env/RemoteServerEnv.java     |    107 -
 .../java/org/apache/iotdb/itbase/env/BaseEnv.java  |     39 -
 .../integration/IOTDBGroupByInnerIntervalIT.java   |    335 -
 .../apache/iotdb/db/integration/IOTDBInsertIT.java |    157 -
 .../iotdb/db/integration/IoTDBAlignByDeviceIT.java |   1003 -
 .../IoTDBAlignedTimeSeriesCompactionIT.java        |    564 -
 .../iotdb/db/integration/IoTDBAuthorizationIT.java |   1286 -
 .../db/integration/IoTDBAutoCreateSchemaIT.java    |    208 -
 .../iotdb/db/integration/IoTDBCheckConfigIT.java   |    144 -
 .../iotdb/db/integration/IoTDBCompactionIT.java    |    338 -
 .../db/integration/IoTDBContinuousQueryIT.java     |    502 -
 .../iotdb/db/integration/IoTDBDeletionIT.java      |    529 -
 .../iotdb/db/integration/IoTDBEncodingIT.java      |    349 -
 .../db/integration/IoTDBEngineTimeGeneratorIT.java |    291 -
 .../iotdb/db/integration/IoTDBFuzzyQueryIT.java    |    294 -
 .../iotdb/db/integration/IoTDBGroupByFillIT.java   |   2648 -
 .../db/integration/IoTDBInsertMultiRowIT.java      |    144 -
 .../db/integration/IoTDBInsertWithQueryIT.java     |    465 -
 .../db/integration/IoTDBInsertWithoutTimeIT.java   |    131 -
 .../apache/iotdb/db/integration/IoTDBLastIT.java   |    598 -
 ...IoTDBLoadExternalTsFileWithTimePartitionIT.java |    329 -
 .../db/integration/IoTDBLoadExternalTsfileIT.java  |   1030 -
 .../integration/IoTDBManageTsFileResourceIT.java   |    294 -
 .../iotdb/db/integration/IoTDBMetadataFetchIT.java |    626 -
 .../db/integration/IoTDBNewTsFileCompactionIT.java |   1081 -
 .../db/integration/IoTDBPathNumOverLimitIT.java    |     74 -
 .../db/integration/IoTDBQueryMemoryControlIT.java  |    277 -
 .../IoTDBQueryWithComplexValueFilterIT.java        |    121 -
 .../db/integration/IoTDBQueryWithIDTableIT.java    |    290 -
 .../iotdb/db/integration/IoTDBRecoverIT.java       |    436 -
 .../db/integration/IoTDBRecoverUnclosedIT.java     |    289 -
 .../db/integration/IoTDBRemovePartitionIT.java     |    337 -
 .../db/integration/IoTDBSchemaTemplateIT.java      |    329 -
 .../iotdb/db/integration/IoTDBSelectIntoIT.java    |    790 -
 .../iotdb/db/integration/IoTDBSeriesReaderIT.java  |    444 -
 .../db/integration/IoTDBSessionTimeoutIT.java      |     84 -
 .../apache/iotdb/db/integration/IoTDBSettleIT.java |     96 -
 .../iotdb/db/integration/IoTDBSimpleQueryIT.java   |   1256 -
 .../integration/IoTDBSizeTieredCompactionIT.java   |   1370 -
 .../db/integration/IoTDBSyntaxConventionIT.java    |    317 -
 .../iotdb/db/integration/IoTDBTagAlterIT.java      |    621 -
 .../apache/iotdb/db/integration/IoTDBTagIT.java    |   1109 -
 .../db/integration/IoTDBTriggerManagementIT.java   |    539 -
 .../integration/IoTDBUDTFAlignByTimeQueryIT.java   |    848 -
 .../db/integration/IoTDBUDTFBuiltinFunctionIT.java |    356 -
 .../db/integration/IoTDBUnseqOverlappedPageIT.java |    127 -
 .../aggregation/IoTDBAggregationIT.java            |   1031 -
 .../aggregation/IoTDBAggregationLargeDataIT.java   |   1010 -
 .../aggregation/IoTDBAggregationSmallDataIT.java   |    799 -
 .../aggregation/IoTDBUDFNestAggregationIT.java     |    774 -
 .../IoTDBUserDefinedAggregationFunctionIT.java     |    732 -
 .../aligned/IOTDBInsertAlignedValuesIT.java        |    361 -
 .../aligned/IoTDBAggregationGroupByLevelIT.java    |    302 -
 .../IoTDBAggregationWithValueFilter2IT.java        |     65 -
 .../aligned/IoTDBAggregationWithValueFilterIT.java |    264 -
 ...BAggregationWithValueFilterWithDeletion2IT.java |     85 -
 ...DBAggregationWithValueFilterWithDeletionIT.java |    221 -
 .../IoTDBAggregationWithoutValueFilter2IT.java     |     65 -
 .../IoTDBAggregationWithoutValueFilterIT.java      |    456 -
 ...gregationWithoutValueFilterWithDeletion2IT.java |     82 -
 ...ggregationWithoutValueFilterWithDeletionIT.java |    446 -
 .../integration/aligned/IoTDBAlignByDevice2IT.java |     67 -
 .../integration/aligned/IoTDBAlignByDeviceIT.java  |   1348 -
 .../aligned/IoTDBDeleteTimeseriesIT.java           |    217 -
 .../db/integration/aligned/IoTDBDeletionIT.java    |    554 -
 .../db/integration/aligned/IoTDBLastQuery2IT.java  |     65 -
 .../db/integration/aligned/IoTDBLastQueryIT.java   |    376 -
 .../aligned/IoTDBLastQueryWithDeletion2IT.java     |     80 -
 .../aligned/IoTDBLastQueryWithDeletionIT.java      |    379 -
 .../aligned/IoTDBLastQueryWithoutLastCache2IT.java |     68 -
 .../aligned/IoTDBLastQueryWithoutLastCacheIT.java  |    381 -
 ...DBLastQueryWithoutLastCacheWithDeletion2IT.java |     85 -
 ...TDBLastQueryWithoutLastCacheWithDeletionIT.java |    383 -
 .../aligned/IoTDBLoadExternalAlignedTsFileIT.java  |   1030 -
 .../aligned/IoTDBRawQueryWithValueFilter2IT.java   |     65 -
 .../aligned/IoTDBRawQueryWithValueFilterIT.java    |    763 -
 ...oTDBRawQueryWithValueFilterWithDeletion2IT.java |     82 -
 ...IoTDBRawQueryWithValueFilterWithDeletionIT.java |    778 -
 .../IoTDBRawQueryWithoutValueFilter2IT.java        |     66 -
 .../IoTDBRawQueryWithoutValueFilter3IT.java        |     63 -
 .../aligned/IoTDBRawQueryWithoutValueFilterIT.java |    633 -
 ...BRawQueryWithoutValueFilterWithDeletion2IT.java |     83 -
 ...DBRawQueryWithoutValueFilterWithDeletionIT.java |    611 -
 .../iotdb/db/integration/env/StandaloneEnv.java    |     97 -
 .../versionadaption/IoTDBDDLVersionAdaptionIT.java |    365 -
 .../IoTDBDeletionVersionAdaptionIT.java            |    301 -
 .../IoTDBQueryVersionAdaptionIT.java               |    319 -
 .../IoTDBSyntaxConventionVersionAdaptionIT.java    |     84 -
 .../iotdb/session/IoTDBSessionComplexIT.java       |    928 -
 .../iotdb/session/IoTDBSessionIteratorIT.java      |    353 -
 .../apache/iotdb/session/IoTDBSessionSimpleIT.java |   1635 -
 integration/src/test/resources/logback.xml         |     58 -
 iotdb-quality/.gitignore                           |     23 +
 iotdb-quality/conf/proguard.cfg                    |    302 +
 iotdb-quality/download/register-UDF.sh             |     13 +
 iotdb-quality/nbactions.xml                        |     46 +
 iotdb-quality/pom.xml                              |    131 +
 iotdb-quality/resample.csv                         | 131748 ++++++++++++++++++
 .../iotdb/quality/validity/NoNumberException.java  |     20 +
 .../iotdb/quality/validity/UDTFValidity.java       |     52 +
 .../iotdb/quality/validity/UDTFViolation.java      |     52 +
 .../java/apache/iotdb/quality/validity/Util.java   |    298 +
 .../iotdb/quality/validity/ValidityComputing.java  |    335 +
 iotdb-quality/temp.csv                             |     16 +
 iotdb-quality/test.sh                              |     22 +
 .asf.yaml => iotdb/.asf.yaml                       |      0
 .checkstyle => iotdb/.checkstyle                   |      0
 .dockerignore => iotdb/.dockerignore               |      0
 .../.git-blame-ignore-revs                         |      0
 .gitattributes => iotdb/.gitattributes             |      0
 iotdb/.gitignore                                   |    114 +
 .gitmodules => iotdb/.gitmodules                   |      0
 .../.mvn}/wrapper/MavenWrapperDownloader.java      |      0
 .../.mvn}/wrapper/maven-wrapper.properties         |      0
 CONTRIBUTING.md => iotdb/CONTRIBUTING.md           |      0
 Code Summary.md => iotdb/Code Summary.md           |      0
 iotdb/Jenkinsfile                                  |    210 +
 LICENSE => iotdb/LICENSE                           |      0
 LICENSE-binary => iotdb/LICENSE-binary             |      0
 iotdb/NOTICE                                       |     24 +
 iotdb/NOTICE-binary                                |     24 +
 README.md => iotdb/README.md                       |      0
 README_ZH.md => iotdb/README_ZH.md                 |      0
 iotdb/RELEASE_NOTES.md                             |    721 +
 {antlr => iotdb/antlr}/pom.xml                     |      0
 .../protocol/influxdb/input/InfluxLineProtocol.g4  |      0
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlLexer.g4    |    973 +
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |    878 +
 asf.header => iotdb/asf.header                     |      0
 checkstyle.xml => iotdb/checkstyle.xml             |      0
 {cli => iotdb/cli}/pom.xml                         |      0
 {cli => iotdb/cli}/src/assembly/cli.xml            |      0
 .../cli/src/assembly/resources/sbin/start-cli.bat  |     74 +
 iotdb/cli/src/assembly/resources/sbin/start-cli.sh |     82 +
 .../src/assembly/resources/tools/export-csv.bat    |     56 +
 .../cli/src/assembly/resources/tools/export-csv.sh |     53 +
 .../src/assembly/resources/tools/import-csv.bat    |     57 +
 .../cli/src/assembly/resources/tools/import-csv.sh |     53 +
 .../java/org/apache/iotdb/cli/AbstractCli.java     |    766 +
 .../src/main/java/org/apache/iotdb/cli/Cli.java    |    186 +
 .../src/main/java/org/apache/iotdb/cli/ExpCli.java |    188 +
 .../apache/iotdb/cli/IoTDBSyntaxHighlighter.java   |      0
 .../org/apache/iotdb/cli/utils/IoTPrinter.java     |      0
 .../org/apache/iotdb/cli/utils/JlineUtils.java     |     99 +
 .../apache/iotdb/exception/ArgsErrorException.java |      0
 .../org/apache/iotdb/tool/AbstractCsvTool.java     |      0
 .../main/java/org/apache/iotdb/tool/ExportCsv.java |    379 +
 .../main/java/org/apache/iotdb/tool/ImportCsv.java |    708 +
 .../java/org/apache/iotdb/cli/AbstractCliIT.java   |      0
 .../java/org/apache/iotdb/cli/AbstractScript.java  |      0
 .../org/apache/iotdb/cli/StartClientScriptIT.java  |    139 +
 .../iotdb/tool/integration/ExportCsvTestIT.java    |      0
 .../iotdb/tool/integration/ImportCsvTestIT.java    |      0
 .../apache/iotdb/tool/unit/WriteCsvFileTestUT.java |      0
 {cli => iotdb/cli}/src/test/resources/logback.xml  |      0
 {client-cpp => iotdb/client-cpp}/README.md         |      0
 {client-cpp => iotdb/client-cpp}/pom.xml           |      0
 .../client-cpp}/src/assembly/client-cpp.xml        |      0
 iotdb/client-cpp/src/main/Session.cpp              |   1118 +
 iotdb/client-cpp/src/main/Session.h                |    756 +
 iotdb/client-cpp/src/test/cpp/sessionIT.cpp        |    294 +
 {client-cpp => iotdb/client-cpp}/src/test/main.cpp |      0
 {client-py => iotdb/client-py}/.flake8             |      0
 {client-py => iotdb/client-py}/.gitignore          |      0
 {client-py => iotdb/client-py}/README.md           |      0
 {client-py => iotdb/client-py}/SessionExample.py   |      0
 {client-py => iotdb/client-py}/SessionTest.py      |      0
 .../client-py}/iotdb/IoTDBContainer.py             |      0
 iotdb/client-py/iotdb/Session.py                   |    757 +
 .../tests => iotdb/client-py/iotdb}/__init__.py    |      0
 .../client-py}/iotdb/utils/BitMap.py               |      0
 .../client-py}/iotdb/utils/Field.py                |      0
 iotdb/client-py/iotdb/utils/IoTDBConstants.py      |     69 +
 .../client-py}/iotdb/utils/IoTDBRpcDataSet.py      |      0
 .../client-py}/iotdb/utils/RowRecord.py            |      0
 .../client-py}/iotdb/utils/SessionDataSet.py       |      0
 .../client-py}/iotdb/utils/Tablet.py               |      0
 .../client-py}/iotdb/utils/__init__.py             |      0
 {client-py => iotdb/client-py}/pom.xml             |      0
 {client-py => iotdb/client-py}/pyproject.toml      |      0
 {client-py => iotdb/client-py}/release.sh          |      0
 {client-py => iotdb/client-py}/setup.py            |      0
 .../iotdb => iotdb/client-py/tests}/__init__.py    |      0
 .../tests/tablet_performance_comparison.py         |      0
 .../client-py}/tests/test_dataframe.py             |      0
 {client-py => iotdb/client-py}/tests/test_todf.py  |      0
 {cluster => iotdb/cluster}/pom.xml                 |      0
 .../cluster}/src/assembly/cluster.xml              |      0
 .../resources/conf/iotdb-cluster.properties        |    189 +
 .../src/assembly/resources/sbin/add-node.bat       |      0
 .../src/assembly/resources/sbin/add-node.sh        |      0
 .../src/assembly/resources/sbin/nodetool.bat       |      0
 .../src/assembly/resources/sbin/nodetool.sh        |      0
 .../src/assembly/resources/sbin/remove-node.bat    |      0
 .../src/assembly/resources/sbin/remove-node.sh     |      0
 .../src/assembly/resources/sbin/start-node.bat     |      0
 .../src/assembly/resources/sbin/start-node.sh      |      0
 .../src/assembly/resources/sbin/stop-node.bat      |      0
 .../src/assembly/resources/sbin/stop-node.sh       |      0
 .../java/org/apache/iotdb/cluster/ClientMain.java  |    469 +
 .../iotdb/cluster/ClusterFileFlushPolicy.java      |      0
 .../org/apache/iotdb/cluster/ClusterIoTDB.java     |    699 +
 .../apache/iotdb/cluster/ClusterIoTDBMBean.java    |      0
 .../apache/iotdb/cluster/RemoteTsFileResource.java |      0
 .../apache/iotdb/cluster/client/BaseFactory.java   |      0
 .../iotdb/cluster/client/ClientCategory.java       |      0
 .../apache/iotdb/cluster/client/ClientManager.java |      0
 .../iotdb/cluster/client/ClientPoolFactory.java    |     98 +
 .../iotdb/cluster/client/IClientManager.java       |      0
 .../cluster/client/async/AsyncBaseFactory.java     |      0
 .../cluster/client/async/AsyncDataClient.java      |      0
 .../cluster/client/async/AsyncMetaClient.java      |      0
 .../cluster/client/sync/SyncClientAdaptor.java     |    532 +
 .../iotdb/cluster/client/sync/SyncDataClient.java  |      0
 .../iotdb/cluster/client/sync/SyncMetaClient.java  |      0
 .../apache/iotdb/cluster/config/ClusterConfig.java |    533 +
 .../iotdb/cluster/config/ClusterConstant.java      |      0
 .../iotdb/cluster/config/ClusterDescriptor.java    |    400 +
 .../iotdb/cluster/config/ConsistencyLevel.java     |      0
 .../iotdb/cluster/coordinator/Coordinator.java     |      0
 .../iotdb/cluster/exception/AddSelfException.java  |      0
 .../exception/BadSeedUrlFormatException.java       |      0
 .../exception/ChangeMembershipException.java       |      0
 .../exception/CheckConsistencyException.java       |      0
 .../exception/ConfigInconsistentException.java     |      0
 .../cluster/exception/EmptyIntervalException.java  |      0
 .../cluster/exception/EntryCompactedException.java |      0
 .../exception/EntryUnavailableException.java       |      0
 .../GetEntriesWrongParametersException.java        |      0
 .../cluster/exception/LeaderUnknownException.java  |      0
 .../cluster/exception/LogExecutionException.java   |      0
 .../cluster/exception/MemberReadOnlyException.java |      0
 .../cluster/exception/NoHeaderNodeException.java   |      0
 .../cluster/exception/NotInSameGroupException.java |      0
 .../cluster/exception/NotManagedSlotException.java |      0
 .../PartitionTableUnavailableException.java        |      0
 .../iotdb/cluster/exception/PullFileException.java |      0
 .../cluster/exception/QueryTimeOutException.java   |      0
 .../cluster/exception/ReaderNotFoundException.java |      0
 .../cluster/exception/RequestTimeOutException.java |      0
 .../exception/SnapshotInstallationException.java   |      0
 .../exception/StartUpCheckFailureException.java    |      0
 .../exception/TruncateCommittedEntryException.java |      0
 .../cluster/exception/UnknownLogTypeException.java |      0
 .../exception/UnsupportedPlanException.java        |      0
 .../iotdb/cluster/log/CommitLogCallback.java       |      0
 .../apache/iotdb/cluster/log/CommitLogTask.java    |      0
 .../org/apache/iotdb/cluster/log/HardState.java    |      0
 .../java/org/apache/iotdb/cluster/log/Log.java     |      0
 .../org/apache/iotdb/cluster/log/LogApplier.java   |      0
 .../apache/iotdb/cluster/log/LogDispatcher.java    |      0
 .../org/apache/iotdb/cluster/log/LogParser.java    |      0
 .../org/apache/iotdb/cluster/log/Snapshot.java     |      0
 .../iotdb/cluster/log/StableEntryManager.java      |      0
 .../cluster/log/applier/AsyncDataLogApplier.java   |      0
 .../iotdb/cluster/log/applier/BaseApplier.java     |    263 +
 .../iotdb/cluster/log/applier/DataLogApplier.java  |      0
 .../iotdb/cluster/log/applier/MetaLogApplier.java  |      0
 .../iotdb/cluster/log/catchup/CatchUpTask.java     |      0
 .../iotdb/cluster/log/catchup/LogCatchUpTask.java  |      0
 .../cluster/log/catchup/SnapshotCatchUpTask.java   |      0
 .../iotdb/cluster/log/logtypes/AddNodeLog.java     |      0
 .../iotdb/cluster/log/logtypes/CloseFileLog.java   |      0
 .../cluster/log/logtypes/EmptyContentLog.java      |      0
 .../iotdb/cluster/log/logtypes/LargeTestLog.java   |      0
 .../cluster/log/logtypes/PhysicalPlanLog.java      |      0
 .../iotdb/cluster/log/logtypes/RemoveNodeLog.java  |      0
 .../cluster/log/manage/CommittedEntryManager.java  |      0
 .../manage/FilePartitionedSnapshotLogManager.java  |      0
 .../log/manage/MetaSingleSnapshotLogManager.java   |      0
 .../log/manage/PartitionedSnapshotLogManager.java  |      0
 .../iotdb/cluster/log/manage/RaftLogManager.java   |      0
 .../log/manage/UnCommittedEntryManager.java        |      0
 .../log/manage/serializable/LogManagerMeta.java    |      0
 .../serializable/SyncLogDequeSerializer.java       |      0
 .../iotdb/cluster/log/snapshot/FileSnapshot.java   |      0
 .../cluster/log/snapshot/MetaSimpleSnapshot.java   |      0
 .../cluster/log/snapshot/PartitionedSnapshot.java  |      0
 .../cluster/log/snapshot/PullSnapshotTask.java     |      0
 .../log/snapshot/PullSnapshotTaskDescriptor.java   |      0
 .../cluster/log/snapshot/SnapshotFactory.java      |      0
 .../cluster/log/snapshot/SnapshotInstaller.java    |      0
 .../log/snapshot/TimeseriesSchemaSnapshot.java     |      0
 .../apache/iotdb/cluster/metadata/CMManager.java   |   1718 +
 .../apache/iotdb/cluster/metadata/MetaPuller.java  |    453 +
 .../cluster/partition/NodeAdditionResult.java      |      0
 .../iotdb/cluster/partition/NodeRemovalResult.java |      0
 .../iotdb/cluster/partition/PartitionGroup.java    |      0
 .../iotdb/cluster/partition/PartitionTable.java    |      0
 .../partition/balancer/DefaultSlotBalancer.java    |      0
 .../cluster/partition/balancer/SlotBalancer.java   |      0
 .../iotdb/cluster/partition/slot/SlotManager.java  |      0
 .../partition/slot/SlotNodeAdditionResult.java     |      0
 .../partition/slot/SlotNodeRemovalResult.java      |      0
 .../cluster/partition/slot/SlotPartitionTable.java |      0
 .../iotdb/cluster/partition/slot/SlotStrategy.java |      0
 .../partition/slot/SlotTimePartitionFilter.java    |      0
 .../cluster/query/ClusterDataQueryExecutor.java    |      0
 .../cluster/query/ClusterPhysicalGenerator.java    |      0
 .../iotdb/cluster/query/ClusterPlanExecutor.java   |    904 +
 .../iotdb/cluster/query/ClusterPlanRouter.java     |      0
 .../apache/iotdb/cluster/query/ClusterPlanner.java |     76 +
 .../iotdb/cluster/query/ClusterQueryRouter.java    |      0
 .../cluster/query/ClusterUDTFQueryExecutor.java    |     90 +
 .../iotdb/cluster/query/LocalQueryExecutor.java    |   1054 +
 .../iotdb/cluster/query/RemoteQueryContext.java    |      0
 .../query/aggregate/ClusterAggregateExecutor.java  |      0
 .../cluster/query/aggregate/ClusterAggregator.java |      0
 .../cluster/query/fill/ClusterFillExecutor.java    |      0
 .../cluster/query/fill/ClusterLinearFill.java      |      0
 .../cluster/query/fill/ClusterPreviousFill.java    |      0
 .../cluster/query/fill/PreviousFillArguments.java  |      0
 .../iotdb/cluster/query/filter/SlotSgFilter.java   |      0
 .../cluster/query/filter/SlotTsFileFilter.java     |      0
 .../groupby/ClusterGroupByNoVFilterDataSet.java    |      0
 .../groupby/ClusterGroupByVFilterDataSet.java      |      0
 .../query/groupby/MergeGroupByExecutor.java        |      0
 .../query/groupby/RemoteGroupByExecutor.java       |      0
 .../query/last/ClusterLastQueryExecutor.java       |      0
 .../cluster/query/manage/ClusterQueryManager.java  |      0
 .../query/manage/ClusterSessionManager.java        |      0
 .../cluster/query/manage/QueryCoordinator.java     |      0
 .../cluster/query/reader/ClusterReaderFactory.java |   1227 +
 .../cluster/query/reader/ClusterTimeGenerator.java |      0
 .../iotdb/cluster/query/reader/DataSourceInfo.java |      0
 .../iotdb/cluster/query/reader/EmptyReader.java    |      0
 .../reader/ManagedDescPriorityMergeReader.java     |      0
 .../query/reader/ManagedPriorityMergeReader.java   |      0
 .../cluster/query/reader/MergedReaderByTime.java   |      0
 .../reader/RemoteSeriesReaderByTimestamp.java      |      0
 .../query/reader/RemoteSimpleSeriesReader.java     |      0
 .../query/reader/mult/AbstractMultPointReader.java |      0
 .../mult/AssignPathAscPriorityMergeReader.java     |      0
 .../mult/AssignPathDescPriorityMergeReader.java    |      0
 .../reader/mult/AssignPathManagedMergeReader.java  |      0
 .../mult/IAssignPathPriorityMergeReader.java       |      0
 .../query/reader/mult/IMultBatchReader.java        |      0
 .../cluster/query/reader/mult/MultBatchReader.java |      0
 .../query/reader/mult/MultDataSourceInfo.java      |      0
 .../cluster/query/reader/mult/MultElement.java     |      0
 .../cluster/query/reader/mult/MultEmptyReader.java |      0
 .../reader/mult/MultSeriesRawDataPointReader.java  |      0
 .../query/reader/mult/RemoteMultSeriesReader.java  |      0
 .../iotdb/cluster/server/ClusterRPCService.java    |      0
 .../cluster/server/ClusterRPCServiceMBean.java     |      0
 .../iotdb/cluster/server/ClusterTSServiceImpl.java |    100 +
 .../iotdb/cluster/server/HardLinkCleaner.java      |      0
 .../apache/iotdb/cluster/server/NodeCharacter.java |      0
 .../cluster/server/PullSnapshotHintService.java    |      0
 .../org/apache/iotdb/cluster/server/Response.java  |     62 +
 .../iotdb/cluster/server/StoppedMemberManager.java |      0
 .../server/clusterinfo/ClusterInfoServer.java      |      0
 .../server/clusterinfo/ClusterInfoServerMBean.java |      0
 .../server/clusterinfo/ClusterInfoServiceImpl.java |      0
 .../ClusterInfoServiceThriftHandler.java           |      0
 .../handlers/caller/AppendGroupEntryHandler.java   |      0
 .../handlers/caller/AppendNodeEntryHandler.java    |      0
 .../server/handlers/caller/ElectionHandler.java    |      0
 .../server/handlers/caller/GenericHandler.java     |      0
 .../caller/GetChildNodeNextLevelHandler.java       |      0
 .../caller/GetChildNodeNextLevelPathHandler.java   |      0
 .../server/handlers/caller/GetDevicesHandler.java  |      0
 .../handlers/caller/GetNodesListHandler.java       |      0
 .../caller/GetTimeseriesSchemaHandler.java         |      0
 .../server/handlers/caller/HeartbeatHandler.java   |      0
 .../server/handlers/caller/JoinClusterHandler.java |      0
 .../server/handlers/caller/LogCatchUpHandler.java  |    106 +
 .../handlers/caller/LogCatchUpInBatchHandler.java  |      0
 .../server/handlers/caller/NodeStatusHandler.java  |      0
 .../handlers/caller/PreviousFillHandler.java       |      0
 .../caller/PullMeasurementSchemaHandler.java       |     78 +
 .../handlers/caller/PullSnapshotHandler.java       |      0
 .../caller/PullTimeseriesSchemaHandler.java        |      0
 .../handlers/caller/ShowTimeSeriesHandler.java     |      0
 .../handlers/caller/SnapshotCatchUpHandler.java    |      0
 .../server/handlers/caller/package-info.java       |      0
 .../handlers/forwarder/ForwardPlanHandler.java     |      0
 .../server/heartbeat/DataHeartbeatThread.java      |      0
 .../cluster/server/heartbeat/HeartbeatThread.java  |      0
 .../server/heartbeat/MetaHeartbeatThread.java      |      0
 .../cluster/server/member/DataGroupMember.java     |   1158 +
 .../server/member/DataGroupMemberMBean.java        |      0
 .../cluster/server/member/MetaGroupMember.java     |      0
 .../server/member/MetaGroupMemberMBean.java        |      0
 .../iotdb/cluster/server/member/RaftMember.java    |   2136 +
 .../cluster/server/member/RaftMemberMBean.java     |      0
 .../iotdb/cluster/server/member/package-info.java  |      0
 .../iotdb/cluster/server/monitor/NodeReport.java   |      0
 .../iotdb/cluster/server/monitor/NodeStatus.java   |      0
 .../cluster/server/monitor/NodeStatusManager.java  |      0
 .../apache/iotdb/cluster/server/monitor/Peer.java  |      0
 .../apache/iotdb/cluster/server/monitor/Timer.java |      0
 .../server/raft/AbstractDataRaftService.java       |      0
 .../server/raft/AbstractMetaRaftService.java       |      0
 .../cluster/server/raft/AbstractRaftService.java   |      0
 .../server/raft/DataRaftHeartBeatService.java      |      0
 .../server/raft/DataRaftHeartBeatServiceMBean.java |      0
 .../iotdb/cluster/server/raft/DataRaftService.java |      0
 .../cluster/server/raft/DataRaftServiceMBean.java  |      0
 .../server/raft/MetaRaftHeartBeatService.java      |      0
 .../server/raft/MetaRaftHeartBeatServiceMBean.java |      0
 .../iotdb/cluster/server/raft/MetaRaftService.java |      0
 .../cluster/server/raft/MetaRaftServiceMBean.java  |      0
 .../cluster/server/raft/RaftServiceHandler.java    |      0
 .../cluster/server/service/BaseAsyncService.java   |      0
 .../cluster/server/service/BaseSyncService.java    |      0
 .../cluster/server/service/DataAsyncService.java   |    494 +
 .../cluster/server/service/DataGroupEngine.java    |      0
 .../server/service/DataGroupEngineMBean.java       |      0
 .../server/service/DataGroupServiceImpls.java      |    743 +
 .../cluster/server/service/DataSyncService.java    |    457 +
 .../cluster/server/service/MetaAsyncService.java   |      0
 .../cluster/server/service/MetaSyncService.java    |      0
 .../iotdb/cluster/server/service/package-info.java |      0
 .../apache/iotdb/cluster/utils/ClientUtils.java    |      0
 .../iotdb/cluster/utils/ClusterConsistent.java     |      0
 .../apache/iotdb/cluster/utils/ClusterNode.java    |      0
 .../iotdb/cluster/utils/ClusterQueryUtils.java     |     85 +
 .../apache/iotdb/cluster/utils/ClusterUtils.java   |      0
 .../org/apache/iotdb/cluster/utils/IOUtils.java    |      0
 .../iotdb/cluster/utils/NodeSerializeUtils.java    |      0
 .../apache/iotdb/cluster/utils/PartitionUtils.java |      0
 .../apache/iotdb/cluster/utils/PlanSerializer.java |      0
 .../apache/iotdb/cluster/utils/StatusUtils.java    |      0
 .../cluster/utils/nodetool/ClusterMonitor.java     |    319 +
 .../utils/nodetool/ClusterMonitorMBean.java        |      0
 .../iotdb/cluster/utils/nodetool/NodeTool.java     |      0
 .../iotdb/cluster/utils/nodetool/Printer.java      |      0
 .../cluster/utils/nodetool/function/Header.java    |      0
 .../cluster/utils/nodetool/function/LogView.java   |      0
 .../cluster/utils/nodetool/function/Migration.java |      0
 .../utils/nodetool/function/NodeToolCmd.java       |      0
 .../cluster/utils/nodetool/function/Partition.java |      0
 .../cluster/utils/nodetool/function/Ring.java      |      0
 .../cluster/utils/nodetool/function/Slot.java      |      0
 .../cluster/utils/nodetool/function/Status.java    |      0
 .../iotdb/cluster/client/BaseClientTest.java       |      0
 .../iotdb/cluster/client/ClientManagerTest.java    |      0
 .../cluster/client/ClientPoolFactoryTest.java      |    262 +
 .../iotdb/cluster/client/MockClientManager.java    |      0
 .../cluster/client/async/AsyncDataClientTest.java  |      0
 .../cluster/client/async/AsyncMetaClientTest.java  |      0
 .../cluster/client/sync/SyncClientAdaptorTest.java |    449 +
 .../cluster/client/sync/SyncDataClientTest.java    |      0
 .../cluster/client/sync/SyncMetaClientTest.java    |      0
 .../org/apache/iotdb/cluster/common/IoTDBTest.java |    178 +
 .../iotdb/cluster/common/TestAsyncClient.java      |      0
 .../iotdb/cluster/common/TestAsyncDataClient.java  |    303 +
 .../iotdb/cluster/common/TestAsyncMetaClient.java  |      0
 .../iotdb/cluster/common/TestDataGroupMember.java  |      0
 .../apache/iotdb/cluster/common/TestException.java |      0
 .../org/apache/iotdb/cluster/common/TestLog.java   |      0
 .../iotdb/cluster/common/TestLogApplier.java       |     66 +
 .../iotdb/cluster/common/TestLogManager.java       |      0
 .../cluster/common/TestManagedSeriesReader.java    |      0
 .../iotdb/cluster/common/TestMetaGroupMember.java  |      0
 .../cluster/common/TestPartitionedLogManager.java  |      0
 .../apache/iotdb/cluster/common/TestSnapshot.java  |      0
 .../iotdb/cluster/common/TestSyncClient.java       |      0
 .../org/apache/iotdb/cluster/common/TestUtils.java |    439 +
 .../cluster/integration/BaseSingleNodeTest.java    |      0
 .../iotdb/cluster/integration/SingleNodeTest.java  |      0
 .../iotdb/cluster/log/CommitLogCallbackTest.java   |      0
 .../iotdb/cluster/log/CommitLogTaskTest.java       |      0
 .../apache/iotdb/cluster/log/HardStateTest.java    |      0
 .../iotdb/cluster/log/LogDispatcherTest.java       |      0
 .../apache/iotdb/cluster/log/LogParserTest.java    |      0
 .../log/applier/AsyncDataLogApplierTest.java       |      0
 .../cluster/log/applier/DataLogApplierTest.java    |    498 +
 .../cluster/log/applier/MetaLogApplierTest.java    |      0
 .../iotdb/cluster/log/catchup/CatchUpTaskTest.java |      0
 .../cluster/log/catchup/LogCatchUpTaskTest.java    |      0
 .../log/catchup/SnapshotCatchUpTaskTest.java       |      0
 .../cluster/log/logtypes/SerializeLogTest.java     |      0
 .../log/manage/CommittedEntryManagerTest.java      |      0
 .../FilePartitionedSnapshotLogManagerTest.java     |    115 +
 .../manage/MetaSingleSnapshotLogManagerTest.java   |      0
 .../cluster/log/manage/RaftLogManagerTest.java     |      0
 .../log/manage/UnCommittedEntryManagerTest.java    |      0
 .../serializable/SyncLogDequeSerializerTest.java   |      0
 .../cluster/log/snapshot/DataSnapshotTest.java     |      0
 .../cluster/log/snapshot/FileSnapshotTest.java     |      0
 .../log/snapshot/MetaSimpleSnapshotTest.java       |      0
 .../log/snapshot/PartitionedSnapshotTest.java      |      0
 .../snapshot/PullSnapshotTaskDescriptorTest.java   |      0
 .../cluster/log/snapshot/PullSnapshotTaskTest.java |      0
 .../iotdb/cluster/log/snapshot/SimpleSnapshot.java |      0
 .../iotdb/cluster/partition/MManagerWhiteBox.java  |      0
 .../iotdb/cluster/partition/SlotManagerTest.java   |      0
 .../cluster/partition/SlotPartitionTableTest.java  |      0
 .../apache/iotdb/cluster/query/BaseQueryTest.java  |      0
 .../query/ClusterAggregateExecutorTest.java        |      0
 .../query/ClusterDataQueryExecutorTest.java        |    153 +
 .../query/ClusterPhysicalGeneratorTest.java        |      0
 .../cluster/query/ClusterPlanExecutorTest.java     |      0
 .../iotdb/cluster/query/ClusterPlannerTest.java    |      0
 .../cluster/query/ClusterQueryRouterTest.java      |      0
 .../query/ClusterUDTFQueryExecutorTest.java        |    116 +
 .../iotdb/cluster/query/LoadConfigurationTest.java |      0
 .../query/fill/ClusterFillExecutorTest.java        |      0
 .../ClusterGroupByNoVFilterDataSetTest.java        |      0
 .../groupby/ClusterGroupByVFilterDataSetTest.java  |      0
 .../query/groupby/MergeGroupByExecutorTest.java    |      0
 .../query/groupby/RemoteGroupByExecutorTest.java   |      0
 .../query/last/ClusterLastQueryExecutorTest.java   |      0
 .../query/manage/ClusterQueryManagerTest.java      |      0
 .../cluster/query/manage/QueryCoordinatorTest.java |      0
 .../query/reader/ClusterReaderFactoryTest.java     |      0
 .../query/reader/ClusterTimeGeneratorTest.java     |      0
 .../cluster/query/reader/DatasourceInfoTest.java   |      0
 .../reader/RemoteSeriesReaderByTimestampTest.java  |      0
 .../query/reader/RemoteSimpleSeriesReaderTest.java |      0
 .../mult/AssignPathManagedMergeReaderTest.java     |      0
 .../mult/MultSeriesRawDataPointReaderTest.java     |      0
 .../reader/mult/RemoteMultSeriesReaderTest.java    |      0
 .../server/clusterinfo/ClusterInfoServerTest.java  |      0
 .../clusterinfo/ClusterInfoServiceImplTest.java    |      0
 .../caller/AppendGroupEntryHandlerTest.java        |      0
 .../caller/AppendNodeEntryHandlerTest.java         |      0
 .../handlers/caller/ElectionHandlerTest.java       |      0
 .../server/handlers/caller/GenericHandlerTest.java |      0
 .../handlers/caller/HeartbeatHandlerTest.java      |      0
 .../handlers/caller/JoinClusterHandlerTest.java    |      0
 .../handlers/caller/LogCatchUpHandlerTest.java     |      0
 .../caller/PullMeasurementSchemaHandlerTest.java   |      0
 .../handlers/caller/PullSnapshotHandlerTest.java   |      0
 .../caller/SnapshotCatchUpHandlerTest.java         |      0
 .../handlers/forwarder/ForwardPlanHandlerTest.java |      0
 .../server/heartbeat/DataHeartbeatThreadTest.java  |      0
 .../server/heartbeat/HeartbeatThreadTest.java      |      0
 .../server/heartbeat/MetaHeartbeatThreadTest.java  |      0
 .../iotdb/cluster/server/member/BaseMember.java    |    327 +
 .../cluster/server/member/DataGroupMemberTest.java |   1253 +
 .../cluster/server/member/MetaGroupMemberTest.java |   1487 +
 .../cluster/server/member/RaftMemberTest.java      |      0
 .../org/apache/iotdb/cluster/utils/Constants.java  |      0
 .../cluster/utils/CreateTemplatePlanUtil.java      |      0
 .../iotdb/cluster/utils/SerializeUtilTest.java     |      0
 .../cluster}/src/test/resources/logback.xml        |      0
 .../resources/node1conf/iotdb-cluster.properties   |      0
 .../resources/node1conf/iotdb-engine.properties    |      0
 .../src/test/resources/node1conf}/iotdb-metric.yml |      0
 .../src/test/resources/node1conf/logback.xml       |      0
 .../resources/node2conf/iotdb-cluster.properties   |      0
 .../resources/node2conf/iotdb-engine.properties    |      0
 .../src/test/resources/node2conf/iotdb-metric.yml  |      0
 .../src/test/resources/node2conf/logback.xml       |      0
 .../resources/node3conf/iotdb-cluster.properties   |      0
 .../resources/node3conf/iotdb-engine.properties    |      0
 .../src/test/resources/node3conf}/iotdb-metric.yml |      0
 .../src/test/resources/node3conf/logback.xml       |      0
 {code-coverage => iotdb/code-coverage}/README.md   |      0
 .../code-coverage}/copy-code-coverage-sources.sh   |      0
 {code-coverage => iotdb/code-coverage}/pom.xml     |      0
 codecov.yml => iotdb/codecov.yml                   |      0
 {compile-tools => iotdb/compile-tools}/README.md   |      0
 {compile-tools => iotdb/compile-tools}/pom.xml     |      0
 .../compile-tools}/thrift/pom.xml                  |      0
 {cross-tests => iotdb/cross-tests}/pom.xml         |      0
 .../tests/tools/importCsv/AbstractScript.java      |      0
 .../tests/tools/importCsv/ExportCsvTestIT.java     |    142 +
 .../tests/tools/importCsv/ImportCsvTestIT.java     |    404 +
 .../src/test/resources/iotdb-engine.properties     |      0
 {distribution => iotdb/distribution}/pom.xml       |      0
 .../distribution}/src/assembly/all.xml             |      0
 .../distribution}/src/assembly/cli.xml             |      0
 .../distribution}/src/assembly/client-cpp.xml      |      0
 .../distribution}/src/assembly/cluster.xml         |      0
 .../distribution}/src/assembly/common-files.xml    |      0
 .../src/assembly/grafana-connector.xml             |      0
 .../distribution}/src/assembly/grafana-plugin.xml  |      0
 .../distribution}/src/assembly/server.xml          |      0
 {docker => iotdb/docker}/ReadMe.md                 |      0
 .../main/DockerCompose/docker-compose-grafana.yml  |      0
 .../docker}/src/main/Dockerfile-0.10.0             |      0
 .../docker}/src/main/Dockerfile-0.10.1             |      0
 .../docker}/src/main/Dockerfile-0.11.0             |      0
 .../docker}/src/main/Dockerfile-0.11.1             |      0
 .../docker}/src/main/Dockerfile-0.11.2             |      0
 .../docker}/src/main/Dockerfile-0.11.3             |      0
 .../docker}/src/main/Dockerfile-0.11.4             |      0
 .../docker}/src/main/Dockerfile-0.12.0-cluster     |      0
 .../docker}/src/main/Dockerfile-0.12.0-node        |      0
 .../docker}/src/main/Dockerfile-0.12.1-cluster     |      0
 .../docker}/src/main/Dockerfile-0.12.1-node        |      0
 .../docker}/src/main/Dockerfile-0.12.2-cluster     |      0
 .../docker}/src/main/Dockerfile-0.12.2-grafana     |      0
 .../docker}/src/main/Dockerfile-0.12.2-node        |      0
 {docker => iotdb/docker}/src/main/Dockerfile-0.8.1 |      0
 {docker => iotdb/docker}/src/main/Dockerfile-0.9.0 |      0
 {docker => iotdb/docker}/src/main/Dockerfile-0.9.1 |      0
 .../docker}/src/main/Dockerfile-0.9.1-jre8         |      0
 .../docker}/src/main/Dockerfile-cluster            |      0
 .../docker}/src/main/Dockerfile-single             |      0
 {docs => iotdb/docs}/Blog/Release0_93.md           |      0
 {docs => iotdb/docs}/Blog/index.md                 |      0
 .../docs}/Community/Community-Powered By.md        |      0
 .../Community/Community-Project Committers.md      |      0
 {docs => iotdb/docs}/Community/Feedback.md         |      0
 {docs => iotdb/docs}/Community/Materials.md        |      0
 {docs => iotdb/docs}/Development/Committer.md      |      0
 iotdb/docs/Development/ContributeGuide.md          |    188 +
 {docs => iotdb/docs}/Development/HowToCommit.md    |      0
 {docs => iotdb/docs}/Development/VoteRelease.md    |      0
 {docs => iotdb/docs}/Download/README.md            |      0
 {docs => iotdb/docs}/README.md                     |      0
 .../SystemDesign/Architecture/Architecture.md      |      0
 {docs => iotdb/docs}/SystemDesign/Client/RPC.md    |      0
 .../docs}/SystemDesign/Connector/Hive-TsFile.md    |      0
 .../docs}/SystemDesign/Connector/Spark-IOTDB.md    |      0
 .../docs}/SystemDesign/Connector/Spark-TsFile.md   |      0
 .../SystemDesign/DataQuery/AggregationQuery.md     |      0
 .../SystemDesign/DataQuery/AlignByDeviceQuery.md   |      0
 .../docs}/SystemDesign/DataQuery/DataQuery.md      |      0
 .../docs}/SystemDesign/DataQuery/FillFunction.md   |      0
 .../SystemDesign/DataQuery/GroupByFillQuery.md     |      0
 .../docs}/SystemDesign/DataQuery/GroupByQuery.md   |      0
 .../docs}/SystemDesign/DataQuery/LastQuery.md      |      0
 .../SystemDesign/DataQuery/QueryFundamentals.md    |      0
 .../docs}/SystemDesign/DataQuery/RawDataQuery.md   |      0
 .../docs}/SystemDesign/DataQuery/SeriesReader.md   |      0
 .../docs}/SystemDesign/QueryEngine/PlanExecutor.md |      0
 .../docs}/SystemDesign/QueryEngine/Planner.md      |      0
 .../docs}/SystemDesign/QueryEngine/QueryEngine.md  |      0
 .../QueryEngine/ResultSetConstruction.md           |      0
 .../SystemDesign/SchemaManager/SchemaManager.md    |    356 +
 .../SystemDesign/StorageEngine/DataManipulation.md |      0
 .../SystemDesign/StorageEngine/DataPartition.md    |      0
 .../SystemDesign/StorageEngine/FlushManager.md     |      0
 .../SystemDesign/StorageEngine/MergeManager.md     |      0
 .../docs}/SystemDesign/StorageEngine/Recover.md    |      0
 .../SystemDesign/StorageEngine/StorageEngine.md    |      0
 .../docs}/SystemDesign/StorageEngine/WAL.md        |      0
 {docs => iotdb/docs}/SystemDesign/Tools/Sync.md    |      0
 {docs => iotdb/docs}/SystemDesign/TsFile/Format.md |      0
 {docs => iotdb/docs}/SystemDesign/TsFile/Read.md   |      0
 {docs => iotdb/docs}/SystemDesign/TsFile/TsFile.md |      0
 {docs => iotdb/docs}/SystemDesign/TsFile/Write.md  |      0
 .../UserGuide/API/Programming-Cpp-Native-API.md    |    263 +
 .../UserGuide/API/Programming-Go-Native-API.md     |      0
 iotdb/docs/UserGuide/API/Programming-JDBC.md       |    213 +
 .../UserGuide/API/Programming-Java-Native-API.md   |    639 +
 .../UserGuide/API/Programming-Python-Native-API.md |      0
 .../docs}/UserGuide/API/Programming-TsFile-API.md  |      0
 .../docs/UserGuide/API}/Time-zone.md               |      0
 .../Administration-Management/Administration.md    |    162 +
 .../docs/UserGuide/Advanced-Features}/Alerting.md  |      0
 .../Advanced-Features/Continuous-Query.md          |    230 +
 .../UserGuide/Advanced-Features/Select-Into.md     |    243 +
 iotdb/docs/UserGuide/Advanced-Features/Triggers.md |    893 +
 .../Advanced-Features/UDF-User-Defined-Function.md |    588 +
 iotdb/docs/UserGuide/Appendix/Config-Manual.md     |    794 +
 iotdb/docs/UserGuide/Appendix/SQL-Reference.md     |   1265 +
 iotdb/docs/UserGuide/Appendix/Status-Codes.md      |    108 +
 iotdb/docs/UserGuide/CLI/Command-Line-Interface.md |    241 +
 .../UserGuide/Cluster/Cluster-Setup-Example.md     |      0
 .../docs}/UserGuide/Cluster/Cluster-Setup.md       |      0
 .../Collaboration-of-Edge-and-Cloud}/Sync-Tool.md  |      0
 .../Programming-MQTT.md                            |      0
 .../Programming-Thrift.md                          |      0
 iotdb/docs/UserGuide/Comparison/TSDB-Comparison.md |    395 +
 .../UserGuide/Data-Concept/Auto-Create-MetaData.md |    107 +
 iotdb/docs/UserGuide/Data-Concept/Compression.md   |     36 +
 .../Data-Concept/Data-Model-and-Terminology.md     |    152 +
 iotdb/docs/UserGuide/Data-Concept/Data-Type.md     |    163 +
 iotdb/docs/UserGuide/Data-Concept/Encoding.md      |     72 +
 iotdb/docs/UserGuide/Data-Concept/SDT.md           |    111 +
 .../docs/UserGuide/Data-Concept/Schema-Template.md |     84 +
 .../docs/UserGuide/Data-Concept/Time-Partition.md  |     64 +
 .../UserGuide/Data-Modeling/VirtualStorageGroup.md |     55 +
 .../UserGuide/Ecosystem Integration/DBeaver.md     |      0
 .../UserGuide/Ecosystem Integration/Flink IoTDB.md |      0
 .../Ecosystem Integration/Flink TsFile.md          |      0
 .../Ecosystem Integration/Grafana Connector.md     |    181 +
 .../UserGuide/Ecosystem Integration/Hive TsFile.md |      0
 .../Ecosystem Integration/MapReduce TsFile.md      |      0
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |    203 +
 .../Ecosystem Integration/Spark TsFile.md          |      0
 .../Ecosystem Integration/Writing Data on HDFS.md  |      0
 .../Ecosystem Integration/Zeppelin-IoTDB.md        |      0
 .../UserGuide/FAQ}/Frequently-asked-questions.md   |      0
 .../Integration-Test-refactoring-tutorial.md       |      0
 .../UserGuide/IoTDB-Introduction/Architecture.md   |      0
 .../docs}/UserGuide/IoTDB-Introduction/Features.md |      0
 .../UserGuide/IoTDB-Introduction/Publication.md    |      0
 .../docs}/UserGuide/IoTDB-Introduction/Scenario.md |      0
 .../UserGuide/IoTDB-Introduction/What-is-IoTDB.md  |      0
 .../DDL-Data-Definition-Language.md                |    605 +
 .../DML-Data-Manipulation-Language.md              |   2112 +
 .../IoTDB-SQL-Language/Maintenance-Command.md      |    124 +
 .../IoTDB-SQL-Language/Syntax-Conventions.md       |    128 +
 iotdb/docs/UserGuide/Library-UDF/Data-Quality.md   |    520 +
 iotdb/docs/UserGuide/Library-UDF/Data-Repair.md    |    349 +
 iotdb/docs/UserGuide/Library-UDF/Get-Started.md    |     61 +
 iotdb/docs/UserGuide/QuickStart/Files.md           |     60 +
 iotdb/docs/UserGuide/QuickStart/QuickStart.md      |    239 +
 .../docs}/UserGuide/QuickStart/ServerFileList.md   |      0
 .../docs}/UserGuide/QuickStart/WayToGetIoTDB.md    |      0
 iotdb/docs/UserGuide/System-Tools/CSV-Tool.md      |    210 +
 .../docs/UserGuide/System-Tools}/JMX-Tool.md       |      0
 .../UserGuide/System-Tools/Load-External-Tsfile.md |     94 +
 .../UserGuide/System-Tools}/MLogParser-Tool.md     |      0
 iotdb/docs/UserGuide/System-Tools/Metric-Tool.md   |    310 +
 .../System-Tools/Monitor-and-Log-Tools.md          |    254 +
 .../docs/UserGuide/System-Tools}/NodeTool.md       |      0
 .../System-Tools}/Performance-Tracing-Tool.md      |      0
 .../docs/UserGuide/System-Tools}/Watermark-Tool.md |      0
 {docs => iotdb/docs}/UserGuide/UserGuideReadme.md  |      0
 .../docs}/zh/Community/Community-Powered By.md     |      0
 .../zh}/Community/Community-Project Committers.md  |      0
 {docs => iotdb/docs}/zh/Community/Feedback.md      |      0
 {docs => iotdb/docs}/zh/Development/Committer.md   |      0
 .../docs}/zh/Development/ContributeGuide.md        |      0
 {docs => iotdb/docs}/zh/Development/HowToCommit.md |      0
 {docs => iotdb/docs}/zh/Development/VoteRelease.md |      0
 {docs => iotdb/docs}/zh/Download/README.md         |      0
 {docs => iotdb/docs}/zh/README.md                  |      0
 .../zh/SystemDesign/Architecture/Architecture.md   |      0
 {docs => iotdb/docs}/zh/SystemDesign/Client/RPC.md |      0
 .../docs}/zh/SystemDesign/Connector/Hive-TsFile.md |      0
 .../docs}/zh/SystemDesign/Connector/Spark-IOTDB.md |      0
 .../zh/SystemDesign/Connector/Spark-TsFile.md      |      0
 .../zh/SystemDesign/DataQuery/AggregationQuery.md  |      0
 .../SystemDesign/DataQuery/AlignByDeviceQuery.md   |      0
 .../docs}/zh/SystemDesign/DataQuery/DataQuery.md   |      0
 .../zh/SystemDesign/DataQuery/FillFunction.md      |      0
 .../zh/SystemDesign/DataQuery/GroupByFillQuery.md  |      0
 .../zh/SystemDesign/DataQuery/GroupByQuery.md      |      0
 .../docs}/zh/SystemDesign/DataQuery/LastQuery.md   |      0
 .../zh/SystemDesign/DataQuery/OrderByTimeQuery.md  |      0
 .../zh/SystemDesign/DataQuery/QueryFundamentals.md |      0
 .../zh/SystemDesign/DataQuery/RawDataQuery.md      |      0
 .../zh/SystemDesign/DataQuery/SeriesReader.md      |      0
 .../zh/SystemDesign/QueryEngine/PlanExecutor.md    |      0
 .../docs}/zh/SystemDesign/QueryEngine/Planner.md   |      0
 .../zh/SystemDesign/QueryEngine/QueryEngine.md     |      0
 .../QueryEngine/ResultSetConstruction.md           |      0
 .../zh/SystemDesign/SchemaManager/SchemaManager.md |    345 +
 .../zh/SystemDesign/StorageEngine/Compaction.md    |      0
 .../SystemDesign/StorageEngine/DataManipulation.md |      0
 .../zh/SystemDesign/StorageEngine/DataPartition.md |      0
 .../zh/SystemDesign/StorageEngine/FileLists.md     |    153 +
 .../zh/SystemDesign/StorageEngine/FlushManager.md  |      0
 .../zh/SystemDesign/StorageEngine/MergeManager.md  |    112 +
 .../docs}/zh/SystemDesign/StorageEngine/Recover.md |      0
 .../zh/SystemDesign/StorageEngine/StorageEngine.md |      0
 .../docs}/zh/SystemDesign/StorageEngine/WAL.md     |      0
 {docs => iotdb/docs}/zh/SystemDesign/Tools/Sync.md |      0
 iotdb/docs/zh/SystemDesign/TsFile/Format.md        |    746 +
 .../docs}/zh/SystemDesign/TsFile/Read.md           |      0
 .../docs}/zh/SystemDesign/TsFile/TsFile.md         |      0
 .../docs}/zh/SystemDesign/TsFile/Write.md          |      0
 .../docs}/zh/UserGuide/API/InfluxDB-Protocol.md    |      0
 .../zh/UserGuide/API/Programming-Cpp-Native-API.md |    239 +
 .../zh/UserGuide/API/Programming-Go-Native-API.md  |      0
 iotdb/docs/zh/UserGuide/API/Programming-JDBC.md    |    202 +
 .../UserGuide/API/Programming-Java-Native-API.md   |    499 +
 .../UserGuide/API/Programming-Python-Native-API.md |      0
 .../zh/UserGuide/API/Programming-TsFile-API.md     |      0
 .../docs/zh/UserGuide/API}/Time-zone.md            |      0
 .../Administration-Management/Administration.md    |    169 +
 .../zh/UserGuide/Advanced-Features}/Alerting.md    |      0
 .../Advanced-Features/Continuous-Query.md          |    225 +
 .../zh/UserGuide/Advanced-Features/Select-Into.md  |    242 +
 .../zh/UserGuide/Advanced-Features/Triggers.md     |    823 +
 .../Advanced-Features/UDF-User-Defined-Function.md |    517 +
 iotdb/docs/zh/UserGuide/Appendix/Config-Manual.md  |   1565 +
 iotdb/docs/zh/UserGuide/Appendix/SQL-Reference.md  |   1226 +
 iotdb/docs/zh/UserGuide/Appendix/Status-Codes.md   |    107 +
 .../zh/UserGuide/CLI/Command-Line-Interface.md     |    236 +
 .../zh/UserGuide/Cluster/Cluster-Setup-Example.md  |      0
 .../docs}/zh/UserGuide/Cluster/Cluster-Setup.md    |      0
 .../Collaboration-of-Edge-and-Cloud/Sync-Tool.md   |    185 +
 .../Programming-MQTT.md                            |      0
 .../Programming-Thrift.md                          |      0
 .../Communication-Service-Protocol/RestService.md  |    268 +
 .../zh/UserGuide/Comparison}/TSDB-Comparison.md    |      0
 .../UserGuide/Data-Concept/Auto-Create-MetaData.md |    107 +
 .../docs/zh/UserGuide/Data-Concept/Compression.md  |     33 +
 .../Data-Concept/Data-Model-and-Terminology.md     |    149 +
 iotdb/docs/zh/UserGuide/Data-Concept/Data-Type.md  |    159 +
 iotdb/docs/zh/UserGuide/Data-Concept/Encoding.md   |     72 +
 iotdb/docs/zh/UserGuide/Data-Concept/SDT.md        |    106 +
 .../zh/UserGuide/Data-Concept/Schema-Template.md   |     81 +
 .../zh/UserGuide/Data-Concept/Time-Partition.md    |     64 +
 .../UserGuide/Data-Modeling/VirtualStorageGroup.md |     53 +
 .../zh/UserGuide/Ecosystem Integration/DBeaver.md  |      0
 .../UserGuide/Ecosystem Integration/Flink IoTDB.md |      0
 .../Ecosystem Integration/Flink TsFile.md          |      0
 .../Ecosystem Integration/Grafana Connector.md     |      0
 .../Ecosystem Integration/Grafana Plugin.md        |    250 +
 .../UserGuide/Ecosystem Integration/Hive TsFile.md |      0
 .../Ecosystem Integration/MapReduce TsFile.md      |      0
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |    207 +
 .../Ecosystem Integration/Spark TsFile.md          |      0
 .../Ecosystem Integration/Writing Data on HDFS.md  |      0
 .../Ecosystem Integration/Zeppelin-IoTDB.md        |      0
 .../UserGuide/FAQ}/Frequently-asked-questions.md   |      0
 .../Integration-Test-refactoring-tutorial.md       |      0
 .../UserGuide/IoTDB-Introduction/Architecture.md   |      0
 .../zh/UserGuide/IoTDB-Introduction/Features.md    |      0
 .../zh/UserGuide/IoTDB-Introduction/Publication.md |      0
 .../zh/UserGuide/IoTDB-Introduction/Scenario.md    |      0
 .../UserGuide/IoTDB-Introduction/What-is-IoTDB.md  |      0
 .../DDL-Data-Definition-Language.md                |    611 +
 .../DML-Data-Manipulation-Language.md              |   2105 +
 .../IoTDB-SQL-Language/Maintenance-Command.md      |    120 +
 .../IoTDB-SQL-Language/Syntax-Conventions.md       |    129 +
 .../docs/zh/UserGuide/Library-UDF/Data-Quality.md  |    509 +
 iotdb/docs/zh/UserGuide/Library-UDF/Data-Repair.md |    341 +
 iotdb/docs/zh/UserGuide/Library-UDF/Get-Started.md |     58 +
 iotdb/docs/zh/UserGuide/QuickStart/Files.md        |     60 +
 iotdb/docs/zh/UserGuide/QuickStart/QuickStart.md   |    263 +
 .../zh/UserGuide/QuickStart/ServerFileList.md      |      0
 .../docs/zh/UserGuide/QuickStart/WayToGetIoTDB.md  |    145 +
 iotdb/docs/zh/UserGuide/System-Tools/CSV-Tool.md   |    210 +
 .../docs/zh/UserGuide/System-Tools}/JMX-Tool.md    |      0
 .../UserGuide/System-Tools/Load-External-Tsfile.md |     95 +
 .../zh/UserGuide/System-Tools}/MLogParser-Tool.md  |      0
 .../docs/zh/UserGuide/System-Tools/Metric-Tool.md  |    306 +
 .../System-Tools/Monitor-and-Log-Tools.md          |    286 +
 .../docs/zh/UserGuide/System-Tools}/NodeTool.md    |      0
 .../System-Tools/Performance-Tracing-Tool.md       |     51 +
 .../zh/UserGuide/System-Tools}/Watermark-Tool.md   |      0
 .../docs}/zh/UserGuide/UserGuideReadme.md          |      0
 .../docs}/zh/chinese-render-template.latex         |      0
 .../example}/client-cpp-example/README.md          |      0
 iotdb/example/client-cpp-example/pom.xml           |    194 +
 .../client-cpp-example/src/SessionExample.cpp      |    310 +
 {example => iotdb/example}/flink/README.md         |      0
 {example => iotdb/example}/flink/pom.xml           |      0
 .../org/apache/iotdb/flink/FlinkIoTDBSink.java     |      0
 .../org/apache/iotdb/flink/FlinkIoTDBSource.java   |      0
 .../apache/iotdb/flink/FlinkTsFileBatchSink.java   |    126 +
 .../apache/iotdb/flink/FlinkTsFileBatchSource.java |      0
 .../apache/iotdb/flink/FlinkTsFileStreamSink.java  |    127 +
 .../iotdb/flink/FlinkTsFileStreamSource.java       |      0
 .../java/org/apache/iotdb/flink/TsFileUtils.java   |    108 +
 {example => iotdb/example}/hadoop/pom.xml          |      0
 .../org/apache/iotdb/hadoop/tsfile/Constant.java   |      0
 .../iotdb/hadoop/tsfile/TSFMRReadExample.java      |      0
 .../iotdb/hadoop/tsfile/TSMRWriteExample.java      |    181 +
 .../apache/iotdb/hadoop/tsfile/TsFileHelper.java   |    140 +
 .../iotdb/hadoop/tsfile/TsFileWriteToHDFS.java     |     78 +
 {example => iotdb/example}/jdbc/pom.xml            |      0
 .../main/java/org/apache/iotdb/JDBCExample.java    |    107 +
 .../org/apache/iotdb/PrepareStatementDemo.java     |      0
 iotdb/example/kafka/pom.xml                        |     49 +
 iotdb/example/kafka/readme.md                      |     75 +
 .../main/java/org/apache/iotdb/kafka/Constant.java |     63 +
 .../java/org/apache/iotdb/kafka/KafkaConsumer.java |     90 +
 .../apache/iotdb/kafka/KafkaConsumerThread.java    |    104 +
 .../java/org/apache/iotdb/kafka/KafkaProducer.java |     64 +
 .../example}/mqtt-customize/README.md              |      0
 {example => iotdb/example}/mqtt-customize/pom.xml  |      0
 .../server/CustomizedJsonPayloadFormatter.java     |      0
 ....apache.iotdb.db.protocol.mqtt.PayloadFormatter |      0
 {example => iotdb/example}/mqtt/README.md          |      0
 {example => iotdb/example}/mqtt/pom.xml            |      0
 .../java/org/apache/iotdb/mqtt/MQTTClient.java     |     54 +
 {example => iotdb/example}/pom.xml                 |      0
 iotdb/example/pulsar/pom.xml                       |     45 +
 .../java/org/apache/iotdb/pulsar/Constant.java     |     30 +
 .../org/apache/iotdb/pulsar/PulsarConsumer.java    |    113 +
 .../apache/iotdb/pulsar/PulsarConsumerThread.java  |     72 +
 .../org/apache/iotdb/pulsar/PulsarProducer.java    |     86 +
 {example => iotdb/example}/rabbitmq/pom.xml        |      0
 {example => iotdb/example}/rabbitmq/readme.md      |      0
 .../java/org/apache/iotdb/rabbitmq/Constant.java   |      0
 .../iotdb/rabbitmq/RabbitMQChannelUtils.java       |      0
 .../apache/iotdb/rabbitmq/RabbitMQConsumer.java    |      0
 .../apache/iotdb/rabbitmq/RabbitMQProducer.java    |      0
 {example => iotdb/example}/rocketmq/pom.xml        |      0
 {example => iotdb/example}/rocketmq/readme.md      |      0
 .../java/org/apache/iotdb/rocketmq/Constant.java   |      0
 .../apache/iotdb/rocketmq/RocketMQConsumer.java    |      0
 .../apache/iotdb/rocketmq/RocketMQProducer.java    |      0
 .../main/java/org/apache/iotdb/rocketmq/Utils.java |      0
 {example => iotdb/example}/session/pom.xml         |      0
 .../iotdb/AlignedTimeseriesSessionExample.java     |    642 +
 .../org/apache/iotdb/DataMigrationExample.java     |    187 +
 .../iotdb/HybridTimeseriesSessionExample.java      |    125 +
 .../org/apache/iotdb/SessionConcurrentExample.java |    189 +
 .../main/java/org/apache/iotdb/SessionExample.java |    799 +
 .../java/org/apache/iotdb/SessionPoolExample.java  |      0
 .../main/java/org/apache/iotdb/TabletExample.java  |    195 +
 {example => iotdb/example}/trigger/pom.xml         |      0
 .../org/apache/iotdb/trigger/AlertingExample.java  |      0
 .../org/apache/iotdb/trigger/TriggerExample.java   |    127 +
 {example => iotdb/example}/tsfile/pom.xml          |      0
 {example => iotdb/example}/tsfile/readme.md        |      0
 .../java/org/apache/iotdb/tsfile/Constant.java     |      0
 .../iotdb/tsfile/TsFileForceAppendWrite.java       |    115 +
 .../java/org/apache/iotdb/tsfile/TsFileRead.java   |      0
 .../apache/iotdb/tsfile/TsFileSequenceRead.java    |    195 +
 .../tsfile/TsFileWriteAlignedWithTSRecord.java     |     89 +
 .../iotdb/tsfile/TsFileWriteAlignedWithTablet.java |    141 +
 .../iotdb/tsfile/TsFileWriteWithTSRecord.java      |     95 +
 .../apache/iotdb/tsfile/TsFileWriteWithTablet.java |    106 +
 {example => iotdb/example}/udf/pom.xml             |      0
 .../java/org/apache/iotdb/udf/UDTFExample.java     |     57 +
 .../flink-iotdb-connector}/README.md               |      0
 .../flink-iotdb-connector}/pom.xml                 |      0
 .../iotdb/flink/DefaultIoTSerializationSchema.java |      0
 .../main/java/org/apache/iotdb/flink/Event.java    |      0
 .../java/org/apache/iotdb/flink/IoTDBSink.java     |      0
 .../java/org/apache/iotdb/flink/IoTDBSource.java   |      0
 .../apache/iotdb/flink/IoTSerializationSchema.java |      0
 .../apache/iotdb/flink/options/IoTDBOptions.java   |      0
 .../iotdb/flink/options/IoTDBSinkOptions.java      |      0
 .../iotdb/flink/options/IoTDBSourceOptions.java    |      0
 .../flink/DefaultIoTSerializationSchemaTest.java   |      0
 .../iotdb/flink/IoTDBSinkBatchInsertTest.java      |      0
 .../iotdb/flink/IoTDBSinkBatchTimerTest.java       |      0
 .../apache/iotdb/flink/IoTDBSinkInsertTest.java    |      0
 .../flink-tsfile-connector}/README.md              |      0
 .../flink-tsfile-connector}/pom.xml                |      0
 .../apache/iotdb/flink/tsfile/RowRecordParser.java |      0
 .../iotdb/flink/tsfile/RowRowRecordParser.java     |      0
 .../iotdb/flink/tsfile/RowTSRecordConverter.java   |      0
 .../iotdb/flink/tsfile/TSRecordConverter.java      |      0
 .../iotdb/flink/tsfile/TSRecordOutputFormat.java   |      0
 .../iotdb/flink/tsfile/TsFileInputFormat.java      |      0
 .../iotdb/flink/tsfile/TsFileOutputFormat.java     |      0
 .../iotdb/flink/tsfile/util/TSFileConfigUtil.java  |     70 +
 .../flink/tsfile/RowTSRecordOutputFormatIT.java    |      0
 .../flink/tsfile/RowTSRecordOutputFormatTest.java  |      0
 .../flink/tsfile/RowTsFileConnectorTestBase.java   |      0
 .../iotdb/flink/tsfile/RowTsFileInputFormatIT.java |      0
 .../flink/tsfile/RowTsFileInputFormatTest.java     |      0
 .../flink/tsfile/RowTsFileInputFormatTestBase.java |      0
 .../tsfile/RowTsFileOutputFormatTestBase.java      |    122 +
 .../util/TSFileConfigUtilCompletenessTest.java     |      0
 .../apache/iotdb/flink/util/TsFileWriteUtil.java   |    237 +
 .../grafana-connector}/img/add_data_source.png     |    Bin
 .../grafana-connector}/img/add_graph.png           |    Bin
 .../grafana-connector}/img/edit_data_source.png    |    Bin
 .../grafana-connector}/pom.xml                     |      0
 .../grafana-connector}/readme.md                   |      0
 .../grafana-connector}/readme_zh.md                |      0
 .../web/grafana/TsfileWebDemoApplication.java      |      0
 .../apache/iotdb/web/grafana/bean/TimeValues.java  |      0
 .../iotdb/web/grafana/conf/MyConfiguration.java    |      0
 .../controller/DatabaseConnectController.java      |      0
 .../org/apache/iotdb/web/grafana/dao/BasicDao.java |      0
 .../iotdb/web/grafana/dao/impl/BasicDaoImpl.java   |    212 +
 .../grafana/service/DatabaseConnectService.java    |      0
 .../service/impl/DatabaseConnectServiceImpl.java   |      0
 .../src/main/resources/application.properties      |      0
 .../web/grafana/dao/impl/BasicDaoImplTest.java     |      0
 .../grafana-plugin}/.gitignore                     |      0
 .../grafana-plugin}/.prettierrc.js                 |      0
 .../grafana-plugin}/CHANGELOG.md                   |      0
 {grafana-plugin => iotdb/grafana-plugin}/LICENSE   |      0
 {grafana-plugin => iotdb/grafana-plugin}/README.md |      0
 .../grafana-plugin}/jest.config.js                 |      0
 iotdb/grafana-plugin/package.json                  |     31 +
 iotdb/grafana-plugin/pom.xml                       |     96 +
 .../grafana-plugin}/src/ConfigEditor.tsx           |      0
 .../grafana-plugin}/src/QueryEditor.tsx            |      0
 .../src/componments/ControlValue.tsx               |      0
 .../grafana-plugin}/src/componments/Form.tsx       |      0
 .../grafana-plugin}/src/componments/FromValue.tsx  |      0
 .../src/componments/SelectValue.tsx                |      0
 .../grafana-plugin}/src/componments/WhereValue.tsx |      0
 iotdb/grafana-plugin/src/datasource.ts             |    164 +
 .../grafana-plugin}/src/functions.ts               |      0
 .../grafana-plugin}/src/img/logo.svg               |      0
 .../grafana-plugin}/src/module.ts                  |      0
 .../grafana-plugin}/src/plugin.json                |      0
 .../grafana-plugin}/src/types.ts                   |      0
 .../grafana-plugin}/tsconfig.json                  |      0
 iotdb/grafana-plugin/yarn.lock                     |  14427 ++
 {hadoop => iotdb/hadoop}/README.md                 |      0
 {hadoop => iotdb/hadoop}/pom.xml                   |      0
 .../iotdb/hadoop/fileSystem/HDFSConfUtil.java      |      0
 .../apache/iotdb/hadoop/fileSystem/HDFSFile.java   |      0
 .../apache/iotdb/hadoop/fileSystem/HDFSInput.java  |      0
 .../apache/iotdb/hadoop/fileSystem/HDFSOutput.java |      0
 .../org/apache/iotdb/hadoop/tsfile/IReaderSet.java |      0
 .../iotdb/hadoop/tsfile/TSFHadoopException.java    |      0
 .../apache/iotdb/hadoop/tsfile/TSFInputFormat.java |      0
 .../apache/iotdb/hadoop/tsfile/TSFInputSplit.java  |      0
 .../iotdb/hadoop/tsfile/TSFOutputFormat.java       |      0
 .../iotdb/hadoop/tsfile/TSFRecordReader.java       |      0
 .../iotdb/hadoop/tsfile/TSFRecordWriter.java       |      0
 .../iotdb/hadoop/tsfile/record/HDFSTSRecord.java   |      0
 .../apache/iotdb/hadoop/tsfile/TSFHadoopTest.java  |      0
 .../iotdb/hadoop/tsfile/TSFInputSplitTest.java     |      0
 .../iotdb/hadoop/tsfile/TsFileTestHelper.java      |    123 +
 .../iotdb/hadoop/tsfile/constant/TestConstant.java |      0
 .../hadoop}/src/test/resources/logback.xml         |      0
 {hive-connector => iotdb/hive-connector}/pom.xml   |      0
 .../org/apache/iotdb/hive/TSFHiveInputFormat.java  |      0
 .../org/apache/iotdb/hive/TSFHiveOutputFormat.java |      0
 .../org/apache/iotdb/hive/TSFHiveRecordReader.java |      0
 .../org/apache/iotdb/hive/TSFHiveRecordWriter.java |      0
 .../org/apache/iotdb/hive/TsFileDeserializer.java  |      0
 .../java/org/apache/iotdb/hive/TsFileSerDe.java    |      0
 .../apache/iotdb/hive/TsFileSerDeException.java    |      0
 .../apache/iotdb/hive/TSFHiveInputFormatTest.java  |      0
 .../apache/iotdb/hive/TSFHiveRecordReaderTest.java |      0
 .../apache/iotdb/hive/TsFileDeserializerTest.java  |      0
 .../org/apache/iotdb/hive/TsFileSerDeTest.java     |      0
 .../org/apache/iotdb/hive/TsFileTestHelper.java    |    128 +
 .../apache/iotdb/hive/constant/TestConstant.java   |      0
 .../hive-connector}/src/test/resources/logback.xml |      0
 .../influxdb-protocol}/pom.xml                     |      0
 .../org/apache/iotdb/influxdb/IoTDBInfluxDB.java   |      0
 .../iotdb/influxdb/IoTDBInfluxDBFactory.java       |      0
 .../iotdb/influxdb/example/InfluxDBExample.java    |      0
 .../protocol/constant/InfluxDBConstant.java        |      0
 .../iotdb/influxdb/protocol/dto/SessionPoint.java  |      0
 .../protocol/impl/IoTDBInfluxDBService.java        |      0
 .../influxdb/protocol/util/ParameterUtils.java     |      0
 .../iotdb/influxdb/session/InfluxDBSession.java    |    242 +
 .../influxdb/integration/IoTDBInfluxDBIT.java      |      0
 {integration => iotdb/integration}/README.md       |      0
 .../integration}/pic/Add_New_Configuration.png     |    Bin
 .../integration}/pic/Cluster_Category.png          |    Bin
 .../integration}/pic/Fork_mode.png                 |    Bin
 .../integration}/pic/Run(Menu).png                 |    Bin
 .../integration}/pic/Standalone_Category.png       |    Bin
 {integration => iotdb/integration}/pom.xml         |      0
 .../integration}/src/assembly/cluster.xml          |      0
 .../iotdb/db/query/udf/example/Accumulator.java    |      0
 .../apache/iotdb/db/query/udf/example/Adder.java   |      0
 .../apache/iotdb/db/query/udf/example/Counter.java |      0
 .../db/query/udf/example/ExampleUDFConstant.java   |      0
 .../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       |      0
 .../db/query/udf/example/TerminateTester.java      |      0
 .../iotdb/db/query/udf/example/ValidateTester.java |      0
 .../iotdb/integration/env/ClusterEnvBase.java      |    249 +
 .../iotdb/integration/env/ClusterEnvConfig.java    |      0
 .../apache/iotdb/integration/env/ClusterNode.java  |      0
 .../iotdb/integration/env/ConfigFactory.java       |      0
 .../apache/iotdb/integration/env/EnvFactory.java   |      0
 .../iotdb/integration/env/FiveNodeCluster1Env.java |      0
 .../iotdb/integration/env/RemoteEnvConfig.java     |      0
 .../iotdb/integration/env/RemoteServerEnv.java     |     81 +
 .../apache/iotdb/itbase/category/ClusterTest.java  |      0
 .../iotdb/itbase/category/LocalStandaloneTest.java |      0
 .../apache/iotdb/itbase/category/RemoteTest.java   |      0
 .../org/apache/iotdb/itbase/env/BaseConfig.java    |      0
 .../java/org/apache/iotdb/itbase/env/BaseEnv.java  |     35 +
 .../db/engine/trigger/example/Accumulator.java     |      0
 .../iotdb/db/engine/trigger/example/Counter.java   |      0
 .../iotdb/db/integration/IOTDBGroupByIT.java       |      0
 .../integration/IOTDBGroupByInnerIntervalIT.java   |    335 +
 .../db/integration/IOTDBInsertAlignedValuesIT.java |    222 +
 .../apache/iotdb/db/integration/IOTDBInsertIT.java |    126 +
 .../apache/iotdb/db/integration/IoTDBAliasIT.java  |      0
 .../iotdb/db/integration/IoTDBAlignByDeviceIT.java |    957 +
 .../iotdb/db/integration/IoTDBArithmeticIT.java    |      0
 .../org/apache/iotdb/db/integration/IoTDBAsIT.java |      0
 .../db/integration/IoTDBAutoCreateSchemaIT.java    |    209 +
 .../iotdb/db/integration/IoTDBCheckConfigIT.java   |    145 +
 .../iotdb/db/integration/IoTDBClearCacheIT.java    |      0
 .../apache/iotdb/db/integration/IoTDBCloseIT.java  |      0
 .../iotdb/db/integration/IoTDBCompleteIT.java      |      0
 .../iotdb/db/integration/IoTDBCompressTypeIT.java  |      0
 .../db/integration/IoTDBContinuousQueryIT.java     |    416 +
 .../IoTDBCreateAlignedTimeseriesIT.java            |      0
 .../db/integration/IoTDBCreateSnapshotIT.java      |      0
 .../db/integration/IoTDBCreateStorageGroupIT.java  |      0
 .../db/integration/IoTDBCreateTimeseriesIT.java    |      0
 .../apache/iotdb/db/integration/IoTDBDaemonIT.java |      0
 .../db/integration/IoTDBDeleteStorageGroupIT.java  |      0
 .../db/integration/IoTDBDeleteTimeseriesIT.java    |      0
 .../iotdb/db/integration/IoTDBDeletionIT.java      |    502 +
 .../iotdb/db/integration/IoTDBDisableAlignIT.java  |      0
 .../iotdb/db/integration/IoTDBEncodingIT.java      |    350 +
 .../db/integration/IoTDBEngineTimeGeneratorIT.java |    292 +
 .../iotdb/db/integration/IoTDBExecuteBatchIT.java  |      0
 .../iotdb/db/integration/IoTDBFilePathUtilsIT.java |      0
 .../apache/iotdb/db/integration/IoTDBFillIT.java   |      0
 .../db/integration/IoTDBFloatPrecisionIT.java      |      0
 .../db/integration/IoTDBFlushQueryMergeIT.java     |      0
 .../iotdb/db/integration/IoTDBFuzzyQueryIT.java    |    295 +
 .../iotdb/db/integration/IoTDBGroupByFillIT.java   |   2648 +
 .../db/integration/IoTDBGroupByFillMixPathsIT.java |      0
 .../integration/IoTDBGroupByFillWithRangeIT.java   |      0
 .../db/integration/IoTDBGroupByMonthFillIT.java    |      0
 .../iotdb/db/integration/IoTDBGroupByMonthIT.java  |      0
 .../iotdb/db/integration/IoTDBGroupByUnseqIT.java  |      0
 .../org/apache/iotdb/db/integration/IoTDBInIT.java |      0
 .../db/integration/IoTDBInsertMultiRowIT.java      |    128 +
 .../iotdb/db/integration/IoTDBInsertNaNIT.java     |      0
 .../db/integration/IoTDBInsertWithQueryIT.java     |    468 +
 .../db/integration/IoTDBInsertWithoutTimeIT.java   |    132 +
 .../iotdb/db/integration/IoTDBKillQueryIT.java     |      0
 .../iotdb/db/integration/IoTDBLargeDataIT.java     |      0
 .../apache/iotdb/db/integration/IoTDBLastIT.java   |    599 +
 .../iotdb/db/integration/IoTDBLimitSlimitIT.java   |      0
 ...IoTDBLoadExternalTsFileWithTimePartitionIT.java |    330 +
 .../db/integration/IoTDBLoadExternalTsfileIT.java  |    825 +
 .../integration/IoTDBManageTsFileResourceIT.java   |    295 +
 .../apache/iotdb/db/integration/IoTDBMergeIT.java  |    340 +
 .../iotdb/db/integration/IoTDBMetadataFetchIT.java |    615 +
 .../iotdb/db/integration/IoTDBMultiDeviceIT.java   |      0
 .../IoTDBMultiOverlappedChunkInUnseqIT.java        |      0
 .../db/integration/IoTDBMultiOverlappedPageIT.java |      0
 .../iotdb/db/integration/IoTDBMultiSeriesIT.java   |      0
 .../db/integration/IoTDBMultiStatementsIT.java     |      0
 .../iotdb/db/integration/IoTDBNestedQueryIT.java   |      0
 .../db/integration/IoTDBNewTsFileCompactionIT.java |   1067 +
 .../iotdb/db/integration/IoTDBNumberPathIT.java    |      0
 .../db/integration/IoTDBOverlappedPageIT.java      |      0
 .../db/integration/IoTDBPartialInsertionIT.java    |      0
 .../db/integration/IoTDBPathNumOverLimitIT.java    |     75 +
 .../iotdb/db/integration/IoTDBQueryDemoIT.java     |      0
 .../db/integration/IoTDBQueryMemoryControlIT.java  |    277 +
 .../iotdb/db/integration/IoTDBQueryTimeoutIT.java  |      0
 .../db/integration/IoTDBQueryWithIDTableIT.java    |    289 +
 .../iotdb/db/integration/IoTDBQuotedPathIT.java    |      0
 .../iotdb/db/integration/IoTDBRecoverIT.java       |    438 +
 .../db/integration/IoTDBRecoverUnclosedIT.java     |    291 +
 .../db/integration/IoTDBRemovePartitionIT.java     |    333 +
 .../iotdb/db/integration/IoTDBRestartIT.java       |      0
 .../iotdb/db/integration/IoTDBResultSetIT.java     |      0
 .../db/integration/IoTDBRpcCompressionIT.java      |      0
 .../IoTDBSameMeasurementsDifferentTypesIT.java     |      0
 .../db/integration/IoTDBSchemaTemplateIT.java      |    180 +
 .../iotdb/db/integration/IoTDBSelectIntoIT.java    |    673 +
 .../iotdb/db/integration/IoTDBSensorUpdateIT.java  |      0
 .../db/integration/IoTDBSequenceDataQueryIT.java   |      0
 .../iotdb/db/integration/IoTDBSeriesReaderIT.java  |    453 +
 .../db/integration/IoTDBSessionTimeoutIT.java      |     85 +
 .../IoTDBSetSystemReadOnlyWritableIT.java          |      0
 .../apache/iotdb/db/integration/IoTDBSettleIT.java |     97 +
 .../iotdb/db/integration/IoTDBSimpleQueryIT.java   |   1254 +
 .../integration/IoTDBSizeTieredCompactionIT.java   |   1344 +
 .../integration/IoTDBSortedShowTimeseriesIT.java   |      0
 .../iotdb/db/integration/IoTDBTagAlterIT.java      |    624 +
 .../apache/iotdb/db/integration/IoTDBTagIT.java    |   1114 +
 .../iotdb/db/integration/IoTDBTimePartitionIT.java |      0
 .../iotdb/db/integration/IoTDBTimeZoneIT.java      |      0
 .../iotdb/db/integration/IoTDBTracingIT.java       |      0
 .../db/integration/IoTDBTriggerExecutionIT.java    |      0
 .../db/integration/IoTDBTriggerManagementIT.java   |    503 +
 .../apache/iotdb/db/integration/IoTDBTtlIT.java    |      0
 .../iotdb/db/integration/IoTDBUDFManagementIT.java |      0
 .../db/integration/IoTDBUDFWindowQueryIT.java      |      0
 .../integration/IoTDBUDTFAlignByTimeQueryIT.java   |    823 +
 .../db/integration/IoTDBUDTFBuiltinFunctionIT.java |    356 +
 .../db/integration/IoTDBUDTFHybridQueryIT.java     |      0
 .../db/integration/IoTDBUDTFNonAlignQueryIT.java   |      0
 .../iotdb/db/integration/IoTDBVersionIT.java       |      0
 .../db/integration/IoTDBWithoutAllNullIT.java      |      0
 .../db/integration/IoTDBWithoutAnyNullIT.java      |      0
 .../aggregation/IoTDBAggregationByLevelIT.java     |      0
 .../aggregation/IoTDBAggregationDeleteIT.java      |      0
 .../aggregation/IoTDBAggregationIT.java            |   1020 +
 .../aggregation/IoTDBAggregationLargeDataIT.java   |   1030 +
 .../aggregation/IoTDBAggregationSmallDataIT.java   |    802 +
 .../aggregation/IoTDBUDFNestAggregationIT.java     |    550 +
 .../IoTDBUserDefinedAggregationFunctionIT.java     |    725 +
 .../db/integration/aligned/AlignedWriteUtil.java   |      0
 .../aligned/IoTDBAggregationGroupByLevelIT.java    |    303 +
 .../IoTDBAggregationWithValueFilter2IT.java        |     66 +
 .../aligned/IoTDBAggregationWithValueFilterIT.java |    265 +
 ...BAggregationWithValueFilterWithDeletion2IT.java |     86 +
 ...DBAggregationWithValueFilterWithDeletionIT.java |    222 +
 .../IoTDBAggregationWithoutValueFilter2IT.java     |     66 +
 .../IoTDBAggregationWithoutValueFilterIT.java      |    457 +
 ...gregationWithoutValueFilterWithDeletion2IT.java |     83 +
 ...ggregationWithoutValueFilterWithDeletionIT.java |    447 +
 .../integration/aligned/IoTDBAlignByDevice2IT.java |     68 +
 .../integration/aligned/IoTDBAlignByDeviceIT.java  |   1349 +
 .../aligned/IoTDBDeleteTimeseriesIT.java           |    218 +
 .../db/integration/aligned/IoTDBDeletionIT.java    |    494 +
 .../aligned/IoTDBGroupByFillQueryBigDataIT.java    |      0
 .../aligned/IoTDBGroupByFillQueryIT.java           |      0
 .../IoTDBGroupByQueryWithValueFilter2IT.java       |      0
 .../IoTDBGroupByQueryWithValueFilterIT.java        |      0
 ...GroupByQueryWithValueFilterWithDeletion2IT.java |      0
 ...BGroupByQueryWithValueFilterWithDeletionIT.java |      0
 .../IoTDBGroupByQueryWithoutValueFilter2IT.java    |      0
 .../IoTDBGroupByQueryWithoutValueFilterIT.java     |      0
 ...upByQueryWithoutValueFilterWithDeletion2IT.java |      0
 ...oupByQueryWithoutValueFilterWithDeletionIT.java |      0
 .../db/integration/aligned/IoTDBLastQuery2IT.java  |     66 +
 .../db/integration/aligned/IoTDBLastQueryIT.java   |    377 +
 .../aligned/IoTDBLastQueryWithDeletion2IT.java     |     81 +
 .../aligned/IoTDBLastQueryWithDeletionIT.java      |    380 +
 .../aligned/IoTDBLastQueryWithoutLastCache2IT.java |     69 +
 .../aligned/IoTDBLastQueryWithoutLastCacheIT.java  |    382 +
 ...DBLastQueryWithoutLastCacheWithDeletion2IT.java |     86 +
 ...TDBLastQueryWithoutLastCacheWithDeletionIT.java |    384 +
 .../aligned/IoTDBRawQueryWithValueFilter2IT.java   |     66 +
 .../aligned/IoTDBRawQueryWithValueFilterIT.java    |    764 +
 ...oTDBRawQueryWithValueFilterWithDeletion2IT.java |     83 +
 ...IoTDBRawQueryWithValueFilterWithDeletionIT.java |    779 +
 .../IoTDBRawQueryWithoutValueFilter2IT.java        |     67 +
 .../aligned/IoTDBRawQueryWithoutValueFilterIT.java |    634 +
 ...BRawQueryWithoutValueFilterWithDeletion2IT.java |     84 +
 ...DBRawQueryWithoutValueFilterWithDeletionIT.java |    612 +
 .../db/integration/auth/IoTDBAuthorizationIT.java  |   1181 +
 .../iotdb/db/integration/env/StandaloneEnv.java    |     80 +
 .../db/integration/env/StandaloneEnvConfig.java    |      0
 .../iotdb/session/IoTDBSessionComplexIT.java       |    930 +
 .../iotdb/session/IoTDBSessionIteratorIT.java      |    354 +
 .../apache/iotdb/session/IoTDBSessionSimpleIT.java |   1486 +
 .../src/test/resources/iotdb-engine.properties     |      0
 iotdb/integration/src/test/resources/logback.xml   |     58 +
 .../java-google-style.xml                          |      0
 {jdbc => iotdb/jdbc}/README.md                     |      0
 {jdbc => iotdb/jdbc}/osgi.bnd                      |      0
 {jdbc => iotdb/jdbc}/pom.xml                       |      0
 {jdbc => iotdb/jdbc}/src/main/feature/feature.xml  |      0
 .../iotdb/jdbc/AbstractIoTDBJDBCResultSet.java     |      0
 .../main/java/org/apache/iotdb/jdbc/Activator.java |      0
 .../main/java/org/apache/iotdb/jdbc/Config.java    |     56 +
 .../main/java/org/apache/iotdb/jdbc/Constant.java  |     43 +
 .../src/main/java/org/apache/iotdb/jdbc/Field.java |      0
 .../iotdb/jdbc/GroupedLSBWatermarkEncoder.java     |      0
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |    560 +
 .../apache/iotdb/jdbc/IoTDBConnectionParams.java   |    102 +
 .../org/apache/iotdb/jdbc/IoTDBDataSource.java     |      0
 .../apache/iotdb/jdbc/IoTDBDataSourceFactory.java  |      0
 .../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java   |      0
 .../java/org/apache/iotdb/jdbc/IoTDBDriver.java    |      0
 .../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java  |      0
 .../iotdb/jdbc/IoTDBNonAlignJDBCResultSet.java     |      0
 .../apache/iotdb/jdbc/IoTDBPreparedStatement.java  |      0
 .../org/apache/iotdb/jdbc/IoTDBResultMetadata.java |      0
 .../org/apache/iotdb/jdbc/IoTDBSQLException.java   |      0
 .../java/org/apache/iotdb/jdbc/IoTDBStatement.java |      0
 .../org/apache/iotdb/jdbc/IoTDBTracingInfo.java    |      0
 .../org/apache/iotdb/jdbc/IoTDBURLException.java   |      0
 .../java/org/apache/iotdb/jdbc/ListDataSet.java    |      0
 .../java/org/apache/iotdb/jdbc/StringUtils.java    |      0
 .../src/main/java/org/apache/iotdb/jdbc/Utils.java |    113 +
 .../org/apache/iotdb/jdbc/WatermarkEncoder.java    |      0
 .../resources/services/META-INF/java.sql.Driver    |      0
 .../test/java/org/apache/iotdb/jdbc/BatchTest.java |      0
 .../org/apache/iotdb/jdbc/IoTDBConnectionTest.java |      0
 .../iotdb/jdbc/IoTDBDatabaseMetadataTest.java      |      0
 .../apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java  |      0
 .../iotdb/jdbc/IoTDBPreparedStatementTest.java     |      0
 .../apache/iotdb/jdbc/IoTDBResultMetadataTest.java |      0
 .../org/apache/iotdb/jdbc/IoTDBStatementTest.java  |      0
 .../test/java/org/apache/iotdb/jdbc/UtilsTest.java |    128 +
 iotdb/jenkins.pom                                  |     67 +
 {library-udf => iotdb/library-udf}/pom.xml         |      0
 {licenses => iotdb/licenses}/CDDL License 1.1      |      0
 .../licenses}/Eclipse Public License 1.0 (EPL-1.0) |      0
 .../Eclipse Public License version 2.0 (EPL-2.0)   |      0
 .../licenses}/The 2-Clause BSD License             |      0
 .../licenses}/The 3-Clause BSD License             |      0
 .../licenses}/The MIT License (QOS.ch)             |      0
 .../licenses}/The MIT License (progressbar)        |      0
 iotdb/metrics/ReadMe.md                            |    151 +
 .../metrics}/dropwizard-metrics/pom.xml            |      0
 .../dropwizard/DropwizardMetricManager.java        |    432 +
 .../iotdb/metrics/dropwizard/MetricName.java       |    134 +
 .../dropwizard/reporter/DropwizardJmxReporter.java |      0
 .../reporter/DropwizardPrometheusReporter.java     |      0
 .../prometheus/DropwizardMetricsExporter.java      |    197 +
 .../dropwizard/reporter/prometheus/MetricType.java |      0
 .../reporter/prometheus/PrometheusReporter.java    |    233 +
 .../reporter/prometheus/PrometheusSender.java      |      0
 .../reporter/prometheus/PrometheusTextWriter.java  |      0
 .../reporter/prometheus/PushGateway.java           |    150 +
 .../dropwizard/reporter/prometheus/TextFormat.java |      0
 .../dropwizard/type/DropwizardAutoGauge.java       |      0
 .../metrics/dropwizard/type/DropwizardCounter.java |      0
 .../metrics/dropwizard/type/DropwizardGauge.java   |      0
 .../dropwizard/type/DropwizardHistogram.java       |      0
 .../type/DropwizardHistogramSnapshot.java          |      0
 .../metrics/dropwizard/type/DropwizardRate.java    |      0
 .../metrics/dropwizard/type/DropwizardTimer.java   |      0
 .../org.apache.iotdb.metrics.MetricManager         |      0
 .../services/org.apache.iotdb.metrics.Reporter     |      0
 .../dropwizard/DropwizardMetricManagerTest.java    |    291 +
 .../metrics/dropwizard/DropwizardMetricTest.java   |    181 +
 .../dropwizard/DropwizardMetricTestPlan.java       |     62 +
 .../metrics/dropwizard/PrometheusRunTest.java      |     42 +
 .../src/test/resources/iotdb-metric.yml            |     42 +
 {metrics => iotdb/metrics}/interface/pom.xml       |      0
 .../interface/src/main/assembly/metric.xml         |      0
 .../main/assembly/resources/conf/iotdb-metric.yml  |     42 +
 .../apache/iotdb/metrics/CompositeReporter.java    |     81 +
 .../org/apache/iotdb/metrics/MetricManager.java    |    185 +
 .../org/apache/iotdb/metrics/MetricService.java    |    152 +
 .../java/org/apache/iotdb/metrics/Reporter.java    |      0
 .../apache/iotdb/metrics/config/MetricConfig.java  |    107 +
 .../metrics/config/MetricConfigDescriptor.java     |     90 +
 .../iotdb/metrics/config/MetricConstant.java       |      0
 .../iotdb/metrics/impl/DoNothingCounter.java       |      0
 .../apache/iotdb/metrics/impl/DoNothingGauge.java  |      0
 .../iotdb/metrics/impl/DoNothingHistogram.java     |      0
 .../metrics/impl/DoNothingHistogramSnapshot.java   |      0
 .../iotdb/metrics/impl/DoNothingMetricManager.java |    189 +
 .../apache/iotdb/metrics/impl/DoNothingRate.java   |      0
 .../apache/iotdb/metrics/impl/DoNothingTimer.java  |      0
 .../org/apache/iotdb/metrics/type/Counter.java     |      0
 .../java/org/apache/iotdb/metrics/type/Gauge.java  |     32 +
 .../org/apache/iotdb/metrics/type/Histogram.java   |      0
 .../iotdb/metrics/type/HistogramSnapshot.java      |      0
 .../org/apache/iotdb/metrics/type/IMetric.java     |      0
 .../java/org/apache/iotdb/metrics/type/Rate.java   |      0
 .../java/org/apache/iotdb/metrics/type/Timer.java  |      0
 .../apache/iotdb/metrics/utils/MonitorType.java    |      0
 .../iotdb/metrics/utils/PredefinedMetric.java      |     25 +
 .../apache/iotdb/metrics/utils/ReporterType.java   |     33 +
 .../iotdb/metrics/config/MetricConfigTest.java     |     57 +
 .../src/main/test/resources/iotdb-metric.yml       |     43 +
 .../metrics}/micrometer-metrics/pom.xml            |      0
 .../iotdb/metrics/micrometer/MeterIdUtils.java     |      0
 .../micrometer/MicrometerMetricManager.java        |    505 +
 .../micrometer/reporter/IoTDBJmxConfig.java        |      0
 .../micrometer/reporter/MicrometerJmxReporter.java |     86 +
 .../reporter/MicrometerPrometheusReporter.java     |    104 +
 .../micrometer/type/MicrometerAutoGauge.java       |      0
 .../metrics/micrometer/type/MicrometerCounter.java |      0
 .../metrics/micrometer/type/MicrometerGauge.java   |      0
 .../micrometer/type/MicrometerHistogram.java       |      0
 .../type/MicrometerHistogramSnapshot.java          |      0
 .../metrics/micrometer/type/MicrometerRate.java    |      0
 .../metrics/micrometer/type/MicrometerTimer.java   |      0
 .../org.apache.iotdb.metrics.MetricManager         |     18 +
 .../services/org.apache.iotdb.metrics.Reporter     |      0
 .../micrometer/MicrometerMetricManagerTest.java    |     76 +
 .../metrics/micrometer/MicrometerMetricTest.java   |    181 +
 .../micrometer/MicrometerMetricTestPlan.java       |     62 +
 .../src/test/resources/iotdb-metric.yml            |     42 +
 {metrics => iotdb/metrics}/pom.xml                 |      0
 mvnw.cmd => iotdb/mvnw.cmd                         |      0
 mvnw.sh => iotdb/mvnw.sh                           |      0
 {openapi => iotdb/openapi}/pom.xml                 |      0
 iotdb/openapi/src/main/openapi3/iotdb-rest.yaml    |    228 +
 iotdb/pom.xml                                      |   1505 +
 .../file-changelists/TsFileMods-changelist.md      |      0
 .../file-changelists/TsFileResource-changelist.md  |      0
 .../server}/file-changelists/conf-changelist.md    |      0
 .../server}/file-changelists/mlog-changelist.md    |      0
 .../server}/file-changelists/role-changelist.md    |      0
 .../system.properties-changelist.md                |      0
 .../server}/file-changelists/tlog-changelist.md    |      0
 .../server}/file-changelists/user-changelist.md    |      0
 .../server}/file-changelists/wal-changelist.md     |      0
 iotdb/server/pom.xml                               |    351 +
 {server => iotdb/server}/server-changelist.md      |      0
 .../resources/conf/iotdb-engine.properties         |    959 +
 .../src/assembly/resources/conf/iotdb-env.bat      |      0
 .../src/assembly/resources/conf/iotdb-env.sh       |      0
 .../assembly/resources/conf/iotdb-rest.properties  |     55 +
 .../resources/conf/iotdb-sync-client.properties    |      0
 .../server}/src/assembly/resources/conf/jmx.access |      0
 .../src/assembly/resources/conf/jmx.password       |      0
 .../src/assembly/resources/conf/logback-tool.xml   |      0
 .../src/assembly/resources/conf/logback.xml        |      0
 .../src/assembly/resources/sbin/start-server.bat   |      0
 .../src/assembly/resources/sbin/start-server.sh    |      0
 .../src/assembly/resources/sbin/stop-server.bat    |      0
 .../src/assembly/resources/sbin/stop-server.sh     |      0
 .../assembly/resources/tools/detect-watermark.bat  |      0
 .../assembly/resources/tools/detect-watermark.sh   |      0
 .../assembly/resources/tools/mlog/mLogParser.bat   |      0
 .../assembly/resources/tools/mlog/mLogParser.sh    |      0
 .../assembly/resources/tools/start-WalChecker.bat  |      0
 .../assembly/resources/tools/start-WalChecker.sh   |      0
 .../assembly/resources/tools/start-sync-client.bat |      0
 .../assembly/resources/tools/start-sync-client.sh  |      0
 .../assembly/resources/tools/stop-sync-client.bat  |      0
 .../assembly/resources/tools/stop-sync-client.sh   |      0
 .../tools/tsfileToolSet/print-iotdb-data-dir.bat   |      0
 .../tools/tsfileToolSet/print-iotdb-data-dir.sh    |      0
 .../tsfileToolSet/print-tsfile-resource-files.bat  |      0
 .../tsfileToolSet/print-tsfile-resource-files.sh   |      0
 .../tools/tsfileToolSet/print-tsfile-sketch.bat    |      0
 .../tools/tsfileToolSet/print-tsfile-sketch.sh     |      0
 .../tools/tsfileToolSet/print-tsfile-visdata.bat   |      0
 .../tools/tsfileToolSet/print-tsfile-visdata.sh    |      0
 .../resources/tools/tsfileToolSet/settle.bat       |      0
 .../resources/tools/tsfileToolSet/settle.sh        |      0
 {server => iotdb/server}/src/assembly/server.xml   |      0
 .../org/apache/iotdb/db/auth/AuthException.java    |      0
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |    173 +
 .../iotdb/db/auth/authorizer/BasicAuthorizer.java  |      0
 .../iotdb/db/auth/authorizer/IAuthorizer.java      |      0
 .../db/auth/authorizer/LocalFileAuthorizer.java    |      0
 .../iotdb/db/auth/authorizer/OpenIdAuthorizer.java |      0
 .../apache/iotdb/db/auth/entity/PathPrivilege.java |      0
 .../apache/iotdb/db/auth/entity/PrivilegeType.java |     63 +
 .../java/org/apache/iotdb/db/auth/entity/Role.java |      0
 .../java/org/apache/iotdb/db/auth/entity/User.java |      0
 .../iotdb/db/auth/role/BasicRoleManager.java       |      0
 .../apache/iotdb/db/auth/role/IRoleAccessor.java   |      0
 .../apache/iotdb/db/auth/role/IRoleManager.java    |      0
 .../iotdb/db/auth/role/LocalFileRoleAccessor.java  |      0
 .../iotdb/db/auth/role/LocalFileRoleManager.java   |      0
 .../iotdb/db/auth/user/BasicUserManager.java       |      0
 .../apache/iotdb/db/auth/user/IUserAccessor.java   |      0
 .../apache/iotdb/db/auth/user/IUserManager.java    |      0
 .../iotdb/db/auth/user/LocalFileUserAccessor.java  |      0
 .../iotdb/db/auth/user/LocalFileUserManager.java   |      0
 .../org/apache/iotdb/db/concurrent/HashLock.java   |      0
 .../db/concurrent/IoTDBDaemonThreadFactory.java    |      0
 .../IoTDBDefaultThreadExceptionHandler.java        |      0
 .../db/concurrent/IoTDBThreadPoolFactory.java      |      0
 .../iotdb/db/concurrent/IoTThreadFactory.java      |      0
 .../org/apache/iotdb/db/concurrent/ThreadName.java |     75 +
 .../iotdb/db/concurrent/WrappedRunnable.java       |      0
 .../db/concurrent/threadpool/IThreadPoolMBean.java |      0
 .../WrappedScheduledExecutorService.java           |      0
 .../WrappedScheduledExecutorServiceMBean.java      |      0
 .../WrappedSingleThreadExecutorService.java        |      0
 .../WrappedSingleThreadExecutorServiceMBean.java   |      0
 .../WrappedSingleThreadScheduledExecutor.java      |      0
 .../WrappedSingleThreadScheduledExecutorMBean.java |      0
 .../threadpool/WrappedThreadPoolExecutor.java      |      0
 .../threadpool/WrappedThreadPoolExecutorMBean.java |      0
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |   2518 +
 .../org/apache/iotdb/db/conf/IoTDBConfigCheck.java |      0
 .../org/apache/iotdb/db/conf/IoTDBConstant.java    |    175 +
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |   1460 +
 .../org/apache/iotdb/db/conf/OperationType.java    |     65 +
 .../iotdb/db/conf/ServerConfigConsistent.java      |      0
 .../iotdb/db/conf/adapter/CompressionRatio.java    |      0
 .../db/conf/directories/DirectoryManager.java      |      0
 .../directories/strategy/DirectoryStrategy.java    |      0
 .../strategy/MaxDiskUsableSpaceFirstStrategy.java  |      0
 .../MinFolderOccupiedSpaceFirstStrategy.java       |      0
 .../strategy/RandomOnDiskUsableSpaceStrategy.java  |      0
 .../directories/strategy/SequenceStrategy.java     |      0
 .../iotdb/db/conf/rest/IoTDBRestServiceCheck.java  |      0
 .../iotdb/db/conf/rest/IoTDBRestServiceConfig.java |    143 +
 .../db/conf/rest/IoTDBRestServiceDescriptor.java   |    162 +
 .../org/apache/iotdb/db/constant/TestConstant.java |      0
 .../apache/iotdb/db/cq/ContinuousQueryService.java |    219 +
 .../apache/iotdb/db/cq/ContinuousQueryTask.java    |    300 +
 .../db/cq/ContinuousQueryTaskPoolManager.java      |    106 +
 .../org/apache/iotdb/db/engine/StorageEngine.java  |   1089 +
 .../iotdb/db/engine/cache/BloomFilterCache.java    |      0
 .../db/engine/cache/CacheHitRatioMonitor.java      |      0
 .../engine/cache/CacheHitRatioMonitorMXBean.java   |      0
 .../apache/iotdb/db/engine/cache/ChunkCache.java   |      0
 .../db/engine/cache/TimeSeriesMetadataCache.java   |    305 +
 .../db/engine/compaction/CompactionPriority.java   |      0
 .../db/engine/compaction/CompactionScheduler.java  |    303 +
 .../compaction/CompactionTaskComparator.java       |    109 +
 .../engine/compaction/CompactionTaskManager.java   |    342 +
 .../db/engine/compaction/TsFileIdentifier.java     |      0
 .../AbstractCrossSpaceCompactionRecoverTask.java   |     31 +
 .../AbstractCrossSpaceCompactionSelector.java      |     52 +
 .../cross/AbstractCrossSpaceCompactionTask.java    |     96 +
 .../compaction/cross/CrossCompactionStrategy.java  |    117 +
 .../cross/CrossSpaceCompactionTaskFactory.java     |     58 +
 .../inplace/InplaceCompactionRecoverTask.java      |    110 +
 .../cross/inplace/InplaceCompactionSelector.java   |    160 +
 .../cross/inplace/InplaceCompactionTask.java       |    244 +
 .../inplace/manage/CrossSpaceMergeContext.java     |     88 +
 .../inplace/manage/CrossSpaceMergeResource.java    |    298 +
 .../cross/inplace/manage/MergeFuture.java          |    151 +
 .../cross/inplace/manage/MergeManager.java         |    364 +
 .../cross/inplace/manage/MergeManagerMBean.java    |     26 +
 .../cross/inplace/manage/MergeThreadPool.java      |     54 +
 .../recover/InplaceCompactionLogAnalyzer.java      |    353 +
 .../inplace/recover/InplaceCompactionLogger.java   |    150 +
 .../selector/ICrossSpaceMergeFileSelector.java     |     35 +
 .../inplace/selector/IFileQueryMemMeasurement.java |     36 +
 .../cross/inplace/selector/IMergePathSelector.java |     31 +
 .../inplace/selector/MaxFileMergeFileSelector.java |    385 +
 .../selector/MaxSeriesMergeFileSelector.java       |    115 +
 .../cross/inplace/selector/MergeFileStrategy.java  |     27 +
 .../cross/inplace/selector/NaivePathSelector.java  |     55 +
 .../task/CleanLastCrossSpaceCompactionTask.java    |     67 +
 .../cross/inplace/task/CrossSpaceMergeTask.java    |    259 +
 .../cross/inplace/task/MergeCallback.java          |     40 +
 .../cross/inplace/task/MergeFileTask.java          |    405 +
 .../cross/inplace/task/MergeMultiChunkTask.java    |    709 +
 .../AbstractInnerSpaceCompactionSelector.java      |     53 +
 .../inner/AbstractInnerSpaceCompactionTask.java    |    129 +
 .../compaction/inner/InnerCompactionStrategy.java  |    108 +
 .../InnerSpaceCompactionExceptionHandler.java      |    249 +
 .../inner/InnerSpaceCompactionTaskFactory.java     |     51 +
 .../SizeTieredCompactionRecoverTask.java           |    254 +
 .../sizetiered/SizeTieredCompactionSelector.java   |    221 +
 .../inner/sizetiered/SizeTieredCompactionTask.java |    270 +
 .../inner/utils/InnerSpaceCompactionUtils.java     |    695 +
 .../utils/SizeTieredCompactionLogAnalyzer.java     |      0
 .../inner/utils/SizeTieredCompactionLogger.java    |      0
 .../task/AbstractCompactionSelector.java           |     29 +
 .../compaction/task/AbstractCompactionTask.java    |    115 +
 .../compaction/task/CompactionRecoverTask.java     |    102 +
 .../db/engine/fileSystem/SystemFileFactory.java    |      0
 .../iotdb/db/engine/flush/CloseFileListener.java   |      0
 .../iotdb/db/engine/flush/FlushListener.java       |      0
 .../apache/iotdb/db/engine/flush/FlushManager.java |    210 +
 .../iotdb/db/engine/flush/FlushManagerMBean.java   |      0
 .../iotdb/db/engine/flush/MemTableFlushTask.java   |      0
 .../iotdb/db/engine/flush/NotifyFlushMemTable.java |      0
 .../iotdb/db/engine/flush/TsFileFlushPolicy.java   |      0
 .../engine/flush/pool/FlushSubTaskPoolManager.java |      0
 .../db/engine/flush/pool/FlushTaskPoolManager.java |      0
 .../iotdb/db/engine/memtable/AbstractMemTable.java |    488 +
 .../engine/memtable/AlignedWritableMemChunk.java   |    362 +
 .../memtable/AlignedWritableMemChunkGroup.java     |    108 +
 .../apache/iotdb/db/engine/memtable/IMemTable.java |    171 +
 .../db/engine/memtable/IWritableMemChunk.java      |      0
 .../db/engine/memtable/IWritableMemChunkGroup.java |     53 +
 .../db/engine/memtable/PrimitiveMemTable.java      |      0
 .../iotdb/db/engine/memtable/WritableMemChunk.java |    353 +
 .../db/engine/memtable/WritableMemChunkGroup.java  |    137 +
 .../iotdb/db/engine/modification/Deletion.java     |      0
 .../iotdb/db/engine/modification/Modification.java |      0
 .../db/engine/modification/ModificationFile.java   |      0
 .../io/LocalTextModificationAccessor.java          |      0
 .../engine/modification/io/ModificationReader.java |      0
 .../engine/modification/io/ModificationWriter.java |      0
 .../iotdb/db/engine/modification/package-info.java |      0
 .../modification/utils/TracedBufferedReader.java   |      0
 .../querycontext/AlignedReadOnlyMemChunk.java      |    164 +
 .../db/engine/querycontext/QueryDataSource.java    |     73 +
 .../db/engine/querycontext/ReadOnlyMemChunk.java   |      0
 .../selectinto/InsertTabletPlanGenerator.java      |    254 +
 .../selectinto/InsertTabletPlansIterator.java      |    139 +
 .../apache/iotdb/db/engine/settle/SettleLog.java   |      0
 .../apache/iotdb/db/engine/settle/SettleTask.java  |      0
 .../engine/storagegroup/ILastFlushTimeManager.java |     89 +
 .../engine/storagegroup/LastFlushTimeManager.java  |    268 +
 .../db/engine/storagegroup/StorageGroupInfo.java   |      0
 .../iotdb/db/engine/storagegroup/TsFileLock.java   |      0
 .../db/engine/storagegroup/TsFileManager.java      |    322 +
 .../engine/storagegroup/TsFileNameGenerator.java   |    248 +
 .../db/engine/storagegroup/TsFileProcessor.java    |   1407 +
 .../engine/storagegroup/TsFileProcessorInfo.java   |     75 +
 .../db/engine/storagegroup/TsFileResource.java     |    839 +
 .../db/engine/storagegroup/TsFileResourceList.java |      0
 .../storagegroup/VirtualStorageGroupProcessor.java |   3236 +
 .../storagegroup/timeindex/DeviceTimeIndex.java    |    349 +
 .../storagegroup/timeindex/FileTimeIndex.java      |    206 +
 .../engine/storagegroup/timeindex/ITimeIndex.java  |    182 +
 .../storagegroup/timeindex/TimeIndexLevel.java     |     45 +
 .../virtualSg/HashVirtualPartitioner.java          |      0
 .../virtualSg/StorageGroupManager.java             |    499 +
 .../storagegroup/virtualSg/VirtualPartitioner.java |      0
 .../iotdb/db/engine/trigger/api/Trigger.java       |      0
 .../db/engine/trigger/api/TriggerAttributes.java   |      0
 .../db/engine/trigger/executor/TriggerEngine.java  |      0
 .../db/engine/trigger/executor/TriggerEvent.java   |      0
 .../engine/trigger/executor/TriggerExecutor.java   |      0
 .../engine/trigger/service/TriggerClassLoader.java |      0
 .../trigger/service/TriggerClassLoaderManager.java |      0
 .../engine/trigger/service/TriggerLogReader.java   |      0
 .../engine/trigger/service/TriggerLogWriter.java   |     68 +
 .../service/TriggerRegistrationInformation.java    |      0
 .../service/TriggerRegistrationService.java        |    472 +
 .../alertmanager/AlertManagerConfiguration.java    |      0
 .../sink/alertmanager/AlertManagerEvent.java       |      0
 .../sink/alertmanager/AlertManagerHandler.java     |      0
 .../db/engine/trigger/sink/api/Configuration.java  |      0
 .../iotdb/db/engine/trigger/sink/api/Event.java    |      0
 .../iotdb/db/engine/trigger/sink/api/Handler.java  |      0
 .../trigger/sink/exception/SinkException.java      |      0
 .../sink/local/LocalIoTDBConfiguration.java        |      0
 .../engine/trigger/sink/local/LocalIoTDBEvent.java |      0
 .../trigger/sink/local/LocalIoTDBHandler.java      |    104 +
 .../trigger/sink/mqtt/MQTTConfiguration.java       |     74 +
 .../db/engine/trigger/sink/mqtt/MQTTEvent.java     |      0
 .../db/engine/trigger/sink/mqtt/MQTTHandler.java   |     85 +
 .../db/engine/upgrade/UpgradeCheckStatus.java      |      0
 .../apache/iotdb/db/engine/upgrade/UpgradeLog.java |      0
 .../iotdb/db/engine/upgrade/UpgradeTask.java       |      0
 .../version/SimpleFileVersionController.java       |      0
 .../engine/version/SysTimeVersionController.java   |      0
 .../iotdb/db/engine/version/VersionController.java |      0
 .../iotdb/db/exception/BatchProcessException.java  |      0
 .../iotdb/db/exception/ConfigurationException.java |      0
 .../db/exception/ContinuousQueryException.java     |     30 +
 .../exception/DiskSpaceInsufficientException.java  |      0
 .../apache/iotdb/db/exception/IoTDBException.java  |      0
 .../db/exception/LoadConfigurationException.java   |      0
 .../iotdb/db/exception/LoadEmptyFileException.java |      0
 .../iotdb/db/exception/LoadFileException.java      |      0
 .../apache/iotdb/db/exception/MergeException.java  |      0
 .../db/exception/PartitionViolationException.java  |      0
 .../db/exception/QueryIdNotExsitException.java     |      0
 .../exception/QueryInBatchStatementException.java  |      0
 .../iotdb/db/exception/ShutdownException.java      |      0
 .../iotdb/db/exception/StartupException.java       |      0
 .../iotdb/db/exception/StorageEngineException.java |      0
 .../exception/StorageEngineReadonlyException.java  |      0
 .../exception/StorageGroupNotReadyException.java   |      0
 .../exception/StorageGroupProcessorException.java  |      0
 .../db/exception/SyncConnectionException.java      |      0
 .../SyncDeviceOwnerConflictException.java          |      0
 .../iotdb/db/exception/SystemCheckException.java   |      0
 .../db/exception/TriggerExecutionException.java    |      0
 .../db/exception/TriggerManagementException.java   |      0
 .../db/exception/TsFileProcessorException.java     |      0
 .../db/exception/UDFRegistrationException.java     |      0
 .../db/exception/WriteLockFailedException.java     |      0
 .../iotdb/db/exception/WriteProcessException.java  |      0
 .../db/exception/WriteProcessRejectException.java  |      0
 .../exception/index/DistanceMetricException.java   |      0
 .../index/IllegalIndexParamException.java          |      0
 .../db/exception/index/IndexManagerException.java  |      0
 .../db/exception/index/IndexRuntimeException.java  |      0
 .../db/exception/index/QueryIndexException.java    |      0
 .../index/UnsupportedIndexTypeException.java       |      0
 .../metadata/AliasAlreadyExistException.java       |      0
 .../metadata/AlignedTimeseriesException.java       |      0
 .../metadata/DataTypeMismatchException.java        |      0
 .../exception/metadata/DeleteFailedException.java  |      0
 .../metadata/DifferentTemplateException.java       |      0
 .../metadata/DuplicatedTemplateException.java      |      0
 .../metadata/IllegalParameterOfPathException.java  |      0
 .../exception/metadata/IllegalPathException.java   |      0
 .../metadata/MNodeTypeMismatchException.java       |      0
 .../db/exception/metadata/MetadataException.java   |      0
 .../metadata/NoTemplateOnMNodeException.java       |      0
 .../metadata/PathAlreadyExistException.java        |      0
 .../exception/metadata/PathNotExistException.java  |      0
 .../metadata/StorageGroupAlreadySetException.java  |      0
 .../metadata/StorageGroupNotSetException.java      |      0
 .../metadata/TemplateImcompatibeException.java     |      0
 .../metadata/TemplateIsInUseException.java         |      0
 .../metadata/UndefinedTemplateException.java       |      0
 .../exception/query/LogicalOperatorException.java  |      0
 .../exception/query/LogicalOptimizeException.java  |      0
 .../db/exception/query/OutOfTTLException.java      |      0
 .../iotdb/db/exception/query/PathException.java    |      0
 .../exception/query/PathNumOverLimitException.java |      0
 .../db/exception/query/QueryProcessException.java  |      0
 .../query/QueryTimeoutRuntimeException.java        |      0
 .../query/UnSupportedFillTypeException.java        |      0
 .../exception/runtime/FlushRunTimeException.java   |      0
 .../db/exception/runtime/RPCServiceException.java  |      0
 .../db/exception/runtime/SQLParserException.java   |      0
 .../runtime/StorageEngineFailureException.java     |      0
 .../iotdb/db/index/common/IndexConstant.java       |      0
 .../apache/iotdb/db/index/common/IndexType.java    |      0
 .../apache/iotdb/db/index/common/IndexUtils.java   |      0
 .../org/apache/iotdb/db/metadata/MManager.java     |   2255 +
 .../apache/iotdb/db/metadata/MetadataConstant.java |      0
 .../idtable/AppendOnlyDiskSchemaManager.java       |    163 +
 .../apache/iotdb/db/metadata/idtable/IDTable.java  |    181 +
 .../db/metadata/idtable/IDTableHashmapImpl.java    |    463 +
 .../iotdb/db/metadata/idtable/IDTableManager.java  |      0
 .../db/metadata/idtable/IDiskSchemaManager.java    |     48 +
 .../db/metadata/idtable/entry/DeviceEntry.java     |     81 +
 .../db/metadata/idtable/entry/DeviceIDFactory.java |     87 +
 .../db/metadata/idtable/entry/DiskSchemaEntry.java |    107 +
 .../iotdb/db/metadata/idtable/entry/IDeviceID.java |      0
 .../idtable/entry/InsertMeasurementMNode.java      |    267 +
 .../db/metadata/idtable/entry/PlainDeviceID.java   |      0
 .../db/metadata/idtable/entry/SHA256DeviceID.java  |    148 +
 .../db/metadata/idtable/entry/SchemaEntry.java     |    193 +
 .../db/metadata/idtable/entry/TimeseriesID.java    |      0
 .../db/metadata/lastCache/LastCacheManager.java    |    251 +
 .../lastCache/container/ILastCacheContainer.java   |      0
 .../lastCache/container/LastCacheContainer.java    |      0
 .../lastCache/container/value/ILastCacheValue.java |      0
 .../lastCache/container/value/LastCacheValue.java  |      0
 .../iotdb/db/metadata/logfile/MLogReader.java      |      0
 .../iotdb/db/metadata/logfile/MLogTxtReader.java   |      0
 .../iotdb/db/metadata/logfile/MLogTxtWriter.java   |    430 +
 .../iotdb/db/metadata/logfile/MLogUpgrader.java    |      0
 .../iotdb/db/metadata/logfile/MLogWriter.java      |    277 +
 .../db/metadata/logfile/MetadataOperationType.java |     46 +
 .../iotdb/db/metadata/mnode/EntityMNode.java       |      0
 .../iotdb/db/metadata/mnode/IEntityMNode.java      |      0
 .../org/apache/iotdb/db/metadata/mnode/IMNode.java |      0
 .../iotdb/db/metadata/mnode/IMeasurementMNode.java |      0
 .../db/metadata/mnode/IStorageGroupMNode.java      |      0
 .../iotdb/db/metadata/mnode/InternalMNode.java     |    247 +
 .../org/apache/iotdb/db/metadata/mnode/MNode.java  |    210 +
 .../apache/iotdb/db/metadata/mnode/MNodeUtils.java |      0
 .../iotdb/db/metadata/mnode/MeasurementMNode.java  |      0
 .../db/metadata/mnode/StorageGroupEntityMNode.java |      0
 .../iotdb/db/metadata/mnode/StorageGroupMNode.java |      0
 .../org/apache/iotdb/db/metadata/mtree/MTree.java  |   1652 +
 .../db/metadata/mtree/traverser/Traverser.java     |      0
 .../traverser/collector/CollectorTraverser.java    |      0
 .../mtree/traverser/collector/EntityCollector.java |      0
 .../mtree/traverser/collector/MNodeCollector.java  |     76 +
 .../traverser/collector/MeasurementCollector.java  |      0
 .../traverser/collector/StorageGroupCollector.java |      0
 .../mtree/traverser/counter/CounterTraverser.java  |      0
 .../mtree/traverser/counter/EntityCounter.java     |      0
 .../mtree/traverser/counter/MNodeLevelCounter.java |     51 +
 .../traverser/counter/MeasurementCounter.java      |      0
 .../traverser/counter/StorageGroupCounter.java     |      0
 .../apache/iotdb/db/metadata/path/AlignedPath.java |    480 +
 .../iotdb/db/metadata/path/MeasurementPath.java    |    332 +
 .../apache/iotdb/db/metadata/path/PartialPath.java |    533 +
 .../apache/iotdb/db/metadata/tag/TagLogFile.java   |      0
 .../apache/iotdb/db/metadata/tag/TagManager.java   |    555 +
 .../iotdb/db/metadata/template/Template.java       |    647 +
 .../db/metadata/template/TemplateManager.java      |    167 +
 .../db/metadata/template/TemplateQueryType.java    |     27 +
 .../iotdb/db/metadata/utils/MetaFormatUtils.java   |    169 +
 .../apache/iotdb/db/metadata/utils/MetaUtils.java  |    219 +
 .../org/apache/iotdb/db/monitor/IStatistic.java    |     54 +
 .../apache/iotdb/db/monitor/MonitorConstants.java  |     47 +
 .../org/apache/iotdb/db/monitor/StatMonitor.java   |    326 +
 .../apache/iotdb/db/monitor/StatMonitorMBean.java  |     38 +
 .../influxdb/constant/InfluxDBConstant.java        |      0
 .../iotdb/db/protocol/influxdb/dto/IoTDBPoint.java |    156 +
 .../protocol/influxdb/input/InfluxLineParser.java  |      0
 .../db/protocol/influxdb/meta/MetaManager.java     |    216 +
 .../db/protocol/influxdb/meta/TagInfoRecords.java  |      0
 .../db/protocol/mqtt/BrokerAuthenticator.java      |      0
 .../db/protocol/mqtt/JSONPayloadFormatter.java     |      0
 .../org/apache/iotdb/db/protocol/mqtt/Message.java |      0
 .../db/protocol/mqtt/PayloadFormatManager.java     |      0
 .../iotdb/db/protocol/mqtt/PayloadFormatter.java   |      0
 .../iotdb/db/protocol/mqtt/PublishHandler.java     |    150 +
 .../apache/iotdb/db/protocol/rest/RestService.java |      0
 .../db/protocol/rest/filter/ApiOriginFilter.java   |      0
 .../protocol/rest/filter/AuthorizationFilter.java  |    125 +
 .../protocol/rest/filter/BasicSecurityContext.java |      0
 .../apache/iotdb/db/protocol/rest/filter/User.java |      0
 .../iotdb/db/protocol/rest/filter/UserCache.java   |      0
 .../rest/handler/AuthorizationHandler.java         |     55 +
 .../db/protocol/rest/handler/ExceptionHandler.java |     69 +
 .../handler/PhysicalPlanConstructionHandler.java   |      0
 .../protocol/rest/handler/QueryDataSetHandler.java |     95 +
 .../rest/handler/RequestValidationHandler.java     |     48 +
 .../protocol/rest/impl/GrafanaApiServiceImpl.java  |    169 +
 .../db/protocol/rest/impl/PingApiServiceImpl.java  |      0
 .../db/protocol/rest/impl/RestApiServiceImpl.java  |    151 +
 .../main/java/org/apache/iotdb/db/qp/Planner.java  |    155 +
 .../iotdb/db/qp/constant/FilterConstant.java       |      0
 .../apache/iotdb/db/qp/constant/SQLConstant.java   |    283 +
 .../org/apache/iotdb/db/qp/logical/Operator.java   |    182 +
 .../qp/logical/crud/AggregationQueryOperator.java  |    146 +
 .../db/qp/logical/crud/BasicFunctionOperator.java  |      0
 .../db/qp/logical/crud/BasicOperatorType.java      |      0
 .../db/qp/logical/crud/DeleteDataOperator.java     |     74 +
 .../db/qp/logical/crud/FillClauseComponent.java    |      0
 .../db/qp/logical/crud/FillQueryOperator.java      |      0
 .../iotdb/db/qp/logical/crud/FilterOperator.java   |      0
 .../iotdb/db/qp/logical/crud/FromComponent.java    |      0
 .../iotdb/db/qp/logical/crud/FunctionOperator.java |      0
 .../db/qp/logical/crud/GroupByClauseComponent.java |      0
 .../logical/crud/GroupByFillClauseComponent.java   |      0
 .../qp/logical/crud/GroupByFillQueryOperator.java  |      0
 .../db/qp/logical/crud/GroupByQueryOperator.java   |      0
 .../iotdb/db/qp/logical/crud/InOperator.java       |      0
 .../iotdb/db/qp/logical/crud/InsertOperator.java   |    123 +
 .../db/qp/logical/crud/LastQueryOperator.java      |      0
 .../iotdb/db/qp/logical/crud/LikeOperator.java     |      0
 .../iotdb/db/qp/logical/crud/QueryOperator.java    |    503 +
 .../iotdb/db/qp/logical/crud/RegexpOperator.java   |      0
 .../iotdb/db/qp/logical/crud/SelectComponent.java  |    135 +
 .../db/qp/logical/crud/SelectIntoOperator.java     |    110 +
 .../db/qp/logical/crud/SpecialClauseComponent.java |      0
 .../db/qp/logical/crud/UDAFQueryOperator.java      |      0
 .../db/qp/logical/crud/UDTFQueryOperator.java      |      0
 .../iotdb/db/qp/logical/crud/WhereComponent.java   |      0
 .../qp/logical/sys/ActivateTemplateOperator.java   |      0
 .../db/qp/logical/sys/AlterTimeSeriesOperator.java |      0
 .../iotdb/db/qp/logical/sys/AuthorOperator.java    |      0
 .../db/qp/logical/sys/ClearCacheOperator.java      |      0
 .../iotdb/db/qp/logical/sys/CountOperator.java     |      0
 .../sys/CreateAlignedTimeSeriesOperator.java       |      0
 .../logical/sys/CreateContinuousQueryOperator.java |     98 +
 .../db/qp/logical/sys/CreateFunctionOperator.java  |      0
 .../db/qp/logical/sys/CreateIndexOperator.java     |      0
 .../db/qp/logical/sys/CreateSnapshotOperator.java  |      0
 .../db/qp/logical/sys/CreateTemplateOperator.java  |    122 +
 .../qp/logical/sys/CreateTimeSeriesOperator.java   |      0
 .../db/qp/logical/sys/CreateTriggerOperator.java   |      0
 .../iotdb/db/qp/logical/sys/DataAuthOperator.java  |      0
 .../db/qp/logical/sys/DeletePartitionOperator.java |      0
 .../qp/logical/sys/DeleteStorageGroupOperator.java |      0
 .../qp/logical/sys/DeleteTimeSeriesOperator.java   |      0
 .../logical/sys/DropContinuousQueryOperator.java   |      0
 .../db/qp/logical/sys/DropFunctionOperator.java    |      0
 .../iotdb/db/qp/logical/sys/DropIndexOperator.java |      0
 .../db/qp/logical/sys/DropTriggerOperator.java     |      0
 .../iotdb/db/qp/logical/sys/FlushOperator.java     |      0
 .../iotdb/db/qp/logical/sys/KillQueryOperator.java |      0
 .../qp/logical/sys/LoadConfigurationOperator.java  |      0
 .../iotdb/db/qp/logical/sys/LoadDataOperator.java  |      0
 .../iotdb/db/qp/logical/sys/LoadFilesOperator.java |      0
 .../iotdb/db/qp/logical/sys/MergeOperator.java     |      0
 .../db/qp/logical/sys/RemoveFileOperator.java      |      0
 .../db/qp/logical/sys/SetStorageGroupOperator.java |      0
 .../db/qp/logical/sys/SetSystemModeOperator.java   |      0
 .../iotdb/db/qp/logical/sys/SetTTLOperator.java    |      0
 .../db/qp/logical/sys/SetTemplateOperator.java     |      0
 .../iotdb/db/qp/logical/sys/SettleOperator.java    |      0
 .../db/qp/logical/sys/ShowChildNodesOperator.java  |      0
 .../db/qp/logical/sys/ShowChildPathsOperator.java  |      0
 .../logical/sys/ShowContinuousQueriesOperator.java |      0
 .../db/qp/logical/sys/ShowDevicesOperator.java     |      0
 .../db/qp/logical/sys/ShowFunctionsOperator.java   |      0
 .../db/qp/logical/sys/ShowLockInfoOperator.java    |      0
 .../db/qp/logical/sys/ShowMergeStatusOperator.java |     40 +
 .../iotdb/db/qp/logical/sys/ShowOperator.java      |     61 +
 .../qp/logical/sys/ShowStorageGroupOperator.java   |      0
 .../iotdb/db/qp/logical/sys/ShowTTLOperator.java   |      0
 .../db/qp/logical/sys/ShowTimeSeriesOperator.java  |      0
 .../db/qp/logical/sys/ShowTriggersOperator.java    |      0
 .../db/qp/logical/sys/StartTriggerOperator.java    |      0
 .../db/qp/logical/sys/StopTriggerOperator.java     |      0
 .../iotdb/db/qp/logical/sys/TracingOperator.java   |      0
 .../iotdb/db/qp/logical/sys/UnSetTTLOperator.java  |      0
 .../db/qp/logical/sys/UnloadFileOperator.java      |      0
 .../db/qp/logical/sys/UnsetTemplateOperator.java   |      0
 .../org/apache/iotdb/db/qp/physical/BatchPlan.java |      0
 .../apache/iotdb/db/qp/physical/PhysicalPlan.java  |    555 +
 .../iotdb/db/qp/physical/crud/AggregationPlan.java |      0
 .../db/qp/physical/crud/AlignByDevicePlan.java     |    219 +
 .../db/qp/physical/crud/DeletePartitionPlan.java   |      0
 .../iotdb/db/qp/physical/crud/DeletePlan.java      |      0
 .../iotdb/db/qp/physical/crud/FillQueryPlan.java   |      0
 .../db/qp/physical/crud/GroupByTimeFillPlan.java   |      0
 .../iotdb/db/qp/physical/crud/GroupByTimePlan.java |      0
 .../db/qp/physical/crud/InsertMultiTabletPlan.java |      0
 .../iotdb/db/qp/physical/crud/InsertPlan.java      |      0
 .../iotdb/db/qp/physical/crud/InsertRowPlan.java   |    611 +
 .../physical/crud/InsertRowsOfOneDevicePlan.java   |    290 +
 .../iotdb/db/qp/physical/crud/InsertRowsPlan.java  |      0
 .../db/qp/physical/crud/InsertTabletPlan.java      |      0
 .../iotdb/db/qp/physical/crud/LastQueryPlan.java   |      0
 .../iotdb/db/qp/physical/crud/MeasurementInfo.java |      0
 .../iotdb/db/qp/physical/crud/QueryIndexPlan.java  |      0
 .../iotdb/db/qp/physical/crud/QueryPlan.java       |      0
 .../db/qp/physical/crud/RawDataQueryPlan.java      |      0
 .../iotdb/db/qp/physical/crud/SelectIntoPlan.java  |    114 +
 .../apache/iotdb/db/qp/physical/crud/UDAFPlan.java |      0
 .../apache/iotdb/db/qp/physical/crud/UDFPlan.java  |      0
 .../apache/iotdb/db/qp/physical/crud/UDTFPlan.java |    150 +
 .../db/qp/physical/sys/ActivateTemplatePlan.java   |      0
 .../db/qp/physical/sys/AlterTimeSeriesPlan.java    |      0
 .../db/qp/physical/sys/AppendTemplatePlan.java     |      0
 .../iotdb/db/qp/physical/sys/AuthorPlan.java       |      0
 .../qp/physical/sys/AutoCreateDeviceMNodePlan.java |      0
 .../iotdb/db/qp/physical/sys/ChangeAliasPlan.java  |      0
 .../db/qp/physical/sys/ChangeTagOffsetPlan.java    |      0
 .../iotdb/db/qp/physical/sys/ClearCachePlan.java   |      0
 .../apache/iotdb/db/qp/physical/sys/CountPlan.java |      0
 .../physical/sys/CreateAlignedTimeSeriesPlan.java  |      0
 .../qp/physical/sys/CreateContinuousQueryPlan.java |    146 +
 .../db/qp/physical/sys/CreateFunctionPlan.java     |      0
 .../iotdb/db/qp/physical/sys/CreateIndexPlan.java  |      0
 .../qp/physical/sys/CreateMultiTimeSeriesPlan.java |      0
 .../db/qp/physical/sys/CreateSnapshotPlan.java     |      0
 .../db/qp/physical/sys/CreateTemplatePlan.java     |      0
 .../db/qp/physical/sys/CreateTimeSeriesPlan.java   |      0
 .../db/qp/physical/sys/CreateTriggerPlan.java      |    161 +
 .../iotdb/db/qp/physical/sys/DataAuthPlan.java     |      0
 .../db/qp/physical/sys/DeleteStorageGroupPlan.java |      0
 .../db/qp/physical/sys/DeleteTimeSeriesPlan.java   |      0
 .../qp/physical/sys/DropContinuousQueryPlan.java   |      0
 .../iotdb/db/qp/physical/sys/DropFunctionPlan.java |      0
 .../iotdb/db/qp/physical/sys/DropIndexPlan.java    |      0
 .../iotdb/db/qp/physical/sys/DropTriggerPlan.java  |     75 +
 .../apache/iotdb/db/qp/physical/sys/FlushPlan.java |      0
 .../iotdb/db/qp/physical/sys/KillQueryPlan.java    |      0
 .../db/qp/physical/sys/LoadConfigurationPlan.java  |      0
 .../iotdb/db/qp/physical/sys/LoadDataPlan.java     |      0
 .../apache/iotdb/db/qp/physical/sys/LogPlan.java   |      0
 .../apache/iotdb/db/qp/physical/sys/MNodePlan.java |      0
 .../db/qp/physical/sys/MeasurementMNodePlan.java   |    154 +
 .../apache/iotdb/db/qp/physical/sys/MergePlan.java |      0
 .../iotdb/db/qp/physical/sys/OperateFilePlan.java  |      0
 .../db/qp/physical/sys/PruneTemplatePlan.java      |      0
 .../db/qp/physical/sys/SetStorageGroupPlan.java    |      0
 .../db/qp/physical/sys/SetSystemModePlan.java      |      0
 .../iotdb/db/qp/physical/sys/SetTTLPlan.java       |      0
 .../iotdb/db/qp/physical/sys/SetTemplatePlan.java  |      0
 .../iotdb/db/qp/physical/sys/SettlePlan.java       |      0
 .../db/qp/physical/sys/ShowChildNodesPlan.java     |      0
 .../db/qp/physical/sys/ShowChildPathsPlan.java     |      0
 .../qp/physical/sys/ShowContinuousQueriesPlan.java |      0
 .../iotdb/db/qp/physical/sys/ShowDevicesPlan.java  |      0
 .../db/qp/physical/sys/ShowFunctionsPlan.java      |      0
 .../iotdb/db/qp/physical/sys/ShowLockInfoPlan.java |      0
 .../db/qp/physical/sys/ShowMergeStatusPlan.java    |     27 +
 .../apache/iotdb/db/qp/physical/sys/ShowPlan.java  |    122 +
 .../qp/physical/sys/ShowQueryProcesslistPlan.java  |      0
 .../db/qp/physical/sys/ShowStorageGroupPlan.java   |      0
 .../iotdb/db/qp/physical/sys/ShowTTLPlan.java      |      0
 .../db/qp/physical/sys/ShowTimeSeriesPlan.java     |      0
 .../iotdb/db/qp/physical/sys/ShowTriggersPlan.java |      0
 .../iotdb/db/qp/physical/sys/StartTriggerPlan.java |     75 +
 .../iotdb/db/qp/physical/sys/StopTriggerPlan.java  |     75 +
 .../db/qp/physical/sys/StorageGroupMNodePlan.java  |    136 +
 .../iotdb/db/qp/physical/sys/TracingPlan.java      |      0
 .../db/qp/physical/sys/UnsetTemplatePlan.java      |      0
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    |   2810 +
 .../iotdb/db/qp/strategy/LogicalChecker.java       |     41 +
 .../iotdb/db/qp/strategy/LogicalGenerator.java     |    170 +
 .../iotdb/db/qp/strategy/PhysicalGenerator.java    |     58 +
 .../apache/iotdb/db/qp/strategy/SQLParseError.java |      0
 .../qp/strategy/optimizer/ConcatPathOptimizer.java |    283 +
 .../qp/strategy/optimizer/DnfFilterOptimizer.java  |      0
 .../db/qp/strategy/optimizer/IFilterOptimizer.java |      0
 .../qp/strategy/optimizer/ILogicalOptimizer.java   |      0
 .../optimizer/MergeSingleFilterOptimizer.java      |      0
 .../qp/strategy/optimizer/RemoveNotOptimizer.java  |      0
 .../apache/iotdb/db/qp/utils/DatetimeUtils.java    |      0
 .../iotdb/db/qp/utils/EmptyOutputStream.java       |      0
 .../iotdb/db/qp/utils/GroupByLevelController.java  |      0
 .../apache/iotdb/db/qp/utils/WildcardsRemover.java |    135 +
 .../db/query/aggregation/AggregateResult.java      |      0
 .../db/query/aggregation/AggregationType.java      |    125 +
 .../db/query/aggregation/impl/AvgAggrResult.java   |      0
 .../db/query/aggregation/impl/CountAggrResult.java |      0
 .../query/aggregation/impl/ExtremeAggrResult.java  |      0
 .../aggregation/impl/FirstValueAggrResult.java     |    143 +
 .../aggregation/impl/FirstValueDescAggrResult.java |      0
 .../aggregation/impl/LastValueAggrResult.java      |      0
 .../aggregation/impl/LastValueDescAggrResult.java  |      0
 .../query/aggregation/impl/MaxTimeAggrResult.java  |      0
 .../aggregation/impl/MaxTimeDescAggrResult.java    |      0
 .../query/aggregation/impl/MaxValueAggrResult.java |      0
 .../query/aggregation/impl/MinTimeAggrResult.java  |      0
 .../aggregation/impl/MinTimeDescAggrResult.java    |      0
 .../query/aggregation/impl/MinValueAggrResult.java |      0
 .../db/query/aggregation/impl/SumAggrResult.java   |      0
 .../query/aggregation/impl/ValidityAggrResult.java |    170 +
 .../aggregation/impl/ValidityAllAggrResult.java    |    166 +
 .../iotdb/db/query/context/QueryContext.java       |      0
 .../iotdb/db/query/control/FileReaderManager.java  |    243 +
 .../iotdb/db/query/control/QueryFileManager.java   |    129 +
 .../db/query/control/QueryResourceManager.java     |    142 +
 .../iotdb/db/query/control/QueryTimeManager.java   |      0
 .../iotdb/db/query/control/SessionManager.java     |    216 +
 .../db/query/control/SessionTimeoutManager.java    |    115 +
 .../db/query/control/tracing/TracingConstant.java  |      0
 .../db/query/control/tracing/TracingInfo.java      |    156 +
 .../db/query/control/tracing/TracingManager.java   |     84 +
 .../db/query/dataset/AlignByDeviceDataSet.java     |      0
 .../db/query/dataset/DirectAlignByTimeDataSet.java |      0
 .../db/query/dataset/DirectNonAlignDataSet.java    |      0
 .../iotdb/db/query/dataset/IUDFInputDataSet.java   |      0
 .../apache/iotdb/db/query/dataset/ListDataSet.java |      0
 .../db/query/dataset/NonAlignEngineDataSet.java    |      0
 .../dataset/RawQueryDataSetWithValueFilter.java    |    230 +
 .../dataset/RawQueryDataSetWithoutValueFilter.java |    666 +
 .../query/dataset/ShowContinuousQueriesResult.java |     84 +
 .../apache/iotdb/db/query/dataset/ShowDataSet.java |      0
 .../iotdb/db/query/dataset/ShowDevicesDataSet.java |     78 +
 .../iotdb/db/query/dataset/ShowDevicesResult.java  |     74 +
 .../apache/iotdb/db/query/dataset/ShowResult.java  |      0
 .../db/query/dataset/ShowTimeSeriesResult.java     |      0
 .../db/query/dataset/ShowTimeseriesDataSet.java    |      0
 .../iotdb/db/query/dataset/SingleDataSet.java      |      0
 .../iotdb/db/query/dataset/UDFInputDataSet.java    |      0
 .../UDFRawQueryInputDataSetWithoutValueFilter.java |      0
 .../db/query/dataset/UDTFAlignByTimeDataSet.java   |    329 +
 .../apache/iotdb/db/query/dataset/UDTFDataSet.java |    140 +
 .../db/query/dataset/UDTFNonAlignDataSet.java      |    214 +
 .../dataset/groupby/AlignedGroupByExecutor.java    |      0
 .../dataset/groupby/GroupByEngineDataSet.java      |      0
 .../db/query/dataset/groupby/GroupByExecutor.java  |      0
 .../query/dataset/groupby/GroupByFillDataSet.java  |    328 +
 .../query/dataset/groupby/GroupByLevelDataSet.java |      0
 .../groupby/GroupByWithValueFilterDataSet.java     |    275 +
 .../groupby/GroupByWithoutValueFilterDataSet.java  |    245 +
 .../groupby/LocalAlignedGroupByExecutor.java       |    364 +
 .../dataset/groupby/LocalGroupByExecutor.java      |    366 +
 .../db/query/executor/AggregationExecutor.java     |    980 +
 .../iotdb/db/query/executor/FillQueryExecutor.java |    206 +
 .../iotdb/db/query/executor/IQueryRouter.java      |      0
 .../iotdb/db/query/executor/LastQueryExecutor.java |    359 +
 .../iotdb/db/query/executor/QueryRouter.java       |    354 +
 .../db/query/executor/RawDataQueryExecutor.java    |    226 +
 .../iotdb/db/query/executor/UDFQueryExecutor.java  |     99 +
 .../executor/fill/AlignedLastPointReader.java      |      0
 .../apache/iotdb/db/query/executor/fill/IFill.java |      0
 .../db/query/executor/fill/LastPointReader.java    |      0
 .../iotdb/db/query/executor/fill/LinearFill.java   |    259 +
 .../iotdb/db/query/executor/fill/PreviousFill.java |    135 +
 .../iotdb/db/query/executor/fill/ValueFill.java    |      0
 .../iotdb/db/query/expression/Expression.java      |      0
 .../iotdb/db/query/expression/ResultColumn.java    |    172 +
 .../expression/binary/AdditionExpression.java      |      0
 .../query/expression/binary/BinaryExpression.java  |      0
 .../expression/binary/DivisionExpression.java      |      0
 .../query/expression/binary/ModuloExpression.java  |      0
 .../binary/MultiplicationExpression.java           |      0
 .../expression/binary/SubtractionExpression.java   |      0
 .../db/query/expression/unary/ConstantOperand.java |      0
 .../query/expression/unary/FunctionExpression.java |      0
 .../query/expression/unary/NegationExpression.java |      0
 .../query/expression/unary/TimeSeriesOperand.java  |      0
 .../db/query/externalsort/ExternalSortJob.java     |      0
 .../query/externalsort/ExternalSortJobEngine.java  |      0
 .../db/query/externalsort/ExternalSortJobPart.java |      0
 .../externalsort/ExternalSortJobScheduler.java     |      0
 .../iotdb/db/query/externalsort/LineMerger.java    |      0
 .../MultiSourceExternalSortJobPart.java            |      0
 .../externalsort/SimpleExternalSortEngine.java     |      0
 .../SingleSourceExternalSortJobPart.java           |      0
 .../adapter/ByTimestampReaderAdapter.java          |      0
 .../serialize/IExternalSortFileDeserializer.java   |      0
 .../serialize/IExternalSortFileSerializer.java     |      0
 .../FixLengthIExternalSortFileDeserializer.java    |      0
 .../impl/FixLengthTimeValuePairSerializer.java     |      0
 .../db/query/factory/AggregateResultFactory.java   |    149 +
 .../apache/iotdb/db/query/filter/TsFileFilter.java |      0
 .../db/query/filter/executor/IPlanExecutor.java    |    134 +
 .../db/query/filter/executor/PlanExecutor.java     |   2176 +
 .../iotdb/db/query/pool/QueryTaskManager.java      |      0
 .../db/query/pool/RawQueryReadTaskPoolManager.java |      0
 .../db/query/reader/chunk/ChunkDataIterator.java   |      0
 .../db/query/reader/chunk/ChunkReaderWrap.java     |      0
 .../query/reader/chunk/DiskAlignedChunkLoader.java |      0
 .../db/query/reader/chunk/DiskChunkLoader.java     |      0
 .../reader/chunk/DiskChunkReaderByTimestamp.java   |      0
 .../query/reader/chunk/MemAlignedChunkLoader.java  |      0
 .../query/reader/chunk/MemAlignedChunkReader.java  |      0
 .../query/reader/chunk/MemAlignedPageReader.java   |      0
 .../db/query/reader/chunk/MemChunkLoader.java      |      0
 .../db/query/reader/chunk/MemChunkReader.java      |      0
 .../iotdb/db/query/reader/chunk/MemPageReader.java |      0
 .../metadata/DiskAlignedChunkMetadataLoader.java   |      0
 .../chunk/metadata/DiskChunkMetadataLoader.java    |      0
 .../metadata/MemAlignedChunkMetadataLoader.java    |     89 +
 .../chunk/metadata/MemChunkMetadataLoader.java     |     88 +
 .../resource/CachedUnseqResourceMergeReader.java   |      0
 .../series/AlignedSeriesAggregateReader.java       |      0
 .../query/reader/series/AlignedSeriesReader.java   |      0
 .../reader/series/BaseManagedSeriesReader.java     |      0
 .../db/query/reader/series/IAggregateReader.java   |      0
 .../db/query/reader/series/IReaderByTimestamp.java |      0
 .../query/reader/series/ManagedSeriesReader.java   |      0
 .../query/reader/series/SeriesAggregateReader.java |    146 +
 .../reader/series/SeriesRawDataBatchReader.java    |      0
 .../reader/series/SeriesRawDataPointReader.java    |      0
 .../iotdb/db/query/reader/series/SeriesReader.java |   1348 +
 .../reader/series/SeriesReaderByTimestamp.java     |    160 +
 .../universal/AlignedDescPriorityMergeReader.java  |      0
 .../universal/AlignedPriorityMergeReader.java      |      0
 .../universal/CachedPriorityMergeReader.java       |      0
 .../reader/universal/DescPriorityMergeReader.java  |      0
 .../iotdb/db/query/reader/universal/Element.java   |      0
 .../reader/universal/PriorityMergeReader.java      |      0
 .../query/timegenerator/ServerTimeGenerator.java   |    160 +
 .../org/apache/iotdb/db/query/udf/api/UDF.java     |      0
 .../org/apache/iotdb/db/query/udf/api/UDTF.java    |      0
 .../apache/iotdb/db/query/udf/api/access/Row.java  |      0
 .../iotdb/db/query/udf/api/access/RowIterator.java |      0
 .../iotdb/db/query/udf/api/access/RowWindow.java   |      0
 .../db/query/udf/api/collector/PointCollector.java |      0
 .../api/customizer/config/UDFConfigurations.java   |      0
 .../api/customizer/config/UDTFConfigurations.java  |      0
 .../parameter/UDFParameterValidator.java           |      0
 .../api/customizer/parameter/UDFParameters.java    |      0
 .../api/customizer/strategy/AccessStrategy.java    |      0
 .../strategy/RowByRowAccessStrategy.java           |      0
 .../strategy/SlidingSizeWindowAccessStrategy.java  |      0
 .../strategy/SlidingTimeWindowAccessStrategy.java  |      0
 .../UDFAttributeNotProvidedException.java          |      0
 .../db/query/udf/api/exception/UDFException.java   |      0
 .../UDFInputSeriesDataTypeNotValidException.java   |      0
 .../UDFInputSeriesIndexNotValidException.java      |      0
 .../UDFInputSeriesNumberNotValidException.java     |      0
 .../exception/UDFParameterNotValidException.java   |      0
 .../db/query/udf/builtin/BuiltinFunction.java      |      0
 .../apache/iotdb/db/query/udf/builtin/UDTFAbs.java |      0
 .../iotdb/db/query/udf/builtin/UDTFAcos.java       |      0
 .../iotdb/db/query/udf/builtin/UDTFAsin.java       |      0
 .../iotdb/db/query/udf/builtin/UDTFAtan.java       |      0
 .../iotdb/db/query/udf/builtin/UDTFBottomK.java    |      0
 .../iotdb/db/query/udf/builtin/UDTFCast.java       |      0
 .../iotdb/db/query/udf/builtin/UDTFCeil.java       |      0
 .../db/query/udf/builtin/UDTFCommonDerivative.java |      0
 .../udf/builtin/UDTFCommonValueDifference.java     |      0
 .../iotdb/db/query/udf/builtin/UDTFConst.java      |      0
 .../iotdb/db/query/udf/builtin/UDTFConstE.java     |      0
 .../iotdb/db/query/udf/builtin/UDTFConstPi.java    |      0
 .../iotdb/db/query/udf/builtin/UDTFContains.java   |      0
 .../apache/iotdb/db/query/udf/builtin/UDTFCos.java |      0
 .../iotdb/db/query/udf/builtin/UDTFCosh.java       |      0
 .../iotdb/db/query/udf/builtin/UDTFDegrees.java    |      0
 .../iotdb/db/query/udf/builtin/UDTFDerivative.java |      0
 .../apache/iotdb/db/query/udf/builtin/UDTFExp.java |      0
 .../iotdb/db/query/udf/builtin/UDTFFloor.java      |      0
 .../apache/iotdb/db/query/udf/builtin/UDTFLog.java |      0
 .../iotdb/db/query/udf/builtin/UDTFLog10.java      |      0
 .../iotdb/db/query/udf/builtin/UDTFMatches.java    |      0
 .../iotdb/db/query/udf/builtin/UDTFMath.java       |      0
 .../udf/builtin/UDTFNonNegativeDerivative.java     |      0
 .../builtin/UDTFNonNegativeValueDifference.java    |      0
 .../iotdb/db/query/udf/builtin/UDTFRadians.java    |      0
 .../iotdb/db/query/udf/builtin/UDTFRound.java      |      0
 .../iotdb/db/query/udf/builtin/UDTFSelectK.java    |      0
 .../iotdb/db/query/udf/builtin/UDTFSign.java       |      0
 .../apache/iotdb/db/query/udf/builtin/UDTFSin.java |      0
 .../iotdb/db/query/udf/builtin/UDTFSinh.java       |      0
 .../iotdb/db/query/udf/builtin/UDTFSqrt.java       |      0
 .../apache/iotdb/db/query/udf/builtin/UDTFTan.java |      0
 .../iotdb/db/query/udf/builtin/UDTFTanh.java       |      0
 .../db/query/udf/builtin/UDTFTimeDifference.java   |      0
 .../iotdb/db/query/udf/builtin/UDTFTopK.java       |      0
 .../db/query/udf/builtin/UDTFValueDifference.java  |      0
 .../iotdb/db/query/udf/builtin/UDTFValueTrend.java |      0
 ...ializableRowRecordListBackedMultiColumnRow.java |      0
 ...izableRowRecordListBackedMultiColumnWindow.java |      0
 ...wRecordListBackedMultiColumnWindowIterator.java |      0
 ...ticSerializableTVListBackedSingleColumnRow.java |      0
 ...SerializableTVListBackedSingleColumnWindow.java |      0
 ...ableTVListBackedSingleColumnWindowIterator.java |      0
 .../LayerPointReaderBackedSingleColumnRow.java     |      0
 .../db/query/udf/core/executor/UDTFExecutor.java   |      0
 .../udf/core/layer/ConstantIntermediateLayer.java  |      0
 .../iotdb/db/query/udf/core/layer/DAGBuilder.java  |      0
 .../db/query/udf/core/layer/InputRowUtils.java     |     43 +
 .../db/query/udf/core/layer/IntermediateLayer.java |      0
 .../db/query/udf/core/layer/LayerCacheUtils.java   |      0
 .../query/udf/core/layer/LayerMemoryAssigner.java  |      0
 .../layer/MultiInputColumnIntermediateLayer.java   |      0
 .../query/udf/core/layer/RawQueryInputLayer.java   |    214 +
 .../iotdb/db/query/udf/core/layer/SafetyLine.java  |      0
 ...InputColumnMultiReferenceIntermediateLayer.java |      0
 ...nputColumnSingleReferenceIntermediateLayer.java |      0
 .../udf/core/reader/ConstantLayerPointReader.java  |      0
 .../db/query/udf/core/reader/LayerPointReader.java |      0
 .../db/query/udf/core/reader/LayerRowReader.java   |      0
 .../udf/core/reader/LayerRowWindowReader.java      |      0
 .../transformer/ArithmeticAdditionTransformer.java |      0
 .../transformer/ArithmeticBinaryTransformer.java   |      0
 .../transformer/ArithmeticDivisionTransformer.java |      0
 .../transformer/ArithmeticModuloTransformer.java   |      0
 .../ArithmeticMultiplicationTransformer.java       |      0
 .../transformer/ArithmeticNegationTransformer.java |      0
 .../ArithmeticSubtractionTransformer.java          |      0
 .../db/query/udf/core/transformer/Transformer.java |      0
 .../core/transformer/TransparentTransformer.java   |      0
 .../core/transformer/UDFQueryRowTransformer.java   |      0
 .../transformer/UDFQueryRowWindowTransformer.java  |      0
 .../udf/core/transformer/UDFQueryTransformer.java  |      0
 .../iotdb/db/query/udf/datastructure/Cache.java    |      0
 .../query/udf/datastructure/SerializableList.java  |      0
 .../row/ElasticSerializableRowRecordList.java      |    303 +
 .../row/SerializableRowRecordList.java             |      0
 .../tv/ElasticSerializableBinaryTVList.java        |      0
 .../tv/ElasticSerializableTVList.java              |      0
 .../datastructure/tv/SerializableBinaryTVList.java |      0
 .../tv/SerializableBooleanTVList.java              |      0
 .../datastructure/tv/SerializableDoubleTVList.java |      0
 .../datastructure/tv/SerializableFloatTVList.java  |      0
 .../datastructure/tv/SerializableIntTVList.java    |      0
 .../datastructure/tv/SerializableLongTVList.java   |      0
 .../udf/datastructure/tv/SerializableTVList.java   |      0
 .../udf/service/TemporaryQueryDataFileService.java |      0
 .../iotdb/db/query/udf/service/UDFClassLoader.java |      0
 .../query/udf/service/UDFClassLoaderManager.java   |      0
 .../iotdb/db/query/udf/service/UDFLogWriter.java   |      0
 .../udf/service/UDFRegistrationInformation.java    |      0
 .../query/udf/service/UDFRegistrationService.java  |      0
 .../iotdb/db/rescon/AbstractPoolManager.java       |      0
 .../apache/iotdb/db/rescon/CachedStringPool.java   |     42 +
 .../apache/iotdb/db/rescon/MemTableManager.java    |      0
 .../iotdb/db/rescon/PrimitiveArrayManager.java     |      0
 .../org/apache/iotdb/db/rescon/SystemInfo.java     |      0
 .../iotdb/db/rescon/TsFileResourceManager.java     |    121 +
 .../org/apache/iotdb/db/rescon/package-info.java   |      0
 .../java/org/apache/iotdb/db/service/IService.java |      0
 .../iotdb/db/service/InfluxDBRPCService.java       |      0
 .../iotdb/db/service/InfluxDBRPCServiceMBean.java  |      0
 .../java/org/apache/iotdb/db/service/IoTDB.java    |    213 +
 .../org/apache/iotdb/db/service/IoTDBMBean.java    |      0
 .../apache/iotdb/db/service/IoTDBShutdownHook.java |      0
 .../org/apache/iotdb/db/service/JMXService.java    |      0
 .../org/apache/iotdb/db/service/MQTTService.java   |      0
 .../org/apache/iotdb/db/service/RPCService.java    |      0
 .../apache/iotdb/db/service/RPCServiceMBean.java   |      0
 .../apache/iotdb/db/service/RegisterManager.java   |      0
 .../org/apache/iotdb/db/service/ServiceType.java   |      0
 .../org/apache/iotdb/db/service/SettleService.java |    190 +
 .../org/apache/iotdb/db/service/StartupCheck.java  |      0
 .../org/apache/iotdb/db/service/StartupChecks.java |      0
 .../org/apache/iotdb/db/service/StaticResps.java   |      0
 .../org/apache/iotdb/db/service/UpgradeSevice.java |      0
 .../db/service/basic/BasicOpenSessionResp.java     |      0
 .../db/service/basic/BasicServiceProvider.java     |    267 +
 .../db/service/basic/QueryFrequencyRecorder.java   |      0
 .../apache/iotdb/db/service/metrics/Metric.java    |      0
 .../iotdb/db/service/metrics/MetricsService.java   |    278 +
 .../db/service/metrics/MetricsServiceMBean.java    |      0
 .../apache/iotdb/db/service/metrics/Operation.java |      0
 .../org/apache/iotdb/db/service/metrics/Tag.java   |      0
 .../db/service/thrift/ProcessorWithMetrics.java    |      0
 .../iotdb/db/service/thrift/ThriftService.java     |      0
 .../db/service/thrift/ThriftServiceThread.java     |      0
 .../handler/InfluxDBServiceThriftHandler.java      |      0
 .../thrift/handler/RPCServiceThriftHandler.java    |      0
 .../service/thrift/impl/InfluxDBServiceImpl.java   |    156 +
 .../db/service/thrift/impl/TSServiceImpl.java      |   1927 +
 .../apache/iotdb/db/sync/conf/SyncConstant.java    |      0
 .../iotdb/db/sync/conf/SyncSenderConfig.java       |      0
 .../iotdb/db/sync/conf/SyncSenderDescriptor.java   |      0
 .../org/apache/iotdb/db/sync/package-info.java     |      0
 .../iotdb/db/sync/receiver/SyncServerManager.java  |      0
 .../db/sync/receiver/SyncServerManagerMBean.java   |      0
 .../db/sync/receiver/SyncServerThriftHandler.java  |      0
 .../iotdb/db/sync/receiver/load/FileLoader.java    |      0
 .../db/sync/receiver/load/FileLoaderManager.java   |      0
 .../iotdb/db/sync/receiver/load/IFileLoader.java   |      0
 .../iotdb/db/sync/receiver/load/ILoadLogger.java   |      0
 .../iotdb/db/sync/receiver/load/LoadLogger.java    |      0
 .../iotdb/db/sync/receiver/load/LoadType.java      |      0
 .../receiver/recover/ISyncReceiverLogAnalyzer.java |      0
 .../sync/receiver/recover/ISyncReceiverLogger.java |      0
 .../receiver/recover/SyncReceiverLogAnalyzer.java  |      0
 .../sync/receiver/recover/SyncReceiverLogger.java  |      0
 .../db/sync/receiver/transfer/SyncServiceImpl.java |    365 +
 .../db/sync/sender/manage/ISyncFileManager.java    |      0
 .../db/sync/sender/manage/SyncFileManager.java     |    291 +
 .../sender/recover/ISyncSenderLogAnalyzer.java     |      0
 .../db/sync/sender/recover/ISyncSenderLogger.java  |      0
 .../sync/sender/recover/SyncSenderLogAnalyzer.java |      0
 .../db/sync/sender/recover/SyncSenderLogger.java   |      0
 .../iotdb/db/sync/sender/transfer/ISyncClient.java |      0
 .../iotdb/db/sync/sender/transfer/SyncClient.java  |    808 +
 .../apache/iotdb/db/tools/IoTDBDataDirViewer.java  |      0
 .../iotdb/db/tools/TsFileResourcePrinter.java      |      0
 .../apache/iotdb/db/tools/TsFileRewriteTool.java   |    510 +
 .../apache/iotdb/db/tools/TsFileSketchTool.java    |    505 +
 .../java/org/apache/iotdb/db/tools/WalChecker.java |      0
 .../org/apache/iotdb/db/tools/mlog/MLogParser.java |    243 +
 .../db/tools/settle/TsFileAndModSettleTool.java    |      0
 .../db/tools/upgrade/TsFileOnlineUpgradeTool.java  |    291 +
 .../db/tools/virtualsg/DeviceMappingViewer.java    |     63 +
 .../iotdb/db/tools/vis/TsFileExtractVisdata.java   |      0
 .../main/java/org/apache/iotdb/db/tools/vis/vis.m  |      0
 .../watermark/GroupedLSBWatermarkEncoder.java      |      0
 .../db/tools/watermark/WatermarkDetector.java      |      0
 .../iotdb/db/tools/watermark/WatermarkEncoder.java |      0
 .../iotdb/db/utils/AlignedValueIterator.java       |      0
 .../java/org/apache/iotdb/db/utils/AuthUtils.java  |    328 +
 .../org/apache/iotdb/db/utils/CommonUtils.java     |      0
 .../iotdb/db/utils/CopyOnReadLinkedList.java       |      0
 .../org/apache/iotdb/db/utils/DataTypeUtils.java   |      0
 .../iotdb/db/utils/EncodingInferenceUtils.java     |      0
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    364 +
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |    156 +
 .../org/apache/iotdb/db/utils/FileLoaderUtils.java |    256 +
 .../java/org/apache/iotdb/db/utils/FileUtils.java  |      0
 .../java/org/apache/iotdb/db/utils/IOUtils.java    |      0
 .../java/org/apache/iotdb/db/utils/MathUtils.java  |      0
 .../java/org/apache/iotdb/db/utils/MemUtils.java   |      0
 .../java/org/apache/iotdb/db/utils/MergeUtils.java |    303 +
 .../java/org/apache/iotdb/db/utils/MmapUtil.java   |      0
 .../org/apache/iotdb/db/utils/OpenFileNumUtil.java |      0
 .../org/apache/iotdb/db/utils/ParameterUtils.java  |      0
 .../apache/iotdb/db/utils/QueryDataSetUtils.java   |      0
 .../java/org/apache/iotdb/db/utils/QueryUtils.java |    197 +
 .../org/apache/iotdb/db/utils/SchemaTestUtils.java |      0
 .../org/apache/iotdb/db/utils/SchemaUtils.java     |    233 +
 .../org/apache/iotdb/db/utils/SerializeUtils.java  |      0
 .../org/apache/iotdb/db/utils/StatusUtils.java     |      0
 .../java/org/apache/iotdb/db/utils/SyncUtils.java  |      0
 .../java/org/apache/iotdb/db/utils/TestOnly.java   |      0
 .../apache/iotdb/db/utils/TimeValuePairUtils.java  |      0
 .../apache/iotdb/db/utils/TypeInferenceUtils.java  |      0
 .../org/apache/iotdb/db/utils/UpgradeUtils.java    |      0
 .../org/apache/iotdb/db/utils/ValueIterator.java   |      0
 .../db/utils/datastructure/AlignedTVList.java      |    992 +
 .../iotdb/db/utils/datastructure/BinaryTVList.java |    279 +
 .../db/utils/datastructure/BooleanTVList.java      |    279 +
 .../iotdb/db/utils/datastructure/DoubleTVList.java |    283 +
 .../iotdb/db/utils/datastructure/FloatTVList.java  |    283 +
 .../iotdb/db/utils/datastructure/IntTVList.java    |    277 +
 .../iotdb/db/utils/datastructure/LongTVList.java   |    277 +
 .../iotdb/db/utils/datastructure/TVList.java       |    621 +
 .../iotdb/db/utils/datastructure/TimeSelector.java |      0
 .../iotdb/db/utils/windowing/api/Evaluator.java    |      0
 .../iotdb/db/utils/windowing/api/Window.java       |      0
 .../windowing/configuration/Configuration.java     |      0
 .../SlidingSizeWindowConfiguration.java            |      0
 .../SlidingTimeWindowConfiguration.java            |      0
 .../windowing/exception/WindowingException.java    |      0
 .../SlidingSizeWindowEvaluationHandler.java        |      0
 .../SlidingTimeWindowEvaluationHandler.java        |      0
 .../handler/SlidingWindowEvaluationHandler.java    |      0
 .../windowing/runtime/WindowEvaluationTask.java    |      0
 .../runtime/WindowEvaluationTaskPoolManager.java   |      0
 .../utils/windowing/window/EvictableBatchList.java |      0
 .../db/utils/windowing/window/WindowImpl.java      |      0
 .../apache/iotdb/db/writelog/WALFlushListener.java |      0
 .../iotdb/db/writelog/io/BatchLogReader.java       |      0
 .../apache/iotdb/db/writelog/io/ILogReader.java    |      0
 .../apache/iotdb/db/writelog/io/ILogWriter.java    |      0
 .../org/apache/iotdb/db/writelog/io/LogWriter.java |      0
 .../iotdb/db/writelog/io/MultiFileLogReader.java   |      0
 .../iotdb/db/writelog/io/SingleFileLogReader.java  |      0
 .../writelog/manager/MultiFileLogNodeManager.java  |    173 +
 .../db/writelog/manager/WriteLogNodeManager.java   |      0
 .../db/writelog/node/ExclusiveWriteLogNode.java    |    366 +
 .../iotdb/db/writelog/node/WriteLogNode.java       |      0
 .../iotdb/db/writelog/recover/LogReplayer.java     |      0
 .../writelog/recover/TsFileRecoverPerformer.java   |      0
 ....apache.iotdb.db.protocol.mqtt.PayloadFormatter |      0
 .../apache/iotdb/db/auth/AuthorityCheckerTest.java |      0
 .../auth/authorizer/LocalFileAuthorizerTest.java   |      0
 .../db/auth/authorizer/OpenIdAuthorizerTest.java   |      0
 .../iotdb/db/auth/entity/PathPrivilegeTest.java    |      0
 .../org/apache/iotdb/db/auth/entity/RoleTest.java  |      0
 .../org/apache/iotdb/db/auth/entity/UserTest.java  |      0
 .../db/auth/role/LocalFileRoleAccessorTest.java    |      0
 .../db/auth/role/LocalFileRoleManagerTest.java     |      0
 .../db/auth/user/LocalFileUserAccessorTest.java    |      0
 .../db/auth/user/LocalFileUserManagerTest.java     |      0
 .../IoTDBDefaultThreadExceptionHandlerTest.java    |      0
 .../db/concurrent/IoTDBThreadPoolFactoryTest.java  |      0
 .../apache/iotdb/db/conf/IoTDBDescriptorTest.java  |      0
 .../db/conf/adapter/CompressionRatioTest.java      |    152 +
 .../strategy/DirectoryStrategyTest.java            |      0
 .../iotdb/db/engine/MetadataManagerHelper.java     |      0
 .../db/engine/cache/BloomFilterCacheTest.java      |    208 +
 .../iotdb/db/engine/cache/ChunkCacheTest.java      |    238 +
 .../engine/compaction/CompactionSchedulerTest.java |   2093 +
 .../compaction/CompactionTaskComparatorTest.java   |    314 +
 .../compaction/CompactionTaskManagerTest.java      |    252 +
 .../db/engine/compaction/TsFileIdentifierUT.java   |      0
 .../compaction/cross/CrossSpaceCompactionTest.java |    720 +
 .../cross/MaxFileMergeFileSelectorTest.java        |    316 +
 .../cross/MaxSeriesMergeFileSelectorTest.java      |    108 +
 .../db/engine/compaction/cross/MergeLogTest.java   |     92 +
 .../engine/compaction/cross/MergeManagerTest.java  |    146 +
 .../engine/compaction/cross/MergeOverLapTest.java  |    205 +
 .../db/engine/compaction/cross/MergePerfTest.java  |    108 +
 .../db/engine/compaction/cross/MergeTaskTest.java  |    575 +
 .../db/engine/compaction/cross/MergeTest.java      |    212 +
 .../engine/compaction/cross/MergeUpgradeTest.java  |    189 +
 .../inner/AbstractInnerSpaceCompactionTest.java    |    295 +
 .../compaction/inner/InnerCompactionChunkTest.java |    246 +
 .../compaction/inner/InnerCompactionLogTest.java   |     77 +
 .../inner/InnerCompactionMoreDataTest.java         |    234 +
 .../inner/InnerCompactionSchedulerTest.java        |    135 +
 .../compaction/inner/InnerCompactionTest.java      |    297 +
 .../compaction/inner/InnerSeqCompactionTest.java   |    924 +
 .../inner/InnerSpaceCompactionExceptionTest.java   |    434 +
 .../inner/InnerSpaceCompactionUtilsTest.java       |    127 +
 .../compaction/inner/InnerUnseqCompactionTest.java |    775 +
 .../SizeTieredCompactionHandleExceptionTest.java   |    197 +
 .../SizeTieredCompactionRecoverTest.java           |   1103 +
 .../inner/sizetiered/SizeTieredCompactionTest.java |    297 +
 .../recover/SizeTieredCompactionRecoverTest.java   |    764 +
 .../task/FakedCrossSpaceCompactionTask.java        |     71 +
 .../task/FakedCrossSpaceCompactionTaskFactory.java |     56 +
 .../task/FakedInnerSpaceCompactionTask.java        |    100 +
 .../task/FakedInnerSpaceCompactionTaskFactory.java |     51 +
 .../compaction/utils/CompactionCheckerUtils.java   |    472 +
 .../compaction/utils/CompactionClearUtils.java     |     58 +
 .../utils/CompactionFileGeneratorUtils.java        |    245 +
 .../compaction/utils/CompactionOverlapType.java    |      0
 .../compaction/utils/CompactionTimeseriesType.java |      0
 .../db/engine/memtable/MemTableFlushTaskTest.java  |      0
 .../db/engine/memtable/MemTableTestUtils.java      |    144 +
 .../db/engine/memtable/MemtableBenchmark.java      |     69 +
 .../db/engine/memtable/PrimitiveMemTableTest.java  |    545 +
 .../engine/modification/DeletionFileNodeTest.java  |    409 +
 .../db/engine/modification/DeletionQueryTest.java  |      0
 .../engine/modification/ModificationFileTest.java  |      0
 .../io/LocalTextModificationAccessorTest.java      |      0
 .../engine/storagegroup/FakedTsFileResource.java   |     87 +
 .../storagegroup/FileNodeManagerBenchmark.java     |      0
 .../storagegroup/StorageGroupProcessorTest.java    |    831 +
 .../iotdb/db/engine/storagegroup/TTLTest.java      |    440 +
 .../db/engine/storagegroup/TsFileManagerTest.java  |      0
 .../engine/storagegroup/TsFileProcessorTest.java   |    354 +
 .../storagegroup/TsFileResourceListTest.java       |      0
 .../virtualSg/HashVirtualPartitionerTest.java      |      0
 .../version/SimpleFileVersionControllerTest.java   |      0
 .../version/SysTimeVersionControllerTest.java      |      0
 .../iotdb/db/metadata/MManagerAdvancedTest.java    |      0
 .../iotdb/db/metadata/MManagerBasicTest.java       |   2201 +
 .../iotdb/db/metadata/MManagerImproveTest.java     |      0
 .../org/apache/iotdb/db/metadata/MTreeTest.java    |    980 +
 .../apache/iotdb/db/metadata/MetaUtilsTest.java    |      0
 .../apache/iotdb/db/metadata/PartialPathTest.java  |      0
 .../org/apache/iotdb/db/metadata/TemplateTest.java |    252 +
 .../db/metadata/idtable/IDTableLogFileTest.java    |      0
 .../idtable/IDTableResourceControlTest.java        |    167 +
 .../db/metadata/idtable/IDTableRestartTest.java    |    205 +
 .../iotdb/db/metadata/idtable/IDTableTest.java     |    666 +
 .../db/metadata/idtable/InsertWithIDTableTest.java |    758 +
 .../db/metadata/idtable/LastQueryWithIDTable.java  |    180 +
 .../QueryAlignedTimeseriesWithIDTableTest.java     |    373 +
 .../db/metadata/idtable/QueryWithIDTableTest.java  |    370 +
 .../db/metadata/idtable/entry/DeviceIDTest.java    |      0
 .../db/metadata/idtable/entry/SchemaEntryTest.java |     74 +
 .../metadata/idtable/trigger_example/Counter.java  |      0
 .../iotdb/db/metadata/mlog/MLogUpgraderTest.java   |      0
 .../apache/iotdb/db/metadata/mnode/MNodeTest.java  |     99 +
 .../iotdb/db/monitor/IoTDBStatMonitorTest.java     |    177 +
 .../db/protocol/influxdb/dto/IoTDBPointTest.java   |      0
 .../influxdb/input/InfluxLineParserTest.java       |      0
 .../db/protocol/mqtt/BrokerAuthenticatorTest.java  |      0
 .../db/protocol/mqtt/JSONPayloadFormatterTest.java |      0
 .../db/protocol/mqtt/PayloadFormatManagerTest.java |      0
 .../iotdb/db/protocol/mqtt/PublishHandlerTest.java |    117 +
 .../db/protocol/rest/GrafanaApiServiceIT.java      |    293 +
 .../iotdb/db/protocol/rest/IoTDBRestServiceIT.java |    280 +
 .../java/org/apache/iotdb/db/qp/PlannerTest.java   |    273 +
 .../iotdb/db/qp/bench/QueryParseBenchmark.java     |      0
 .../iotdb/db/qp/logical/LogicalPlanSmallTest.java  |      0
 .../iotdb/db/qp/other/TSPlanContextAuthorTest.java |      0
 .../iotdb/db/qp/physical/ConcatOptimizerTest.java  |      0
 .../iotdb/db/qp/physical/InsertRowPlanTest.java    |    308 +
 .../qp/physical/InsertRowsOfOneDevicePlanTest.java |      0
 .../db/qp/physical/InsertTabletMultiPlanTest.java  |    198 +
 .../iotdb/db/qp/physical/InsertTabletPlanTest.java |    449 +
 .../db/qp/physical/PhysicalPlanSerializeTest.java  |      0
 .../iotdb/db/qp/physical/PhysicalPlanTest.java     |      0
 .../iotdb/db/qp/physical/SerializationTest.java    |      0
 .../iotdb/db/qp/sql/IoTDBsqlVisitorTest.java       |      0
 .../db/qp/utils/DatetimeQueryDataSetUtilsTest.java |      0
 .../db/query/aggregation/AggregateResultTest.java  |    323 +
 .../query/aggregation/DescAggregateResultTest.java |     67 +
 .../db/query/control/FileReaderManagerTest.java    |      0
 .../db/query/control/QueryResourceManagerTest.java |      0
 .../dataset/EngineDataSetWithValueFilterTest.java  |    156 +
 .../iotdb/db/query/dataset/ListDataSetTest.java    |    149 +
 .../db/query/dataset/ShowDevicesResultTest.java    |     42 +
 .../db/query/dataset/ShowTimeSeriesResultTest.java |      0
 .../iotdb/db/query/dataset/SingleDataSetTest.java  |    130 +
 .../query/dataset/UDTFAlignByTimeDataSetTest.java  |    692 +
 .../dataset/groupby/GroupByEngineDataSetTest.java  |      0
 .../dataset/groupby/GroupByFillDataSetTest.java    |    194 +
 .../dataset/groupby/GroupByLevelDataSetTest.java   |    152 +
 .../dataset/groupby/GroupByTimeDataSetTest.java    |    226 +
 .../query/externalsort/ExternalSortEngineTest.java |      0
 .../db/query/externalsort/FakeChunkReaderWrap.java |      0
 ...ExternalSortFileSerializerDeserializerTest.java |      0
 .../reader/series/SeriesAggregateReaderTest.java   |    142 +
 .../reader/series/SeriesReaderByTimestampTest.java |     96 +
 .../db/query/reader/series/SeriesReaderTest.java   |    188 +
 .../query/reader/series/SeriesReaderTestUtil.java  |    209 +
 .../universal/AlignedPriorityMergeReaderTest.java  |      0
 .../query/reader/universal/FakedSeriesReader.java  |      0
 .../reader/universal/PriorityMergeReaderTest.java  |      0
 .../reader/universal/PriorityMergeReaderTest2.java |      0
 .../ElasticSerializableRowRecordListTest.java      |    294 +
 .../ElasticSerializableTVListTest.java             |      0
 .../iotdb/db/query/udf/datastructure/LRUCache.java |      0
 .../db/query/udf/datastructure/LRUCacheTest.java   |      0
 .../SerializableBinaryTVListTest.java              |      0
 .../SerializableBooleanTVListTest.java             |      0
 .../SerializableDoubleTVListTest.java              |      0
 .../datastructure/SerializableFloatTVListTest.java |      0
 .../datastructure/SerializableIntTVListTest.java   |      0
 .../udf/datastructure/SerializableListTest.java    |      0
 .../datastructure/SerializableLongTVListTest.java  |      0
 .../SerializableRowRecordListTest.java             |      0
 .../udf/datastructure/SerializableTVListTest.java  |      0
 .../apache/iotdb/db/query/udf/example/Adder.java   |      0
 .../valuefilter/RawQueryWithValueFilterTest.java   |    145 +
 .../iotdb/db/rescon/ResourceManagerTest.java       |    399 +
 .../org/apache/iotdb/db/script/EnvScriptIT.java    |      0
 .../org/apache/iotdb/db/sink/AlertManagerTest.java |      0
 .../apache/iotdb/db/sink/LocalIoTDBSinkTest.java   |      0
 .../org/apache/iotdb/db/sink/MQTTSinkTest.java     |      0
 .../db/sync/receiver/load/FileLoaderTest.java      |    412 +
 .../recover/SyncReceiverLogAnalyzerTest.java       |    232 +
 .../receiver/recover/SyncReceiverLoggerTest.java   |      0
 .../db/sync/sender/manage/SyncFileManagerTest.java |      0
 .../sender/recover/SyncSenderLogAnalyzerTest.java  |      0
 .../sync/sender/recover/SyncSenderLoggerTest.java  |      0
 .../db/sync/sender/transfer/SyncClientTest.java    |      0
 .../apache/iotdb/db/tools/IoTDBWatermarkTest.java  |    247 +
 .../org/apache/iotdb/db/tools/MLogParserTest.java  |      0
 .../iotdb/db/tools/TsFileAndModSettleToolTest.java |    238 +
 .../iotdb/db/tools/TsFileSketchToolTest.java       |    148 +
 .../org/apache/iotdb/db/tools/WalCheckerTest.java  |      0
 .../iotdb/db/utils/CopyOnReadLinkedListTest.java   |      0
 .../iotdb/db/utils/EncodingInferenceUtilsTest.java |      0
 .../iotdb/db/utils/MathQueryDataSetUtilsTest.java  |      0
 .../org/apache/iotdb/db/utils/MemUtilsTest.java    |      0
 .../apache/iotdb/db/utils/OpenFileNumUtilTest.java |      0
 .../java/org/apache/iotdb/db/utils/RandomNum.java  |      0
 .../org/apache/iotdb/db/utils/SchemaUtilsTest.java |      0
 .../apache/iotdb/db/utils/SerializeUtilsTest.java  |      0
 .../iotdb/db/utils/TsFileRewriteToolTest.java      |    470 +
 .../iotdb/db/utils/TypeInferenceUtilsTest.java     |      0
 .../db/utils/datastructure/BinaryTVListTest.java   |    111 +
 .../db/utils/datastructure/BooleanTVListTest.java  |    127 +
 .../db/utils/datastructure/DoubleTVListTest.java   |    137 +
 .../db/utils/datastructure/FloatTVListTest.java    |    137 +
 .../db/utils/datastructure/IntTVListTest.java      |    136 +
 .../db/utils/datastructure/LongTVListTest.java     |    158 +
 .../db/utils/datastructure/PrecisionTest.java      |      0
 .../db/utils/datastructure/TimeSelectorTest.java   |      0
 .../db/utils/datastructure/VectorTVListTest.java   |    208 +
 .../SlidingSizeWindowEvaluationHandlerTest.java    |      0
 .../SlidingTimeWindowEvaluationHandlerTest.java    |      0
 .../iotdb/db/writelog/IoTDBLogFileSizeTest.java    |    221 +
 .../apache/iotdb/db/writelog/PerformanceTest.java  |      0
 .../iotdb/db/writelog/WriteLogNodeManagerTest.java |      0
 .../apache/iotdb/db/writelog/WriteLogNodeTest.java |      0
 .../iotdb/db/writelog/io/LogWriterReaderTest.java  |      0
 .../db/writelog/io/MultiFileLogReaderTest.java     |      0
 .../db/writelog/recover/DeviceStringTest.java      |    132 +
 .../iotdb/db/writelog/recover/LogReplayerTest.java |    288 +
 .../recover/RecoverResourceFromReaderTest.java     |    231 +
 .../db/writelog/recover/SeqTsFileRecoverTest.java  |    567 +
 .../writelog/recover/UnseqTsFileRecoverTest.java   |    277 +
 .../src/test/resources/iotdb-engine.properties     |      0
 .../src/test/resources/iotdb-rest.properties       |     55 +
 iotdb/server/src/test/resources/logback.xml        |     58 +
 .../server}/src/test/resources/start-sync-test.sh  |      0
 .../server}/src/test/resources/stop-sync-test.sh   |      0
 .../src/test/resources/testcontainers.properties   |      0
 iotdb/service-rpc/pom.xml                          |    171 +
 .../org/apache/iotdb/rpc/AutoResizingBuffer.java   |      0
 .../iotdb/rpc/AutoScalingBufferReadTransport.java  |      0
 .../iotdb/rpc/AutoScalingBufferWriteTransport.java |      0
 .../apache/iotdb/rpc/BatchExecutionException.java  |      0
 .../iotdb/rpc/InfluxDBSynchronizedHandler.java     |      0
 .../apache/iotdb/rpc/IoTDBConnectionException.java |      0
 .../org/apache/iotdb/rpc/IoTDBJDBCDataSet.java     |      0
 .../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java |      0
 .../org/apache/iotdb/rpc/NonOpenTransport.java     |      0
 .../org/apache/iotdb/rpc/RedirectException.java    |      0
 .../main/java/org/apache/iotdb/rpc/RpcStat.java    |      0
 .../org/apache/iotdb/rpc/RpcTransportFactory.java  |      0
 .../main/java/org/apache/iotdb/rpc/RpcUtils.java   |    313 +
 .../iotdb/rpc/StatementExecutionException.java     |     54 +
 .../org/apache/iotdb/rpc/SynchronizedHandler.java  |      0
 .../rpc/TCompressedElasticFramedTransport.java     |      0
 .../org/apache/iotdb/rpc/TConfigurationConst.java  |      0
 .../apache/iotdb/rpc/TElasticFramedTransport.java  |      0
 .../iotdb/rpc/TNonblockingSocketWrapper.java       |      0
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |      0
 .../iotdb/rpc/TSnappyElasticFramedTransport.java   |      0
 .../java/org/apache/iotdb/rpc/TSocketWrapper.java  |      0
 .../rpc/TimeoutChangeableTFastFramedTransport.java |      0
 .../TimeoutChangeableTSnappyFramedTransport.java   |      0
 .../iotdb/rpc/TimeoutChangeableTransport.java      |      0
 .../org/apache/iotdb/rpc/TSStatusCodeTest.java     |      0
 {session => iotdb/session}/pom.xml                 |      0
 .../main/java/org/apache/iotdb/session/Config.java |     45 +
 .../org/apache/iotdb/session/InsertConsumer.java   |      0
 .../java/org/apache/iotdb/session/Session.java     |   2274 +
 .../apache/iotdb/session/SessionConnection.java    |    924 +
 .../org/apache/iotdb/session/SessionDataSet.java   |      0
 .../iotdb/session/pool/SessionDataSetWrapper.java  |      0
 .../org/apache/iotdb/session/pool/SessionPool.java |   1842 +
 .../iotdb/session/template/InternalNode.java       |      0
 .../iotdb/session/template/MeasurementNode.java    |      0
 .../apache/iotdb/session/template/Template.java    |    126 +
 .../iotdb/session/template/TemplateNode.java       |      0
 .../iotdb/session/template/TemplateQueryType.java  |     27 +
 .../apache/iotdb/session/util/SessionUtils.java    |    277 +
 .../org/apache/iotdb/session/util/ThreadUtils.java |      0
 .../session/IoTDBSessionDisableMemControlIT.java   |    205 +
 .../session/IoTDBSessionVectorABDeviceIT.java      |      0
 .../session/IoTDBSessionVectorAggregationIT.java   |    264 +
 .../IoTDBSessionVectorAggregationWithUnSeqIT.java  |      0
 .../iotdb/session/IoTDBSessionVectorInsertIT.java  |    516 +
 .../apache/iotdb/session/SessionCacheLeaderUT.java |   1222 +
 .../java/org/apache/iotdb/session/SessionTest.java |    510 +
 .../apache/iotdb/session/pool/SessionPoolTest.java |    483 +
 .../apache/iotdb/session/template/TemplateUT.java  |    103 +
 .../apache/iotdb/session/util/ThreadUtilsTest.java |      0
 .../src/test/resources/iotdb-engine.properties     |      0
 .../src/test/resources/iotdb-rest.properties       |     55 +
 .../session}/src/test/resources/logback.xml        |      0
 {site => iotdb/site}/README-zh.md                  |      0
 {site => iotdb/site}/README.md                     |      0
 {site => iotdb/site}/iotdb-doap.rdf                |      0
 iotdb/site/pom.xml                                 |    765 +
 {site => iotdb/site}/src/main/.asf.yaml            |      0
 iotdb/site/src/main/.vuepress/config.js            |   1716 +
 .../site}/src/main/.vuepress/enhanceApp.js         |      0
 .../site}/src/main/.vuepress/public/img/arrow.png  |    Bin
 .../.vuepress/public/img/contributor-avatar/cw.jpg |    Bin
 .../public/img/contributor-avatar/ericpai.jpg      |    Bin
 .../public/img/contributor-avatar/jlq.png          |    Bin
 .../public/img/contributor-avatar/kfx.jpeg         |    Bin
 .../public/img/contributor-avatar/qhl.jpg          |    Bin
 .../public/img/contributor-avatar/user.svg         |      0
 .../public/img/contributor-avatar/xdh.jpg          |    Bin
 .../public/img/contributor-avatar/xww.jpg          |    Bin
 .../public/img/contributor-avatar/yrzh.jpg         |    Bin
 .../.vuepress/public/img/contributor-avatar/yt.jpg |    Bin
 .../public/img/contributor-avatar/zss.jpg          |    Bin
 .../src/main/.vuepress/public/img/home-Slide1.png  |    Bin
 .../src/main/.vuepress/public/img/home-Slide2.png  |    Bin
 .../src/main/.vuepress/public/img/home-Slide3.png  |    Bin
 .../src/main/.vuepress/public/img/home-icon1.png   |    Bin
 .../src/main/.vuepress/public/img/home-icon2.png   |    Bin
 .../src/main/.vuepress/public/img/home-icon3.png   |    Bin
 .../src/main/.vuepress/public/img/home-icon4.png   |    Bin
 .../src/main/.vuepress/public/img/home-icon5.png   |    Bin
 .../src/main/.vuepress/public/img/home-icon6.png   |    Bin
 .../site}/src/main/.vuepress/public/img/logo.png   |    Bin
 .../site}/src/main/.vuepress/public/img/tools.jpg  |    Bin
 .../site}/src/main/.vuepress/styles/index.styl     |      0
 .../site}/src/main/.vuepress/styles/palette.styl   |      0
 .../theme/components/AlgoliaSearchBox.vue          |      0
 .../.vuepress/theme/components/DropdownLink.vue    |      0
 .../theme/components/DropdownTransition.vue        |      0
 .../src/main/.vuepress/theme/components/Home.vue   |      0
 .../main/.vuepress/theme/components/NavLink.vue    |      0
 .../main/.vuepress/theme/components/NavLinks.vue   |      0
 .../src/main/.vuepress/theme/components/Navbar.vue |      0
 .../src/main/.vuepress/theme/components/Page.vue   |      0
 .../main/.vuepress/theme/components/Sidebar.vue    |      0
 .../.vuepress/theme/components/SidebarButton.vue   |      0
 .../.vuepress/theme/components/SidebarGroup.vue    |      0
 .../.vuepress/theme/components/SidebarLink.vue     |      0
 .../.vuepress/theme/components/SidebarLinks.vue    |      0
 .../.vuepress/theme/global-components/Badge.vue    |      0
 .../theme/global-components/Contributor.vue        |      0
 .../.vuepress/theme/global-components/IoTDB.vue    |      0
 .../.vuepress/theme/global-components/IoTDBZH.vue  |      0
 .../site}/src/main/.vuepress/theme/index.js        |      0
 .../site}/src/main/.vuepress/theme/layouts/404.vue |      0
 .../src/main/.vuepress/theme/layouts/Layout.vue    |      0
 .../src/main/.vuepress/theme/styles/arrow.styl     |      0
 .../src/main/.vuepress/theme/styles/code.styl      |      0
 .../main/.vuepress/theme/styles/custom-blocks.styl |      0
 .../src/main/.vuepress/theme/styles/index.styl     |      0
 .../src/main/.vuepress/theme/styles/mobile.styl    |      0
 .../site}/src/main/.vuepress/theme/styles/toc.styl |      0
 .../src/main/.vuepress/theme/styles/wrapper.styl   |      0
 .../site}/src/main/.vuepress/theme/util/index.js   |      0
 {site => iotdb/site}/src/main/deploy.js            |      0
 iotdb/site/src/main/package.json                   |     44 +
 iotdb/spark-iotdb-connector/pom.xml                |    148 +
 .../org/apache/iotdb/spark/db/SQLConstant.java     |     28 +
 .../org/apache/iotdb/spark/db/Converter.scala      |      0
 .../org/apache/iotdb/spark/db/DefaultSource.scala  |     63 +
 .../org/apache/iotdb/spark/db/IoTDBOptions.scala   |      0
 .../scala/org/apache/iotdb/spark/db/IoTDBRDD.scala |    132 +
 .../org/apache/iotdb/spark/db/IoTDBRelation.scala  |      0
 .../org/apache/iotdb/spark/db/Transformer.scala    |    172 +
 .../scala/org/apache/iotdb/spark/db/package.scala  |      0
 .../iotdb/spark/db/tools/DataFrameTools.java       |    162 +
 .../src/test/resources/iotdb-engine.properties     |      0
 .../apache/iotdb/spark/db/EnvironmentUtils.java    |    271 +
 .../org/apache/iotdb/spark/db/IoTDBTest.scala      |    151 +
 .../org/apache/iotdb/spark/db/IoTDBWriteTest.scala |    117 +
 {spark-tsfile => iotdb/spark-tsfile}/pom.xml       |      0
 .../iotdb/spark/tsfile/io/TsFileOutputFormat.java  |      0
 .../iotdb/spark/tsfile/io/TsFileRecordWriter.java  |      0
 .../org/apache/iotdb/spark/tsfile/qp/Executor.java |      0
 .../iotdb/spark/tsfile/qp/QueryProcessor.java      |      0
 .../spark/tsfile/qp/common/BasicOperator.java      |      0
 .../spark/tsfile/qp/common/FilterOperator.java     |      0
 .../iotdb/spark/tsfile/qp/common/Operator.java     |      0
 .../iotdb/spark/tsfile/qp/common/SQLConstant.java  |      0
 .../iotdb/spark/tsfile/qp/common/SingleQuery.java  |      0
 .../iotdb/spark/tsfile/qp/common/TSQueryPlan.java  |      0
 .../qp/exception/BasicOperatorException.java       |      0
 .../tsfile/qp/exception/DNFOptimizeException.java  |      0
 .../qp/exception/LogicalOptimizeException.java     |      0
 .../tsfile/qp/exception/MergeFilterException.java  |      0
 .../qp/exception/QueryOperatorException.java       |      0
 .../qp/exception/QueryProcessorException.java      |      0
 .../tsfile/qp/exception/RemoveNotException.java    |      0
 .../tsfile/qp/optimizer/DNFFilterOptimizer.java    |      0
 .../tsfile/qp/optimizer/IFilterOptimizer.java      |      0
 .../qp/optimizer/MergeSingleFilterOptimizer.java   |      0
 .../tsfile/qp/optimizer/PhysicalOptimizer.java     |      0
 .../tsfile/qp/optimizer/RemoveNotOptimizer.java    |      0
 .../org/apache/iotdb/spark/tsfile/Converter.scala  |      0
 .../apache/iotdb/spark/tsfile/DefaultSource.scala  |      0
 .../iotdb/spark/tsfile/NarrowConverter.scala       |    596 +
 .../spark/tsfile/NarrowTsFileOutputWriter.scala    |      0
 .../apache/iotdb/spark/tsfile/Transformer.scala    |      0
 .../iotdb/spark/tsfile/TsFileWriterFactory.scala   |      0
 .../apache/iotdb/spark/tsfile/WideConverter.scala  |    502 +
 .../spark/tsfile/WideTsFileOutputWriter.scala      |      0
 .../org/apache/iotdb/spark/tsfile/package.scala    |      0
 .../apache/iotdb/spark/constant/TestConstant.java  |      0
 .../org/apache/iotdb/spark/tool/TsFileExample.java |    111 +
 .../apache/iotdb/spark/tool/TsFileWriteTool.java   |    280 +
 .../apache/iotdb/spark/tsfile/ConverterTest.scala  |      0
 .../apache/iotdb/spark/tsfile/HDFSInputTest.java   |      0
 .../org/apache/iotdb/spark/tsfile/TSFileSuit.scala |      0
 {test => iotdb/test}/e2e/base/docker-compose.yaml  |      0
 {test => iotdb/test}/e2e/cases/README.md           |      0
 {test => iotdb/test}/e2e/cases/cli/README.md       |      0
 {test => iotdb/test}/e2e/cases/cli/cleanup.sh      |      0
 .../test}/e2e/cases/cli/docker-compose.yaml        |      0
 {test => iotdb/test}/e2e/cases/cli/res/init.sql    |      0
 {test => iotdb/test}/e2e/cases/cli/run.sh          |      0
 {testcontainer => iotdb/testcontainer}/Readme.md   |      0
 {testcontainer => iotdb/testcontainer}/pom.xml     |      0
 .../test/java/org/apache/iotdb/db/sql/Cases.java   |   1006 +
 .../java/org/apache/iotdb/db/sql/ClusterIT.java    |      0
 .../iotdb/db/sql/ClusterSessionSimpleIT.java       |      0
 .../java/org/apache/iotdb/db/sql/SingleNodeIT.java |      0
 .../db/sql/nodes3/AbstractThreeNodeClusterIT.java  |      0
 .../iotdb/db/sql/nodes3/ThreeNodeCluster1IT.java   |      0
 .../iotdb/db/sql/nodes3/ThreeNodeCluster2IT.java   |      0
 .../db/sql/nodes5/AbstractFiveNodeClusterIT.java   |      0
 .../iotdb/db/sql/nodes5/FiveNodeCluster1IT.java    |      0
 .../iotdb/db/sql/nodes5/FiveNodeCluster2IT.java    |      0
 .../iotdb/db/sql/nodes5/FiveNodeCluster4IT.java    |      0
 .../NoProjectNameDockerComposeContainer.java       |      0
 .../src/test/resources/1node/docker-compose.yaml   |      0
 .../test/resources/1node/iotdb-cluster.properties  |      0
 .../src/test/resources/3nodes/docker-compose.yaml  |      0
 .../test/resources/3nodes/iotdb-cluster.properties |      0
 .../src/test/resources/5nodes/docker-compose.yaml  |      0
 .../test/resources/5nodes/iotdb-cluster.properties |      0
 .../src/test/resources/iotdb-engine.properties     |      0
 .../src/test/resources/logback-container.xml       |      0
 .../testcontainer}/src/test/resources/logback.xml  |      0
 .../testcontainer}/src/tool/README.md              |      0
 .../testcontainer}/src/tool/parser.py              |      0
 {thrift-cluster => iotdb/thrift-cluster}/README.md |      0
 {thrift-cluster => iotdb/thrift-cluster}/pom.xml   |      0
 .../thrift-cluster}/rpc-changelist.md              |      0
 .../thrift-cluster/src/main/thrift/cluster.thrift  |    575 +
 .../thrift-influxdb}/README.md                     |      0
 {thrift-influxdb => iotdb/thrift-influxdb}/pom.xml |      0
 .../src/main/thrift/influxdb.thrift                |      0
 .../generated-sources-python/influxdb/ttypes.py    |    684 +
 .../influxdb/rpc/thrift/TSOpenSessionReq.java      |    745 +
 .../influxdb/rpc/thrift/TSWritePointsReq.java      |    897 +
 {thrift-sync => iotdb/thrift-sync}/README.md       |      0
 {thrift-sync => iotdb/thrift-sync}/pom.xml         |      0
 .../thrift-sync}/rpc-changelist.md                 |      0
 iotdb/thrift-sync/src/main/thrift/sync.thrift      |     51 +
 iotdb/thrift-sync/target 2/checkstyle-report.xml   |   1716 +
 .../target 2/generated-sources-go/sync/sync.go     |   2691 +
 .../iotdb/service/sync/thrift/SyncService.java     |   6933 +
 {thrift => iotdb/thrift}/README.md                 |      0
 {thrift => iotdb/thrift}/pom.xml                   |      0
 iotdb/thrift/rpc-changelist.md                     |    205 +
 iotdb/thrift/src/main/thrift/rpc.thrift            |    491 +
 {tools => iotdb/tools}/check_sigs.sh               |      0
 {tools => iotdb/tools}/clean-site.sh               |      0
 {tools => iotdb/tools}/common.sh                   |      0
 {tools => iotdb/tools}/download_staged_release.sh  |      0
 {tsfile => iotdb/tsfile}/README.md                 |      0
 {tsfile => iotdb/tsfile}/format-changelist.md      |      0
 iotdb/tsfile/pom.xml                               |    194 +
 .../apache/iotdb/tsfile/common/cache/Cache.java    |      0
 .../apache/iotdb/tsfile/common/cache/LRUCache.java |      0
 .../iotdb/tsfile/common/conf/TSFileConfig.java     |    474 +
 .../iotdb/tsfile/common/conf/TSFileDescriptor.java |    179 +
 .../tsfile/common/constant/JsonFormatConstant.java |      0
 .../tsfile/common/constant/QueryConstant.java      |      0
 .../tsfile/common/constant/TsFileConstant.java     |      0
 .../apache/iotdb/tsfile/compress/ICompressor.java  |      0
 .../iotdb/tsfile/compress/IUnCompressor.java       |      0
 .../tsfile/encoding/bitpacking/IntPacker.java      |      0
 .../tsfile/encoding/bitpacking/LongPacker.java     |      0
 .../tsfile/encoding/decoder/BitmapDecoder.java     |      0
 .../iotdb/tsfile/encoding/decoder/Decoder.java     |      0
 .../encoding/decoder/DeltaBinaryDecoder.java       |      0
 .../tsfile/encoding/decoder/DictionaryDecoder.java |      0
 .../encoding/decoder/DoublePrecisionDecoderV1.java |      0
 .../encoding/decoder/DoublePrecisionDecoderV2.java |      0
 .../tsfile/encoding/decoder/FloatDecoder.java      |      0
 .../tsfile/encoding/decoder/GorillaDecoderV1.java  |      0
 .../tsfile/encoding/decoder/GorillaDecoderV2.java  |      0
 .../tsfile/encoding/decoder/IntGorillaDecoder.java |      0
 .../tsfile/encoding/decoder/IntRleDecoder.java     |      0
 .../encoding/decoder/LongGorillaDecoder.java       |      0
 .../tsfile/encoding/decoder/LongRleDecoder.java    |      0
 .../tsfile/encoding/decoder/PlainDecoder.java      |      0
 .../encoding/decoder/RegularDataDecoder.java       |      0
 .../iotdb/tsfile/encoding/decoder/RleDecoder.java  |      0
 .../encoding/decoder/SinglePrecisionDecoderV1.java |      0
 .../encoding/decoder/SinglePrecisionDecoderV2.java |      0
 .../tsfile/encoding/encoder/BitmapEncoder.java     |      0
 .../encoding/encoder/DeltaBinaryEncoder.java       |    336 +
 .../tsfile/encoding/encoder/DictionaryEncoder.java |      0
 .../encoding/encoder/DoublePrecisionEncoderV1.java |      0
 .../encoding/encoder/DoublePrecisionEncoderV2.java |      0
 .../iotdb/tsfile/encoding/encoder/Encoder.java     |      0
 .../tsfile/encoding/encoder/FloatEncoder.java      |      0
 .../tsfile/encoding/encoder/GorillaEncoderV1.java  |      0
 .../tsfile/encoding/encoder/GorillaEncoderV2.java  |      0
 .../tsfile/encoding/encoder/IntGorillaEncoder.java |      0
 .../tsfile/encoding/encoder/IntRleEncoder.java     |      0
 .../encoding/encoder/LongGorillaEncoder.java       |      0
 .../tsfile/encoding/encoder/LongRleEncoder.java    |      0
 .../tsfile/encoding/encoder/PlainEncoder.java      |      0
 .../encoding/encoder/RegularDataEncoder.java       |      0
 .../iotdb/tsfile/encoding/encoder/RleEncoder.java  |      0
 .../iotdb/tsfile/encoding/encoder/SDTEncoder.java  |      0
 .../encoding/encoder/SinglePrecisionEncoderV1.java |      0
 .../encoding/encoder/SinglePrecisionEncoderV2.java |      0
 .../tsfile/encoding/encoder/TSEncodingBuilder.java |      0
 .../exception/NotCompatibleTsFileException.java    |      0
 .../tsfile/exception/NotImplementedException.java  |      0
 .../iotdb/tsfile/exception/NullFieldException.java |      0
 .../tsfile/exception/TsFileRuntimeException.java   |      0
 .../tsfile/exception/cache/CacheException.java     |      0
 .../CompressionTypeNotSupportedException.java      |      0
 .../compress/GZIPCompressOverflowException.java    |      0
 .../encoding/TsFileDecodingException.java          |      0
 .../encoding/TsFileEncodingException.java          |      0
 .../filter/QueryFilterOptimizationException.java   |      0
 .../exception/filter/StatisticsClassException.java |      0
 .../filter/UnSupportFilterDataTypeException.java   |      0
 .../exception/write/NoMeasurementException.java    |      0
 .../tsfile/exception/write/PageException.java      |      0
 .../write/TsFileNotCompleteException.java          |      0
 .../write/UnSupportedDataTypeException.java        |      0
 .../write/UnknownColumnTypeException.java          |      0
 .../exception/write/WriteProcessException.java     |      0
 .../org/apache/iotdb/tsfile/file/MetaMarker.java   |     52 +
 .../iotdb/tsfile/file/header/ChunkGroupHeader.java |      0
 .../iotdb/tsfile/file/header/ChunkHeader.java      |    297 +
 .../iotdb/tsfile/file/header/PageHeader.java       |      0
 .../tsfile/file/metadata/AlignedChunkMetadata.java |      0
 .../file/metadata/AlignedTimeSeriesMetadata.java   |    142 +
 .../tsfile/file/metadata/ChunkGroupMetadata.java   |      0
 .../iotdb/tsfile/file/metadata/ChunkMetadata.java  |      0
 .../iotdb/tsfile/file/metadata/IChunkMetadata.java |      0
 .../tsfile/file/metadata/ITimeSeriesMetadata.java  |      0
 .../file/metadata/MetadataIndexConstructor.java    |      0
 .../tsfile/file/metadata/MetadataIndexEntry.java   |      0
 .../tsfile/file/metadata/MetadataIndexNode.java    |      0
 .../tsfile/file/metadata/TimeseriesMetadata.java   |      0
 .../iotdb/tsfile/file/metadata/TsFileMetadata.java |      0
 .../file/metadata/enums/CompressionType.java       |      0
 .../file/metadata/enums/MetadataIndexNodeType.java |      0
 .../tsfile/file/metadata/enums/TSDataType.java     |    124 +
 .../tsfile/file/metadata/enums/TSEncoding.java     |      0
 .../file/metadata/statistics/BinaryStatistics.java |    222 +
 .../metadata/statistics/BooleanStatistics.java     |    235 +
 .../file/metadata/statistics/DoubleStatistics.java |    280 +
 .../file/metadata/statistics/FloatStatistics.java  |    272 +
 .../metadata/statistics/IntegerStatistics.java     |    272 +
 .../file/metadata/statistics/LongStatistics.java   |    281 +
 .../file/metadata/statistics/Statistics.java       |   1106 +
 .../file/metadata/statistics/TimeStatistics.java   |      0
 .../iotdb/tsfile/fileSystem/FSFactoryProducer.java |      0
 .../org/apache/iotdb/tsfile/fileSystem/FSType.java |      0
 .../fileInputFactory/FileInputFactory.java         |      0
 .../fileInputFactory/HDFSInputFactory.java         |      0
 .../fileInputFactory/LocalFSInputFactory.java      |      0
 .../fileOutputFactory/FileOutputFactory.java       |      0
 .../fileOutputFactory/HDFSOutputFactory.java       |      0
 .../fileOutputFactory/LocalFSOutputFactory.java    |      0
 .../tsfile/fileSystem/fsFactory/FSFactory.java     |      0
 .../tsfile/fileSystem/fsFactory/HDFSFactory.java   |      0
 .../fileSystem/fsFactory/LocalFSFactory.java       |      0
 .../apache/iotdb/tsfile/read/TimeValuePair.java    |      0
 .../iotdb/tsfile/read/TsFileCheckStatus.java       |     26 +
 .../org/apache/iotdb/tsfile/read/TsFileReader.java |      0
 .../iotdb/tsfile/read/TsFileRestorableReader.java  |      0
 .../iotdb/tsfile/read/TsFileSequenceReader.java    |   1681 +
 .../iotdb/tsfile/read/UnClosedTsFileReader.java    |      0
 .../apache/iotdb/tsfile/read/common/BatchData.java |      0
 .../iotdb/tsfile/read/common/BatchDataFactory.java |      0
 .../org/apache/iotdb/tsfile/read/common/Chunk.java |    161 +
 .../tsfile/read/common/DescReadBatchData.java      |      0
 .../tsfile/read/common/DescReadWriteBatchData.java |      0
 .../tsfile/read/common/ExceptionBatchData.java     |      0
 .../org/apache/iotdb/tsfile/read/common/Field.java |      0
 .../tsfile/read/common/IBatchDataIterator.java     |      0
 .../org/apache/iotdb/tsfile/read/common/Path.java  |      0
 .../apache/iotdb/tsfile/read/common/RowRecord.java |    106 +
 .../iotdb/tsfile/read/common/SignalBatchData.java  |      0
 .../apache/iotdb/tsfile/read/common/TimeRange.java |      0
 .../read/controller/CachedChunkLoaderImpl.java     |      0
 .../iotdb/tsfile/read/controller/IChunkLoader.java |      0
 .../read/controller/IChunkMetadataLoader.java      |      0
 .../tsfile/read/controller/IMetadataQuerier.java   |      0
 .../read/controller/MetadataQuerierByFileImpl.java |      0
 .../tsfile/read/expression/ExpressionType.java     |      0
 .../tsfile/read/expression/IBinaryExpression.java  |      0
 .../iotdb/tsfile/read/expression/IExpression.java  |      0
 .../tsfile/read/expression/IUnaryExpression.java   |      0
 .../tsfile/read/expression/QueryExpression.java    |      0
 .../read/expression/impl/BinaryExpression.java     |      0
 .../read/expression/impl/GlobalTimeExpression.java |      0
 .../expression/impl/SingleSeriesExpression.java    |      0
 .../read/expression/util/ExpressionOptimizer.java  |      0
 .../read/expression/util/ExpressionPrinter.java    |      0
 .../iotdb/tsfile/read/filter/GroupByFilter.java    |      0
 .../tsfile/read/filter/GroupByMonthFilter.java     |      0
 .../iotdb/tsfile/read/filter/TimeFilter.java       |      0
 .../iotdb/tsfile/read/filter/ValueFilter.java      |      0
 .../tsfile/read/filter/basic/BinaryFilter.java     |      0
 .../iotdb/tsfile/read/filter/basic/Filter.java     |      0
 .../tsfile/read/filter/basic/UnaryFilter.java      |      0
 .../tsfile/read/filter/factory/FilterFactory.java  |      0
 .../read/filter/factory/FilterSerializeId.java     |      0
 .../tsfile/read/filter/factory/FilterType.java     |      0
 .../tsfile/read/filter/operator/AndFilter.java     |      0
 .../iotdb/tsfile/read/filter/operator/Eq.java      |      0
 .../iotdb/tsfile/read/filter/operator/Gt.java      |      0
 .../iotdb/tsfile/read/filter/operator/GtEq.java    |      0
 .../iotdb/tsfile/read/filter/operator/In.java      |      0
 .../iotdb/tsfile/read/filter/operator/Like.java    |      0
 .../iotdb/tsfile/read/filter/operator/Lt.java      |      0
 .../iotdb/tsfile/read/filter/operator/LtEq.java    |      0
 .../iotdb/tsfile/read/filter/operator/NotEq.java   |      0
 .../tsfile/read/filter/operator/NotFilter.java     |      0
 .../tsfile/read/filter/operator/OrFilter.java      |      0
 .../iotdb/tsfile/read/filter/operator/Regexp.java  |      0
 .../query/dataset/DataSetWithTimeGenerator.java    |      0
 .../query/dataset/DataSetWithoutTimeGenerator.java |      0
 .../tsfile/read/query/dataset/EmptyDataSet.java    |      0
 .../tsfile/read/query/dataset/QueryDataSet.java    |      0
 .../query/executor/ExecutorWithTimeGenerator.java  |      0
 .../tsfile/read/query/executor/QueryExecutor.java  |      0
 .../tsfile/read/query/executor/TsFileExecutor.java |      0
 .../read/query/timegenerator/TimeGenerator.java    |    135 +
 .../query/timegenerator/TsFileTimeGenerator.java   |     58 +
 .../read/query/timegenerator/node/AndNode.java     |      0
 .../read/query/timegenerator/node/LeafNode.java    |      0
 .../tsfile/read/query/timegenerator/node/Node.java |      0
 .../read/query/timegenerator/node/NodeType.java    |      0
 .../read/query/timegenerator/node/OrNode.java      |      0
 .../tsfile/read/reader/IAlignedPageReader.java     |      0
 .../iotdb/tsfile/read/reader/IBatchReader.java     |      0
 .../iotdb/tsfile/read/reader/IChunkReader.java     |      0
 .../iotdb/tsfile/read/reader/IPageReader.java      |      0
 .../iotdb/tsfile/read/reader/IPointReader.java     |      0
 .../iotdb/tsfile/read/reader/LocalTsFileInput.java |      0
 .../iotdb/tsfile/read/reader/TsFileInput.java      |      0
 .../read/reader/chunk/AlignedChunkReader.java      |      0
 .../chunk/AlignedChunkReaderByTimestamp.java       |      0
 .../tsfile/read/reader/chunk/ChunkReader.java      |      0
 .../read/reader/chunk/ChunkReaderByTimestamp.java  |      0
 .../tsfile/read/reader/page/AlignedPageReader.java |    152 +
 .../iotdb/tsfile/read/reader/page/PageReader.java  |      0
 .../tsfile/read/reader/page/TimePageReader.java    |    109 +
 .../tsfile/read/reader/page/ValuePageReader.java   |    229 +
 .../reader/series/AbstractFileSeriesReader.java    |      0
 .../read/reader/series/EmptyFileSeriesReader.java  |      0
 .../read/reader/series/FileSeriesReader.java       |      0
 .../reader/series/FileSeriesReaderByTimestamp.java |      0
 .../java/org/apache/iotdb/tsfile/utils/Binary.java |      0
 .../java/org/apache/iotdb/tsfile/utils/BitMap.java |      0
 .../org/apache/iotdb/tsfile/utils/BloomFilter.java |      0
 .../org/apache/iotdb/tsfile/utils/BytesUtils.java  |    877 +
 .../apache/iotdb/tsfile/utils/FilePathUtils.java   |      0
 .../java/org/apache/iotdb/tsfile/utils/Loader.java |      0
 .../iotdb/tsfile/utils/MeasurementGroup.java       |     65 +
 .../apache/iotdb/tsfile/utils/Murmur128Hash.java   |      0
 .../java/org/apache/iotdb/tsfile/utils/Pair.java   |      0
 .../org/apache/iotdb/tsfile/utils/PublicBAOS.java  |      0
 .../iotdb/tsfile/utils/RamUsageEstimator.java      |      0
 .../tsfile/utils/ReadWriteForEncodingUtils.java    |      0
 .../iotdb/tsfile/utils/ReadWriteIOUtils.java       |      0
 .../apache/iotdb/tsfile/utils/StringContainer.java |      0
 .../org/apache/iotdb/tsfile/utils/TsFileUtils.java |      0
 .../apache/iotdb/tsfile/utils/TsPrimitiveType.java |      0
 .../tsfile/v2/file/footer/ChunkGroupFooterV2.java  |      0
 .../iotdb/tsfile/v2/file/header/ChunkHeaderV2.java |      0
 .../iotdb/tsfile/v2/file/header/PageHeaderV2.java  |      0
 .../tsfile/v2/file/metadata/ChunkMetadataV2.java   |      0
 .../v2/file/metadata/MetadataIndexEntryV2.java     |      0
 .../v2/file/metadata/MetadataIndexNodeV2.java      |      0
 .../v2/file/metadata/TimeseriesMetadataV2.java     |      0
 .../tsfile/v2/file/metadata/TsFileMetadataV2.java  |      0
 .../v2/file/metadata/statistics/StatisticsV2.java  |      0
 .../tsfile/v2/read/TsFileSequenceReaderForV2.java  |      0
 .../tsfile/v2/read/reader/page/PageReaderV2.java   |      0
 .../apache/iotdb/tsfile/write/TsFileWriter.java    |    645 +
 .../write/chunk/AlignedChunkGroupWriterImpl.java   |    301 +
 .../tsfile/write/chunk/AlignedChunkWriterImpl.java |    189 +
 .../iotdb/tsfile/write/chunk/ChunkWriterImpl.java  |      0
 .../tsfile/write/chunk/IChunkGroupWriter.java      |     96 +
 .../iotdb/tsfile/write/chunk/IChunkWriter.java     |      0
 .../chunk/NonAlignedChunkGroupWriterImpl.java      |    188 +
 .../iotdb/tsfile/write/chunk/TimeChunkWriter.java  |      0
 .../iotdb/tsfile/write/chunk/ValueChunkWriter.java |    309 +
 .../apache/iotdb/tsfile/write/page/PageWriter.java |      0
 .../iotdb/tsfile/write/page/TimePageWriter.java    |      0
 .../iotdb/tsfile/write/page/ValuePageWriter.java   |    316 +
 .../apache/iotdb/tsfile/write/record/TSRecord.java |      0
 .../apache/iotdb/tsfile/write/record/Tablet.java   |    312 +
 .../write/record/datapoint/BooleanDataPoint.java   |      0
 .../tsfile/write/record/datapoint/DataPoint.java   |      0
 .../write/record/datapoint/DoubleDataPoint.java    |      0
 .../write/record/datapoint/FloatDataPoint.java     |      0
 .../write/record/datapoint/IntDataPoint.java       |      0
 .../write/record/datapoint/LongDataPoint.java      |      0
 .../write/record/datapoint/StringDataPoint.java    |      0
 .../tsfile/write/schema/IMeasurementSchema.java    |      0
 .../apache/iotdb/tsfile/write/schema/Schema.java   |    110 +
 .../tsfile/write/schema/TimeseriesSchema.java      |      0
 .../write/schema/UnaryMeasurementSchema.java       |    413 +
 .../write/schema/VectorMeasurementSchema.java      |      0
 .../write/writer/ForceAppendTsFileWriter.java      |      0
 .../iotdb/tsfile/write/writer/IDataWriter.java     |      0
 .../tsfile/write/writer/LocalTsFileOutput.java     |     89 +
 .../write/writer/RestorableTsFileIOWriter.java     |      0
 .../iotdb/tsfile/write/writer/TsFileIOWriter.java  |    482 +
 .../iotdb/tsfile/write/writer/TsFileOutput.java    |      0
 .../apache/iotdb/tsfile/common/LRUCacheTest.java   |      0
 .../apache/iotdb/tsfile/compress/CompressTest.java |      0
 .../org/apache/iotdb/tsfile/compress/GZIPTest.java |      0
 .../org/apache/iotdb/tsfile/compress/LZ4Test.java  |      0
 .../apache/iotdb/tsfile/compress/SnappyTest.java   |      0
 .../apache/iotdb/tsfile/constant/TestConstant.java |      0
 .../iotdb/tsfile/encoding/SDTEncoderTest.java      |      0
 .../tsfile/encoding/bitpacking/IntPackerTest.java  |      0
 .../tsfile/encoding/bitpacking/LongPackerTest.java |      0
 .../tsfile/encoding/decoder/BitmapDecoderTest.java |      0
 .../encoding/decoder/DictionaryDecoderTest.java    |      0
 .../tsfile/encoding/decoder/FloatDecoderTest.java  |      0
 .../encoding/decoder/GorillaDecoderV1Test.java     |      0
 .../encoding/decoder/GorillaDecoderV2Test.java     |      0
 .../tsfile/encoding/decoder/IntRleDecoderTest.java |      0
 .../encoding/decoder/LongRleDecoderTest.java       |      0
 .../delta/DeltaBinaryEncoderIntegerTest.java       |      0
 .../decoder/delta/DeltaBinaryEncoderLongTest.java  |      0
 .../regular/RegularDataEncoderIntegerTest.java     |      0
 .../regular/RegularDataEncoderLongTest.java        |      0
 .../iotdb/tsfile/file/header/PageHeaderTest.java   |      0
 .../file/metadata/MetadataIndexNodeTest.java       |      0
 .../file/metadata/TimeseriesMetadataTest.java      |      0
 .../tsfile/file/metadata/TsFileMetadataTest.java   |      0
 .../metadata/statistics/BooleanStatisticsTest.java |      0
 .../metadata/statistics/DoubleStatisticsTest.java  |    135 +
 .../metadata/statistics/FloatStatisticsTest.java   |      0
 .../metadata/statistics/IntegerStatisticsTest.java |      0
 .../metadata/statistics/LongStatisticsTest.java    |      0
 .../metadata/statistics/StringStatisticsTest.java  |      0
 .../tsfile/file/metadata/utils/TestHelper.java     |     77 +
 .../iotdb/tsfile/file/metadata/utils/Utils.java    |      0
 .../apache/iotdb/tsfile/read/ExpressionTest.java   |      0
 .../iotdb/tsfile/read/GetAllDevicesTest.java       |      0
 ...easurementChunkMetadataListMapIteratorTest.java |      0
 .../iotdb/tsfile/read/ReadInPartitionTest.java     |      0
 .../org/apache/iotdb/tsfile/read/ReadTest.java     |      0
 .../iotdb/tsfile/read/TimePlainEncodeReadTest.java |      0
 .../tsfile/read/TimeSeriesMetadataReadTest.java    |      0
 .../apache/iotdb/tsfile/read/TsFileReaderTest.java |    477 +
 .../tsfile/read/TsFileRestorableReaderTest.java    |      0
 .../tsfile/read/TsFileSequenceReaderTest.java      |      0
 .../iotdb/tsfile/read/common/BatchDataTest.java    |      0
 .../apache/iotdb/tsfile/read/common/FieldTest.java |      0
 .../apache/iotdb/tsfile/read/common/PathTest.java  |      0
 .../iotdb/tsfile/read/common/TimeRangeTest.java    |      0
 .../tsfile/read/controller/ChunkLoaderTest.java    |      0
 .../controller/IMetadataQuerierByFileImplTest.java |      0
 .../tsfile/read/filter/FilterSerializeTest.java    |      0
 .../tsfile/read/filter/GroupByFilterTest.java      |      0
 .../tsfile/read/filter/GroupByMonthFilterTest.java |      0
 .../read/filter/IExpressionOptimizerTest.java      |      0
 .../read/filter/MinTimeMaxTimeFilterTest.java      |      0
 .../iotdb/tsfile/read/filter/OperatorTest.java     |      0
 .../tsfile/read/filter/StatisticsFilterTest.java   |      0
 .../read/query/executor/QueryExecutorTest.java     |      0
 .../tsfile/read/query/timegenerator/NodeTest.java  |      0
 .../read/query/timegenerator/ReadWriteTest.java    |    185 +
 .../query/timegenerator/ReaderByTimestampTest.java |      0
 .../timegenerator/TimeGeneratorReadEmptyTest.java  |    149 +
 .../timegenerator/TimeGeneratorReadWriteTest.java  |    185 +
 .../query/timegenerator/TimeGeneratorTest.java     |      0
 .../TsFileGeneratorForSeriesReaderByTimestamp.java |    282 +
 .../iotdb/tsfile/read/reader/FakedBatchReader.java |      0
 .../tsfile/read/reader/FakedMultiBatchReader.java  |      0
 .../tsfile/read/reader/FakedTimeGenerator.java     |     76 +
 .../iotdb/tsfile/read/reader/PageReaderTest.java   |      0
 .../iotdb/tsfile/read/reader/ReaderTest.java       |      0
 .../org/apache/iotdb/tsfile/utils/BitMapTest.java  |      0
 .../apache/iotdb/tsfile/utils/BloomFilterTest.java |      0
 .../apache/iotdb/tsfile/utils/BytesUtilsTest.java  |      0
 .../apache/iotdb/tsfile/utils/FileGenerator.java   |    360 +
 .../iotdb/tsfile/utils/FilePathUtilsTest.java      |      0
 .../org/apache/iotdb/tsfile/utils/FileUtils.java   |      0
 .../apache/iotdb/tsfile/utils/FileUtilsTest.java   |      0
 .../org/apache/iotdb/tsfile/utils/PairTest.java    |      0
 .../utils/ReadWriteForEncodingUtilsTest.java       |      0
 .../iotdb/tsfile/utils/ReadWriteIOUtilsTest.java   |      0
 .../tsfile/utils/ReadWriteStreamUtilsTest.java     |      0
 .../tsfile/utils/ReadWriteToBytesUtilsTest.java    |      0
 .../org/apache/iotdb/tsfile/utils/RecordUtils.java |      0
 .../apache/iotdb/tsfile/utils/RecordUtilsTest.java |    190 +
 .../iotdb/tsfile/utils/StringContainerTest.java    |      0
 .../iotdb/tsfile/utils/TsFileGeneratorForTest.java |    402 +
 .../apache/iotdb/tsfile/utils/TsFileUtilsTest.java |      0
 .../iotdb/tsfile/utils/TsPrimitiveTypeTest.java    |      0
 .../tsfile/write/DefaultSchemaTemplateTest.java    |    116 +
 .../tsfile/write/MetadataIndexConstructorTest.java |    495 +
 .../org/apache/iotdb/tsfile/write/PerfTest.java    |    240 +
 .../iotdb/tsfile/write/ReadPageInMemTest.java      |    197 +
 ...SameMeasurementsWithDifferentDataTypesTest.java |    215 +
 .../iotdb/tsfile/write/TsFileIOWriterTest.java     |    230 +
 .../iotdb/tsfile/write/TsFileReadWriteTest.java    |    253 +
 .../iotdb/tsfile/write/TsFileWriteApiTest.java     |    331 +
 .../iotdb/tsfile/write/TsFileWriterTest.java       |    368 +
 .../org/apache/iotdb/tsfile/write/WriteTest.java   |    288 +
 .../write/schema/converter/SchemaBuilderTest.java  |    153 +
 .../write/writer/AlignedChunkWriterImplTest.java   |    182 +
 .../write/writer/ForceAppendTsFileWriterTest.java  |    123 +
 .../writer/MeasurementSchemaSerializeTest.java     |     57 +
 .../iotdb/tsfile/write/writer/PageWriterTest.java  |    219 +
 .../write/writer/RestorableTsFileIOWriterTest.java |    466 +
 .../tsfile/write/writer/TestTsFileOutput.java      |      0
 .../tsfile/write/writer/TimeChunkWriterTest.java   |    111 +
 .../tsfile/write/writer/TimePageWriterTest.java    |      0
 .../tsfile/write/writer/ValueChunkWriterTest.java  |    109 +
 .../tsfile/write/writer/ValuePageWriterTest.java   |      0
 .../write/writer/VectorMeasurementSchemaStub.java  |      0
 .../tsfile}/src/test/resources/logback.xml         |      0
 .../zeppelin-interpreter}/IoTDB-Zeppelin-Demo.zpln |      0
 .../zeppelin-interpreter}/pom.xml                  |      0
 .../apache/zeppelin/iotdb/IoTDBInterpreter.java    |      0
 .../src/main/resources/interpreter-setting.json    |      0
 .../zeppelin/iotdb/IoTDBInterpreterTest.java       |    392 +
 .../main/java/org/apache/iotdb/jdbc/Config.java    |     59 -
 .../main/java/org/apache/iotdb/jdbc/Constant.java  |     49 -
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |    561 -
 .../apache/iotdb/jdbc/IoTDBConnectionParams.java   |    113 -
 .../src/main/java/org/apache/iotdb/jdbc/Utils.java |    119 -
 .../test/java/org/apache/iotdb/jdbc/UtilsTest.java |    136 -
 jenkins.pom                                        |     68 -
 metrics/ReadMe.md                                  |    183 -
 .../dropwizard/DropwizardMetricManager.java        |    420 -
 .../iotdb/metrics/dropwizard/MetricName.java       |    134 -
 .../prometheus/DropwizardMetricsExporter.java      |    196 -
 .../reporter/prometheus/PrometheusReporter.java    |    231 -
 .../reporter/prometheus/PushGateway.java           |    151 -
 .../dropwizard/DropwizardMetricManagerTest.java    |    296 -
 .../main/assembly/resources/conf/iotdb-metric.yml  |     49 -
 .../apache/iotdb/metrics/CompositeReporter.java    |     89 -
 .../iotdb/metrics/DoNothingMetricService.java      |     34 -
 .../org/apache/iotdb/metrics/MetricManager.java    |    173 -
 .../org/apache/iotdb/metrics/MetricService.java    |    160 -
 .../apache/iotdb/metrics/config/MetricConfig.java  |    153 -
 .../metrics/config/MetricConfigDescriptor.java     |    129 -
 .../apache/iotdb/metrics/config/ReloadLevel.java   |     28 -
 .../iotdb/metrics/impl/DoNothingMetricManager.java |    169 -
 .../java/org/apache/iotdb/metrics/type/Gauge.java  |     34 -
 .../iotdb/metrics/utils/PredefinedMetric.java      |     25 -
 .../apache/iotdb/metrics/utils/ReporterType.java   |     33 -
 .../iotdb/metrics/config/MetricConfigTest.java     |     60 -
 .../interface/src/test/resources/iotdb-metric.yml  |     46 -
 .../micrometer/MicrometerMetricManager.java        |    457 -
 .../micrometer/reporter/MicrometerJmxReporter.java |     87 -
 .../reporter/MicrometerPrometheusReporter.java     |    115 -
 .../org.apache.iotdb.metrics.MetricManager         |     18 -
 .../micrometer/MicrometerMetricManagerTest.java    |     81 -
 openapi/src/main/openapi3/iotdb-rest.yaml          |    245 -
 pom.xml                                            |   1509 -
 server/pom.xml                                     |    362 -
 .../resources/conf/iotdb-engine.properties         |    926 -
 .../assembly/resources/conf/iotdb-rest.properties  |     58 -
 .../tools/tsfileToolSet/split-tsfile-tool.bat      |     62 -
 .../tools/tsfileToolSet/split-tsfile-tool.sh       |     48 -
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |    173 -
 .../apache/iotdb/db/auth/entity/PrivilegeType.java |     64 -
 .../org/apache/iotdb/db/concurrent/ThreadName.java |     83 -
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |   2494 -
 .../org/apache/iotdb/db/conf/IoTDBConstant.java    |    189 -
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |   1423 -
 .../org/apache/iotdb/db/conf/OperationType.java    |     66 -
 .../iotdb/db/conf/rest/IoTDBRestServiceConfig.java |    153 -
 .../db/conf/rest/IoTDBRestServiceDescriptor.java   |    167 -
 .../org/apache/iotdb/db/engine/StorageEngine.java  |   1070 -
 .../db/engine/cache/TimeSeriesMetadataCache.java   |    311 -
 .../db/engine/compaction/CompactionScheduler.java  |    119 -
 .../compaction/CompactionTaskComparator.java       |    111 -
 .../engine/compaction/CompactionTaskManager.java   |    408 -
 .../db/engine/compaction/CompactionUtils.java      |    398 -
 .../AbstractCrossSpaceCompactionSelector.java      |     56 -
 .../cross/AbstractCrossSpaceCompactionTask.java    |    101 -
 .../compaction/cross/CrossCompactionStrategy.java  |    100 -
 .../CrossSpaceCompactionExceptionHandler.java      |    259 -
 .../cross/CrossSpaceCompactionTaskFactory.java     |     49 -
 .../RewriteCrossSpaceCompactionSelector.java       |    143 -
 .../rewrite/manage/CrossSpaceMergeResource.java    |    210 -
 .../RewriteCrossSpaceCompactionLogAnalyzer.java    |    118 -
 .../recover/RewriteCrossSpaceCompactionLogger.java |     86 -
 .../selector/ICrossSpaceMergeFileSelector.java     |     35 -
 .../rewrite/selector/IFileQueryMemMeasurement.java |     36 -
 .../cross/rewrite/selector/IMergePathSelector.java |     31 -
 .../cross/rewrite/selector/MergeFileStrategy.java  |     27 -
 .../cross/rewrite/selector/NaivePathSelector.java  |     55 -
 .../selector/RewriteCompactionFileSelector.java    |    396 -
 .../task/RewriteCrossCompactionRecoverTask.java    |    261 -
 .../task/RewriteCrossSpaceCompactionTask.java      |    270 -
 .../AbstractInnerSpaceCompactionSelector.java      |     59 -
 .../inner/AbstractInnerSpaceCompactionTask.java    |    136 -
 .../compaction/inner/InnerCompactionStrategy.java  |    105 -
 .../InnerSpaceCompactionExceptionHandler.java      |    276 -
 .../inner/InnerSpaceCompactionTaskFactory.java     |     48 -
 .../SizeTieredCompactionRecoverTask.java           |    259 -
 .../sizetiered/SizeTieredCompactionSelector.java   |    203 -
 .../inner/sizetiered/SizeTieredCompactionTask.java |    276 -
 .../utils/AlignedSeriesCompactionExecutor.java     |    155 -
 .../inner/utils/InnerSpaceCompactionUtils.java     |    291 -
 .../inner/utils/MultiTsFileDeviceIterator.java     |    405 -
 .../utils/SingleSeriesCompactionExecutor.java      |    291 -
 .../task/AbstractCompactionSelector.java           |     29 -
 .../compaction/task/AbstractCompactionTask.java    |    117 -
 .../compaction/task/CompactionRecoverTask.java     |     97 -
 .../writer/AbstractCompactionWriter.java           |    157 -
 .../writer/CrossSpaceCompactionWriter.java         |    178 -
 .../writer/InnerSpaceCompactionWriter.java         |     86 -
 .../engine/cq/ContinuousQuerySchemaCheckTask.java  |     99 -
 .../iotdb/db/engine/cq/ContinuousQueryService.java |    235 -
 .../iotdb/db/engine/cq/ContinuousQueryTask.java    |    199 -
 .../engine/cq/ContinuousQueryTaskPoolManager.java  |    107 -
 .../apache/iotdb/db/engine/flush/FlushManager.java |    196 -
 .../iotdb/db/engine/memtable/AbstractMemTable.java |    488 -
 .../engine/memtable/AlignedWritableMemChunk.java   |    359 -
 .../memtable/AlignedWritableMemChunkGroup.java     |    120 -
 .../apache/iotdb/db/engine/memtable/IMemTable.java |    171 -
 .../db/engine/memtable/IWritableMemChunkGroup.java |     53 -
 .../iotdb/db/engine/memtable/WritableMemChunk.java |    353 -
 .../db/engine/memtable/WritableMemChunkGroup.java  |    137 -
 .../querycontext/AlignedReadOnlyMemChunk.java      |    164 -
 .../db/engine/querycontext/QueryDataSource.java    |    118 -
 .../selectinto/InsertTabletPlanGenerator.java      |    252 -
 .../selectinto/InsertTabletPlansIterator.java      |    190 -
 .../storagegroup/IDTableFlushTimeManager.java      |    207 -
 .../engine/storagegroup/ILastFlushTimeManager.java |     89 -
 .../engine/storagegroup/LastFlushTimeManager.java  |    268 -
 .../db/engine/storagegroup/TsFileManager.java      |    324 -
 .../engine/storagegroup/TsFileNameGenerator.java   |    290 -
 .../db/engine/storagegroup/TsFileProcessor.java    |   1420 -
 .../engine/storagegroup/TsFileProcessorInfo.java   |     87 -
 .../db/engine/storagegroup/TsFileResource.java     |    986 -
 .../storagegroup/VirtualStorageGroupProcessor.java |   3286 -
 .../storagegroup/timeindex/DeviceTimeIndex.java    |    340 -
 .../storagegroup/timeindex/FileTimeIndex.java      |    227 -
 .../engine/storagegroup/timeindex/ITimeIndex.java  |    189 -
 .../storagegroup/timeindex/TimeIndexLevel.java     |     50 -
 .../storagegroup/timeindex/V012FileTimeIndex.java  |    176 -
 .../virtualSg/StorageGroupManager.java             |    510 -
 .../engine/trigger/service/TriggerLogWriter.java   |     68 -
 .../service/TriggerRegistrationService.java        |    484 -
 .../trigger/sink/local/LocalIoTDBHandler.java      |    104 -
 .../trigger/sink/mqtt/MQTTConfiguration.java       |    105 -
 .../db/engine/trigger/sink/mqtt/MQTTHandler.java   |     96 -
 .../db/exception/ContinuousQueryException.java     |     36 -
 .../TsFileTimeseriesMetadataException.java         |     26 -
 .../org/apache/iotdb/db/metadata/MManager.java     |   2431 -
 .../idtable/AppendOnlyDiskSchemaManager.java       |    221 -
 .../apache/iotdb/db/metadata/idtable/IDTable.java  |    192 -
 .../db/metadata/idtable/IDTableHashmapImpl.java    |    479 -
 .../db/metadata/idtable/IDiskSchemaManager.java    |     55 -
 .../db/metadata/idtable/entry/DeviceEntry.java     |    185 -
 .../db/metadata/idtable/entry/DeviceIDFactory.java |     97 -
 .../db/metadata/idtable/entry/DiskSchemaEntry.java |    124 -
 .../idtable/entry/InsertMeasurementMNode.java      |    267 -
 .../db/metadata/idtable/entry/SHA256DeviceID.java  |    148 -
 .../db/metadata/idtable/entry/SchemaEntry.java     |    216 -
 .../db/metadata/lastCache/LastCacheManager.java    |    253 -
 .../iotdb/db/metadata/logfile/MLogTxtWriter.java   |    455 -
 .../iotdb/db/metadata/logfile/MLogWriter.java      |    282 -
 .../db/metadata/logfile/MetadataOperationType.java |     48 -
 .../iotdb/db/metadata/mnode/InternalMNode.java     |    249 -
 .../org/apache/iotdb/db/metadata/mnode/MNode.java  |    199 -
 .../org/apache/iotdb/db/metadata/mtree/MTree.java  |   1869 -
 .../mtree/traverser/collector/MNodeCollector.java  |     96 -
 .../mtree/traverser/counter/MNodeLevelCounter.java |     70 -
 .../counter/MeasurementGroupByLevelCounter.java    |     74 -
 .../apache/iotdb/db/metadata/path/AlignedPath.java |    503 -
 .../iotdb/db/metadata/path/MeasurementPath.java    |    336 -
 .../apache/iotdb/db/metadata/path/PartialPath.java |    568 -
 .../apache/iotdb/db/metadata/tag/TagManager.java   |    588 -
 .../iotdb/db/metadata/template/Template.java       |    655 -
 .../db/metadata/template/TemplateManager.java      |    177 -
 .../db/metadata/template/TemplateQueryType.java    |     30 -
 .../iotdb/db/metadata/utils/MetaFormatUtils.java   |    171 -
 .../apache/iotdb/db/metadata/utils/MetaUtils.java  |    257 -
 .../reporter/DropwizardIoTDBReporter.java          |     74 -
 .../metrics/dropwizard/reporter/IoTDBReporter.java |    233 -
 .../org/apache/iotdb/db/metrics/metricsUtils.java  |     61 -
 .../micrometer/registry/IoTDBMeterRegistry.java    |    150 -
 .../micrometer/registry/IoTDBRegistryConfig.java   |     31 -
 .../reporter/MicrometerIoTDBReporter.java          |     94 -
 .../iotdb/db/protocol/influxdb/dto/IoTDBPoint.java |    156 -
 .../influxdb/meta/InfluxDBMetaManager.java         |    212 -
 .../iotdb/db/protocol/mqtt/PublishHandler.java     |    140 -
 .../protocol/rest/filter/AuthorizationFilter.java  |    138 -
 .../rest/handler/AuthorizationHandler.java         |     53 -
 .../db/protocol/rest/handler/ExceptionHandler.java |     75 -
 .../handler/PhysicalPlanValidationHandler.java     |     79 -
 .../protocol/rest/handler/QueryDataSetHandler.java |    297 -
 .../rest/handler/RequestValidationHandler.java     |     53 -
 .../protocol/rest/impl/GrafanaApiServiceImpl.java  |    187 -
 .../db/protocol/rest/impl/RestApiServiceImpl.java  |    169 -
 .../main/java/org/apache/iotdb/db/qp/Planner.java  |    173 -
 .../apache/iotdb/db/qp/constant/SQLConstant.java   |    297 -
 .../apache/iotdb/db/qp/executor/IPlanExecutor.java |    134 -
 .../apache/iotdb/db/qp/executor/PlanExecutor.java  |   2269 -
 .../org/apache/iotdb/db/qp/logical/Operator.java   |    199 -
 .../qp/logical/crud/AggregationQueryOperator.java  |    187 -
 .../db/qp/logical/crud/DeleteDataOperator.java     |     86 -
 .../iotdb/db/qp/logical/crud/InsertOperator.java   |    119 -
 .../iotdb/db/qp/logical/crud/QueryOperator.java    |    508 -
 .../iotdb/db/qp/logical/crud/SelectComponent.java  |    141 -
 .../db/qp/logical/crud/SelectIntoOperator.java     |    118 -
 .../logical/sys/CreateContinuousQueryOperator.java |    108 -
 .../db/qp/logical/sys/CreateTemplateOperator.java  |    108 -
 .../db/qp/logical/sys/DropTemplateOperator.java    |     49 -
 .../logical/sys/ShowNodesInTemplateOperator.java   |     43 -
 .../iotdb/db/qp/logical/sys/ShowOperator.java      |     64 -
 .../logical/sys/ShowPathsSetTemplateOperator.java  |     43 -
 .../sys/ShowPathsUsingTemplateOperator.java        |     43 -
 .../qp/logical/sys/ShowQueryResourceOperate.java   |     39 -
 .../db/qp/logical/sys/ShowTemplatesOperator.java   |     27 -
 .../apache/iotdb/db/qp/physical/PhysicalPlan.java  |    586 -
 .../db/qp/physical/crud/AlignByDevicePlan.java     |    233 -
 .../iotdb/db/qp/physical/crud/InsertRowPlan.java   |    611 -
 .../physical/crud/InsertRowsOfOneDevicePlan.java   |    290 -
 .../iotdb/db/qp/physical/crud/SelectIntoPlan.java  |    130 -
 .../apache/iotdb/db/qp/physical/crud/UDTFPlan.java |    162 -
 .../qp/physical/sys/CreateContinuousQueryPlan.java |    156 -
 .../db/qp/physical/sys/CreateTriggerPlan.java      |    166 -
 .../iotdb/db/qp/physical/sys/DropTemplatePlan.java |     78 -
 .../iotdb/db/qp/physical/sys/DropTriggerPlan.java  |    102 -
 .../db/qp/physical/sys/MeasurementMNodePlan.java   |    154 -
 .../qp/physical/sys/ShowNodesInTemplatePlan.java   |     34 -
 .../qp/physical/sys/ShowPathsSetTemplatePlan.java  |     34 -
 .../physical/sys/ShowPathsUsingTemplatePlan.java   |     34 -
 .../apache/iotdb/db/qp/physical/sys/ShowPlan.java  |    131 -
 .../db/qp/physical/sys/ShowQueryResourcePlan.java  |     38 -
 .../db/qp/physical/sys/ShowTemplatesPlan.java      |     27 -
 .../iotdb/db/qp/physical/sys/StartTriggerPlan.java |    102 -
 .../iotdb/db/qp/physical/sys/StopTriggerPlan.java  |    102 -
 .../db/qp/physical/sys/StorageGroupMNodePlan.java  |    110 -
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    |   2936 -
 .../iotdb/db/qp/strategy/LogicalChecker.java       |     46 -
 .../iotdb/db/qp/strategy/LogicalGenerator.java     |    180 -
 .../iotdb/db/qp/strategy/PhysicalGenerator.java    |     59 -
 .../qp/strategy/optimizer/ConcatPathOptimizer.java |    288 -
 .../apache/iotdb/db/qp/utils/WildcardsRemover.java |    145 -
 .../db/query/aggregation/AggregationType.java      |    113 -
 .../aggregation/impl/FirstValueAggrResult.java     |    144 -
 .../iotdb/db/query/control/FileReaderManager.java  |    262 -
 .../iotdb/db/query/control/QueryFileManager.java   |    158 -
 .../db/query/control/QueryResourceManager.java     |    245 -
 .../iotdb/db/query/control/SessionManager.java     |    228 -
 .../db/query/control/SessionTimeoutManager.java    |    115 -
 .../db/query/control/tracing/TracingInfo.java      |    164 -
 .../db/query/control/tracing/TracingManager.java   |     88 -
 .../dataset/RawQueryDataSetWithValueFilter.java    |    266 -
 .../dataset/RawQueryDataSetWithoutValueFilter.java |    679 -
 .../query/dataset/ShowContinuousQueriesResult.java |     75 -
 .../iotdb/db/query/dataset/ShowDevicesDataSet.java |     86 -
 .../iotdb/db/query/dataset/ShowDevicesResult.java  |     95 -
 .../db/query/dataset/UDTFAlignByTimeDataSet.java   |    357 -
 .../apache/iotdb/db/query/dataset/UDTFDataSet.java |    142 -
 .../db/query/dataset/UDTFNonAlignDataSet.java      |    216 -
 .../query/dataset/groupby/GroupByFillDataSet.java  |    340 -
 .../groupby/GroupByWithValueFilterDataSet.java     |    304 -
 .../groupby/GroupByWithoutValueFilterDataSet.java  |    261 -
 .../groupby/LocalAlignedGroupByExecutor.java       |    364 -
 .../dataset/groupby/LocalGroupByExecutor.java      |    365 -
 .../db/query/executor/AggregationExecutor.java     |    824 -
 .../iotdb/db/query/executor/FillQueryExecutor.java |    273 -
 .../iotdb/db/query/executor/LastQueryExecutor.java |    374 -
 .../iotdb/db/query/executor/QueryRouter.java       |    361 -
 .../db/query/executor/RawDataQueryExecutor.java    |    316 -
 .../iotdb/db/query/executor/UDFQueryExecutor.java  |    112 -
 .../iotdb/db/query/executor/fill/LinearFill.java   |    263 -
 .../iotdb/db/query/executor/fill/PreviousFill.java |    138 -
 .../iotdb/db/query/expression/ResultColumn.java    |    177 -
 .../db/query/factory/AggregateResultFactory.java   |    137 -
 .../metadata/MemAlignedChunkMetadataLoader.java    |     89 -
 .../chunk/metadata/MemChunkMetadataLoader.java     |     88 -
 .../query/reader/series/SeriesAggregateReader.java |    173 -
 .../iotdb/db/query/reader/series/SeriesReader.java |   1475 -
 .../reader/series/SeriesReaderByTimestamp.java     |    187 -
 .../query/timegenerator/ServerTimeGenerator.java   |    208 -
 .../db/query/udf/core/layer/InputRowUtils.java     |     62 -
 .../query/udf/core/layer/RawQueryInputLayer.java   |    217 -
 .../row/ElasticSerializableRowRecordList.java      |    305 -
 .../iotdb/db/rescon/TsFileResourceManager.java     |    122 -
 .../java/org/apache/iotdb/db/service/IoTDB.java    |    238 -
 .../org/apache/iotdb/db/service/SettleService.java |    190 -
 .../iotdb/db/service/basic/ServiceProvider.java    |    273 -
 .../service/basic/StandaloneServiceProvider.java   |     55 -
 .../iotdb/db/service/metrics/MetricsService.java   |    208 -
 .../service/thrift/impl/InfluxDBServiceImpl.java   |    163 -
 .../db/service/thrift/impl/TSServiceImpl.java      |   2090 -
 .../db/sync/receiver/transfer/SyncServiceImpl.java |    369 -
 .../db/sync/sender/manage/SyncFileManager.java     |    291 -
 .../iotdb/db/sync/sender/transfer/SyncClient.java  |    810 -
 .../apache/iotdb/db/tools/TsFileRewriteTool.java   |    510 -
 .../apache/iotdb/db/tools/TsFileSelfCheckTool.java |    190 -
 .../apache/iotdb/db/tools/TsFileSketchTool.java    |    518 -
 .../org/apache/iotdb/db/tools/TsFileSplitTool.java |    309 -
 .../org/apache/iotdb/db/tools/mlog/MLogParser.java |    251 -
 .../db/tools/upgrade/TsFileOnlineUpgradeTool.java  |    291 -
 .../db/tools/virtualsg/DeviceMappingViewer.java    |     63 -
 .../java/org/apache/iotdb/db/utils/AuthUtils.java  |    332 -
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    359 -
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |    182 -
 .../org/apache/iotdb/db/utils/FileLoaderUtils.java |    254 -
 .../java/org/apache/iotdb/db/utils/MergeUtils.java |     69 -
 .../java/org/apache/iotdb/db/utils/QueryUtils.java |    223 -
 .../org/apache/iotdb/db/utils/SchemaUtils.java     |    233 -
 .../db/utils/datastructure/AlignedTVList.java      |    998 -
 .../iotdb/db/utils/datastructure/BinaryTVList.java |    279 -
 .../db/utils/datastructure/BooleanTVList.java      |    279 -
 .../iotdb/db/utils/datastructure/DoubleTVList.java |    283 -
 .../datastructure/FixedPriorityBlockingQueue.java  |    190 -
 .../iotdb/db/utils/datastructure/FloatTVList.java  |    283 -
 .../iotdb/db/utils/datastructure/IntTVList.java    |    278 -
 .../iotdb/db/utils/datastructure/LongTVList.java   |    278 -
 .../iotdb/db/utils/datastructure/TVList.java       |    621 -
 .../writelog/manager/MultiFileLogNodeManager.java  |    205 -
 .../db/writelog/node/ExclusiveWriteLogNode.java    |    362 -
 .../services/org.apache.iotdb.metrics.Reporter     |     19 -
 .../db/conf/adapter/CompressionRatioTest.java      |    151 -
 .../db/engine/cache/BloomFilterCacheTest.java      |    205 -
 .../iotdb/db/engine/cache/ChunkCacheTest.java      |    238 -
 .../engine/compaction/AbstractCompactionTest.java  |    295 -
 .../engine/compaction/CompactionSchedulerTest.java |   1883 -
 .../compaction/CompactionTaskComparatorTest.java   |    324 -
 .../compaction/CompactionTaskManagerTest.java      |    206 -
 .../db/engine/compaction/CompactionUtilsTest.java  |   3516 -
 .../compaction/TestUtilsForAlignedSeries.java      |    228 -
 .../cross/CrossSpaceCompactionExceptionTest.java   |    495 -
 .../compaction/cross/CrossSpaceCompactionTest.java |   1062 -
 .../db/engine/compaction/cross/MergeTest.java      |    202 -
 .../engine/compaction/cross/MergeUpgradeTest.java  |    192 -
 .../cross/RewriteCompactionFileSelectorTest.java   |    317 -
 .../RewriteCrossSpaceCompactionRecoverTest.java    |    501 -
 .../cross/RewriteCrossSpaceCompactionTest.java     |    805 -
 .../inner/AbstractInnerSpaceCompactionTest.java    |    274 -
 .../compaction/inner/InnerCompactionLogTest.java   |     84 -
 .../inner/InnerCompactionMoreDataTest.java         |    241 -
 .../inner/InnerCompactionSchedulerTest.java        |    135 -
 .../compaction/inner/InnerCompactionTest.java      |    292 -
 .../compaction/inner/InnerSeqCompactionTest.java   |    953 -
 .../inner/InnerSpaceCompactionExceptionTest.java   |    438 -
 .../InnerSpaceCompactionUtilsAlignedTest.java      |    534 -
 .../InnerSpaceCompactionUtilsNoAlignedTest.java    |    832 -
 .../inner/InnerSpaceCompactionUtilsOldTest.java    |    132 -
 .../compaction/inner/InnerUnseqCompactionTest.java |    793 -
 .../SizeTieredCompactionRecoverTest.java           |   1098 -
 .../inner/sizetiered/SizeTieredCompactionTest.java |    290 -
 .../recover/SizeTieredCompactionRecoverTest.java   |    864 -
 .../task/FakedCrossSpaceCompactionTask.java        |     62 -
 .../task/FakedCrossSpaceCompactionTaskFactory.java |     47 -
 .../task/FakedInnerSpaceCompactionTask.java        |     97 -
 .../task/FakedInnerSpaceCompactionTaskFactory.java |     50 -
 .../compaction/utils/CompactionCheckerUtils.java   |    559 -
 .../compaction/utils/CompactionClearUtils.java     |     92 -
 .../compaction/utils/CompactionConfigRestorer.java |     67 -
 .../utils/CompactionFileGeneratorUtils.java        |    311 -
 .../db/engine/memtable/MemTableTestUtils.java      |    141 -
 .../db/engine/memtable/MemtableBenchmark.java      |     69 -
 .../db/engine/memtable/PrimitiveMemTableTest.java  |    541 -
 .../engine/modification/DeletionFileNodeTest.java  |    433 -
 .../engine/storagegroup/FakedTsFileResource.java   |     88 -
 .../storagegroup/StorageGroupProcessorTest.java    |    884 -
 .../iotdb/db/engine/storagegroup/TTLTest.java      |    447 -
 .../engine/storagegroup/TsFileProcessorTest.java   |    459 -
 .../iotdb/db/metadata/MManagerBasicTest.java       |   2384 -
 .../org/apache/iotdb/db/metadata/MTreeTest.java    |   1060 -
 .../org/apache/iotdb/db/metadata/TemplateTest.java |    394 -
 .../db/metadata/idtable/IDTableFlushTimeTest.java  |    226 -
 .../db/metadata/idtable/IDTableRecoverTest.java    |    211 -
 .../idtable/IDTableResourceControlTest.java        |    167 -
 .../db/metadata/idtable/IDTableRestartTest.java    |    205 -
 .../iotdb/db/metadata/idtable/IDTableTest.java     |    655 -
 .../db/metadata/idtable/InsertWithIDTableTest.java |    758 -
 .../db/metadata/idtable/LastQueryWithIDTable.java  |    180 -
 .../QueryAlignedTimeseriesWithIDTableTest.java     |    373 -
 .../db/metadata/idtable/QueryWithIDTableTest.java  |    375 -
 .../db/metadata/idtable/entry/SchemaEntryTest.java |     68 -
 .../apache/iotdb/db/metadata/mnode/MNodeTest.java  |     92 -
 .../iotdb/db/protocol/mqtt/PublishHandlerTest.java |    116 -
 .../db/protocol/rest/GrafanaApiServiceIT.java      |    359 -
 .../iotdb/db/protocol/rest/IoTDBRestServiceIT.java |    881 -
 .../java/org/apache/iotdb/db/qp/PlannerTest.java   |    276 -
 .../iotdb/db/qp/physical/InsertRowPlanTest.java    |    395 -
 .../db/qp/physical/InsertTabletMultiPlanTest.java  |    297 -
 .../iotdb/db/qp/physical/InsertTabletPlanTest.java |    449 -
 .../db/query/aggregation/AggregateResultTest.java  |    294 -
 .../query/aggregation/DescAggregateResultTest.java |    190 -
 .../dataset/EngineDataSetWithValueFilterTest.java  |    156 -
 .../iotdb/db/query/dataset/ListDataSetTest.java    |    158 -
 .../db/query/dataset/ShowDevicesResultTest.java    |     43 -
 .../iotdb/db/query/dataset/SingleDataSetTest.java  |    130 -
 .../query/dataset/UDTFAlignByTimeDataSetTest.java  |    692 -
 .../dataset/groupby/GroupByFillDataSetTest.java    |    194 -
 .../dataset/groupby/GroupByLevelDataSetTest.java   |    161 -
 .../dataset/groupby/GroupByTimeDataSetTest.java    |    226 -
 .../reader/series/SeriesAggregateReaderTest.java   |    140 -
 .../reader/series/SeriesReaderByTimestampTest.java |     94 -
 .../db/query/reader/series/SeriesReaderTest.java   |    188 -
 .../query/reader/series/SeriesReaderTestUtil.java  |    206 -
 .../ElasticSerializableRowRecordListTest.java      |    294 -
 .../valuefilter/RawQueryWithValueFilterTest.java   |    145 -
 .../iotdb/db/rescon/ResourceManagerTest.java       |    399 -
 .../db/sync/receiver/load/FileLoaderTest.java      |    411 -
 .../recover/SyncReceiverLogAnalyzerTest.java       |    231 -
 .../apache/iotdb/db/tools/IoTDBWatermarkTest.java  |    246 -
 .../iotdb/db/tools/TsFileAndModSettleToolTest.java |    237 -
 .../iotdb/db/tools/TsFileSelfCheckToolTest.java    |    239 -
 .../iotdb/db/tools/TsFileSketchToolTest.java       |    192 -
 .../iotdb/db/utils/TsFileRewriteToolTest.java      |    468 -
 .../db/utils/datastructure/BinaryTVListTest.java   |    111 -
 .../db/utils/datastructure/BooleanTVListTest.java  |    127 -
 .../db/utils/datastructure/DoubleTVListTest.java   |    137 -
 .../FixedPriorityBlockingQueueTest.java            |    321 -
 .../db/utils/datastructure/FloatTVListTest.java    |    137 -
 .../db/utils/datastructure/IntTVListTest.java      |    136 -
 .../db/utils/datastructure/LongTVListTest.java     |    158 -
 .../db/utils/datastructure/VectorTVListTest.java   |    208 -
 .../iotdb/db/writelog/IoTDBLogFileSizeTest.java    |    220 -
 .../db/writelog/recover/DeviceStringTest.java      |    132 -
 .../iotdb/db/writelog/recover/LogReplayerTest.java |    288 -
 .../recover/RecoverResourceFromReaderTest.java     |    231 -
 .../db/writelog/recover/SeqTsFileRecoverTest.java  |    565 -
 .../writelog/recover/UnseqTsFileRecoverTest.java   |    277 -
 server/src/test/resources/iotdb-rest.properties    |     58 -
 server/src/test/resources/logback.xml              |     58 -
 service-rpc/pom.xml                                |    161 -
 .../main/java/org/apache/iotdb/rpc/RpcUtils.java   |    313 -
 .../iotdb/rpc/StatementExecutionException.java     |     53 -
 .../main/java/org/apache/iotdb/session/Config.java |     49 -
 .../java/org/apache/iotdb/session/Session.java     |   2559 -
 .../apache/iotdb/session/SessionConnection.java    |    965 -
 .../org/apache/iotdb/session/pool/SessionPool.java |   2221 -
 .../apache/iotdb/session/template/Template.java    |    136 -
 .../iotdb/session/template/TemplateQueryType.java  |     30 -
 .../apache/iotdb/session/util/SessionUtils.java    |    266 -
 .../org/apache/iotdb/session/util/Version.java     |     25 -
 .../session/IoTDBSessionDisableMemControlIT.java   |    203 -
 .../session/IoTDBSessionVectorAggregationIT.java   |    263 -
 .../iotdb/session/IoTDBSessionVectorInsertIT.java  |    514 -
 .../apache/iotdb/session/SessionCacheLeaderUT.java |   1222 -
 .../java/org/apache/iotdb/session/SessionTest.java |    632 -
 .../apache/iotdb/session/pool/SessionPoolTest.java |    482 -
 .../apache/iotdb/session/template/TemplateUT.java  |    256 -
 session/src/test/resources/iotdb-rest.properties   |     58 -
 site/pom.xml                                       |    829 -
 site/src/main/.vuepress/config.js                  |   2045 -
 site/src/main/.vuepress/redirects                  |      2 -
 site/src/main/package.json                         |     45 -
 spark-iotdb-connector/pom.xml                      |    141 -
 .../org/apache/iotdb/spark/db/DataFrameTools.scala |    131 -
 .../org/apache/iotdb/spark/db/DefaultSource.scala  |     61 -
 .../scala/org/apache/iotdb/spark/db/IoTDBRDD.scala |    137 -
 .../org/apache/iotdb/spark/db/SQLConstant.scala    |     27 -
 .../org/apache/iotdb/spark/db/Transformer.scala    |    172 -
 .../apache/iotdb/spark/db/EnvironmentUtils.java    |    262 -
 .../org/apache/iotdb/spark/db/IoTDBTest.scala      |    150 -
 .../org/apache/iotdb/spark/db/IoTDBWriteTest.scala |    118 -
 .../iotdb/spark/db/unit/DataFrameToolsTest.scala   |     97 -
 .../iotdb/spark/tsfile/NarrowConverter.scala       |    596 -
 .../apache/iotdb/spark/tsfile/WideConverter.scala  |    502 -
 .../org/apache/iotdb/spark/tool/TsFileExample.java |    111 -
 .../apache/iotdb/spark/tool/TsFileWriteTool.java   |    280 -
 .../test/java/org/apache/iotdb/db/sql/Cases.java   |    999 -
 .../iotdb/db/sql/node1/OneNodeClusterIT.java       |     54 -
 thrift-cluster/src/main/thrift/cluster.thrift      |    575 -
 thrift-sync/src/main/thrift/sync.thrift            |     51 -
 thrift/rpc-changelist.md                           |    208 -
 thrift/src/main/thrift/rpc.thrift                  |    509 -
 tsfile/pom.xml                                     |    184 -
 .../iotdb/tsfile/common/conf/TSFileConfig.java     |    414 -
 .../iotdb/tsfile/common/conf/TSFileDescriptor.java |    165 -
 .../encoding/encoder/DeltaBinaryEncoder.java       |    336 -
 .../TsFileStatisticsMistakesException.java         |     26 -
 .../org/apache/iotdb/tsfile/file/MetaMarker.java   |     70 -
 .../iotdb/tsfile/file/header/ChunkHeader.java      |    297 -
 .../file/metadata/AlignedTimeSeriesMetadata.java   |    146 -
 .../tsfile/file/metadata/enums/TSDataType.java     |    142 -
 .../file/metadata/statistics/BinaryStatistics.java |    237 -
 .../metadata/statistics/BooleanStatistics.java     |    252 -
 .../file/metadata/statistics/DoubleStatistics.java |    300 -
 .../file/metadata/statistics/FloatStatistics.java  |    292 -
 .../metadata/statistics/IntegerStatistics.java     |    291 -
 .../file/metadata/statistics/LongStatistics.java   |    300 -
 .../file/metadata/statistics/Statistics.java       |    411 -
 .../read/TsFileAlignedSeriesReaderIterator.java    |     82 -
 .../iotdb/tsfile/read/TsFileCheckStatus.java       |     27 -
 .../iotdb/tsfile/read/TsFileDeviceIterator.java    |     73 -
 .../iotdb/tsfile/read/TsFileSequenceReader.java    |   1945 -
 .../org/apache/iotdb/tsfile/read/common/Chunk.java |    161 -
 .../apache/iotdb/tsfile/read/common/RowRecord.java |    124 -
 .../read/query/timegenerator/TimeGenerator.java    |    138 -
 .../query/timegenerator/TsFileTimeGenerator.java   |     64 -
 .../tsfile/read/reader/page/AlignedPageReader.java |    144 -
 .../tsfile/read/reader/page/TimePageReader.java    |    117 -
 .../tsfile/read/reader/page/ValuePageReader.java   |    274 -
 .../org/apache/iotdb/tsfile/utils/BytesUtils.java  |    920 -
 .../iotdb/tsfile/utils/MeasurementGroup.java       |     64 -
 .../iotdb/tsfile/utils/TsFileGeneratorUtils.java   |    285 -
 .../apache/iotdb/tsfile/write/TsFileWriter.java    |    643 -
 .../write/chunk/AlignedChunkGroupWriterImpl.java   |    301 -
 .../tsfile/write/chunk/AlignedChunkWriterImpl.java |    239 -
 .../tsfile/write/chunk/IChunkGroupWriter.java      |     96 -
 .../chunk/NonAlignedChunkGroupWriterImpl.java      |    189 -
 .../iotdb/tsfile/write/chunk/ValueChunkWriter.java |    329 -
 .../iotdb/tsfile/write/page/ValuePageWriter.java   |    319 -
 .../apache/iotdb/tsfile/write/record/Tablet.java   |    312 -
 .../tsfile/write/schema/MeasurementSchema.java     |    413 -
 .../apache/iotdb/tsfile/write/schema/Schema.java   |    110 -
 .../tsfile/write/writer/LocalTsFileOutput.java     |    100 -
 .../iotdb/tsfile/write/writer/TsFileIOWriter.java  |    494 -
 .../metadata/statistics/DoubleStatisticsTest.java  |     94 -
 .../tsfile/file/metadata/utils/TestHelper.java     |     77 -
 .../apache/iotdb/tsfile/read/TsFileReaderTest.java |    513 -
 .../read/query/timegenerator/ReadWriteTest.java    |    185 -
 .../timegenerator/TimeGeneratorReadEmptyTest.java  |    149 -
 .../timegenerator/TimeGeneratorReadWriteTest.java  |    185 -
 .../TsFileGeneratorForSeriesReaderByTimestamp.java |    280 -
 .../tsfile/read/reader/FakedTimeGenerator.java     |     82 -
 .../apache/iotdb/tsfile/utils/FileGenerator.java   |    360 -
 .../apache/iotdb/tsfile/utils/RecordUtilsTest.java |    186 -
 .../iotdb/tsfile/utils/TsFileGeneratorForTest.java |    321 -
 .../tsfile/write/DefaultSchemaTemplateTest.java    |    113 -
 .../tsfile/write/MetadataIndexConstructorTest.java |    494 -
 .../org/apache/iotdb/tsfile/write/PerfTest.java    |    234 -
 .../iotdb/tsfile/write/ReadPageInMemTest.java      |    189 -
 ...SameMeasurementsWithDifferentDataTypesTest.java |    215 -
 .../iotdb/tsfile/write/TsFileIOWriterTest.java     |    224 -
 .../iotdb/tsfile/write/TsFileReadWriteTest.java    |    253 -
 .../iotdb/tsfile/write/TsFileWriteApiTest.java     |    327 -
 .../iotdb/tsfile/write/TsFileWriterTest.java       |    364 -
 .../org/apache/iotdb/tsfile/write/WriteTest.java   |    288 -
 .../write/schema/converter/SchemaBuilderTest.java  |    153 -
 .../write/writer/AlignedChunkWriterImplTest.java   |    181 -
 .../write/writer/ForceAppendTsFileWriterTest.java  |    123 -
 .../writer/MeasurementSchemaSerializeTest.java     |     57 -
 .../iotdb/tsfile/write/writer/PageWriterTest.java  |    219 -
 .../write/writer/RestorableTsFileIOWriterTest.java |    466 -
 .../tsfile/write/writer/TimeChunkWriterTest.java   |    110 -
 .../tsfile/write/writer/ValueChunkWriterTest.java  |    109 -
 .../zeppelin/iotdb/IoTDBInterpreterTest.java       |    392 -
 3878 files changed, 409666 insertions(+), 297132 deletions(-)

diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
deleted file mode 100644
index 6bf71aa..0000000
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ /dev/null
@@ -1,31 +0,0 @@
----
-name: Bug report
-about: Create a report to help us improve
-
----
-
-**Describe the bug**
-A clear and concise description of what the bug is.
-
-**To Reproduce**
-Steps to reproduce the behavior:
-1. Go to '...'
-2. Click on '....'
-3. Scroll down to '....'
-4. See error
-
-**Expected behavior**
-A clear and concise description of what you expected to happen.
-
-**Screenshots**
-If applicable, add screenshots to help explain your problem.
-
-**Desktop (please complete the following information):**
- - OS: [e.g. iOS]
- - Browser [e.g. chrome, safari]
- - Version [e.g. 22]
-
-
-
-**Additional context**
-Add any other context about the problem here.
diff --git a/.github/ISSUE_TEMPLATE/custom.md b/.github/ISSUE_TEMPLATE/custom.md
deleted file mode 100644
index 99bb9a0..0000000
--- a/.github/ISSUE_TEMPLATE/custom.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-name: Custom issue template
-about: Describe this issue template's purpose here.
-
----
-
-
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
deleted file mode 100644
index 066b2d9..0000000
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ /dev/null
@@ -1,17 +0,0 @@
----
-name: Feature request
-about: Suggest an idea for this project
-
----
-
-**Is your feature request related to a problem? Please describe.**
-A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
-
-**Describe the solution you'd like**
-A clear and concise description of what you want to happen.
-
-**Describe alternatives you've considered**
-A clear and concise description of any alternative solutions or features you've considered.
-
-**Additional context**
-Add any other context or screenshots about the feature request here.
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
deleted file mode 100644
index 130248e..0000000
--- a/.github/dependabot.yml
+++ /dev/null
@@ -1,71 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#       http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-#
-
-version: 2
-
-updates:
-  - package-ecosystem: maven
-    directory: "/"
-    schedule:
-      interval: monthly
-    target-branch: "master"
-    ignore:
-      - dependency-name: "*"
-        update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
-    labels:
-      - "master"
-      - "dependencies"
-      - "java"
-
-  - package-ecosystem: maven
-    directory: "/"
-    schedule:
-      interval: monthly
-    target-branch: "rel/0.12"
-    ignore:
-      - dependency-name: "*"
-        update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
-    labels:
-      - "0.12"
-      - "dependencies"
-      - "java"
-
-  - package-ecosystem: "github-actions"
-    directory: "/"
-    schedule:
-      interval: monthly
-    target-branch: "master"
-    ignore:
-      - dependency-name: "*"
-        update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
-    labels:
-      - "master"
-      - "dependencies"
-      - "github_actions"
-
-  - package-ecosystem: "github-actions"
-    directory: "/"
-    schedule:
-      interval: monthly
-    target-branch: "rel/0.12"
-    ignore:
-      - dependency-name: "*"
-        update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
-    labels:
-      - "0.12"
-      - "dependencies"
-      - "github_actions"
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
deleted file mode 100644
index 47578f6..0000000
--- a/.github/pull_request_template.md
+++ /dev/null
@@ -1,60 +0,0 @@
-## Description
-
-
-### Content1 ...
-
-### Content2 ...
-
-### Content3 ...
-
-<!--
-In each section, please describe design decisions made, including:
- - Choice of algorithms
- - Behavioral aspects. What configuration values are acceptable? How are corner cases and error 
-    conditions handled, such as when there are insufficient resources?
- - Class organization and design (how the logic is split between classes, inheritance, composition, 
-    design patterns)
- - Method organization and design (how the logic is split between methods, parameters and return types)
- - Naming (class, method, API, configuration, HTTP endpoint, names of emitted metrics)
--->
-
-
-<!-- It's good to describe an alternative design (or mention an alternative name) for every design 
-(or naming) decision point and compare the alternatives with the designs that you've implemented 
-(or the names you've chosen) to highlight the advantages of the chosen designs and names. -->
-
-<!-- If there was a discussion of the design of the feature implemented in this PR elsewhere 
-(e. g. a "Proposal" issue, any other issue, or a thread in the development mailing list), 
-link to that discussion from this PR description and explain what have changed in your final design 
-compared to your original proposal or the consensus version in the end of the discussion. 
-If something hasn't changed since the original discussion, you can omit a detailed discussion of 
-those aspects of the design here, perhaps apart from brief mentioning for the sake of readability 
-of this PR description. -->
-
-<!-- Some of the aspects mentioned above may be omitted for simple and small changes. -->
-
-<hr>
-
-This PR has:
-- [ ] been self-reviewed.
-    - [ ] concurrent read
-    - [ ] concurrent write
-    - [ ] concurrent read and write 
-- [ ] added documentation for new or modified features or behaviors.
-- [ ] added Javadocs for most classes and all non-trivial methods. 
-- [ ] added or updated version, __license__, or notice information
-- [ ] added comments explaining the "why" and the intent of the code wherever would not be obvious 
-  for an unfamiliar reader.
-- [ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold 
-  for code coverage.
-- [ ] added integration tests.
-- [ ] been tested in a test IoTDB cluster.
-
-<!-- Check the items by putting "x" in the brackets for the done things. Not all of these items 
-apply to every PR. Remove the items which are not done or not relevant to the PR. None of the items 
-from the checklist above are strictly necessary, but it would be very helpful if you at least 
-self-review the PR. -->
-
-<hr>
-
-##### Key changed/added classes (or packages if there are too many classes) in this PR
diff --git a/.github/workflows/client-go.yml b/.github/workflows/client-go.yml
deleted file mode 100644
index 66f6e5e..0000000
--- a/.github/workflows/client-go.yml
+++ /dev/null
@@ -1,54 +0,0 @@
-# This workflow is just for checking whether modifications works for the Go client.
-
-name: Go Client
-
-on:
-  push:
-    branches:
-      - master
-      - 'rel/*'
-    paths-ignore:
-      - 'docs/**'
-  pull_request:
-    branches:
-      - master
-      - 'rel/*'
-    paths-ignore:
-      - 'docs/**'
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-
-jobs:
-  unix:
-    strategy:
-      fail-fast: false
-      max-parallel: 20
-      matrix:
-        java: [ 11 ]
-        os: [ ubuntu-latest ]
-    runs-on: ${{ matrix.os}}
-
-    steps:
-      - uses: actions/checkout@v2
-        with:
-          token: ${{secrets.GITHUB_TOKEN}}
-          submodules: recursive
-      - name: Set up JDK ${{ matrix.java }}
-        uses: actions/setup-java@v1
-        with:
-          java-version: ${{ matrix.java }}
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-      - name: Compile IoTDB Server
-        run: mvn -B package -Dmaven.test.skip=true  -am -pl server
-      - name: Integration test
-        shell: bash
-        run: |
-          cd client-go && make e2e_test_for_parent_git_repo e2e_test_clean_for_parent_git_repo
\ No newline at end of file
diff --git a/.github/workflows/client.yml b/.github/workflows/client.yml
deleted file mode 100644
index 16a200a..0000000
--- a/.github/workflows/client.yml
+++ /dev/null
@@ -1,97 +0,0 @@
-# This workflow will build a Java project with Maven
-# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
-
-# CPP compiling is too slow, so let's do it in parallel with testing other modules.
-# As there is no Java client, we just use one JDK.
-name: Clients_except_Java CI with Maven
-
-on:
-  push:
-    branches:
-      - master
-      - "rel/*"
-  pull_request:
-    branches:
-      - master
-      - "rel/*"
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-
-jobs:
-  build:
-    strategy:
-      fail-fast: false
-      max-parallel: 20
-      matrix:
-        os: [ubuntu-latest, macos-latest]
-    runs-on: ${{ matrix.os}}
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Set up JDK ${{ matrix.java }}
-        uses: actions/setup-java@v1
-        with:
-          java-version: 11
-      - name: Install CPP Dependencies (Ubuntu)
-        if: matrix.os == 'ubuntu-latest'
-        shell: bash
-        run: sudo apt-get update && sudo apt-get install libboost-all-dev
-      - name: Install CPP Dependencies (Mac)`
-        if: matrix.os == 'macos-latest'
-        shell: bash
-        run: |
-          brew install boost
-          brew install bison
-          echo 'export PATH=/usr/local/opt/bison/bin:$PATH' >> ~/.bash_profile
-          source ~/.bash_profile && export LDFLAGS="-L/usr/local/opt/bison/lib"
-          brew install openssl
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: client-${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-      - name: Test with Maven
-        run: mvn -B clean integration-test -P compile-cpp -Dtsfile.test.skip=true -Djdbc.test.skip=true -Diotdb.test.skip=true -Dtest.port.closed=true -pl server,client-cpp,example/client-cpp-example -am
-
-  build-win:
-    strategy:
-      fail-fast: false
-      max-parallel: 20
-      matrix:
-        os: [windows-latest]
-    runs-on: ${{ matrix.os}}
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Set up JDK ${{ matrix.java }}
-        uses: actions/setup-java@v1
-        with:
-          java-version: 11
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: client-${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-      - name: Install Win_Flex_Bison
-        run: mkdir D:\a\cpp ; `
-          Invoke-WebRequest https://github.com/lexxmark/winflexbison/releases/download/v2.5.24/win_flex_bison-2.5.24.zip -OutFile D:\a\cpp\win_flex_bison.zip ; `
-          [Environment]::SetEnvironmentVariable("Path", $env:Path + ";D:\a\cpp", "User") ; `
-      - name: Download Boost
-        run: choco install boost-msvc-14.2
-      - name: Install Boost
-        run: cd C:\local\boost_1_74_0 ; `
-          .\bootstrap.bat ; `
-          .\b2.exe
-      - name: Install OpenSSL
-        run:  choco install openssl
-      - name: Add Flex and Bison Path and OpenSSL
-        shell: bash
-        run: cd /d/a/cpp && unzip win_flex_bison.zip && mv win_flex.exe flex.exe && mv win_bison.exe bison.exe  && echo 'export PATH=/d/a/cpp:$PATH' >> ~/.bash_profile && source ~/.bash_profile
-      - name: Test with Maven
-        shell: bash
-        run: source ~/.bash_profile && mvn -B clean integration-test -P compile-cpp -Dboost.include.dir=/c/local/boost_1_74_0 -Dboost.library.dir=/c/local/boost_1_74_0/stage/lib -Dtsfile.test.skip=true -Djdbc.test.skip=true -Diotdb.test.skip=true -Dtest.port.closed=true -Denforcer.skip=true -pl server,client-cpp,example/client-cpp-example -am
diff --git a/.github/workflows/cluster.yml b/.github/workflows/cluster.yml
deleted file mode 100644
index 38c8efa..0000000
--- a/.github/workflows/cluster.yml
+++ /dev/null
@@ -1,48 +0,0 @@
-name: Cluster Test
-
-on:
-  push:
-    branches:
-      - test_cluster
-    paths-ignore:
-      - 'docs/**'
-  pull_request:
-    branches:
-      - test_cluster
-    paths-ignore:
-      - 'docs/**'
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-
-jobs:
-  unix:
-    strategy:
-      fail-fast: false
-      max-parallel: 20
-      matrix:
-        java: [ 8 ]
-        os: [ ubuntu-latest ]
-    runs-on: ${{ matrix.os}}
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Set up JDK ${{ matrix.java }}
-        uses: actions/setup-java@v1
-        with:
-          java-version: ${{ matrix.java }}
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-      - name: Check Apache Rat
-        run: mvn -B apache-rat:check -P site -P code-coverage
-      - name: IT/UT Test
-        shell: bash
-        # we do not compile client-cpp for saving time, it is tested in client.yml
-        # we can skip influxdb-protocol because it has been tested separately in influxdb-protocol.yml
-        run: mvn -B clean verify -Dsession.test.skip=true -Diotdb.test.skip=true -Dcluster.test.skip=true -Dtsfile.test.skip=true -pl integration -am -PCluster
diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml
deleted file mode 100644
index a573234..0000000
--- a/.github/workflows/e2e.yml
+++ /dev/null
@@ -1,57 +0,0 @@
-# This workflow will build a Java project with Maven
-# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
-
-name: E2E Tests
-
-on:
-  push:
-    branches: 
-      - test/e2e
-    paths-ignore:
-      - 'docs/**'
-  pull_request:
-    branches: 
-      - cluster_new
-    paths-ignore:
-      - 'docs/**'
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-
-jobs:
-  E2E:
-    runs-on: ubuntu-latest
-    strategy:
-      fail-fast: true
-      matrix:
-        case:
-          - cli
-    steps:
-      - uses: actions/checkout@v2
-
-      - uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2
-
-      - name: Build Distribution Zip
-        run: ./mvnw.sh -B -DskipTests clean install
-
-      - name: Build Docker Image
-        run: |
-          docker build . -f docker/src/main/Dockerfile-single -t "iotdb:$GITHUB_SHA"
-          docker images
-
-      - name: Run Test Case ${{ matrix.case }}
-        run: bash test/e2e/cases/${{ matrix.case }}/run.sh
-
-      - name: Clean Up
-        if: ${{ always() }}
-        run: bash test/e2e/cases/${{ matrix.case }}/cleanup.sh
-
-      - name: TestContainer
-        run: |
-          mvn -B -T 4 integration-test -pl testcontainer
diff --git a/.github/workflows/grafana-plugin.yml b/.github/workflows/grafana-plugin.yml
deleted file mode 100644
index b5cdb83..0000000
--- a/.github/workflows/grafana-plugin.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-name: Grafana plugin build
-
-on:
-  push:
-    branches:
-      - master
-  pull_request:
-    branches:
-      - master
-jobs:
-  build:
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@v2
-
-      - name: Setup Node.js environment
-        uses: actions/setup-node@v2.1.5
-        with:
-          node-version: "12.x"
-
-      - name: Get yarn cache directory path
-        id: yarn-cache-dir-path
-        run: echo "::set-output name=dir::$(yarn cache dir)"
-
-      - name: Cache yarn cache
-        uses: actions/cache@v2
-        id: cache-yarn-cache
-        with:
-          path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
-          key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
-          restore-keys: |
-            ${{ runner.os }}-yarn-
-
-      - name: Cache node_modules
-        id: cache-node-modules
-        uses: actions/cache@v2
-        with:
-          path: node_modules
-          key: ${{ runner.os }}-${{ matrix.node-version }}-nodemodules-${{ hashFiles('**/yarn.lock') }}
-          restore-keys: |
-            ${{ runner.os }}-${{ matrix.node-version }}-nodemodules-
-
-      - name: Install dependencies and Build and test frontend
-        run: |
-          cd ./grafana-plugin
-          yarn install --frozen-lockfile
-          yarn build
\ No newline at end of file
diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml
deleted file mode 100644
index 1a90ed0..0000000
--- a/.github/workflows/greetings.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-name: Greetings
-
-on: [issues, pull_request_target]
-
-jobs:
-  greeting:
-    runs-on: ubuntu-latest
-    steps:
-    - uses: actions/first-interaction@v1
-      with:
-        repo-token: ${{ secrets.GITHUB_TOKEN }}
-        issue-message: 'Hi, this is your first issue in IoTDB project. Thanks for your report. Welcome to join the community!'
-        pr-message: 'Hi, this is your first pull request in IoTDB project. Thanks for your contribution! IoTDB will be better because of you.'
diff --git a/.github/workflows/influxdb-protocol.yml b/.github/workflows/influxdb-protocol.yml
deleted file mode 100644
index ce9d1ec..0000000
--- a/.github/workflows/influxdb-protocol.yml
+++ /dev/null
@@ -1,68 +0,0 @@
-#    Licensed under the Apache License, Version 2.0 (the "License");
-#    you may not use this file except in compliance with the License.
-#    You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS,
-#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#    See the License for the specific language governing permissions and
-#    limitations under the License.
-
-name: InfluxDB Protocol Test
-
-on:
-  push:
-    branches:
-      - influxdb-*
-    branches-ignore:
-      - master
-      - 'rel/*'
-    paths-ignore:
-      - 'docs/**'
-  pull_request:
-    branches:
-      - influxdb-*
-    branches-ignore:
-      - master
-      - 'rel/*'
-    paths-ignore:
-      - 'docs/**'
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-
-jobs:
-  ubuntu:
-    runs-on: ubuntu-latest
-
-    steps:
-      - uses: actions/checkout@v2
-
-      - name: Set up JDK 11
-        uses: actions/setup-java@v1
-        with:
-          java-version: 11
-
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-
-      - name: Build Distribution Zip
-        run: ./mvnw.sh -B -DskipTests clean install
-
-      - name: Build Docker Image
-        run: |
-          docker build . -f docker/src/main/Dockerfile-single -t "iotdb:$GITHUB_SHA"
-          docker images
-
-      - name: IT Test
-        shell: bash
-        run: |
-          cd influxdb-protocol && mvn -B clean compile post-integration-test -Dtest.port.closed=true
diff --git a/.github/workflows/main-unix.yml b/.github/workflows/main-unix.yml
deleted file mode 100644
index dfa13c6..0000000
--- a/.github/workflows/main-unix.yml
+++ /dev/null
@@ -1,56 +0,0 @@
-# This workflow will build a Java project with Maven
-# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
-
-name: Main Mac and Linux
-
-on:
-  push:
-    branches:
-      - master
-      - 'rel/*'
-      - Vector
-    paths-ignore:
-      - 'docs/**'
-  pull_request:
-    branches:
-      - master
-      - 'rel/*'
-      - cluster_new
-      - Vector
-    paths-ignore:
-      - 'docs/**'
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-
-jobs:
-  unix:
-    strategy:
-      fail-fast: false
-      max-parallel: 20
-      matrix:
-        java: [ 8, 11, 17 ]
-        os: [ ubuntu-latest, macos-latest ]
-    runs-on: ${{ matrix.os}}
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Set up JDK ${{ matrix.java }}
-        uses: actions/setup-java@v1
-        with:
-          java-version: ${{ matrix.java }}
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-      - name: Check Apache Rat
-        run: mvn -B apache-rat:check -P site -P code-coverage
-      - name: IT/UT Test
-        shell: bash
-        # we do not compile client-cpp for saving time, it is tested in client.yml
-        # we can skip influxdb-protocol because it has been tested separately in influxdb-protocol.yml
-        run: mvn -B clean verify -Dtest.port.closed=true -P '!testcontainer,!influxdb-protocol'
diff --git a/.github/workflows/main-win.yml b/.github/workflows/main-win.yml
deleted file mode 100644
index fc31b01..0000000
--- a/.github/workflows/main-win.yml
+++ /dev/null
@@ -1,113 +0,0 @@
-# This workflow will build a Java project with Maven
-# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
-
-name: Main Win
-
-on:
-  push:
-    branches:
-      - master
-      - 'rel/*'
-    paths-ignore:
-      - 'docs/**'
-  pull_request:
-    branches:
-      - master
-      - 'rel/*'
-      - cluster_new
-    paths-ignore:
-      - 'docs/**'
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-
-jobs:
-  win:
-    strategy:
-      fail-fast: false
-      max-parallel: 20
-      matrix:
-        java: [ 8, 11, 17 ]
-        # to reduce the CI time cost; we split the whole CI to 3 parts:
-        # modules except the server and the cluster:
-        #   -Diotdb.skip.test=true -Dcluster.skip.test=true
-        # the server module:
-        #   -pl server -am -DskipTests=true -Diotdb.test.only=true
-        # the cluster module:
-        #   -pl cluster -am -DskipTests=true -Dcluster.test.only=true
-        # but we just add labels here to make the action name more graceful
-        it_task: [ 'others',
-                   'server',
-                   'cluster'
-        ]
-    runs-on: windows-latest
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Set up JDK ${{ matrix.java }}
-        uses: actions/setup-java@v1
-        with:
-          java-version: ${{ matrix.java }}
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-      - name: Check Apache Rat
-        run: mvn -B apache-rat:check
-      - name: Download Hadoop Tools if Needed
-        # Using Powershell ...
-        # github action put codes to d:\a
-        run: mkdir D:\a\hadoop\bin ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/winutils.exe -OutFile D:\a\hadoop\bin\winutils.exe  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hadoop.dll -OutFile C:\windows\system32\hadoop.dll  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hadoop -OutFile D:\a\hadoop\bin\hadoop  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hadoop.cmd -OutFile D:\a\hadoop\bin\hadoop.cmd  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hadoop.exp -OutFile D:\a\hadoop\bin\hadoop.exp  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hadoop.lib -OutFile D:\a\hadoop\bin\hadoop.lib  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hadoop.pdb -OutFile D:\a\hadoop\bin\hadoop.pdb  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hdfs.dll -OutFile C:\windows\system32\hdfs.dll  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hdfs -OutFile D:\a\hadoop\bin\hdfs  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hdfs.cmd -OutFile D:\a\hadoop\bin\hdfs.cmd  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hdfs.exp -OutFile D:\a\hadoop\bin\hdfs.exp   ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hdfs.lib -OutFile D:\a\hadoop\bin\hdfs.lib  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hdfs.pdb -OutFile D:\a\hadoop\bin\hdfs.pdb  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/hdfs_static.lib -OutFile D:\a\hadoop\bin\hdfs_static.lib  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/libwinutils.lib -OutFile D:\a\hadoop\bin\libwinutils.lib  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/mapred -OutFile D:\a\hadoop\bin\mapred  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/mapred.cmd -OutFile D:\a\hadoop\bin\mapred.cmd  ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/rcc -OutFile D:\a\hadoop\bin\rcc ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/winutils.pdb -OutFile D:\a\hadoop\bin\winutils.pdb ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/yarn -OutFile D:\a\hadoop\bin\yarn ; `
-          Invoke-WebRequest https://github.com/cdarlint/winutils/raw/master/hadoop-2.7.3/bin/yarn.cmd -OutFile D:\a\hadoop\bin\yarn.cmd ; `
-          [Environment]::SetEnvironmentVariable("Path", $env:Path + ";D:\a\hadoop\bin", "User") ; `
-          [Environment]::SetEnvironmentVariable("HADOOP_HOME", "D:\a\hadoop", "User")
-      - name: Add Hadoop Path (Win)
-        shell: bash
-        run: echo 'export PATH=/d/a/hadoop/bin:$PATH' >> ~/.bash_profile && echo 'export HADOOP_HOME=/d/a/hadoop' >> ~/.bash_profile && source ~/.bash_profile
-      - name: Check Hadoop Path (Win)
-        shell: bash
-        run: source ~/.bash_profile && echo $PATH
-      - name: Cache Hadoop packages (Win)
-        uses: actions/cache@v2
-        with:
-          path: D:\a\hadoop
-          key: ${{ runner.os }}-hadoop-files${{ hashFiles('**/*.exe') }}
-          restore-keys: ${{ runner.os }}-hadoop-files
-      - name: Test Server Module with Maven
-        shell: bash
-        if: ${{ matrix.it_task == 'server'}}
-        run: source ~/.bash_profile && mvn -B clean integration-test -Dtest.port.closed=true -pl server -am -DskipTests=true -Diotdb.test.only=true
-      - name: Test Cluster Module with Maven
-        shell: bash
-        if: ${{ matrix.it_task == 'cluster'}}
-        run: source ~/.bash_profile && mvn -B clean integration-test -Dtest.port.closed=true -pl cluster -am -DskipTests=true -Dcluster.test.only=true
-      - name: Test Other Modules with Maven
-        shell: bash
-        if: ${{ matrix.it_task == 'others'}}
-        # we can skip influxdb-protocol because it has been tested separately in influxdb-protocol.yml
-        run: source ~/.bash_profile && mvn -B clean verify -Dtest.port.closed=true -Diotdb.test.skip=true -Dcluster.test.skip=true -P '!influxdb-protocol'
-
diff --git a/.github/workflows/sonar-coveralls.yml b/.github/workflows/sonar-coveralls.yml
deleted file mode 100644
index 33cc7ea..0000000
--- a/.github/workflows/sonar-coveralls.yml
+++ /dev/null
@@ -1,74 +0,0 @@
-# This workflow will build a Java project with Maven
-# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
-
-name: Sonar-Coveralls
-
-on:
-  push:
-    branches:
-      - master
-      - "rel/*"
-    paths-ignore:
-      - "docs/**"
-  pull_request:
-    branches:
-      - master
-      - "rel/*"
-      - cluster_new
-    paths-ignore:
-      - "docs/**"
-  pull_request_target:
-    branches:
-      - master
-      - "rel/*"
-      - cluster_new
-    paths-ignore:
-      - "docs/**"
-  # allow manually run the action:
-  workflow_dispatch:
-
-env:
-  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
-  PR_NUMBER: ${{ github.event.number }}
-
-jobs:
-  ubuntu:
-    runs-on: ubuntu-latest
-
-    steps:
-      - uses: actions/checkout@v2
-      - name: Set up JDK 11
-        uses: actions/setup-java@v1
-        with:
-          java-version: 11
-      - name: Cache Maven packages
-        uses: actions/cache@v2
-        with:
-          path: ~/.m2
-          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
-          restore-keys: ${{ runner.os }}-m2-
-      - name: IT/UT Test
-        # we do not compile client-cpp for saving time, it is tested in client.yml
-        run: mvn -B clean compile post-integration-test -Dtest.port.closed=true -Pcode-coverage -P '!testcontainer,!influxdb-protocol'
-      - name: Code Coverage (Coveralls)
-        if: ${{ success() && (github.event_name == 'pull_request_target' || github.event_name == 'push')}}
-        run: |
-          mvn -B post-integration-test -Pcode-coverage -pl code-coverage
-          mvn -B coveralls:report \
-          -DserviceName=travis_ci \
-          -Dbranch=$BRANCH_NAME \
-          -DpullRequest=$PR_NUMBER \
-          -DrepoToken=${{ secrets.COVERALL_TOKEN }} \
-          -Pcode-coverage -P '!testcontainer'
-      - name: SonarCloud Report
-        if: ${{ success() && (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == 'apache/iotdb' || github.event_name == 'push')}}
-        env:
-          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-          SONAR_TOKEN: ${{ secrets.SONARCLOUD_TOKEN }}
-        run: |
-          mvn -B verify sonar:sonar \
-          -Dsonar.organization=apache \
-          -Dsonar.projectKey=apache_incubator-iotdb \
-          -Dsonar.host.url=https://sonarcloud.io \
-          -Dsonar.login=${{ secrets.SONARCLOUD_TOKEN }} \
-          -DskipTests -pl '!distribution'  -P '!testcontainer' -am
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 68d7afe..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,115 +0,0 @@
-**/*.pid
-**/gc.log*
-**/logs/*
-**/lib/**
-**/data/**
-
-# Python runtime file
-**/__pycache__/**
-
-# Eclipse IDE files
-**/.classpath
-**/.project
-**/.settings/
-# src/main/resources/
-# intellij IDE files
-**/*.iml
-**/.idea/
-**/*.log
-**/*.ipr
-**/*.iws
-# Apple OS X related
-**/.DS_Store
-derby-tsfile-db
-
-# build generated
-**/target/
-
-# intermediately generated locally
-
-tsfile-timeseries/src/main/resources/logback.out.out.xml
-tsfile-timeseries/src/main/resources/logback.out.xml
-tsfile-service/derby-tsfile-db/
-tsfile-timeseries/src/test/resources/data
-src/main/resources/metadata/mlog.txt
-tsfile-jdbc/src/main/resources/output/queryRes.csv
-
-*.txt
-
-*.jar
-*.gz
-*.tar.gz
-*.tar
-#src/test/resources/logback.xml
-
-### CSV ###
-*.csv
-### Maven ###
-grafana/target/
-!grafana/.mvn/wrapper/maven-wrapper.jar
-grafana/.mvn/
-
-grafana/logs/
-*.log
-
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-
-
-### NetBeans ###
-**/nbproject/private/
-**/nbbuild/
-**/dist/
-**/nbdist/
-**/.nb-gradle/
-grafana/data/
-
-### vscode project
-**/.vscode/
-
-
-grafana/data/test.csv
-**/lib/
-/target/
-*.tsfile
-tsfile/src/test/resources/*.ts
-
-### Apache release ###
-local-snapshots-dir/
-venv/
-
-partitions.tmp
-partitions
-node_identifier
-
-### temporary file of the distributed version ###
-remote/
-
-# gitpod
-.theia/
-
-classes/
-
-### Cmake files ###
-*.cmake
-Makefile
-**/CMakeFiles/
-
-### cluster test data
-node1/
-node2/
-node3/
-
-# Exclude copied license
-/client-py/LICENSE
-
-# ANTLR
-antlr/gen/
-antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/gen/
-antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlLexer.tokens
diff --git a/Jenkinsfile b/Jenkinsfile
deleted file mode 100644
index 1943bd9..0000000
--- a/Jenkinsfile
+++ /dev/null
@@ -1,210 +0,0 @@
-#!groovy
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-pipeline {
-
-    agent {
-        node {
-            label 'ubuntu'
-        }
-    }
-
-    environment {
-        // Testfails will be handled by the jenkins junit steps and mark the build as unstable.
-        MVN_TEST_FAIL_IGNORE = '-Dmaven.test.failure.ignore=true'
-    }
-
-    tools {
-        maven 'maven_3_latest'
-        jdk 'jdk_11_latest'
-    }
-
-    options {
-        timeout(time: 3, unit: 'HOURS')
-        // When we have test-fails e.g. we don't need to run the remaining steps
-        skipStagesAfterUnstable()
-    }
-
-    stages {
-        stage('Initialization') {
-            steps {
-                echo 'Building Branch: ' + env.BRANCH_NAME
-                echo 'Using PATH = ' + env.PATH
-            }
-        }
-
-        stage('Checkout') {
-            steps {
-                echo 'Checking out branch ' + env.BRANCH_NAME
-                checkout scm
-            }
-        }
-
-        stage('Deploy site') {
-            when {
-                branch 'master'
-            }
-            // Only the nodes labeled 'git-websites' have the credentials to commit to the.
-            agent {
-                node {
-                    label 'git-websites'
-                }
-            }
-            steps {
-                // Publish the site with the scm-publish plugin.
-                sh 'mvn -P site -P compile-site -P compile-site-0.13 -P compile-site-0.12 -P compile-site-0.11 -P compile-site-0.10 -P compile-site-0.9 -P compile-site-0.8 compile scm-publish:publish-scm -pl site'
-
-                // Clean up the snapshots directory (freeing up more space after deploying).
-                dir("target") {
-                    deleteDir()
-                }
-            }
-        }
-
-        stage('Build (not master)') {
-            when {
-                expression {
-                    env.BRANCH_NAME != 'master'
-                }
-            }
-            steps {
-                echo 'Building'
-                sh 'mvn ${MVN_TEST_FAIL_IGNORE} ${MVN_LOCAL_REPO_OPT} clean install'
-            }
-            post {
-                always {
-                    junit(testResults: '**/surefire-reports/*.xml', allowEmptyResults: true)
-                    junit(testResults: '**/failsafe-reports/*.xml', allowEmptyResults: true)
-                }
-            }
-        }
-
-        stage('Build') {
-            when {
-                branch 'master'
-            }
-            steps {
-                echo 'Building'
-                sh 'mvn clean'
-                // We'll deploy to a relative directory so we can
-                // deploy new versions only if the entire build succeeds
-                sh 'mvn ${MVN_TEST_FAIL_IGNORE} -DaltDeploymentRepository=snapshot-repo::default::file:./local-snapshots-dir -P client-cpp clean deploy -P get-jar-with-dependencies -P !testcontainer'
-            }
-            post {
-                always {
-                    junit(testResults: '**/surefire-reports/*.xml', allowEmptyResults: true)
-                    junit(testResults: '**/failsafe-reports/*.xml', allowEmptyResults: true)
-                }
-            }
-        }
-
-        stage('Code Quality') {
-            when {
-                branch 'master'
-            }
-            steps {
-                echo 'Checking Code Quality on SonarCloud'
-                // Main parameters
-                script {
-                    // Then run the analysis
-                    // 'my-sonarcloud-token' needs to be defined for this job and contains the user token
-                    withCredentials([string(credentialsId: 'xiangdong-iotdb-sonarcloud-token', variable: 'SONAR_TOKEN')]) {
-                        sh "mvn verify sonar:sonar -Dsonar.branch.name=master -Dsonar.host.url=https://sonarcloud.io -Dsonar.organization=apache -Dsonar.projectKey=apache_incubator-iotdb -Dsonar.login=${SONAR_TOKEN} -DskipTests"
-                    }
-                }
-            }
-        }
-
-
-        stage('Deploy') {
-            when {
-                branch 'master'
-            }
-            steps {
-                echo 'Deploying'
-                // Deploy the artifacts using the wagon-maven-plugin.
-                sh 'mvn -f jenkins.pom -X -P deploy-snapshots -P client-cpp wagon:upload -P get-jar-with-dependencies'
-            }
-        }
-
-        stage('Cleanup') {
-            steps {
-                echo 'Cleaning up the workspace'
-                deleteDir()
-            }
-        }
-    }
-
-    // Send out notifications on unsuccessful builds.
-    post {
-        // If this build failed, send an email to the list.
-        failure {
-            script {
-                if(env.BRANCH_NAME == "master") {
-                    emailext(
-                        subject: "[BUILD-FAILURE]: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]'",
-                        body: """
-BUILD-FAILURE: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]':
-
-Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]</a>"
-""",
-                        to: "dev@iotdb.apache.org"
-                    )
-                }
-            }
-        }
-
-        // If this build didn't fail, but there were failing tests, send an email to the list.
-        unstable {
-            script {
-                if(env.BRANCH_NAME == "master") {
-                    emailext(
-                        subject: "[BUILD-UNSTABLE]: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]'",
-                        body: """
-BUILD-UNSTABLE: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]':
-
-Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]</a>"
-""",
-                        to: "dev@iotdb.apache.org"
-                    )
-                }
-            }
-        }
-
-        // Send an email, if the last build was not successful and this one is.
-        success {
-            script {
-                if ((env.BRANCH_NAME == "master") && (currentBuild.previousBuild != null) && (currentBuild.previousBuild.result != 'SUCCESS')) {
-                    emailext (
-                        subject: "[BUILD-STABLE]: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]'",
-                        body: """
-BUILD-STABLE: Job '${env.JOB_NAME} [${env.BRANCH_NAME}] [${env.BUILD_NUMBER}]':
-
-Is back to normal.
-""",
-                        to: "dev@iotdb.apache.org"
-                    )
-                }
-            }
-        }
-    }
-
-}
\ No newline at end of file
diff --git a/NOTICE b/NOTICE
deleted file mode 100644
index 20b3f3c..0000000
--- a/NOTICE
+++ /dev/null
@@ -1,24 +0,0 @@
-Apache IoTDB
-Copyright 2018-2022 The Apache Software Foundation.
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-============================================================================
-
-IoTDB project uses 4 Chinese Patents:
-* 201711384490X
-* 201810111712.9
-* 201711322631.5
-* 201711319331.1
-
-According to the Apache 2.0 License. The owner of the patents, Tsinghua University,
-grant the users the right to the use of patent under the requirement of Apache 2.0 License.
-
-============================================================================
-
-Apache Commons Collections
-Copyright 2001-2019 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
\ No newline at end of file
diff --git a/NOTICE-binary b/NOTICE-binary
deleted file mode 100644
index 20b3f3c..0000000
--- a/NOTICE-binary
+++ /dev/null
@@ -1,24 +0,0 @@
-Apache IoTDB
-Copyright 2018-2022 The Apache Software Foundation.
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-============================================================================
-
-IoTDB project uses 4 Chinese Patents:
-* 201711384490X
-* 201810111712.9
-* 201711322631.5
-* 201711319331.1
-
-According to the Apache 2.0 License. The owner of the patents, Tsinghua University,
-grant the users the right to the use of patent under the requirement of Apache 2.0 License.
-
-============================================================================
-
-Apache Commons Collections
-Copyright 2001-2019 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
\ No newline at end of file
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
deleted file mode 100644
index 08bc128..0000000
--- a/RELEASE_NOTES.md
+++ /dev/null
@@ -1,1154 +0,0 @@
-<!--
-
-    Licensed to the Apache Software Foundation (ASF) under one
-    or more contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  The ASF licenses this file
-    to you under the Apache License, Version 2.0 (the
-    "License"); you may not use this file except in compliance
-    with the License.  You may obtain a copy of the License at
-
-        http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing,
-    software distributed under the License is distributed on an
-    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-    KIND, either express or implied.  See the License for the
-    specific language governing permissions and limitations
-    under the License.
-
--->
-
-# Apache IoTDB 0.13.0
-
-## New Features
-
-* [IOTDB-924] Support insert multi rows in SQL
-* [IOTDB-959] Add Create Storage Group Grammar 
-* [IOTDB-1037] set rpc\_compression as a parameter in JDBC URL
-* [IOTDB-1059] Support sql statement insert without timestamp
-* [IOTDB-1143] Support Continuous query
-* [IOTDB-1199] Support aligned timeseries and schema template 
-* [IOTDB-1319] Support Trigger
-* [IOTDB-1391] Add a new Aggregation function extreme (max absolute value)
-* [IOTDB-1399] Add a session interface to connect multiple nodes
-* [IOTDB-1400] Support arithmetic operations in SELECT clauses
-* [IOTDB-1403] Dictionary encoding for TEXT
-* [IOTDB-1490] Add built-in UDTFs: sinh, conh, tanh
-* [IOTDB-1514] Support null in insertTablet
-* [IOTDB-1524] Support SELECT ... INTO ... clause 
-* [IOTDB-1647] Nested Expressions in SELECT clauses
-* [IOTDB-1673] CLI upgrade to JLine3
-* [IOTDB-1739] Constant timeseries generating functions (const, pi and e) 
-* [IOTDB-1760] Support avg, count, extreme, first\_value, last\_value, max\_time, max\_value, min\_time, min\_value, sum aggregations in group by fill
-* [IOTDB-1761] Add metric framework for IoTDB
-* [IOTDB-1775] Add CAST function to convert data type
-* [IOTDB-1823] Support group by multi level
-* [IOTDB-1844] Query support timeseries prefix and suffix matching: root.\*sg\*
-* [IOTDB-1859] Support REST API
-* [IOTDB-1860] New Grafana plugin
-* [IOTDB-1886] Support Constant Expressions in Select Clauses
-* [IOTDB-1973] Supports aggregate queries, constants, and arithmetic nested expressions in SELECT clauses
-* [IOTDB-1986] Support select UDF as alisa clauses 
-* [IOTDB-1989] Spark-IoTDB-connector support inserting data
-* [IOTDB-2131] Support previous, linear, constant value fill funtion New fill
-* [ISSUE-3811] Provide a data type column for the last query dataset 
-* add rabbitmq example
-
-## Improvements
-
-* [IOTDB-1280] Rewrite the Antlr grammar file
-* [IOTDB-1372] Enhance management of TsFileResource 
-* [IOTDB-1428] Ask query threads to quit if query is timeout 
-* [IOTDB-1450] Deletion should only delete related time partitions
-* [IOTDB-1463] Implement builder pattern for Session and SessionPool 
-* [IOTDB-1477] Optimize code logic of generateAlignByDevicePlan() 
-* [IOTDB-1559] Refactor the IT framework
-* [IOTDB-1564] Make hearbeat and election timeout parameters be configurable
-* [IOTDB-1581] Consider deletions when recovering tsFileResource of incomplete tsfile 
-* [IOTDB-1607] Optimize Tracing
-* [IOTDB-1613] Recover mods file if  write modification failed
-* [IOTDB-1639] Refactoring the cluster class structure to make it consistent with the server module 
-* [IOTDB-1730] client-cpp, enhance session::insertTablet() etc.'s performance 
-* [IOTDB-1852] Accelerate queryies by using statistics
-* [IOTDB-1857] Remove useless handle logic for CountPlan in executeNonQuery in cluster module
-* [IOTDB-1884] Distinguish between zero and null values in sum aggregation
-* [IOTDB-1924] Remove the operation of clearing the cache after the compaction is over
-* [IOTDB-1950] Add Bloom Filter cache for query 
-* [IOTDB-2001] Remove redundant StorageGroupNotReadyException
-* [IOTDB-2011] Update last cache while doing show latest timeseries query
-* [IOTDB-2022] SessionDataSet implements AutoCloseable
-* [IOTDB-2075] Accelerate the process of insertTablets by using thread pool
-* [IOTDB-2119] IoTDB CSV export tools add timestamp accuracy setting function 
-* [IOTDB-2162] Simplify the recovery merge process
-* [IOTDB-2176] Limit target chunk size when performing inner space compaction
-* [IOTDB-2193] Reduce unnecessary lock operations of RaftLogManager to improve writing performance 
-* [IOTDB-2195] Control the concurrent query execution thread
-* [ISSUE-3445] New compaction strategy and compaction scheduling strategy
-* [ISSUE-3856] refine exception handling logic in commitTo in RaftLogManager
-* [Cluster] No need to shake hands with itself when one node restart 
-
-
-## Incompatible changes
-
-* [IOTDB-1026] Support wildcard \*\* in Path And Replace PrefixPath usage with PathPattern in IOTDB-SQL
-* [IOTDB-1620] Support backtick (\`) character and double quotes (") to quote identifiers 
-* [IOTDB-1650] Rename the sql command `move` to `unload` 
-
-## Miscellaneous changes
-
-* [IOTDB-1342] modify error message about LIMIT and OFFSET used in conjunction with the FILL clause
-* [IOTDB-1372] delete devices field in FileTimeIndex 
-* [IOTDB-1531] Check tsfile creation time when recovering
-* [IOTDB-1541] Change sequence of wal and memtable in insertion
-* [IOTDB-1923] Separate the request unpacking and execution processing logic of TSServiceImpl
-* [IOTDB-1969] Remove statistic resources of old metric framework from iotdb-server
-* [IOTDB-2014] MicrometerPrometheusReporter#getReporterType return null 
-* [IOTDB-2043] refactor: remove haveSorted param from Session
-* [IOTDB-2154] add TsFileUtils.isTsFileComplete
-* [IOTDB-2206] Rename StorageGroupProcessor to VirtualStorageGroupProcessor
-* [IOTDB-2208] Reconstruct the process of generating resultset header of query
-* [ISSUE-4047] Generic type in Statistics extend Serializable 
-* Add compaction version in cache key
-* Add a constructor of IoTDBDescriptorHolder to prohibit instantiation
-
-## Bug Fixes
-
-* [IOTDB-1266] Fix SHOW TIMESERIES will only display 2000 timeseries
-* [IOTDB-1478] The whole IoTDB can not read/write if any one sg is not ready
-* [IOTDB-1562] Fix incorrect exception processing in insertXXX() API
-* [IOTDB-1583] Raft log failed to be committed in cluster version 
-* [IOTDB-1592] BugFix: SLimit Not effective in align by device 
-* [IOTDB-1736] Fix error code is not printed in TSServiceImpl's log 
-* [IOTDB-1749] sync-tool's lockInstance() dose not take effect
-* [IOTDB-1758] sync-tool, empty uuid file cause tool can not auto-recovery
-* [IOTDB-1848] Failed to initialize pool: Does not support setReadOnly in grafana-connector
-* [IOTDB-1853] Fix bug about more than one TimeseriesMetadata in TsFile
-* [IOTDB-2010] fix incomplete show timeseries result
-* [IOTDB-2021] Fix Bloom Filter Cache doesn't take effect bug 
-* [IOTDB-2060] Fix NPE when using fill without a filter
-* [IOTDB-2074] Fix NullPointerException when recovering compaction in MacOS
-* [IOTDB-2077] Unexpected exception when executing raw data query without VF with limit clause
-* [IOTDB-2088] Fix IndexOutOfBound exception in AggregationPlan.groupAggResultByLevel
-* [IOTDB-2116] Fix all client connections are stuck bug caused by logback bug 
-* [IOTDB-2129] Wrong result returned when querying by nested expressions with aliases
-* [IOTDB-2143] fix wrong precision in cluster mode
-* [IOTDB-2153] [IOTDB-2157] fix incorrect path search space 
-* [IOTDB-2159] Fix wrong status code when inserting data to a read-only cluster
-* [IOTDB-2163] Fix unexpected amount of columns in a cluster slimit query
-* [IOTDB-2174] Fix Regexp filter serializing and deserializing error 
-* [IOTDB-2180] Fix show latest timeseries in cluster
-* [IOTDB-2183] Fix the config problems in cluster mode
-* [IOTDB-2185] Fix get an exception when parsing the header of CSV
-* [IOTDB-2209] Fix logback CVE-2021-42550 issue
-* [IOTDB-2251] [IOTDB-2252] Fix Query deadlock 
-* [IOTDB-2267] UDF: Error code 500 caused by user logic
-* [IOTDB-2282] fix tag recovery bug after tag upsert
-* [IOTDB-2290] Fix Incorrect query result in C++ client 
-* Fix CPP client could not be successfully built on windows
-* Fix dead lock in setDataTTL method
-
-
-# Apache IoTDB 0.12.4
-
-## New Features
-
-* [IOTDB-1823] group by multi level
-
-## Improvements
-
-* [IOTDB-2027] Rollback invalid entry after WAL writing failure
-* [IOTDB-2061] Add max concurrent sub query parameter, read data in batches to limit max IO and add max cached buffer size configuration
-* [IOTDB-2065] release TsFileSequenceReader soon when it is no longer used
-* [IOTDB-2072] Remove TVListAllocator to reduce the TVList mem cost
-* [IOTDB-2101] Reduce the memory footprint of QueryDataSource
-* [IOTDB-2102] Push limit operator down to each reader
-* [IOTDB-2123] Accelerate recovery process
-* update user guide for cpp-cpi and disable compiling nodejs in cpp-cli
-* Ignore too many WAL BufferOverflow log
-
-
-## Bug Fixes
-* [IOTDB-1408] Statement with 'as' executes incorrectly in mutil-path scenes
-* [IOTDB-2023] Fix serializing and deserializing bugs of Filters
-* [IOTDB-2025] Fix count nodes and devices incorrectly in cluster
-* [IOTDB-2031] Fix incorrect result of descending query with value filter in cluster
-* [IOTDB-2032] Fix incorrect result of descending query with multiple time partitions
-* [IOTDB-2039] Fix data redundant after too many open files exception occurs during compaction
-* [IOTDB-2047] Fix NPE when memControl is disabled and insert TEXT value to a non-TEXT series
-* [IOTDB-2058] Fix Query is blocked without sub-query-threads exist bug
-* [IOTDB-2063] Fix MinTimeDescAggregationResult implementation bug
-* [IOTDB-2064] Fix the NPE caused by map serde
-* [IOTDB-2068] Fix GZIP compressor meets ArrayIndexOutOfBoundsException
-* [IOTDB-2124] the filtering condition does not take efffect for last query in cluster
-* [IOTDB-2138] Fix data loss after IoTDB recover
-* [IOTDB-2140] Fix merge throw NullPointerException
-* [IOTDB-2152] PyClient: Override `__eq__()` of TSDataType, TSEncoding and Compressor to avoid unexpected comparation behaviour
-* [IOTDB-2160] Fix cluster groupby query cross-node reference leaks
-* [ISSUE-3335] Fix the bug of start-cli.sh -e mode can't work with wild card \*
-* fix memory leak: replace RandomDeleteCache with Caffine CacheLoader
-* Fix connection refused using session when users forget to set client ip
-
-
-# Apache IoTDB 0.12.3
-
-## Improvements
-
-* [IOTDB-842] Better Export/Import-CSV Tool
-* [IOTDB-1738] Cache paths list in batched insert plan
-* [IOTDB-1792] remove tomcat-embed dependency and make all transitive dependencies versions consistent
-* [ISSUE-4072] Parallel insert records in Session
-* Print the file path while meeting error in case of reading chunk
-
-## Bug Fixes
-
-* [IOTDB-1275] Fix backgroup exec for cli -e function causes an infinite loop
-* [IOTDB-1287] Fix C++ class Session has 2 useless sort()
-* [IOTDB-1289] fix CPP mem-leak in SessionExample.cpp insertRecords()
-* [IOTDB-1484] fix auto create schema in cluster
-* [IOTDB-1578] Set unsequnce when loading TsFile with the same establish time
-* [IOTDB-1619] Fix an error msg when restart iotdb-cluster
-* [IOTDB-1629] fix the NPE when using value fill in cluster mode
-* [IOTDB-1632] Fix Value fill function fills even when the data exists
-* [IOTDB-1651] add reconnect to solve out of sequence in sync module
-* [IOTDB-1659] Fix Windows CLI cannot set maxPRC less than or equal to 0
-* [IOTDB-1670] Fix cli -e mode didn't fetch timestamp_precision from server
-* [IOTDB-1674] Fix command interpret error causing somaxconn warning failed
-* [IOTDB-1677] Fix not generate file apache-iotdb-0.x.x-client-cpp-linux-x86_64-bin.zip.sha512
-* [IOTDB-1678] Fix client-cpp session bug: can cause connection leak.
-* [IOTDB-1679] client-cpp: Session descontruction need release server resource
-* [IOTDB-1690] Fix align by device type cast error
-* [IOTDB-1693] fix IoTDB restart does not truncate broken ChunkGroup bug
-* [IOTDB-1703] Fix MManager slow recover with tag
-* [IOTDB-1714] fix Could not find or load main class when start with jmx on win 
-* [IOTDB-1723] Fix concurrency issue in compaction selection
-* [IOTDB-1726] Wrong hashCode() and equals() method in ChunkMetadata
-* [IOTDB-1727] Fix Slow creation of timeseries with tag
-* [IOTDB-1731] Fix sync error between different os
-* [IOTDB-1733] Fix dropping built-in function
-* [IOTDB-1741] Avoid double close in level compaction execution
-* [IOTDB-1785] Fix Illegal String ending with . being parsed to PartialPath
-* [IOTDB-1836] Fix Query Exception Bug after deleting all sgs
-* [IOTDB-1837] Fix tagIndex rebuild failure after upgrade mlog from mlog.txt to mlog.bin
-* [IOTDB-1838] The compacting status in SGP is always false
-* [IOTDB-1846] Fix the error when count the total number of devices in cluster mode
-* [IoTDB-1847] Not throw excpetion when pulling non--existent time series
-* [IOTDB-1850] Fix deserialize page merge rate limiter
-* [IoTDB-1865] Compaction is blocking when removing old files in Cluster
-* [IOTDB-1868] Use RwLock to reduce the lock time for nodeRing
-* [IOTDB-1872] Fix data increases abnormally after IoTDB restarts
-* [IOTDB-1877] Fix Sync recovery and reconnection bugs in both sender and receiver
-* [IOTDB-1879] Fix some Unsequence files never be merged to higher level or Sequence folder
-* [IOTDB-1887] Fix importing csv data containing null throws exception
-* [IOTDB-1893] Fix Can not release file lock in sync verify singleton 
-* [IOTDB-1895] Cache leader optimization for batch write interfaces on multiple devices
-* [IOTDB-1903] Fix IndexOutOfRangeException when starting IoTDB
-* [IoTDB-1913] Fix When exporting a amount of data from csv, it will report network error or OOM
-* [IOTDB-1925] Fix the modification of max_select_unseq_file_num_in_each_compaction parameter does not take effect
-* [IOTDB-1958] Add storage group not ready exception
-* [IOTDB-1961] Cluster query memory leak
-* [IOTDB-1975] OOM caused by that MaxQueryDeduplicatedPathNum doesn't take effect
-* [IOTDB-1983] Fix DescReadWriteBatchData serializing bug
-* [IOTDB-1990] Fix unchecked null result by calling IReaderByTimestamp.getValuesInTimestamps()
-* [ISSUE-3945] Fix Fuzzy query not support multiDevices and alignByDevice Dataset
-* [ISSUE-4288] Fix CI issue caused by the invalid pentaho download url
-* [ISSUE-4293] SessionPool: InterruptedException is not properly handled in synchronized wait()
-* [ISSUE-4308] READ_TIMESERIES privilege granted to users and roles can not take effect when quering by UDFs
-* fix merge ClassCastException: MeasurementMNode
-* change sync version check to major version
-* init dummyIndex after restart cluster
-
-# Apache IoTDB 0.12.2
-
-## New Features
-
-* [IOTDB-959] Add create storage group Grammar
-* [IOTDB-1399] Add a session interface to connect multiple nodes
-* [IOTDB-1466] Support device template
-* [IOTDB-1491] UDTF query supported in cluster
-* [IOTDB-1496] Timed flush memtable
-* [IOTDB-1536] Support fuzzy query REGEXP
-* [IOTDB-1561] Support fill by specific value
-* [IOTDB-1565] Add sql: set system to readonly/writable
-* [IOTDB-1569] Timed close TsFileProcessor
-* [IOTDB-1586] Support mysql-style Like clause
-* [ISSUE-3811] Provide a data type column for the last query dataset
-* TTL can be set to the prefix path of storage group
-* add JMX monitor to all ThreadPools in the server module
-
-## Improvements
-
-* [IOTDB-1566] Do not restrict concurrent write partitions
-* [IOTDB-1585] ModificationFile‘s write interface blocking
-* [IOTDB-1587] SessionPool optimization: a more aggressive Session creation strategy
-* Use StringCachedPool in TsFileResource to reduce the memory size
-* write performance optimization when replicaNum == 1
-* Optimize Primitive Array Manager
-* Function Improvement: add overlapped page rate in Tracing
-
-## Bug Fixes
-
-* [IOTDB-1282] fix C++ class SessionDataSet mem-leak
-* [IOTDB-1407] fix Filtering time series based on tags query fails Occasionally
-* [IOTDB-1437] Fix the TsFileSketchTool NPE
-* [IOTDB-1442] Time filter & TTL do not take effect in cluster
-* [IOTDB-1452] remove compaction log/ change logger to daily
-* [IOTDB-1447] ClientPool is blocking other nodes when one node fails
-* [IOTDB-1456] Fix Error occurred while executing delete timeseries statement
-* [IOTDB-1461] Fix compaction conflicts with ttl
-* [IOTDB-1462] Fix cross space compaction recover null pointer bug
-* [IOTDB-1464] fix take byte array null pointer
-* [IOTDB-1469] fix cross space compaction lost data bug
-* [IOTDB-1471] Fix path not right in "sg may not ready" log
-* [IOTDB-1475] MeasurementId check while create timeseries or template/ disable time or timestamp in timeseries path
-* [IOTDB-1488] Fix metaMember's forwarding clientPool timeout in cluster module
-* [IOTDB-1494] fix compaction block flush bug
-* [IoTDB-1499] Remove series registration using IoTDBSink
-* [IoTDB-1501] Fix compaction recover delete tsfile bug
-* [IOTDB-1529] Fix mlog recover idx bug and synchronize setStorageGroup
-* [IOTDB-1537] fix insertTablet permission
-* [IOTDB-1539] Fix delete operation with value filter is abnormal
-* [IOTDB-1540] Bug Fix: 500 when using IN operator
-* [IOTDB-1541] Fix query result not right due to non-precise time index of resource
-* [IOTDB-1542] Cpp client segment fault: char[] buffer overflow caused by long exception message
-* [IOTDB-1545] Query dataset memory leak on server caused by cpp client
-* [IOTDB-1546] Optimize the Upgrade Tool rewrite logic to reduce the temp memory cost
-* [IOTDB-1552] Only allow equivalent filter for TEXT data type
-* [IOTDB-1556] Abort auto create device when meet exception in setStorageGroup
-* [IOTDB-1574] Deleted file handler leak
-* [IOTDB-1580] Error result of order by time desc when enable time partition
-* [IOTDB-1584] Doesn't support order by time desc in cluster mode
-* [IOTDB-1588] Bug fix: MAX_TIME is incorrect in cluster mode
-* [IOTDB-1594] Fix show timeseries returns incorrect tag value
-* [IOTDB-1600] Fix InsertRowsOfOneDevicePlan being not supported in cluster mode
-* [IOTDB-1610] Fix TsFileRewriteTool writing incorrect data file
-* [ISSUE-3116] Bug when using natural month unit in time interval in group by query
-* [ISSUE-3316] Query result with the same time range is inconsistent in group by query
-* [ISSUE-3436] Fix query result not right after deleting multiple time interval of one timeseries
-* [ISSUE-3458] fix load configuration does not take effect
-* [ISSUE-3545] Fix Time interval value is disorder in group by month
-* [ISSUE-3653] fix Max_time and last return inconsistent result
-* [ISSUE-3690] Memory leaks on the server when cpp client invokes checkTimeseriesExists
-* [ISSUE-3805] OOM caused by Chunk cache
-* [ISSUE-3865] Meaningless connection reset issues caused by low default value for SOMAXCONN
-* Fix DataMigrationExample OOM if migrate too many timeseries
-* Handle false positive cases which may cause NPE of tsfile bloom filter
-* Fix Windows shell error on JDK11 & fix iotdb-env.bat not working
-* Fix cluster auto create schema bug when retry locally
-* Fix thrift out of sequence in cluster module
-* Skip non exist measurement in where clause in align by device
-* fix blocking query when selecting TsFile in compaction
-* Fix redundant data in compaction recover
-* Fix load tsfile with time partition enable
-
-## Incompatible changes
-
-* [IOTDB-1485] Replace tsfile_size_threshold by unseq_tsfile_size/seq_tsfile_size
-
-## Miscellaneous changes
-
-* [IOTDB-1499] Remove unused exception throwing notation in IoTDBSink
-* [IOTDB-1500] Remove current dynamic query memory control
-* [ISSUE-3674] Disable thrift code generation for Javascript
-* enable cacheLeader by default
-* add audit log when execute delete and set sg for tracing
-* modify nodeTool user to root
-
-# Apache IoTDB 0.12.1
-
-## Bug Fixes
-
-* [GITHUB-3373] Remove the broken cached leader connection & optimize the insertRecords method in session
-* [IOTDB-1433] Fix bug in getMetadataAndEndOffset when querying non-exist device
-* [IOTDB-1432] fix level compaction loss data
-* [IOTDB-1427] Fix compaction lock with query
-* [IOTDB-1420] Fix compaction ttl bug
-* [IOTDB-1419] Remove redundant clearCompactionStatus, fix continuous compaction doesn't take effect when
-  enablePartition
-* [IOTDB-1415] Fix OOM caused by ChunkCache
-* [IOTDB-1414] NPE occurred when call getStorageGroupNodeByPath() method using not exist path
-* [IOTDB-1412] Unclear exception message thrown when executing empty InsertTabletPlan
-* [IOTDB-1411] Fix thriftMaxFrameSize and thriftDefaultBufferSize does not in effect
-* [IOTDB-1398] Do not select unseq files when there are uncompacted old unseq files
-* [IOTDB-1390] Fix unseq compaction loss data bug
-* [IOTDB-1384] Fix group by bug
-* [ISSUE-3378] Fix NPE when clear upgrade folder; Fix some upgraded pageHeader missing statistics
-* [GITHUB-3339] Try to fix sg dead lock
-* [GITHUB-3329] Fix upgrade NPE and DeadLock
-* [GITHUB-3319] Fix upgrade tool cannot close file reader
-* [IOTDB-1212] Fix The given error message is not right when executing select sin(non_existence) from root.sg1.d1
-* [IOTDB-1219] Fix a potential NPE issue in UDF module
-* [IOTDB-1286] Fix 4 C++ mem-leak points
-* [IOTDB-1294] Fix delete operation become invalid after compaction
-* [IOTDB-1313] Fix lossing time precision when import csv with unsupported timestamp format
-* [IOTDB-1316] The importCsv tool should continue inserting if a part of insertion failed
-* [IOTDB-1317] Fix log CatchUp always failed due to not check the follower's match index
-* [IOTDB-1323] Fix return a success message when encounter RuntimeException during the insertion process
-* [IOTDB-1325] Fix StackOverflow Exception in group by natural month query
-* [IOTDB-1330] Fix the load tsfile bug when the cross multi partition's tsfile only have one page
-* [IOTDB-1348] Fix Last plan not work in cluster mode
-* [IOTDB-1376] Fix BatchProcessException was not correctly handled in BaseApplier
-* [ISSUE-3277] Fix TotalSeriesNumber in MManager counted twice when recovering
-* [ISSUE-3116] Fix bug when using natural month unit in time interval in group by query
-* [ISSUE-3309] Fix InsertRecordsOfOneDevice runs too slow
-* Fix the plan index is always zero when using insertRecords interface to run the cluster
-* Add authority check for users create timeseries using executeBatch interface without the privilege
-* Fix versionInfo NPE when query upgrading 0.11 tsfile
-* Fix upgrade tool cannot load old tsfile if time partition enabled in 0.11
-* Fix import csv throw ArrayOutOfIndexError when the last value in a line is null
-* Fix upgrade tool cannot close file reader
-
-## Improvements
-
-* [GITHUB-3399] Change the default primitive array size to 32
-* [IOTDB-1387] Support Without Null ALL in align by device clause, Filter RowRecord automatically if any column in it is
-  null or all columns are null
-* [IOTDB-1385] Extract the super user to the configuration
-* [IOTDB-1315] ExportCsvTool should support timestamp `yyyy-MM-dd'T'HH:mm:ss.SSSZ`
-* [IOTDB-1339] optimize TimeoutChangeableTSnappyFramedTransport
-* [IOTDB-1356] Separate unseq_file_num_in_each_level from selecting candidate file in unseq compaction
-* [IOTDB-1357] Compaction use append chunk merge strategy when chunk is already large enough
-* [IOTDB-1380] Automatically close the dataset while there is no more data
-* Optimize sync leader for meta
-
-## New Features
-
-* [GITHUB-3389] TTL can be set to any path
-* [GITHUB-3387] Add parameter compaction_interval=10000ms
-* [IOTDB-1190] Fully support HTTP URL char set in timeseries path
-* [IOTDB-1321][IOTDB-1322] Filter RowRecord automatically if any column in it is null or all columns are null
-* [IOTDB-1357] Compaction use append chunk merge strategy when chunk is already large
-* [ISSUE-3089] Make it possible for storage groups to have name with hyphen
-
-## Miscellaneous changes
-
-* [GITHUB-3346] upgrade netty and claim exclusion for enforcer check
-* [IOTDB-1259] upgrade libthrift from 0.12.0/0.13.0 to 0.14.1
-* Uncomment the less used configurations
-* Enable the configration `concurrent_writing_time_partition`
-
-
-# Apache IoTDB 0.12.0
-
-## New Features
-* [IOTDB-68] New shared-nothing cluster
-* [IOTDB-507] Add zeppelin-interpreter module
-* [IOTDB-825] Aggregation by natural month
-* [IOTDB-890] support SDT lossy compression 
-* [IOTDB-944] Support UDTF (User-defined Timeseries Generating Function)
-* [IOTDB-965] Add timeout parameter for query
-* [IOTDB-1077] Add insertOneDeviceRecords API in java session
-* [IOTDB-1055] Support data compression type GZIP
-* [IOTDB-1024] Support multiple aggregated measurements for group by level statement
-* [IOTDB-1276] Add explain sql support and remove debug_state parameter
-* [IOTDB-1197] Add iotdb-client-go as a git submodule of IoTDB repo
-* [IOTDB-1230] Support spans multi time partitions when loading one TsFile
-* [IOTDB-1273] Feature/restrucutre python module as well as supporting pandas dataframe
-* [IOTDB-1277] support IoTDB as Flink's data source
-* [PR-2605] Add level merge to "merge" command
-
-## Incompatible changes
-* [IOTDB-1081] New TsFile Format
-* [ISSUE-2730] Add the number of unseq merge times in TsFile name.
-
-
-## Miscellaneous changes
-* [IOTDB-868] Change mlog from txt to bin
-* [IOTDB-1069] Restrict the flushing memtable number to avoid OOM when mem_control is disabled
-* [IOTDB-1104] Refactor the error handling process of query exceptions
-* [IOTDB-1108] Add error log to print file name while error happened
-* [IOTDB-1152] Optimize regular data size in traversing
-* [IOTDB-1180] Reset the system log file names and maximal disk-space size
-* [ISSUE-2515] Set fetchsize through JDBC and Session
-* [ISSUE-2598] Throw explicit exception when time series is unknown in where clause
-* [PR-2944] Throw exception when device to be queried is not in TsFileMetaData
-* [PR-2967] Log memory usage information in SystemInfo for better diagnosis
-
-## Bug Fixes
-* [IOTDB-1049] Fix NullpointerException and a delete bug in Last query
-* [IOTDB-1050] Fix Count timeserise column name is wrong
-* [IOTDB-1068] Fix Time series metadata cache bug
-* [IOTDB-1084] Fix temporary memory of flushing may cause OOM
-* [IOTDB-1106] Fix delete timeseries bug
-* [IOTDB-1126] Fix the unseq tsfile delete due to merge
-* [IOTDB-1135] Fix the count timeseries prefix path bug
-* [IOTDB-1137] Fix MNode.getLeafCount error when existing sub-device
-* [ISSUE-2484] Fix creating timeseries error by using "create" or "insert" statement
-* [ISSUE-2545, 2549] Fix unseq merge end time bug
-* [ISSUE-2611] An unsequence file that covers too many sequence file causes OOM query
-* [ISSUE-2688] LRULinkedHashMap does not work as an LRU Cache
-* [ISSUE-2709, 1178] Fix cache not cleared after unseq compaction bug, Fix windows 70,10 ci bug in unseq compaction ci
-* [ISSUE-2741] getObject method in JDBC should return an Object
-* [ISSUE-2746] Fix data overlapped bug after unseq compaction
-* [ISSUE-2758] NullPointerException in QueryTimeManager.checkQueryAlive()
-* [ISSUE-2905] Fix Files.deleteIfExists() doesn't work for HDFS file
-* [ISSUE-2919] Fix C++ client memory leak bug
-* [PR-2613] Fix importCSVTool import directory bug & encode bug
-* [PR-2409] Fix import csv which can't import time format str
-* [PR-2582] Fix sync bug for tsfiles's directory changed by vitural storage group
-* [ISSUE-2911] Fix The write stream is not closed when executing the command 'tracing off'
-
-# Apache IoTDB 0.11.4
-
-## Bug Fixes
-
-* IOTDB-1303 Disable group by without aggregation function in select clause
-* IOTDB-1306 Fix insertion blocked caused the deadlock in memory control module
-* IOTDB-1308 Fix users with READ_TIMESERIES permission cannot execute group by fill queries
-* IOTDB-1344 Fix cannot create timeseries caused by the timeseries count doesn't reset when deleting storage group
-* IOTDB-1384 Some value will disappear while using group by query
-* IOTDB-1398 Do not select unseq files when there are uncompacted old unseq files
-* ISSUE-3316 Fix query result with the same time range is inconsistent in group by query
-* Fix TotalSeriesNumber in MManager counted twice when recovering
-* Fix unseq compaction throws a wrong exception if some paths are not in the file
-* Fix overlapped data should be consumed first exception when query
-
-## Improvements
-
-* IOTDB-1356 Separate unseq_file_num_in_each_level from selecting candidate file in unseq compaction
-* IOTDB-1412 Unclear exception message thrown when executing empty InsertTabletPlan
-* continuous compaction in level compaction strategy when no tsfile is to be closed
-
-## New Features
-
-* support brackets with number in timeseries path
-
-# Apache IoTDB 0.11.3
-
-## Bug Fixes
-* ISSUE-2505 ignore PathNotExistException in recover and change recover error to warn
-* IOTDB-1119 Fix C++ SessionDataSet bug when reading value buffer
-* Fix SessionPool does not recycle session and can not offer new Session due to RunTimeException
-* ISSUE-2588 Fix dead lock between deleting data and querying in parallel
-* ISSUE-2546 Fix first chunkmetadata should be consumed first
-* IOTDB-1126 Fix unseq tsfile is deleted due to compaction
-* IOTDB-1137 MNode.getLeafCount error when existing sub-device
-* ISSUE-2624 ISSUE-2625 Avoid OOM if user don't close Statement and Session manually
-* ISSUE-2639 Fix possible NPE during end query process
-* Alter IT for An error is reported and the system is suspended occasionally
-* IOTDB-1149 print error for -e param when set maxPRC<=0
-* IOTDB-1247 Fix the insert blocked caused the bugs in mem control module
-* ISSUE-2648 Last query not right when having multiple devices
-* Delete mods files after compaction
-* ISSUE-2687 fix insert NaN bug
-* ISSUE-2598 Throw explicit exception when time series is unknown in where clause
-* Fix timeseriesMetadata cache is not cleared after the TsFile is deleted by a compaction
-* ISSUE-2611 An unsequence file that covers too many sequence file causes OOM query
-* IOTDB-1135 Fix count timeseries bug when the paths are nested
-* ISSUE-2709 IOTDB-1178 Fix cache is not cleared after compaction
-* ISSUE-2746 Fix data overlapped bug after the elimination unseq compaction process
-* Fix getObject method in JDBC should return an Object
-* IOTDB-1188 Fix IoTDB 0.11 unable to delete data bug
-* Fix when covering a tsfile resource with HistoricalVersion = null, it’ll throw a NPE
-* fix the elimination unseq compaction may loss data bug after a delete operation is executed
-* Fix a bug of checking time partition in DeviceTimeIndex
-* Throw exeception when device to be queried is not in tsFileMetaData
-* Fix unseq compaction file selector conflicts with time partition bug
-* Fix high CPU usage during the compaction process
-
-## Improvements
-* IOTDB-1140 optimize regular data encoding
-* Add more log for better tracing
-* Add backgroup exec for cli -e function
-* Add max direct memory size parameter to env.sh
-* Change last cache log to debug level
-
-## New Features
-* Add explain sql support
-
-
-# Apache IoTDB 0.11.2
-
-## Bug Fixes
-* IOTDB-1049 Fix Nullpointer exception and a delete bug in Last query
-* IOTDB-1060 Support full deletion for delete statement without where clause
-* IOTDB-1068 Fix Time series metadata cache bug
-* IOTDB-1069 restrict the flushing memtable number to avoid OOM when mem_control is disabled
-* IOTDB-1077 add insertOneDeviceRecords API in java session
-* IOTDB-1087 fix compaction block flush: flush do not return until compaction finished
-* IOTDB-1106 Delete timeseries statement will incorrectly delete other timeseries
-* Github issue-2137 fix grafana value-time position bug
-* Github issue-2169 GetObject returns String for all data types
-* Github issue-2240 fix Sync failed: Socket is closed by peer
-* Github issue-2387 The deleteData method exists in Session but not in SessionPool.
-* add thrift_max_frame_size in iotdb-engine.properties
-* Fix incorrect last result after deleting all data
-* Fix compaction recover block restart: IoTDB cannot restart until last compaction recover task finished
-* Fix compaction ignore modification file: delete does not work after compaction
-* print more insert error message in client
-* expose enablePartition parameter into iotdb-engines.properpties
-
-# Apache IoTDB 0.11.1
-
-## Bug Fixes
-* IOTDB-990 cli parameter maxPRC shouldn't to be set zero
-* IOTDB-993 Fix tlog bug
-* IOTDB-994 Fix can not get last_value while doing the aggregation query along with first_value
-* IOTDB-1000 Fix read redundant data while select with value filter with unseq data
-* IOTDB-1007 Fix session pool concurrency and leakage issue when pool.close is called
-* IOTDB-1016 overlapped data should be consumed first
-* IOTDB-1021 Fix NullPointerException when showing child paths of non-existent path
-* IOTDB-1028 add MAX\_POINT\_NUMBER format check
-* IOTDB-1034 Fix Show timeseries error in Chinese on Windows
-* IOTDB-1035 Fix bug in getDeviceTimeseriesMetadata when querying non-exist device
-* IOTDB-1038 Fix flink set storage group bug
-* ISSUE-2179 fix insert partial tablet with binary NullPointer bug
-* add reject status code
-* Update compaction level list delete
-* Fix query result is not correct
-* Fix import errors in Session.py and SessionExample.py
-* Fix modules can not be found when using pypi to pack client-py
-* Fix Count timeseries group by level bug
-* Fix desc batchdata count bug
-
-# Apache IoTDB 0.11.0
-
-## New Features
-
-* IOTDB-627 Support range deletion for timeseries
-* IOTDB-670 Add raw data query interface in Session
-* IOTDB-716 add lz4 compression
-* IOTDB-736 Add query performance tracing
-* IOTDB-776 New memory control strategy
-* IOTDB-813 Show storage group under given path prefix
-* IOTDB-848 Support order by time asc/desc
-* IOTDB-863 add a switch to drop ouf-of-order data
-* IOTDB-873 Add count devices DDL
-* IOTDB-876 Add count storage group DDL
-* IOTDB-926 Support reconnection of Session
-* IOTDB-941 Support 'delete storage group <prefixPath>'
-* IOTDB-968 Support time predicate in select last, e.g., select last * from root where time >= T
-* Show alias if it is used in query
-* Add level compaction strategy
-* Add partialInsert
-
-## Incompatible changes
-
-* IOTDB-778 Support double/single quotation in Path
-* IOTDB-870 change tags and attributes output to two columns with json values
-
-## Miscellaneous changes
-
-* IOTDB-784 Update rpc protocol to V3
-* IOTDB-790 change base_dir to system_dir
-* IOTDB-829 Accelerate delete multiple timeseries
-* IOTDB-839 Make Tablet api more friendly
-* IOTDB-902 Optimize max_time aggregation
-* IOTDB-916 Add a config entry to make Last cache configurable
-* IOTDB-928 Make ENCODING optional in create time series sentence
-* IOTDB-938 Re-implement Gorilla encoding algorithm
-* IOTDB-942 Optimization of query with long time unsequence page
-* IOTDB-943 Fix cpu usage too high
-* Add query load log
-* Add merge rate limiting
-
-## Bug Fixes
-
-* IOTDB-749 Avoid select * from root OOM
-* IOTDB-774 Fix "show timeseries" OOM problem
-* IOTDB-832 Fix sessionPool logic when reconnection failed
-* IOTDB-833 Fix JMX cannot connect IoTDB in docker
-* IOTDB-835 Delete timeseries and change data type then write failed
-* IOTDB-836 Statistics classes mismatched when endFile (delete timeseries then recreate)
-* IOTDB-837 ArrayIndexOutOfBoundsException if the measurementId size is not consistent with the value size
-* IOTDB-847 Fix bug that 'List user privileges' cannot apply to 'root'
-* IOTDB-850 a user could list others privilege bug
-* IOTDB-851 Enhance failure tolerance when recover WAL (enable partial insertion)
-* IOTDB-855 Can not release Session in SessionPool if RuntimeException occurs
-* IOTDB-868 Can not redo mlogs with special characters like comma
-* IOTDB-872 Enable setting timezone at client
-* IOTDB-877 fix prefix bug on show storage group and show devices
-* IOTDB-904 fix update last cache NullPointerException
-* IOTDB-920 Disable insert row that only contains time/timestamp column
-* IOTDB-921 When execute two query simultaneously in one statement, got error
-* IOTDB-922 Int and Long can convert to each other in ResultSet
-* IOTDB-947 Fix error when counting node with wildcard
-* IOTDB-949 Align by device doesn't support 'T*' in path.
-* IOTDB-956 Filter will be missed in group by time align by device
-* IOTDB-963 Redo deleteStorageGroupPlan failed when recovering
-* IOTDB-967 Fix xxx does not have the child node xxx Bug in count timeseries
-* IOTDB-970 Restrict log file number and size
-* IOTDB-971 More precise error messages of slimit and soffset 
-* IOTDB-975 when series does not exist in TsFile, reading wrong ChunkMetadataList
-
-# Apache IoTDB (incubating) 0.10.1
-
-* [IOTDB-797] InsertTablet deserialization from WAL error
-* [IOTDB-788] Can not upgrade all storage groups
-* [IOTDB-792] deadlock when insert while show latest timeseries
-* [IOTDB-794] Rename file or delete file Error in start check in Windows
-* [IOTDB-795] BufferUnderflowException in Hive-connector
-* [IOTDB-766] Do not release unclosed file reader, a small memory leak
-* [IOTDB-796] Concurrent Query throughput is low
-* Query result is not correct when some unsequence data exists
-* Change the default fetch size to 10000 in session
-* [IOTDB-798] fix a set rowLimit and rowOffset bug
-* [IOTDB-800] Add a new config type for those parameters which could not be modified any more after the first start 
-* [IOTDB-802] Improve "group by" query performance
-* [IOTDB-799] remove log visualizer tool from v0.10 
-* fix license-binary  
-* [IOTDB-805] Fix BufferUnderflowException when querying TsFile stored in HDFS 
-* python session client ver-0.10.0
-* [IOTDB-808] fix bug in selfCheck() truncate 
-* fix doc of MeasurementSchema in Tablet 
-* [IOTDB-811] fix upgrading mlog many times when upgrading system.properties crashed
-* Improve IoTDB restart process
-* remove jol-core dependency which is introduced by hive-serde 2.8.4
-* remove org.json dependency because of license compatibility
-* [ISSUE-1551] fix set historical version when loading additional tsfile
-
-
-# Apache IoTDB (incubating) 0.10.0
-
-## New Features
-
-* IOTDB-217 A new GROUPBY syntax, e.g., select avg(s1) from root.sg.d1.s1 GROUP BY ([1, 50), 5ms)
-* IOTDB-220 Add hot-load configuration function
-* IOTDB-275 allow using user defined JAVA_HOME and allow blank space in the JAVA_HOME
-* IOTDB-287 Allow domain in JDBC URL
-* IOTDB-292 Add load external tsfile feature
-* IOTDB-297 Support "show flush task info"
-* IOTDB-298 Support new Last point query. e.g, select last * from root
-* IOTDB-305 Add value filter function while executing align by device
-* IOTDB-309 add Dockerfiles for 0.8.1, 0.9.0, and 0.9.1
-* IOTDB-313 Add RandomOnDiskUsableSpaceStrategy
-* IOTDB-323 Support insertRecords in session
-* IOTDB-337 Add timestamp precision properties for grafana
-* IOTDB-343 Add test method in session
-* IOTDB-396 Support new query clause: disable align, e.g., select * from root disable align
-* IOTDB-447 Support querying non-existing measurement and constant measurement
-* IOTDB-448 Add IN operation, e.g., where time in (1,2,3)
-* IOTDB-456 Support GroupByFill Query, e.g., select last_value(s1) from root.sg.d1 GROUP BY ([1, 10), 2ms) FILL(int32[previousUntilLast])
-* IOTDB-467 The CLI displays query results in a batch manner
-* IOTDB-497 Support Apache Flink Connector with IoTDB
-* IOTDB-558 add text support for grafana
-* IOTDB-560 Support Apache Flink connecter with TsFile
-* IOTDB-565 MQTT Protocol Support, disabled by default, open in iotdb-engine.properties
-* IOTDB-574 Specify configuration when start iotdb
-* IOTDB-588 Add tags and attributes management
-* IOTDB-607 add batch create timeseries in native interface
-* IOTDB-612 add limit&offset to show timeseries
-* IOTDB-615 Use TsDataType + Binary to replace String in insert plan
-* IOTDB-617 Support alter one time series's tag/attribute
-* IOTDB-630 Add a jdbc-like way to fetch data in session
-* IOTDB-640 Enable system admin sql (flush/merge) in JDBC or Other API
-* IOTDB-671 Add clear cache command
-* Support open and close time range in group by, e.g, [), (]
-* Online upgrade from 0.9.x
-* Support special characters in path: -/+&%$#@
-* IOTDB-446 Support path start with a digit, e.g., root.sg.12a
-* enable rpc compression in session pool
-* Make JDBC OSGi usable and added a feature file
-* add printing one resource file tool
-* Allow count timeseries group by level=x using default path
-* IOTDB-700 Add OpenID Connect based JWT Access as alternative to Username / Password
-* IOTDB-701 Set heap size by percentage of system total memory when starts
-* IOTDB-708 add config for inferring data type from string value
-* IOTDB-715 Support previous time range in previousuntillast
-* IOTDB-719 add avg_series_point_number_threshold in config
-* IOTDB-731 Continue write inside InsertPlan 
-* IOTDB-734 Add Support for NaN in Double / Floats in SQL Syntax.
-* IOTDB-744 Support upsert alias 
-
-
-## Incompatible changes
-
-* IOTDB-138 Move All metadata query to usual query
-* IOTDB-322 upgrade to thrift 0.12.0-0.13.0
-* IOTDB-325 Refactor Statistics in TsFile
-* IOTDB-419 Refactor the 'last' and 'first' aggregators to 'last_value' and 'first_value'
-* IOTDB-506 upgrade the rpc protocol to v2 to reject clients or servers that version < 0.10
-* IOTDB-587 TsFile is upgraded to version 2
-* IOTDB-593 add metaOffset in TsFileMetadata
-* IOTDB-597 Rename methods in Session: insertBatch to insertTablet, insertInBatch to insertRecords, insert to insertRecord
-* RPC is incompatible, you can not use client-v0.9 to connect with server-v0.10
-* TsFile format is incompatible, will be upgraded when starting 0.10
-* Refine exception code in native api
-
-## Miscellaneous changes
-
-* IOTDB-190 upgrade from antlr3 to antlr4
-* IOTDB-418 new query engine
-* IOTDB-429 return empty dataset instead of throw exception, e.g., show child paths root.*
-* IOTDB-445 Unify the keyword of "timestamp" and "time"
-* IOTDB-450 Add design documents
-* IOTDB-498 Support date format "2020-02-10"
-* IOTDB-503 Add checkTimeseriesExists in java native api
-* IOTDB-605 Add more levels of index in TsFileMetadata for handling too many series in one device
-* IOTDB-625 Change default level number: root is level 0
-* IOTDB-628 rename client to cli
-* IOTDB-621 Add Check isNull in Field for querying using session
-* IOTDB-632 Performance improve for PreviousFill/LinearFill
-* IOTDB-695 Accelerate the count timeseries query 
-* IOTDB-707 Optimize TsFileResource memory usage  
-* IOTDB-730 continue write in MQTT when some events are failed
-* IOTDB-729 shutdown uncessary threadpool 
-* IOTDB-733 Enable setting for mqtt max length 
-* IOTDB-732 Upgrade fastjson version to 1.2.70
-* Allow "count timeseries" without a prefix path
-* Add max backup log file number
-* add rpc compression api in client and session module
-* Continue writing the last unclosed file
-* Move the vulnera-checks section into the apache-release profile to accelerate compile
-* Add metaquery in python example
-* Set inferType of MQTT InsertPlan to true
-
-
-
-## Bug Fixes
-
-* IOTDB-125 Potential Concurrency bug while deleting and inserting happen together
-* IOTDB-185 fix start-client failed on WinOS if there is blank space in the file path; let start-server.bat suport jdk12,13 etc
-* IOTDB-304 Fix bug of incomplete HDFS URI
-* IOTDB-341 Fix data type bug in grafana
-* IOTDB-346 Fix a bug of renaming tsfile in loading function
-* IOTDB-370 fix a concurrent problem in parsing sql
-* IOTDB-376 fix metric to show executeQuery
-* IOTDB-392 fix export CSV
-* IOTDB-393 Fix unclear error message for no privilege users
-* IOTDB-401 Correct the calculation of a chunk if there is no data in the chunk, do not flush empty chunk
-* IOTDB-412 Paths are not correctly deduplicated
-* IOTDB-420 Avoid encoding task dying silently
-* IOTDB-425 fix can't change the root password.
-* IOTDB-459 Fix calmem tool bug
-* IOTDB-470fix IllegalArgumentException when there exists 0 byte TsFile
-* IOTDB-529 Relative times and NOW() operator cannot be used in Group By
-* IOTDB-531 fix issue when grafana visualize boolean data
-* IOTDB-546 Fix show child paths statement doesn't show quotation marks
-* IOTDB-643 Concurrent queries cause BufferUnderflowException when storage in HDFS
-* IOTDB-663 Fix query cache OOM while executing query
-* IOTDB-664 Win -e option
-* IOTDB-669 fix getting two columns bug while ”show devices“ in session
-* IOTDB-692 merge behaves incorrectly
-* IOTDB-712 Meet BufferUnderflowException and can not recover
-* IOTDB-718 Fix wrong time precision of NOW()
-* IOTDB-735 Fix Concurrent error for MNode when creating time series automatically 
-* IOTDB-738 Fix measurements has blank 
-
-* fix concurrent auto create schema conflict bug
-* fix meet incompatible file error in restart
-* Fix bugs of set core-site.xml and hdfs-site.xml paths in HDFS storage
-* fix execute flush command while inserting bug
-* Fix sync schema pos bug
-* Fix batch execution bug, the following sqls will all fail after one error sql
-* Fix recover endTime set bug
-
-
-# Apache IoTDB (incubating) 0.9.3
-
-## Bug Fixes
-- IOTDB-531 Fix that JDBC URL does not support domain issue
-- IOTDB-563 Fix pentaho cannot be downloaded because of spring.io address
-- IOTDB-608 Skip error Mlog
-- IOTDB-634 Fix merge caused errors for TsFile storage in HDFS
-- IOTDB-636 Fix Grafana connector does not use correct time unit
-
-## Miscellaneous changes
-- IOTDB-528 Modify grafana group by
-- IOTDB-635 Add workaround when doing Aggregation over boolean Series
-- Remove docs of Load External Tsfile
-- Add Grafana IoTDB Bridge Artifact to distribution in tools/grafana folder
-
-
-# Apache IoTDB (incubating) 0.9.2
-
-## Bug Fixes
-- IOTDB-553 Fix Return Empty ResultSet when queried series doesn't exist
-- IOTDB-575 add default jmx user and password; fix issues that jmx can't be accessed remotely
-- IOTDB-584 Fix InitializerError when recovering files on HDFS
-- Fix batch insert once an illegal sql occurs all the sqls after that will not succeed
-- Fix concurrent modification exception when iterator TsFileResourceList 
-- Fix some HDFS config issues 
-- Fix runtime exception not be catched and sync schema pos was nullpointer bug in DataTransferManager
-- Fix python rpc grammar mistakes
-- Fix upgrade ConcurrentModificationException
-
-## Miscellaneous changes
-- IOTDB-332 support Chinese characters in path
-- IOTDB-316 add AVG function to 4-SQL Reference.md and modify style 
-- improve start-server.bat by using quotes to protect against empty entries
-- Add Chinese documents for chapter 4.2
-- change download-maven-plugin to 1.3.0
-- add session pool 
-- add insertInBatch in Session
-- add insertInBatch to SessionPool
-- modify 0.9 docs to fit website
-- remove tsfile-format.properties
-- add bloom filter in iotdb-engien.properties
-- update server download doc
-- typos fix in Rel/0.9 docs
-- support 0.12.0 and 0.13.0 thrift
-
-# Apache IoTDB (incubating) 0.9.1
-
-## Bug Fixes
-
-- IOTDB-159 Fix NullPointerException in SeqTsFileRecoverTest and UnseqTsFileRecoverTest
-- IOTDB-317 Fix a bug that "flush + wrong aggregation query" causes the following queries to fail
-- IOTDB-324 Fix inaccurate statistics when writing in batch
-- IOTDB-327 Fix a groupBy-without-value-filter query bug caused by the wrong page skipping logic
-- IOTDB-331 Fix a groupBy query bug when axisOrigin-startTimeOfWindow is an integral multiple of interval
-- IOTDB-357 Fix NullPointerException in ActiveTimeSeriesCounter
-- IOTDB-359 Fix a wrong-data-type bug in TsFileSketchTool
-- IOTDB-360 Fix bug of a deadlock in CompressionRatio
-- IOTDB-363 Fix link errors in Development-Contributing.md and add Development-Document.md
-- IOTDB-392 Fix a bug in CSV export tool
-- Fix apache rat header format error in some files
-
-## Miscellaneous changes
-
-- IOTDB-321 Add definitions of time expression and LEVEL in related documents
-- Support pypi distribution for Python client
-
-# Apache IoTDB (incubating) 0.9.0
-
-## New Features
-
-* IOTDB-143 Compaction of data file
-* IOTDB-151 Support number format in timeseries path
-* IOTDB-158 Add metrics web service
-* IOTDB-173 Add batch write interface in session
-* IoTDB-174 Add interfaces for querying device or timeseries number
-* IOTDB-187 Enable to choose storage in local file system or HDFS
-* IOTDB-188 Delete storage group
-* IOTDB-193 Create schema automatically when inserting
-* IOTDB-198 Add sync module (Sync TsFiles between IoTDB instances)
-* IOTDB-199 Add a log visualization tool 
-* IOTDB-203 Add "group by device" function for narrow table display
-* IOTDB-205 Support storage-group-level Time To Live (TTL)
-* IOTDB-208 Add Bloom filter in TsFile
-* IOTDB-223 Add a TsFile sketch tool
-* IoTDB-226 Hive-TsFile connector
-* IOTDB-239 Add interface for showing devices
-* IOTDB-241 Add query and non query interface in session
-* IOTDB-249 Enable lowercase in create_timeseries sql
-* IOTDB-253 Support time expression 
-* IOTDB-259 Level query of path
-* IOTDB-282 Add "show version"
-* IOTDB-294 Online upgrade from 0.8.0 to 0.9.0
-* Spark-iotdb-connector
-* Support quoted measurement name
-* Generate cpp, go, and python thrift files under service-rpc
-* Display cache hit rate through jconsole
-* Support inserting data that time < 0
-* Add interface (Delete timeseries) in session 
-* Add a tool to print tsfileResources (each device's start and end time)
-* Support watermark feature
-* Add micro and nano timestamp precision
-
-## Incompatible changes
-
-* RPC is incompatible, you can not use client-0.8.0 to connect with server-0.9.0 or use client-0.9.0 to connect with server-0.8.0.
-* Server is backward compatible, server-0.9.0 could run on data folder of 0.8.0. The data file will be upgraded background.
-* Change map key in TsDigest from String to enum data type
-
-## Miscellaneous changes
-
-* IOTDB-144 Meta data cache for query
-* IOTDB-153 Further limit fetchSize to speed up LIMIT&OFFSET query
-* IOTDB-160 External sort
-* IOTDB-161 Add ErrorCode of different response errors
-* IOTDB-180 Get rid of JSON format in "show timeseries"
-* IOTDB-192 Improvement for LRUCache
-* IOTDB-210 One else if branch will never be reached in the method optimize of ExpressionOptimizer
-* IOTDB-215 Update TsFile sketch tool and TsFile docs for v0.9.0
-* IOTDB-221 Add a python client example
-* IOTDB-233 keep metadata plan clear
-* IOTDB-251 Improve TSQueryDataSet structure in RPC
-* IOTDB-257 Makes the client stop fetch when dataSize equals maxPrintRowCount and change client fetchSize less than maxPrintRowCount
-* IOTDB-258 Add documents for Query History Visualization Tool and Shared Storage Architecture
-* IOTDB-265 Re-adjust the threshold size of memtable
-* IOTDB-267 Reduce IO operations in deserializing chunk header
-* IOTDB-273 Parallel recovery
-* IOTDB-276 Fix inconsistent ways of judging whether a Field is null
-* IOTDB-285 Duplicate fields in EngineDataSetWithoutValueFilter.java
-* IOTDB-287 Restrict users to only use domain names and IP addresses.
-* IOTDB-293 Variable naming convention
-* IOTDB-295 Refactor db.exception
-* Reconstruct Antlr3 grammar to improve performance
-* Tooling for release
-* Modified Decoder and SequenceReader to support old version of TsFile 
-* Remove jdk constrain of jdk8 and 11
-* Modify print function in AbstractClient
-* Avoid second execution of parseSQLToPhysicalPlan in executeStatement
-
-## Known Issues
-
-* IOTDB-20 Need to support UPDATE
-
-## Bug Fixes
-
-* IOTDB-168&169 Fix a bug in export-csv tool and fix compatibility of timestamp formats in exportCsv, client display and sql
-* IOTDB-174 Fix querying timeseries interface cannot make a query by the specified path prefix
-* IOTDB-195 Using String.getBytes(utf-9).length to replace string.length() in ChunkGroupMetadata for supporting Chinese
-* IOTDB-211 Use "%IOTDB_HOME%\lib\*" to refers to all .jar files in the directory in start-server.bat
-* IOTDB-240 Fix unknown time series in where clause
-* IOTDB-244 Fix bug when querying with duplicated columns
-* IOTDB-252 Add/fix shell and bat for TsFileSketchTool/TsFileResourcePrinter
-* IOTDB-266 NullPoint exception when reading not existed devices using ReadOnlyTsFile
-* IOTDB-264 Restart failure due to WAL replay error
-* IOTDB-290 Bug about threadlocal field in TSServiceImpl.java
-* IOTDB-291 Statement close operation may cause the whole connection's resource to be released
-* IOTDB-296 Fix error when skip page data in sequence reader
-* IOTDB-301 Bug Fix: executing "count nodes root" in client gets "Msg:3"
-* Fix Dynamic Config when Creating Existing SG or Time-series
-* Fix start-walchecker scripts for letting user define the wal folder
-* Fix start script to set JAVA_HOME
-
-# Apache IoTDB (incubating) 0.8.2
-
- This is a bug-fix version of 0.8.1 
-
--  IOTDB-264 lack checking datatype before writing WAL 
--  IOTDB-317 Fix "flush + wrong aggregation" causes failed query in v0.8.x 
--  NOTICE and LICENSE file update 
-
-# Apache IoTDB (incubating) 0.8.1
-
-This is a bug-fix version of 0.8.0
-
-* IOTDB-172 Bug in updating startTime and endTime in TsFileResource
-* IOTDB-195 Bug about 'serializedSize' in ChunkGroupMetaData.java (for Chinese string)
-* IOTDB-202 fix tsfile example data type
-* IOTDB-242 fix mvn integration-test failed because the files in the target folder changes
-* Abnormal publishing of sequence and unsequence data folders in DirectoryManager
-* Fix a bug in TimeRange's intersects function
-
-
-# Apache IoTDB (incubating) 0.8.0
-
-This is the first official release of Apache IoTDB after joining the Incubator.
-
-## New Features
-
-* IOTDB-1 Add Aggregation query
-* IOTDB-4 Asynchronously force sync WAL periodically
-* IOTDB-5 Support data deletion
-* IOTDB-11 Support start script for jdk 11 on Windows OS
-* IOTDB-18 Improve startup script compatible for jdk11
-* IOTDB-36 [TsFile] Enable recover data from a incomplete TsFile and continue to write
-* IOTDB-37 Add WAL check tool script
-* IOTDB-51 Update post-back module to synchronization module
-* IOTDB-59 Support GroupBy query
-* IOTDB-60 Support Fill function when query
-* IOTDB-73 Add REGULAR encoding method for data with fixed frequency
-* IOTDB-80 Support custom export file name
-* IOTDB-81 Update travis for supporting JDK11 on Windows
-* IOTDB-83 Add process bar for import script and show how many rows have been exported
-* IOTDB-91 Improve tsfile-spark-connector to support spark-2.4.3
-* IOTDB-93 IoTDB Calcite integration
-* IOTDB-109 Support appending data at the end of a completed TsFile
-* IOTDB-122 Add prepared statement in JDBC
-* IOTDB-123 Add documents in Chinese
-* IOTDB-130 Dynamic parameters adapter
-* IOTDB-134 Add default parameter for client starting script
-* Add read-only mode of IoTDB
-* New storage engine with asynchronously flush and close data file
-* Adding english documents
-* Supporting travis + window + jdk8
-* Add skipping all UTs: maven integration-test -DskipUTS=true
-* Enable users define the location of their thrift compiler
-* Add example module
-* Add a log appender: put info, warn, error log into one file and disable log_info by default
-* Recover when resource file does not exist while tsfile is complete
-
-## Incompatible changes
-
-If you use the previous unofficial version 0.7.0. It is incompatible with 0.8.0.
-
-## Miscellaneous changes
-
-* IOTDB-21 Add ChunkGroup offset information in ChunkGroupMetaData
-* IOTDB-25 Add some introduction for JMX MBean Monitor in user guide
-* IOTDB-29 Multiple Exceptions when reading empty measurements from TsFileSequenceReader
-* IOTDB-39 Add auto repair functionality for RestorableTsFileIOWriter
-* IOTDB-45 Update the license in IoTDB
-* IOTDB-56 Faster getSortedTimeValuePairList() of Memtable
-* IOTDB-62 Change log level from error to debug in SQL parser
-* IoTDB-63 Use TsFileInput instead of FileChannel as the input parameter of some functions
-* IOTDB-76 Reformat MManager.getMetadataInString() in JSON format
-* IOTDB-78 Make unsequence file format more similar with TsFile
-* IOTDB-95 Keep stack trace when logging or throwing an exception
-* IOTDB-117 Add sync documents
-* Modify ASF header for each file and add related maven plugin
-* Add IoTDB env script test
-* Add sync function for jdbc server to close
-* Add cache directories for download jars and sonar plugin of maven in travis
-* Add partition start and end offset constraints when loading ChunkGroupMetaData
-* Check when creating Storage group
-* Try to release memory asap in ReadOnlyMemChunk
-* Add more physical plan serializer
-* Move all generated tsfiles for test into the target folder
-* Make TsFileWriter as AutoClosable
-* Print apache-rat violation result on console
-* Update multi dir avoid disk is full
-* Simplify Path construction
-* Separate documents into different chapter folders
-* Suppress mvn log in travis
-* Add mvn -B in travis
-
-## Known Issues
-
-* IOTDB-20 Need to support UPDATE
-* IOTDB-124 Lost timeseries info after restart IoTDB
-* IOTDB-125 [potential] a concurrency conflict may occur when a delete command and insertion command appears concurrently
-* IOTDB-126 IoTDB will not be closed immediately after run 'stop-server.sh' script
-* IOTDB-127 Chinese version documents problems
-
-## Bug Fixes
-
-* IOTDB-2 Maven Test failed before run mvn package -Dmaven.test.skip=true
-* IOTDB-7 OpenFileNumUtilTest failed
-* IOTDB-15 Fail to install IoTDB on Ubuntu 14.04
-* IOTDB-16 Invalid link on https://iotdb.apache.org/#/Documents/Quick Start
-* IOTDB-17 Need to update chapter Start of https://iotdb.apache.org/#/Documents/Quick Start
-* IOTDB-18 IoTDB startup script does not work on openjdk11
-* IOTDB-19 Fail to start start-server.sh script on Ubuntu 14.04/Ubuntu 16.04
-* IOTDB-22 BUG in TsFileSequenceReader when reading tsfile
-* IOTDB-24 DELETION error after restart a server
-* IOTDB-26 Return error when quit client
-* IOTDB-27 Delete error message
-* IOTDB-30 Flush timeseries cause select to returns "Msg:null"
-* IOTDB-31 Cannot set float number precision
-* IOTDB-34 Invalid message for show storage group
-* IOTDB-44 Error message in server log when select timeseries
-* IOTDB-49 Authorizer module outputs too many debug log info
-* IOTDB-50 DataSetWithoutTimeGenerator's initHeap behaves wrongly
-* IOTDB-52 Cli doesn't support aggregate
-* IOTDB-54 Predicates doesn't take effect
-* IOTDB-67 ValueDecoder reading new page bug
-* IOTDB-70 Disconnect from server when logging in fails
-* IOTDB-71 Improve readPositionInfo
-* IOTDB-74 THe damaged log will be skipped if it is the only log
-* IOTDB-79 Long term test failed because of the version control of deletion function
-* IOTDB-81 Fix Windows OS environment for Travis-CI
-* IOTDB-82 File not closed in PageHeaderTest and cause UT on Windows fails
-* IOTDB-84 Out-of-memory bug
-* IOTDB-94 IoTDB failed to start client since the required jars are not in the right folder
-* IOTDB-96 The JDBC interface throws an exception when executing the SQL statement "list user"
-* IOTDB-99 List privileges User <username> on <path> cannot be used properly
-* IOTDB-100 Return error message while executing sum aggregation query
-* IOTDB-103 Does not give a hint when encountering unsupported data types
-* IOTDB-104 MManager is incorrectly recovered when system reboots
-* IOTDB-108 Mistakes in documents
-* IOTDB-110 Cli inserts data normally even if there is no space left on the disk
-* IOTDB-118 When the disk space is full, the storage group is created successfully
-* IOTDB-121 A bug of query on value columns
-* IOTDB-128 Probably a bug in iotdb official website
-* IOTDB-129 A bug in restoring incomplete tsfile when system restart
-* IOTDB-131 IoTDB-Grafana-Connector module error when getting the timeseries list from Grafana
-* IOTDB-133 Some content is mistaken for links
-* System memory check failure in iotdb-env.sh
-* Time zone bug in different region
-* DateTimeUtilsTest UT bug
-* Problem discovered by Sonar
-* Openjdk11 + linux11 does not work on travis
-* Start JDBC service too slowly
-* JDBC cannot be closed
-* Close bug in sync thread
-* Bug in MManager to get all file names of a path
-* Version files of different storage groups are placed into the same place
-* Import/export csv script bug
-* Log level and stack print in test
-* Bug in TsFile-Spark-Connector
-* A doc bug of QuickStart.md
diff --git a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlLexer.g4 b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlLexer.g4
deleted file mode 100644
index 024cf78..0000000
--- a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlLexer.g4
+++ /dev/null
@@ -1,1002 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-lexer grammar IoTDBSqlLexer;
-
-/**
- * 1. Whitespace
- */
-
-// Instead of discarding whitespace completely, send them to a channel invisable to the parser, so
-// that the lexer could still produce WS tokens for the CLI's highlighter.
-WS
-    :
-    [ \u000B\t\r\n]+ -> channel(HIDDEN)
-    ;
-
-
-/**
- * 2. Keywords
- */
-
-// Common Keywords
-
-ADD
-    : A D D
-    ;
-
-AFTER
-    : A F T E R
-    ;
-
-ALIAS
-    : A L I A S
-    ;
-
-ALIGN
-    : A L I G N
-    ;
-
-ALIGNED
-    : A L I G N E D
-    ;
-
-ALL
-    : A L L
-    ;
-
-ALTER
-    : A L T E R
-    ;
-
-ANY
-    : A N Y
-    ;
-
-APPEND
-    : A P P E N D
-    ;
-
-AS
-    : A S
-    ;
-
-ASC
-    : A S C
-    ;
-
-ATTRIBUTES
-    : A T T R I B U T E S
-    ;
-
-AUTOREGISTER
-    : A U T O R E G I S T E R
-    ;
-
-BEFORE
-    : B E F O R E
-    ;
-
-BEGIN
-    : B E G I N
-    ;
-
-BOUNDARY
-    : B O U N D A R Y
-    ;
-
-BY
-    : B Y
-    ;
-
-CACHE
-    : C A C H E
-    ;
-
-CHILD
-    : C H I L D
-    ;
-
-CLEAR
-    : C L E A R
-    ;
-
-COMPRESSION
-    : C O M P R E S S I O N
-    ;
-
-COMPRESSOR
-    : C O M P R E S S O R
-    ;
-
-CONCAT
-    : C O N C A T
-    ;
-
-CONFIGURATION
-    : C O N F I G U R A T I O N
-    ;
-
-CONTINUOUS
-    : C O N T I N U O U S
-    ;
-
-COUNT
-    : C O U N T
-    ;
-
-CONTAIN
-    : C O N T A I N
-    ;
-
-CQ
-    : C Q
-    ;
-
-CQS
-    : C Q S
-    ;
-
-CREATE
-    : C R E A T E
-    ;
-
-DATATYPE
-    : D A T A T Y P E
-    ;
-
-DEBUG
-    : D E B U G
-    ;
-
-DELETE
-    : D E L E T E
-    ;
-
-DESC
-    : D E S C
-    ;
-
-DESCRIBE
-    : D E S C R I B E
-    ;
-
-DEVICE
-    : D E V I C E
-    ;
-
-DEVICES
-    : D E V I C E S
-    ;
-
-DISABLE
-    : D I S A B L E
-    ;
-
-DROP
-    : D R O P
-    ;
-
-ENCODING
-    : E N C O D I N G
-    ;
-
-END
-    : E N D
-    ;
-
-EVERY
-    : E V E R Y
-    ;
-
-
-EXPLAIN
-    : E X P L A I N
-    ;
-
-FILL
-    : F I L L
-    ;
-
-FLUSH
-    : F L U S H
-    ;
-
-FOR
-    : F O R
-    ;
-
-FROM
-    : F R O M
-    ;
-
-FULL
-    : F U L L
-    ;
-
-FUNCTION
-    : F U N C T I O N
-    ;
-
-FUNCTIONS
-    : F U N C T I O N S
-    ;
-
-GLOBAL
-    : G L O B A L
-    ;
-
-GRANT
-    : G R A N T
-    ;
-
-GROUP
-    : G R O U P
-    ;
-
-INDEX
-    : I N D E X
-    ;
-
-INFO
-    : I N F O
-    ;
-
-INSERT
-    : I N S E R T
-    ;
-
-INTO
-    : I N T O
-    ;
-
-KILL
-    : K I L L
-    ;
-
-LABEL
-    : L A B E L
-    ;
-
-LAST
-    : L A S T
-    ;
-
-LATEST
-    : L A T E S T
-    ;
-
-LEVEL
-    : L E V E L
-    ;
-
-LIKE
-    : L I K E
-    ;
-
-LIMIT
-    : L I M I T
-    ;
-
-LINEAR
-    : L I N E A R
-    ;
-
-LINK
-    : L I N K
-    ;
-
-LIST
-    : L I S T
-    ;
-
-LOAD
-    : L O A D
-    ;
-
-LOCK
-    : L O C K
-    ;
-
-MERGE
-    : M E R G E
-    ;
-
-METADATA
-    : M E T A D A T A
-    ;
-
-NODES
-    : N O D E S
-    ;
-
-NOW
-    : N O W
-    ;
-
-OF
-    : O F
-    ;
-
-OFF
-    : O F F
-    ;
-
-OFFSET
-    : O F F S E T
-    ;
-
-ON
-    : O N
-    ;
-
-ORDER
-    : O R D E R
-    ;
-
-PARTITION
-    : P A R T I T I O N
-    ;
-
-PASSWORD
-    : P A S S W O R D
-    ;
-
-PATHS
-    : P A T H S
-    ;
-
-PREVIOUS
-    : P R E V I O U S
-    ;
-
-PREVIOUSUNTILLAST
-    : P R E V I O U S U N T I L L A S T
-    ;
-
-PRIVILEGES
-    : P R I V I L E G E S
-    ;
-
-PROCESSLIST
-    : P R O C E S S L I S T
-    ;
-
-PROPERTY
-    : P R O P E R T Y
-    ;
-
-PRUNE
-    : P R U N E
-    ;
-
-QUERIES
-    : Q U E R I E S
-    ;
-
-QUERY
-    : Q U E R Y
-    ;
-
-READONLY
-    : R E A D O N L Y
-    ;
-
-REGEXP
-    : R E G E X P
-    ;
-
-REMOVE
-    : R E M O V E
-    ;
-
-RENAME
-    : R E N A M E
-    ;
-
-RESAMPLE
-    : R E S A M P L E
-    ;
-
-RESOURCE
-    : R E S O U R C E
-    ;
-
-REVOKE
-    : R E V O K E
-    ;
-
-ROLE
-    : R O L E
-    ;
-
-ROOT
-    : R O O T
-    ;
-
-SCHEMA
-    : S C H E M A
-    ;
-
-SELECT
-    : S E L E C T
-    ;
-
-SET
-    : S E T
-    ;
-
-SETTLE
-    : S E T T L E
-    ;
-
-SGLEVEL
-    : S G L E V E L
-    ;
-
-SHOW
-    : S H O W
-    ;
-
-SLIMIT
-    : S L I M I T
-    ;
-
-SNAPSHOT
-    : S N A P S H O T
-    ;
-
-SOFFSET
-    : S O F F S E T
-    ;
-
-STORAGE
-    : S T O R A G E
-    ;
-
-START
-    : S T A R T
-    ;
-
-STOP
-    : S T O P
-    ;
-
-SYSTEM
-    : S Y S T E M
-    ;
-
-TAGS
-    : T A G S
-    ;
-
-TASK
-    : T A S K
-    ;
-
-TEMPLATE
-    : T E M P L A T E
-    ;
-
-TEMPLATES
-    : T E M P L A T E S
-    ;
-
-TIME
-    : T I M E
-    ;
-
-TIMESERIES
-    : T I M E S E R I E S
-    ;
-
-TIMESTAMP
-    : T I M E S T A M P
-    ;
-
-TO
-    : T O
-    ;
-
-TOLERANCE
-    : T O L E R A N C E
-    ;
-
-TOP
-    : T O P
-    ;
-
-TRACING
-    : T R A C I N G
-    ;
-
-TRIGGER
-    : T R I G G E R
-    ;
-
-TRIGGERS
-    : T R I G G E R S
-    ;
-
-TTL
-    : T T L
-    ;
-
-UNLINK
-    : U N L I N K
-    ;
-
-UNLOAD
-    : U N L O A D
-    ;
-
-UNSET
-    : U N S E T
-    ;
-
-UPDATE
-    : U P D A T E
-    ;
-
-UPSERT
-    : U P S E R T
-    ;
-
-USER
-    : U S E R
-    ;
-
-USING
-    : U S I N G
-    ;
-
-VALUES
-    : V A L U E S
-    ;
-
-VERIFY
-    : V E R I F Y
-    ;
-
-VERSION
-    : V E R S I O N
-    ;
-
-WATERMARK_EMBEDDING
-    : W A T E R M A R K '_' E M B E D D I N G
-    ;
-
-WHERE
-    : W H E R E
-    ;
-
-WITH
-    : W I T H
-    ;
-
-WITHOUT
-    : W I T H O U T
-    ;
-
-WRITABLE
-    : W R I T A B L E
-    ;
-
-
-// Data Type Keywords
-
-DATATYPE_VALUE
-    : BOOLEAN | DOUBLE | FLOAT | INT32 | INT64 | TEXT
-    ;
-
-BOOLEAN
-    : B O O L E A N
-    ;
-
-DOUBLE
-    : D O U B L E
-    ;
-
-FLOAT
-    : F L O A T
-    ;
-
-INT32
-    : I N T '3' '2'
-    ;
-
-INT64
-    : I N T '6' '4'
-    ;
-
-TEXT
-    : T E X T
-    ;
-
-
-// Encoding Type Keywords
-
-ENCODING_VALUE
-    : DICTIONARY | DIFF | GORILLA | PLAIN | REGULAR | RLE | TS_2DIFF
-    ;
-
-DICTIONARY
-    : D I C T I O N A R Y
-    ;
-
-DIFF
-    : D I F F
-    ;
-
-GORILLA
-    : G O R I L L A
-    ;
-
-PLAIN
-    : P L A I N
-    ;
-
-REGULAR
-    : R E G U L A R
-    ;
-
-RLE
-    : R L E
-    ;
-
-TS_2DIFF
-    : T S '_' '2' D I F F
-    ;
-
-
-// Compressor Type Keywords
-
-COMPRESSOR_VALUE
-    : GZIP | LZ4 | SNAPPY | UNCOMPRESSED
-    ;
-
-GZIP
-    : G Z I P
-    ;
-
-LZ4
-    : L Z '4'
-    ;
-
-SNAPPY
-    : S N A P P Y
-    ;
-
-UNCOMPRESSED
-    : U N C O M P R E S S E D
-    ;
-
-
-// Privileges Keywords
-
-PRIVILEGE_VALUE
-    : SET_STORAGE_GROUP | CREATE_TIMESERIES | INSERT_TIMESERIES | READ_TIMESERIES | DELETE_TIMESERIES
-    | CREATE_USER | DELETE_USER | MODIFY_PASSWORD | LIST_USER
-    | GRANT_USER_PRIVILEGE | REVOKE_USER_PRIVILEGE | GRANT_USER_ROLE | REVOKE_USER_ROLE
-    | CREATE_ROLE | DELETE_ROLE | LIST_ROLE | GRANT_ROLE_PRIVILEGE | REVOKE_ROLE_PRIVILEGE
-    | CREATE_FUNCTION | DROP_FUNCTION | CREATE_TRIGGER | DROP_TRIGGER | START_TRIGGER | STOP_TRIGGER
-    | CREATE_CONTINUOUS_QUERY | DROP_CONTINUOUS_QUERY
-    ;
-
-SET_STORAGE_GROUP
-    : S E T '_' S T O R A G E '_' G R O U P
-    ;
-
-CREATE_TIMESERIES
-    : C R E A T E '_' T I M E S E R I E S
-    ;
-
-INSERT_TIMESERIES
-    : I N S E R T '_' T I M E S E R I E S
-    ;
-
-READ_TIMESERIES
-    : R E A D '_' T I M E S E R I E S
-    ;
-
-DELETE_TIMESERIES
-    : D E L E T E '_' T I M E S E R I E S
-    ;
-
-CREATE_USER
-    : C R E A T E '_' U S E R
-    ;
-
-DELETE_USER
-    : D E L E T E '_' U S E R
-    ;
-
-MODIFY_PASSWORD
-    : M O D I F Y '_' P A S S W O R D
-    ;
-
-LIST_USER
-    : L I S T '_' U S E R
-    ;
-
-GRANT_USER_PRIVILEGE
-    : G R A N T '_' U S E R '_' P R I V I L E G E
-    ;
-
-REVOKE_USER_PRIVILEGE
-    : R E V O K E '_' U S E R '_' P R I V I L E G E
-    ;
-
-GRANT_USER_ROLE
-    : G R A N T '_' U S E R '_' R O L E
-    ;
-
-REVOKE_USER_ROLE
-    : R E V O K E '_' U S E R '_' R O L E
-    ;
-
-CREATE_ROLE
-    : C R E A T E '_' R O L E
-    ;
-
-DELETE_ROLE
-    : D E L E T E '_' R O L E
-    ;
-
-LIST_ROLE
-    : L I S T '_' R O L E
-    ;
-
-GRANT_ROLE_PRIVILEGE
-    : G R A N T '_' R O L E '_' P R I V I L E G E
-    ;
-
-REVOKE_ROLE_PRIVILEGE
-    : R E V O K E '_' R O L E '_' P R I V I L E G E
-    ;
-
-CREATE_FUNCTION
-    : C R E A T E '_' F U N C T I O N
-    ;
-
-DROP_FUNCTION
-    : D R O P '_' F U N C T I O N
-    ;
-
-CREATE_TRIGGER
-    : C R E A T E '_' T R I G G E R
-    ;
-
-DROP_TRIGGER
-    : D R O P '_' T R I G G E R
-    ;
-
-START_TRIGGER
-    : S T A R T '_' T R I G G E R
-    ;
-
-STOP_TRIGGER
-    : S T O P '_' T R I G G E R
-    ;
-
-CREATE_CONTINUOUS_QUERY
-    : C R E A T E '_' C O N T I N U O U S '_' Q U E R Y
-    ;
-
-DROP_CONTINUOUS_QUERY
-    : D R O P '_' C O N T I N U O U S '_' Q U E R Y
-    ;
-
-
-/**
- * 3. Operators
- */
-
-// Operators. Arithmetics
-
-MINUS : '-';
-PLUS : '+';
-DIV : '/';
-MOD : '%';
-
-
-// Operators. Comparation
-
-OPERATOR_EQ : '=' | '==';
-OPERATOR_GT : '>';
-OPERATOR_GTE : '>=';
-OPERATOR_LT : '<';
-OPERATOR_LTE : '<=';
-OPERATOR_NEQ : '!=' | '<>';
-
-OPERATOR_IN : I N;
-
-OPERATOR_AND
-    : A N D
-    | '&'
-    | '&&'
-    ;
-
-OPERATOR_OR
-    : O R
-    | '|'
-    | '||'
-    ;
-
-OPERATOR_NOT
-    : N O T | '!'
-    ;
-
-OPERATOR_CONTAINS
-    : C O N T A I N S
-    ;
-
-
-/**
- * 4. Constructors Symbols
- */
-
-DOT : '.';
-COMMA : ',';
-SEMI: ';';
-STAR: '*';
-DOUBLE_STAR: '**';
-LR_BRACKET : '(';
-RR_BRACKET : ')';
-LS_BRACKET : '[';
-RS_BRACKET : ']';
-
-
-/**
- * 5. Literals
- */
-
-// String Literal
-
-STRING_LITERAL
-    : DQUOTA_STRING
-    | SQUOTA_STRING
-    ;
-
-
-// Date & Time Literal
-
-DURATION_LITERAL
-    : (INTEGER_LITERAL+ (Y|M O|W|D|H|M|S|M S|U S|N S))+
-    ;
-
-DATETIME_LITERAL
-    : INTEGER_LITERAL ('-'|'/') INTEGER_LITERAL ('-'|'/') INTEGER_LITERAL ((T | WS)
-      INTEGER_LITERAL ':' INTEGER_LITERAL ':' INTEGER_LITERAL (DOT INTEGER_LITERAL)?
-      (('+' | '-') INTEGER_LITERAL ':' INTEGER_LITERAL)?)?
-    ;
-
-
-// Number Literal
-
-INTEGER_LITERAL
-    : DEC_DIGIT+
-    ;
-
-EXPONENT_NUM_PART
-    : DEC_DIGIT+ ('e'|'E') ('+'|'-')? DEC_DIGIT+
-    ;
-
-fragment DEC_DIGIT
-    : [0-9]
-    ;
-
-
-// Boolean Literal
-
-BOOLEAN_LITERAL
-	: T R U E
-	| F A L S E
-	;
-
-
-// Other Literals
-
-NULL_LITERAL
-    : N U L L
-    ;
-
-NAN_LITERAL
-    : N A N
-    ;
-
-
-/**
- * 6. Identifier
- */
-
-ID
-    : NAME_CHAR+
-    ;
-
-QUTOED_ID_WITHOUT_DOT
-    : BQUOTA_STRING_WITHOUT_DOT
-    ;
-
-QUTOED_ID
-    : BQUOTA_STRING
-    ;
-
-fragment NAME_CHAR
-    : 'A'..'Z'
-    | 'a'..'z'
-    | '0'..'9'
-    | '_'
-    | ':'
-    | '@'
-    | '#'
-    | '$'
-    | '{'
-    | '}'
-    | CN_CHAR
-    ;
-
-fragment CN_CHAR
-    : '\u2E80'..'\u9FFF'
-    ;
-
-fragment DQUOTA_STRING
-    : '"' ( '\\'. | '""' | ~('"'| '\\') )* '"'
-    ;
-
-fragment SQUOTA_STRING
-    : '\'' ('\\'. | '\'\'' | ~('\'' | '\\'))* '\''
-    ;
-
-fragment BQUOTA_STRING
-    : '`' ( '\\'. | '``' | ~('`'|'\\'))* '`'
-    ;
-
-fragment BQUOTA_STRING_WITHOUT_DOT
-    : '`' ( '\\'. | '``' | ~('`'|'\\'|'.'))* '`'
-    ;
-
-// Characters and write it this way for case sensitivity
-
-fragment A: [aA];
-fragment B: [bB];
-fragment C: [cC];
-fragment D: [dD];
-fragment E: [eE];
-fragment F: [fF];
-fragment G: [gG];
-fragment H: [hH];
-fragment I: [iI];
-fragment J: [jJ];
-fragment K: [kK];
-fragment L: [lL];
-fragment M: [mM];
-fragment N: [nN];
-fragment O: [oO];
-fragment P: [pP];
-fragment Q: [qQ];
-fragment R: [rR];
-fragment S: [sS];
-fragment T: [tT];
-fragment U: [uU];
-fragment V: [vV];
-fragment W: [wW];
-fragment X: [xX];
-fragment Y: [yY];
-fragment Z: [zZ];
\ No newline at end of file
diff --git a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 b/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4
deleted file mode 100644
index 7a2e82f..0000000
--- a/antlr/src/main/antlr4/org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4
+++ /dev/null
@@ -1,923 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-parser grammar IoTDBSqlParser;
-
-options { tokenVocab=IoTDBSqlLexer; }
-
-
-/**
- * 1. Top Level Description
- */
-
-singleStatement
-    : DEBUG? statement SEMI? EOF
-    ;
-
-statement
-    : ddlStatement | dmlStatement | dclStatement | utilityStatement
-    ;
-
-ddlStatement
-    : setStorageGroup | createStorageGroup | createTimeseries
-    | createSchemaTemplate | createTimeseriesOfSchemaTemplate
-    | createFunction | createTrigger | createContinuousQuery | createSnapshot
-    | alterTimeseries | deleteStorageGroup | deleteTimeseries | deletePartition
-    | dropFunction | dropTrigger | dropContinuousQuery | dropSchemaTemplate
-    | setTTL | unsetTTL | startTrigger | stopTrigger | setSchemaTemplate | unsetSchemaTemplate
-    | showStorageGroup | showDevices | showTimeseries | showChildPaths | showChildNodes
-    | showFunctions | showTriggers | showContinuousQueries | showTTL | showAllTTL
-    | showSchemaTemplates | showNodesInSchemaTemplate
-    | showPathsUsingSchemaTemplate | showPathsSetSchemaTemplate
-    | countStorageGroup | countDevices | countTimeseries | countNodes
-    ;
-
-dmlStatement
-    : selectStatement | insertStatement | deleteStatement;
-
-dclStatement
-    : createUser | createRole | alterUser | grantUser | grantRole | grantRoleToUser
-    | revokeUser |  revokeRole | revokeRoleFromUser | dropUser | dropRole
-    | listUser | listRole | listPrivilegesUser | listPrivilegesRole
-    | listUserPrivileges | listRolePrivileges | listAllRoleOfUser | listAllUserOfRole
-    ;
-
-utilityStatement
-    : merge | fullMerge | flush | clearCache | settle
-    | setSystemStatus | showVersion | showFlushInfo | showLockInfo | showQueryResource
-    | showQueryProcesslist | killQuery | grantWatermarkEmbedding | revokeWatermarkEmbedding
-    | loadConfiguration | loadTimeseries | loadFile | removeFile | unloadFile;
-
-
-/**
- * 2. Data Definition Language (DDL)
- */
-
-// Create Storage Group
-setStorageGroup
-    : SET STORAGE GROUP TO prefixPath
-    ;
-
-createStorageGroup
-    : CREATE STORAGE GROUP prefixPath
-    ;
-
-// Create Timeseries
-createTimeseries
-    : CREATE ALIGNED TIMESERIES fullPath alignedMeasurements? #createAlignedTimeseries
-    | CREATE TIMESERIES fullPath attributeClauses  #createNonAlignedTimeseries
-    ;
-
-alignedMeasurements
-    : LR_BRACKET nodeNameWithoutWildcard attributeClauses
-    (COMMA nodeNameWithoutWildcard attributeClauses)* RR_BRACKET
-    ;
-
-// Create Schema Template
-createSchemaTemplate
-    : CREATE SCHEMA? TEMPLATE templateName=identifier
-    ALIGNED? LR_BRACKET templateMeasurementClause (COMMA templateMeasurementClause)* RR_BRACKET
-    ;
-
-templateMeasurementClause
-    : nodeNameWithoutWildcard attributeClauses
-    ;
-
-// Create Timeseries Of Schema Template
-createTimeseriesOfSchemaTemplate
-    : CREATE TIMESERIES OF SCHEMA? TEMPLATE ON prefixPath
-    ;
-
-// Create Function
-createFunction
-    : CREATE FUNCTION udfName=identifier AS className=STRING_LITERAL
-    ;
-
-// Create Trigger
-createTrigger
-    : CREATE TRIGGER triggerName=identifier triggerEventClause ON fullPath AS className=STRING_LITERAL triggerAttributeClause?
-    ;
-
-triggerEventClause
-    : (BEFORE | AFTER) INSERT
-    ;
-
-triggerAttributeClause
-    : WITH LR_BRACKET triggerAttribute (COMMA triggerAttribute)* RR_BRACKET
-    ;
-
-triggerAttribute
-    : key=STRING_LITERAL OPERATOR_EQ value=STRING_LITERAL
-    ;
-
-// Create Continuous Query
-createContinuousQuery
-    : CREATE (CONTINUOUS QUERY | CQ) continuousQueryName=identifier resampleClause? cqSelectIntoClause
-    ;
-
-cqSelectIntoClause
-    : BEGIN selectClause INTO intoPath fromClause cqGroupByTimeClause END
-    ;
-
-cqGroupByTimeClause
-    : GROUP BY TIME LR_BRACKET DURATION_LITERAL RR_BRACKET
-      (COMMA LEVEL OPERATOR_EQ INTEGER_LITERAL (COMMA INTEGER_LITERAL)*)?
-    ;
-
-resampleClause
-    : RESAMPLE (EVERY DURATION_LITERAL)? (FOR DURATION_LITERAL)? (BOUNDARY dateExpression)?;
-
-// Create Snapshot for Schema
-createSnapshot
-    : CREATE SNAPSHOT FOR SCHEMA
-    ;
-
-// Alter Timeseries
-alterTimeseries
-    : ALTER TIMESERIES fullPath alterClause
-    ;
-
-alterClause
-    : RENAME beforeName=identifier TO currentName=identifier
-    | SET propertyClause (COMMA propertyClause)*
-    | DROP identifier (COMMA identifier)*
-    | ADD TAGS propertyClause (COMMA propertyClause)*
-    | ADD ATTRIBUTES propertyClause (COMMA propertyClause)*
-    | UPSERT aliasClause? tagClause? attributeClause?
-    ;
-
-aliasClause
-    : ALIAS OPERATOR_EQ identifier
-    ;
-
-// Delete Storage Group
-deleteStorageGroup
-    : DELETE STORAGE GROUP prefixPath (COMMA prefixPath)*
-    ;
-
-// Delete Timeseries
-deleteTimeseries
-    : DELETE TIMESERIES prefixPath (COMMA prefixPath)*
-    ;
-
-// Delete Partition
-deletePartition
-    : DELETE PARTITION prefixPath INTEGER_LITERAL(COMMA INTEGER_LITERAL)*
-    ;
-
-// Drop Function
-dropFunction
-    : DROP FUNCTION udfName=identifier
-    ;
-
-// Drop Trigger
-dropTrigger
-    : DROP TRIGGER triggerName=identifier
-    ;
-
-// Drop Continuous Query
-dropContinuousQuery
-    : DROP (CONTINUOUS QUERY|CQ) continuousQueryName=identifier
-    ;
-
-// Drop Schema Template
-dropSchemaTemplate
-    : DROP SCHEMA? TEMPLATE templateName=identifier
-    ;
-
-// Set TTL
-setTTL
-    : SET TTL TO path=prefixPath time=INTEGER_LITERAL
-    ;
-
-// Unset TTL
-unsetTTL
-    : UNSET TTL TO path=prefixPath
-    ;
-
-// Set Schema Template
-setSchemaTemplate
-    : SET SCHEMA? TEMPLATE templateName=identifier TO prefixPath
-    ;
-
-// Unset Schema Template
-unsetSchemaTemplate
-    : UNSET SCHEMA? TEMPLATE templateName=identifier FROM prefixPath
-    ;
-
-// Start Trigger
-startTrigger
-    : START TRIGGER triggerName=identifier
-    ;
-
-// Stop Trigger
-stopTrigger
-    : STOP TRIGGER triggerName=identifier
-    ;
-
-// Show Storage Group
-showStorageGroup
-    : SHOW STORAGE GROUP prefixPath?
-    ;
-
-// Show Devices
-showDevices
-    : SHOW DEVICES prefixPath? (WITH STORAGE GROUP)? limitClause?
-    ;
-
-// Show Timeseries
-showTimeseries
-    : SHOW LATEST? TIMESERIES prefixPath? showWhereClause? limitClause?
-    ;
-
-showWhereClause
-    : WHERE (propertyClause | containsExpression)
-    ;
-
-// Show Child Paths
-showChildPaths
-    : SHOW CHILD PATHS prefixPath?
-    ;
-
-// Show Child Nodes
-showChildNodes
-    : SHOW CHILD NODES prefixPath?
-    ;
-
-// Show Functions
-showFunctions
-    : SHOW FUNCTIONS
-    ;
-
-// Show Triggers
-showTriggers
-    : SHOW TRIGGERS
-    ;
-
-// Show Continuous Queries
-showContinuousQueries
-    : SHOW (CONTINUOUS QUERIES | CQS)
-    ;
-
-// Show TTL
-showTTL
-    : SHOW TTL ON prefixPath (COMMA prefixPath)*
-    ;
-
-// Show All TTL
-showAllTTL
-    : SHOW ALL TTL
-    ;
-
-// Show Schema Template
-showSchemaTemplates
-    : SHOW SCHEMA? TEMPLATES
-    ;
-
-// Show Measurements In Schema Template
-showNodesInSchemaTemplate
-    : SHOW NODES OPERATOR_IN SCHEMA? TEMPLATE templateName=identifier
-    ;
-
-// Show Paths Set Schema Template
-showPathsSetSchemaTemplate
-    : SHOW PATHS SET SCHEMA? TEMPLATE templateName=identifier
-    ;
-
-// Show Paths Using Schema Template
-showPathsUsingSchemaTemplate
-    : SHOW PATHS USING SCHEMA? TEMPLATE templateName=identifier
-    ;
-
-// Count Storage Group
-countStorageGroup
-    : COUNT STORAGE GROUP prefixPath?
-    ;
-
-// Count Devices
-countDevices
-    : COUNT DEVICES prefixPath?
-    ;
-
-// Count Timeseries
-countTimeseries
-    : COUNT TIMESERIES prefixPath? (GROUP BY LEVEL OPERATOR_EQ INTEGER_LITERAL)?
-    ;
-
-// Count Nodes
-countNodes
-    : COUNT NODES prefixPath LEVEL OPERATOR_EQ INTEGER_LITERAL
-    ;
-
-
-/**
- * 3. Data Manipulation Language (DML)
- */
-
-// Select Statement
-selectStatement
-    : TRACING? selectClause intoClause? fromClause whereClause? specialClause?
-    ;
-
-intoClause
-    : INTO ALIGNED? intoPath (COMMA intoPath)*
-    ;
-
-intoPath
-    : fullPath
-    | nodeNameWithoutWildcard (DOT nodeNameWithoutWildcard)*
-    ;
-
-specialClause
-    : specialLimit #specialLimitStatement
-    | orderByTimeClause specialLimit? #orderByTimeStatement
-    | groupByTimeClause orderByTimeClause? specialLimit? #groupByTimeStatement
-    | groupByFillClause orderByTimeClause? specialLimit? #groupByFillStatement
-    | groupByLevelClause orderByTimeClause? specialLimit? #groupByLevelStatement
-    | fillClause slimitClause? alignByDeviceClauseOrDisableAlign? #fillStatement
-    ;
-
-specialLimit
-    : limitClause slimitClause? alignByDeviceClauseOrDisableAlign? #limitStatement
-    | slimitClause limitClause? alignByDeviceClauseOrDisableAlign? #slimitStatement
-    | withoutNullClause limitClause? slimitClause? alignByDeviceClauseOrDisableAlign? #withoutNullStatement
-    | alignByDeviceClauseOrDisableAlign #alignByDeviceClauseOrDisableAlignStatement
-    ;
-
-alignByDeviceClauseOrDisableAlign
-    : alignByDeviceClause
-    | disableAlign
-    ;
-
-alignByDeviceClause
-    : ALIGN BY DEVICE
-    | GROUP BY DEVICE
-    ;
-
-disableAlign
-    : DISABLE ALIGN
-    ;
-
-orderByTimeClause
-    : ORDER BY TIME (DESC | ASC)?
-    ;
-
-groupByTimeClause
-    : GROUP BY LR_BRACKET timeInterval COMMA DURATION_LITERAL (COMMA DURATION_LITERAL)? RR_BRACKET
-    | GROUP BY LR_BRACKET timeInterval COMMA DURATION_LITERAL (COMMA DURATION_LITERAL)? RR_BRACKET
-    COMMA LEVEL OPERATOR_EQ INTEGER_LITERAL (COMMA INTEGER_LITERAL)*
-    ;
-
-groupByFillClause
-    : GROUP BY LR_BRACKET timeInterval COMMA DURATION_LITERAL (COMMA DURATION_LITERAL)? RR_BRACKET
-    fillClause
-    ;
-
-groupByLevelClause
-    : GROUP BY LEVEL OPERATOR_EQ INTEGER_LITERAL (COMMA INTEGER_LITERAL)*
-    ;
-
-fillClause
-    : FILL LR_BRACKET (linearClause | previousClause | specificValueClause | previousUntilLastClause | oldTypeClause (COMMA oldTypeClause)*) RR_BRACKET
-    ;
-
-withoutNullClause
-    : WITHOUT NULL_LITERAL (ALL | ANY)
-    ;
-
-oldTypeClause
-    : (dataType=DATATYPE_VALUE | ALL) LS_BRACKET linearClause RS_BRACKET
-    | (dataType=DATATYPE_VALUE | ALL) LS_BRACKET previousClause RS_BRACKET
-    | (dataType=DATATYPE_VALUE | ALL) LS_BRACKET specificValueClause RS_BRACKET
-    | (dataType=DATATYPE_VALUE | ALL) LS_BRACKET previousUntilLastClause RS_BRACKET
-    ;
-
-linearClause
-    : LINEAR (COMMA aheadDuration=DURATION_LITERAL COMMA behindDuration=DURATION_LITERAL)?
-    ;
-
-previousClause
-    : PREVIOUS (COMMA DURATION_LITERAL)?
-    ;
-
-specificValueClause
-    : constant?
-    ;
-
-previousUntilLastClause
-    : PREVIOUSUNTILLAST (COMMA DURATION_LITERAL)?
-    ;
-
-timeInterval
-    : LS_BRACKET startTime=timeValue COMMA endTime=timeValue RR_BRACKET
-    | LR_BRACKET startTime=timeValue COMMA endTime=timeValue RS_BRACKET
-    ;
-
-// Insert Statement
-insertStatement
-    : INSERT INTO prefixPath insertColumnsSpec ALIGNED? VALUES insertValuesSpec
-    ;
-
-insertColumnsSpec
-    : LR_BRACKET (TIMESTAMP|TIME)? (COMMA? nodeNameWithoutWildcard)+ RR_BRACKET
-    ;
-
-insertValuesSpec
-    : (COMMA? insertMultiValue)*
-    ;
-
-insertMultiValue
-    : LR_BRACKET timeValue (COMMA measurementValue)+ RR_BRACKET
-    | LR_BRACKET (measurementValue COMMA?)+ RR_BRACKET
-    ;
-
-measurementValue
-    : constant
-    | LR_BRACKET constant (COMMA constant)+ RR_BRACKET
-    ;
-
-// Delete Statement
-deleteStatement
-    : DELETE FROM prefixPath (COMMA prefixPath)* (whereClause)?
-    ;
-
-whereClause
-    : WHERE (orExpression | indexPredicateClause)
-    ;
-
-/**
- * 4. Data Control Language (DCL)
- */
-
-// Create User
-createUser
-    : CREATE USER userName=ID password=STRING_LITERAL
-    ;
-
-// Create Role
-createRole
-    : CREATE ROLE roleName=ID
-    ;
-
-// Alter Password
-alterUser
-    : ALTER USER userName=usernameWithRoot SET PASSWORD password=STRING_LITERAL
-    ;
-
-// Grant User Privileges
-grantUser
-    : GRANT USER userName=ID PRIVILEGES privileges ON prefixPath
-    ;
-
-// Grant Role Privileges
-grantRole
-    : GRANT ROLE roleName=ID PRIVILEGES privileges ON prefixPath
-    ;
-
-// Grant User Role
-grantRoleToUser
-    : GRANT roleName=ID TO userName=ID
-    ;
-
-// Revoke User Privileges
-revokeUser
-    : REVOKE USER userName=ID PRIVILEGES privileges ON prefixPath
-    ;
-
-// Revoke Role Privileges
-revokeRole
-    : REVOKE ROLE roleName=ID PRIVILEGES privileges ON prefixPath
-    ;
-
-// Revoke Role From User
-revokeRoleFromUser
-    : REVOKE roleName=ID FROM userName=ID
-    ;
-
-// Drop User
-dropUser
-    : DROP USER userName=ID
-    ;
-
-// Drop Role
-dropRole
-    : DROP ROLE roleName=ID
-    ;
-
-// List Users
-listUser
-    : LIST USER
-    ;
-
-// List Roles
-listRole
-    : LIST ROLE
-    ;
-
-// List Privileges
-listPrivilegesUser
-    : LIST PRIVILEGES USER userName=usernameWithRoot ON prefixPath
-    ;
-
-// List Privileges of Roles On Specific Path
-listPrivilegesRole
-    : LIST PRIVILEGES ROLE roleName=ID ON prefixPath
-    ;
-
-// List Privileges of Users
-listUserPrivileges
-    : LIST USER PRIVILEGES userName=usernameWithRoot
-    ;
-
-// List Privileges of Roles
-listRolePrivileges
-    : LIST ROLE PRIVILEGES roleName=ID
-    ;
-
-// List Roles of Users
-listAllRoleOfUser
-    : LIST ALL ROLE OF USER userName=usernameWithRoot
-    ;
-
-// List Users of Role
-listAllUserOfRole
-    : LIST ALL USER OF ROLE roleName=ID
-    ;
-
-privileges
-    : privilegeValue (COMMA privilegeValue)*
-    ;
-
-privilegeValue
-    : ALL
-    | PRIVILEGE_VALUE
-    ;
-
-usernameWithRoot
-    : ROOT
-    | ID
-    ;
-
-
-/**
- * 5. Utility Statements
- */
-
-// Merge
-merge
-    : MERGE
-    ;
-
-// Full Merge
-fullMerge
-    : FULL MERGE
-    ;
-
-// Flush
-flush
-    : FLUSH prefixPath? (COMMA prefixPath)* BOOLEAN_LITERAL?
-    ;
-
-// Clear Cache
-clearCache
-    : CLEAR CACHE
-    ;
-
-// Settle
-settle
-    : SETTLE (prefixPath|tsFilePath=STRING_LITERAL)
-    ;
-
-// Set System To ReadOnly/Writable
-setSystemStatus
-    : SET SYSTEM TO (READONLY|WRITABLE)
-    ;
-
-// Show Version
-showVersion
-    : SHOW VERSION
-    ;
-
-// Show Flush Info
-showFlushInfo
-    : SHOW FLUSH INFO
-    ;
-
-// Show Lock Info
-showLockInfo
-    : SHOW LOCK INFO prefixPath
-    ;
-
-
-// Show Query Resource
-showQueryResource
-    : SHOW QUERY RESOURCE
-    ;
-
-// Show Query Processlist
-showQueryProcesslist
-    : SHOW QUERY PROCESSLIST
-    ;
-
-// Kill Query
-killQuery
-    : KILL QUERY INTEGER_LITERAL?
-    ;
-
-// Grant Watermark Embedding
-grantWatermarkEmbedding
-    : GRANT WATERMARK_EMBEDDING TO usernameWithRoot (COMMA usernameWithRoot)*
-    ;
-
-// Revoke Watermark Embedding
-revokeWatermarkEmbedding
-    : REVOKE WATERMARK_EMBEDDING FROM usernameWithRoot (COMMA usernameWithRoot)*
-    ;
-
-// Load Configuration
-loadConfiguration
-    : LOAD CONFIGURATION (MINUS GLOBAL)?
-    ;
-
-// Load Timeseries
-loadTimeseries
-    : LOAD TIMESERIES fileName=STRING_LITERAL prefixPath
-    ;
-
-// Load TsFile
-loadFile
-    : LOAD fileName=STRING_LITERAL loadFilesClause?
-    ;
-
-loadFilesClause
-    : AUTOREGISTER OPERATOR_EQ BOOLEAN_LITERAL (COMMA loadFilesClause)?
-    | SGLEVEL OPERATOR_EQ INTEGER_LITERAL (COMMA loadFilesClause)?
-    | VERIFY OPERATOR_EQ BOOLEAN_LITERAL (COMMA loadFilesClause)?
-    ;
-
-// Remove TsFile
-removeFile
-    : REMOVE fileName=STRING_LITERAL
-    ;
-
-// Unload TsFile
-unloadFile
-    : UNLOAD srcFileName=STRING_LITERAL dstFileDir=STRING_LITERAL
-    ;
-
-
-/**
- * 6. Common Clauses
- */
-
-// IoTDB Objects
-
-fullPath
-    : ROOT (DOT nodeNameWithoutWildcard)*
-    ;
-
-prefixPath
-    : ROOT (DOT nodeName)*
-    ;
-
-suffixPath
-    : nodeName (DOT nodeName)*
-    ;
-
-nodeName
-    : wildcard
-    | wildcard? ID wildcard?
-    | wildcard? INTEGER_LITERAL wildcard?
-    | QUTOED_ID_WITHOUT_DOT
-    | STRING_LITERAL
-    ;
-
-nodeNameWithoutWildcard
-    : ID
-    | INTEGER_LITERAL
-    | QUTOED_ID_WITHOUT_DOT
-    | STRING_LITERAL
-    ;
-
-suffixPathCanInExpr
-    : nodeNameCanInExpr (DOT nodeNameCanInExpr)*
-    ;
-
-nodeNameCanInExpr
-    : wildcard
-    | wildcard? ID wildcard?
-    | QUTOED_ID
-    | QUTOED_ID_WITHOUT_DOT
-    ;
-
-wildcard
-    : STAR
-    | DOUBLE_STAR
-    ;
-
-
-// Identifier
-
-identifier
-    : ID
-    | QUTOED_ID
-    | QUTOED_ID_WITHOUT_DOT
-    | INTEGER_LITERAL
-    ;
-
-
-// Constant & Literal
-
-constant
-    : dateExpression
-    | (MINUS|PLUS)? realLiteral
-    | (MINUS|PLUS)? INTEGER_LITERAL
-    | STRING_LITERAL
-    | BOOLEAN_LITERAL
-    | NULL_LITERAL
-    | NAN_LITERAL
-    ;
-
-datetimeLiteral
-    : DATETIME_LITERAL
-    | NOW LR_BRACKET RR_BRACKET
-    ;
-
-realLiteral
-    : INTEGER_LITERAL DOT (INTEGER_LITERAL|EXPONENT_NUM_PART)?
-    | DOT (INTEGER_LITERAL|EXPONENT_NUM_PART)
-    | EXPONENT_NUM_PART
-    ;
-
-timeValue
-    : datetimeLiteral
-    | dateExpression
-    | INTEGER_LITERAL
-    ;
-
-// Expression & Predicate
-
-dateExpression
-    : datetimeLiteral ((PLUS | MINUS) DURATION_LITERAL)*
-    ;
-
-// The order of following expressions decides their priorities. Thus, the priority of
-// multiplication, division, and modulus higher than that of addition and substraction.
-expression
-    : LR_BRACKET unaryInBracket=expression RR_BRACKET
-    | (PLUS | MINUS) unaryAfterSign=expression
-    | leftExpression=expression (STAR | DIV | MOD) rightExpression=expression
-    | leftExpression=expression (PLUS | MINUS) rightExpression=expression
-    | functionName LR_BRACKET expression (COMMA expression)* functionAttribute* RR_BRACKET
-    | suffixPathCanInExpr
-    | constant
-    ;
-
-functionName
-    : identifier
-    | COUNT
-    ;
-
-functionAttribute
-    : COMMA functionAttributeKey=STRING_LITERAL OPERATOR_EQ functionAttributeValue=STRING_LITERAL
-    ;
-
-containsExpression
-    : name=identifier OPERATOR_CONTAINS value=propertyValue
-    ;
-
-orExpression
-    : andExpression (OPERATOR_OR andExpression)*
-    ;
-
-andExpression
-    : predicate (OPERATOR_AND predicate)*
-    ;
-
-predicate
-    : (TIME | TIMESTAMP | suffixPath | fullPath) comparisonOperator constant
-    | (TIME | TIMESTAMP | suffixPath | fullPath) inClause
-    | OPERATOR_NOT? LR_BRACKET orExpression RR_BRACKET
-    | (suffixPath | fullPath) (REGEXP | LIKE) STRING_LITERAL
-    ;
-
-comparisonOperator
-    : type = OPERATOR_GT
-    | type = OPERATOR_GTE
-    | type = OPERATOR_LT
-    | type = OPERATOR_LTE
-    | type = OPERATOR_EQ
-    | type = OPERATOR_NEQ
-    ;
-
-inClause
-    : OPERATOR_NOT? OPERATOR_IN LR_BRACKET constant (COMMA constant)* RR_BRACKET
-    ;
-
-indexPredicateClause
-    : (suffixPath | fullPath) LIKE sequenceClause
-    | (suffixPath | fullPath) CONTAIN sequenceClause
-    WITH TOLERANCE constant (CONCAT sequenceClause WITH TOLERANCE constant)*
-    ;
-
-sequenceClause
-    : LR_BRACKET constant (COMMA constant)* RR_BRACKET
-    ;
-
-
-// Select Clause
-
-selectClause
-    : SELECT (LAST | topClause)? resultColumn (COMMA resultColumn)*
-    ;
-
-topClause
-    : TOP INTEGER_LITERAL
-    ;
-
-resultColumn
-    : expression (AS identifier)?
-    ;
-
-
-// From Clause
-
-fromClause
-    : FROM prefixPath (COMMA prefixPath)*
-    ;
-
-
-// Attribute Clause
-
-attributeClauses
-    : alias? WITH DATATYPE OPERATOR_EQ dataType=DATATYPE_VALUE
-    (COMMA ENCODING OPERATOR_EQ encoding=ENCODING_VALUE)?
-    (COMMA (COMPRESSOR | COMPRESSION) OPERATOR_EQ compressor=COMPRESSOR_VALUE)?
-    (COMMA propertyClause)*
-    tagClause?
-    attributeClause?
-    // Simplified version (supported since v0.13)
-    | alias? WITH? (DATATYPE OPERATOR_EQ)? dataType=DATATYPE_VALUE
-    (ENCODING OPERATOR_EQ encoding=ENCODING_VALUE)?
-    ((COMPRESSOR | COMPRESSION) OPERATOR_EQ compressor=COMPRESSOR_VALUE)?
-    propertyClause*
-    tagClause?
-    attributeClause?
-    ;
-
-alias
-    : LR_BRACKET nodeNameCanInExpr RR_BRACKET
-    ;
-
-tagClause
-    : TAGS LR_BRACKET propertyClause (COMMA propertyClause)* RR_BRACKET
-    ;
-
-propertyClause
-    : name=identifier OPERATOR_EQ value=propertyValue
-    ;
-
-propertyValue
-    : identifier
-    | constant
-    ;
-
-attributeClause
-    : ATTRIBUTES LR_BRACKET propertyClause (COMMA propertyClause)* RR_BRACKET
-    ;
-
-// Limit & Offset Clause
-
-limitClause
-    : LIMIT INTEGER_LITERAL offsetClause?
-    | offsetClause? LIMIT INTEGER_LITERAL
-    ;
-
-offsetClause
-    : OFFSET INTEGER_LITERAL
-    ;
-
-slimitClause
-    : SLIMIT INTEGER_LITERAL soffsetClause?
-    | soffsetClause? SLIMIT INTEGER_LITERAL
-    ;
-
-soffsetClause
-    : SOFFSET INTEGER_LITERAL
-    ;
\ No newline at end of file
diff --git a/cli/src/assembly/resources/sbin/start-cli.bat b/cli/src/assembly/resources/sbin/start-cli.bat
deleted file mode 100644
index d77b15d..0000000
--- a/cli/src/assembly/resources/sbin/start-cli.bat
+++ /dev/null
@@ -1,74 +0,0 @@
-@REM
-@REM Licensed to the Apache Software Foundation (ASF) under one
-@REM or more contributor license agreements.  See the NOTICE file
-@REM distributed with this work for additional information
-@REM regarding copyright ownership.  The ASF licenses this file
-@REM to you under the Apache License, Version 2.0 (the
-@REM "License"); you may not use this file except in compliance
-@REM with the License.  You may obtain a copy of the License at
-@REM
-@REM     http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing,
-@REM software distributed under the License is distributed on an
-@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-@REM KIND, either express or implied.  See the License for the
-@REM specific language governing permissions and limitations
-@REM under the License.
-@REM
-
-@echo off
-
-@REM You can put your env variable here
-@REM set JAVA_HOME=%JAVA_HOME%
-
-if "%OS%" == "Windows_NT" setlocal
-
-pushd %~dp0..
-if NOT DEFINED IOTDB_HOME set IOTDB_HOME=%CD%
-popd
-
-if NOT DEFINED MAIN_CLASS set MAIN_CLASS=org.apache.iotdb.cli.Cli
-if NOT DEFINED JAVA_HOME goto :err
-
-@REM -----------------------------------------------------------------------------
-@REM JVM Opts we'll use in legacy run or installation
-set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
-
-REM For each jar in the IOTDB_HOME lib directory call append to build the CLASSPATH variable.
-set CLASSPATH="%IOTDB_HOME%\lib\*"
-
-REM -----------------------------------------------------------------------------
-set PARAMETERS=%*
-
-@REM if "%PARAMETERS%" == "" set PARAMETERS=-h 127.0.0.1 -p 6667 -u root -pw root
-
-@REM set default parameters
-set pw_parameter=-pw root
-set u_parameter=-u root
-set p_parameter=-p 6667
-set h_parameter=-h 127.0.0.1
-
-@REM Added parameters when default parameters are missing
-echo %PARAMETERS% | findstr /c:"-pw ">nul && (set PARAMETERS=%PARAMETERS%) || (set PARAMETERS=%pw_parameter% %PARAMETERS%)
-echo %PARAMETERS% | findstr /c:"-u ">nul && (set PARAMETERS=%PARAMETERS%) || (set PARAMETERS=%u_parameter% %PARAMETERS%)
-echo %PARAMETERS% | findstr /c:"-p ">nul && (set PARAMETERS=%PARAMETERS%) || (set PARAMETERS=%p_parameter% %PARAMETERS%)
-echo %PARAMETERS% | findstr /c:"-h ">nul && (set PARAMETERS=%PARAMETERS%) || (set PARAMETERS=%h_parameter% %PARAMETERS%)
-
-echo %PARAMETERS%
-
-"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp %CLASSPATH% %MAIN_CLASS% %PARAMETERS%
-
-goto finally
-
-
-:err
-echo JAVA_HOME environment variable must be set!
-pause
-
-
-@REM -----------------------------------------------------------------------------
-:finally
-
-ENDLOCAL
\ No newline at end of file
diff --git a/cli/src/assembly/resources/sbin/start-cli.sh b/cli/src/assembly/resources/sbin/start-cli.sh
deleted file mode 100644
index 20fb450..0000000
--- a/cli/src/assembly/resources/sbin/start-cli.sh
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/bin/sh
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-# You can put your env variable here
-# export JAVA_HOME=$JAVA_HOME
-
-if [ -z "${IOTDB_HOME}" ]; then
-  export IOTDB_HOME="$(cd "`dirname "$0"`"/..; pwd)"
-fi
-
-IOTDB_CLI_CONF=${IOTDB_HOME}/conf
-
-MAIN_CLASS=org.apache.iotdb.cli.Cli
-
-
-CLASSPATH=""
-for f in ${IOTDB_HOME}/lib/*.jar; do
-  CLASSPATH=${CLASSPATH}":"$f
-done
-
-
-if [ -n "$JAVA_HOME" ]; then
-    for java in "$JAVA_HOME"/bin/amd64/java "$JAVA_HOME"/bin/java; do
-        if [ -x "$java" ]; then
-            JAVA="$java"
-            break
-        fi
-    done
-else
-    JAVA=java
-fi
-
-PARAMETERS="$@"
-
-# if [ $# -eq 0 ]
-# then
-# 	PARAMETERS="-h 127.0.0.1 -p 6667 -u root -pw root"
-# fi
-
-# Added parameters when default parameters are missing
-
-# sh version
-case "$PARAMETERS" in
-*"-pw "*) PARAMETERS=$PARAMETERS ;;
-*            ) PARAMETERS="-pw root $PARAMETERS" ;;
-esac
-case "$PARAMETERS" in
-*"-u "*) PARAMETERS=$PARAMETERS ;;
-*            ) PARAMETERS="-u root $PARAMETERS" ;;
-esac
-case "$PARAMETERS" in
-*"-p "*) PARAMETERS=$PARAMETERS ;;
-*            ) PARAMETERS="-p 6667 $PARAMETERS" ;;
-esac
-case "$PARAMETERS" in
-*"-h "*) PARAMETERS=$PARAMETERS ;;
-*            ) PARAMETERS="-h 127.0.0.1 $PARAMETERS" ;;
-esac
-
-# echo $PARAMETERS
-
-set -o noglob
-iotdb_cli_params="-Dlogback.configurationFile=${IOTDB_CLI_CONF}/logback-cli.xml"
-exec "$JAVA" $iotdb_cli_params -cp "$CLASSPATH" "$MAIN_CLASS" $PARAMETERS
-
-exit $?
diff --git a/cli/src/assembly/resources/tools/export-csv.bat b/cli/src/assembly/resources/tools/export-csv.bat
deleted file mode 100644
index 44c4334..0000000
--- a/cli/src/assembly/resources/tools/export-csv.bat
+++ /dev/null
@@ -1,56 +0,0 @@
-@REM
-@REM Licensed to the Apache Software Foundation (ASF) under one
-@REM or more contributor license agreements.  See the NOTICE file
-@REM distributed with this work for additional information
-@REM regarding copyright ownership.  The ASF licenses this file
-@REM to you under the Apache License, Version 2.0 (the
-@REM "License"); you may not use this file except in compliance
-@REM with the License.  You may obtain a copy of the License at
-@REM
-@REM     http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing,
-@REM software distributed under the License is distributed on an
-@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-@REM KIND, either express or implied.  See the License for the
-@REM specific language governing permissions and limitations
-@REM under the License.
-@REM
-
-@echo off
-echo ````````````````````````````````````````````````
-echo Starting IoTDB Client Export Script
-echo ````````````````````````````````````````````````
-
-if "%OS%" == "Windows_NT" setlocal
-
-pushd %~dp0..
-if NOT DEFINED IOTDB_HOME set IOTDB_HOME=%CD%
-popd
-
-if NOT DEFINED MAIN_CLASS set MAIN_CLASS=org.apache.iotdb.tool.ExportCsv
-if NOT DEFINED JAVA_HOME goto :err
-
-@REM -----------------------------------------------------------------------------
-@REM JVM Opts we'll use in legacy run or installation
-set JAVA_OPTS=-ea^
- -DIOTDB_HOME=%IOTDB_HOME%
-
-@REM ***** CLASSPATH library setting *****
-set CLASSPATH=%IOTDB_HOME%\lib\*
-
-REM -----------------------------------------------------------------------------
-
-"%JAVA_HOME%\bin\java" -DIOTDB_HOME=%IOTDB_HOME% %JAVA_OPTS% -cp %CLASSPATH% %MAIN_CLASS% %*
-
-goto finally
-
-
-:err
-echo JAVA_HOME environment variable must be set!
-pause
-
-@REM -----------------------------------------------------------------------------
-:finally
-
-ENDLOCAL
\ No newline at end of file
diff --git a/cli/src/assembly/resources/tools/export-csv.sh b/cli/src/assembly/resources/tools/export-csv.sh
deleted file mode 100644
index 607a43a..0000000
--- a/cli/src/assembly/resources/tools/export-csv.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo ------------------------------------------
-echo Starting IoTDB Client Export Script
-echo ------------------------------------------
-
-if [ -z "${IOTDB_HOME}" ]; then
-    export IOTDB_HOME="$(cd "`dirname "$0"`"/..; pwd)"
-fi
-
-if [ -n "$JAVA_HOME" ]; then
-    for java in "$JAVA_HOME"/bin/amd64/java "$JAVA_HOME"/bin/java; do
-        if [ -x "$java" ]; then
-            JAVA="$java"
-            break
-        fi
-    done
-else
-    JAVA=java
-fi
-
-if [ -z $JAVA ] ; then
-    echo Unable to find java executable. Check JAVA_HOME and PATH environment variables.  > /dev/stderr
-    exit 1;
-fi
-
-CLASSPATH=""
-for f in ${IOTDB_HOME}/lib/*.jar; do
-    CLASSPATH=${CLASSPATH}":"$f
-done
-
-MAIN_CLASS=org.apache.iotdb.tool.ExportCsv
-
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
-exit $?
\ No newline at end of file
diff --git a/cli/src/assembly/resources/tools/import-csv.bat b/cli/src/assembly/resources/tools/import-csv.bat
deleted file mode 100644
index 87d71ae..0000000
--- a/cli/src/assembly/resources/tools/import-csv.bat
+++ /dev/null
@@ -1,57 +0,0 @@
-@REM
-@REM Licensed to the Apache Software Foundation (ASF) under one
-@REM or more contributor license agreements.  See the NOTICE file
-@REM distributed with this work for additional information
-@REM regarding copyright ownership.  The ASF licenses this file
-@REM to you under the Apache License, Version 2.0 (the
-@REM "License"); you may not use this file except in compliance
-@REM with the License.  You may obtain a copy of the License at
-@REM
-@REM     http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing,
-@REM software distributed under the License is distributed on an
-@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-@REM KIND, either express or implied.  See the License for the
-@REM specific language governing permissions and limitations
-@REM under the License.
-@REM
-
-@echo off
-echo ````````````````````````````````````````````````
-echo Starting IoTDB Client Import Script
-echo ````````````````````````````````````````````````
-
-if "%OS%" == "Windows_NT" setlocal
-
-pushd %~dp0..
-if NOT DEFINED IOTDB_HOME set IOTDB_HOME=%CD%
-popd
-
-if NOT DEFINED MAIN_CLASS set MAIN_CLASS=org.apache.iotdb.tool.ImportCsv
-if NOT DEFINED JAVA_HOME goto :err
-
-@REM -----------------------------------------------------------------------------
-@REM JVM Opts we'll use in legacy run or installation
-set JAVA_OPTS=-ea^
- -DIOTDB_HOME=%IOTDB_HOME%
-
-@REM ***** CLASSPATH library setting *****
-set CLASSPATH=%IOTDB_HOME%\lib\*
-
-REM -----------------------------------------------------------------------------
-
-"%JAVA_HOME%\bin\java" -DIOTDB_HOME=%IOTDB_HOME% %JAVA_OPTS% -cp %CLASSPATH% %MAIN_CLASS% %*
-
-goto finally
-
-
-:err
-echo JAVA_HOME environment variable must be set!
-pause
-
-
-@REM -----------------------------------------------------------------------------
-:finally
-
-ENDLOCAL
\ No newline at end of file
diff --git a/cli/src/assembly/resources/tools/import-csv.sh b/cli/src/assembly/resources/tools/import-csv.sh
deleted file mode 100644
index 6389816..0000000
--- a/cli/src/assembly/resources/tools/import-csv.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-echo ------------------------------------------
-echo Starting IoTDB Client Import Script
-echo ------------------------------------------
-
-if [ -z "${IOTDB_HOME}" ]; then
-    export IOTDB_HOME="$(cd "`dirname "$0"`"/..; pwd)"
-fi
-
-if [ -n "$JAVA_HOME" ]; then
-    for java in "$JAVA_HOME"/bin/amd64/java "$JAVA_HOME"/bin/java; do
-        if [ -x "$java" ]; then
-            JAVA="$java"
-            break
-        fi
-    done
-else
-    JAVA=java
-fi
-
-if [ -z $JAVA ] ; then
-    echo Unable to find java executable. Check JAVA_HOME and PATH environment variables.  > /dev/stderr
-    exit 1;
-fi
-
-CLASSPATH=""
-for f in ${IOTDB_HOME}/lib/*.jar; do
-    CLASSPATH=${CLASSPATH}":"$f
-done
-
-MAIN_CLASS=org.apache.iotdb.tool.ImportCsv
-
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
-exit $?
\ No newline at end of file
diff --git a/cli/src/main/java/org/apache/iotdb/cli/AbstractCli.java b/cli/src/main/java/org/apache/iotdb/cli/AbstractCli.java
deleted file mode 100644
index 133fe76..0000000
--- a/cli/src/main/java/org/apache/iotdb/cli/AbstractCli.java
+++ /dev/null
@@ -1,759 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.iotdb.cli;
-
-import org.apache.iotdb.exception.ArgsErrorException;
-import org.apache.iotdb.jdbc.AbstractIoTDBJDBCResultSet;
-import org.apache.iotdb.jdbc.IoTDBConnection;
-import org.apache.iotdb.jdbc.IoTDBJDBCResultSet;
-import org.apache.iotdb.rpc.IoTDBConnectionException;
-import org.apache.iotdb.rpc.RpcUtils;
-import org.apache.iotdb.service.rpc.thrift.ServerProperties;
-import org.apache.iotdb.tool.ImportCsv;
-
-import org.apache.commons.cli.CommandLine;
-import org.apache.commons.cli.Option;
-import org.apache.commons.cli.Options;
-import org.apache.commons.lang3.ArrayUtils;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.sql.ResultSet;
-import java.sql.ResultSetMetaData;
-import java.sql.SQLException;
-import java.sql.Statement;
-import java.time.ZoneId;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import static org.apache.iotdb.cli.utils.IoTPrinter.computeHANCount;
-import static org.apache.iotdb.cli.utils.IoTPrinter.printBlockLine;
-import static org.apache.iotdb.cli.utils.IoTPrinter.printCount;
-import static org.apache.iotdb.cli.utils.IoTPrinter.printRow;
-import static org.apache.iotdb.cli.utils.IoTPrinter.println;
-
-public abstract class AbstractCli {
-
-  static final String HOST_ARGS = "h";
-  static final String HOST_NAME = "host";
-
-  static final String HELP_ARGS = "help";
-
-  static final String PORT_ARGS = "p";
-  static final String PORT_NAME = "port";
-
-  static final String PASSWORD_ARGS = "pw";
-  private static final String PASSWORD_NAME = "password";
-
-  static final String USERNAME_ARGS = "u";
-  static final String USERNAME_NAME = "username";
-
-  private static final String EXECUTE_ARGS = "e";
-  private static final String EXECUTE_NAME = "execute";
-  private static final String NULL = "null";
-
-  static final String ISO8601_ARGS = "disableISO8601";
-  static final List<String> AGGREGRATE_TIME_LIST = new ArrayList<>();
-  static final String MAX_PRINT_ROW_COUNT_ARGS = "maxPRC";
-  private static final String MAX_PRINT_ROW_COUNT_NAME = "maxPrintRowCount";
-  static final String RPC_COMPRESS_ARGS = "c";
-  private static final String RPC_COMPRESS_NAME = "rpcCompressed";
-  static final String SET_MAX_DISPLAY_NUM = "set max_display_num";
-  static final String SET_TIMESTAMP_DISPLAY = "set time_display_type";
-  static final String SHOW_TIMESTAMP_DISPLAY = "show time_display_type";
-  static final String SET_TIME_ZONE = "set time_zone";
-  static final String SHOW_TIMEZONE = "show time_zone";
-  static final String SET_FETCH_SIZE = "set fetch_size";
-  static final String SHOW_FETCH_SIZE = "show fetch_size";
-  private static final String HELP = "help";
-  static final String IOTDB_CLI_PREFIX = "IoTDB";
-  static final String SCRIPT_HINT = "./start-cli.sh(start-cli.bat if Windows)";
-  static final String QUIT_COMMAND = "quit";
-  static final String EXIT_COMMAND = "exit";
-  private static final String SHOW_METADATA_COMMAND = "show timeseries";
-  static final int MAX_HELP_CONSOLE_WIDTH = 88;
-  static final String TIMESTAMP_STR = "Time";
-  private static final String IMPORT_CMD = "import";
-  static int maxPrintRowCount = 1000;
-  private static int fetchSize = 1000;
-  static String timestampPrecision = "ms";
-  static String timeFormat = RpcUtils.DEFAULT_TIME_FORMAT;
-  private static boolean continuePrint = false;
-
-  private static int lineCount = 0;
-  private static final String SUCCESS_MESSAGE = "The statement is executed successfully.";
-
-  private static boolean isReachEnd = false;
-
-  static String host = "127.0.0.1";
-  static String port = "6667";
-  static String username;
-  static String password;
-  static String execute;
-  static boolean hasExecuteSQL = false;
-
-  static Set<String> keywordSet = new HashSet<>();
-
-  static ServerProperties properties = null;
-
-  private static boolean cursorBeforeFirst = true;
-
-  static void init() {
-    keywordSet.add("-" + HOST_ARGS);
-    keywordSet.add("-" + HELP_ARGS);
-    keywordSet.add("-" + PORT_ARGS);
-    keywordSet.add("-" + PASSWORD_ARGS);
-    keywordSet.add("-" + USERNAME_ARGS);
-    keywordSet.add("-" + EXECUTE_ARGS);
-    keywordSet.add("-" + ISO8601_ARGS);
-    keywordSet.add("-" + MAX_PRINT_ROW_COUNT_ARGS);
-    keywordSet.add("-" + RPC_COMPRESS_ARGS);
-  }
-
-  static Options createOptions() {
-    Options options = new Options();
-    Option help = new Option(HELP_ARGS, false, "Display help information(optional)");
-    help.setRequired(false);
-    options.addOption(help);
-
-    Option timeFormat = new Option(ISO8601_ARGS, false, "Display timestamp in number(optional)");
-    timeFormat.setRequired(false);
-    options.addOption(timeFormat);
-
-    Option host =
-        Option.builder(HOST_ARGS)
-            .argName(HOST_NAME)
-            .hasArg()
-            .desc("Host Name (optional, default 127.0.0.1)")
-            .build();
-    options.addOption(host);
-
-    Option port =
-        Option.builder(PORT_ARGS)
-            .argName(PORT_NAME)
-            .hasArg()
-            .desc("Port (optional, default 6667)")
-            .build();
-    options.addOption(port);
-
-    Option username =
-        Option.builder(USERNAME_ARGS)
-            .argName(USERNAME_NAME)
-            .hasArg()
-            .desc("User name (required)")
-            .required()
-            .build();
-    options.addOption(username);
-
-    Option password =
-        Option.builder(PASSWORD_ARGS)
-            .argName(PASSWORD_NAME)
-            .hasArg()
-            .desc("password (optional)")
-            .build();
-    options.addOption(password);
-
-    Option execute =
-        Option.builder(EXECUTE_ARGS)
-            .argName(EXECUTE_NAME)
-            .hasArg()
-            .desc("execute statement (optional)")
-            .build();
-    options.addOption(execute);
-
-    Option maxPrintCount =
-        Option.builder(MAX_PRINT_ROW_COUNT_ARGS)
-            .argName(MAX_PRINT_ROW_COUNT_NAME)
-            .hasArg()
-            .desc("Maximum number of rows displayed (optional)")
-            .build();
-    options.addOption(maxPrintCount);
-
-    Option isRpcCompressed =
-        Option.builder(RPC_COMPRESS_ARGS)
-            .argName(RPC_COMPRESS_NAME)
-            .desc("Rpc Compression enabled or not")
-            .build();
-    options.addOption(isRpcCompressed);
-    return options;
-  }
-
-  static String checkRequiredArg(
-      String arg, String name, CommandLine commandLine, boolean isRequired, String defaultValue)
-      throws ArgsErrorException {
-    String str = commandLine.getOptionValue(arg);
-    if (str == null) {
-      if (isRequired) {
-        String msg =
-            String.format(
-                "%s: Required values for option '%s' not provided", IOTDB_CLI_PREFIX, name);
-        println(msg);
-        println("Use -help for more information");
-        throw new ArgsErrorException(msg);
-      } else if (defaultValue == null) {
-        String msg =
-            String.format("%s: Required values for option '%s' is null.", IOTDB_CLI_PREFIX, name);
-        throw new ArgsErrorException(msg);
-      } else {
-        return defaultValue;
-      }
-    }
-    return str;
-  }
-
-  private static void setFetchSize(String fetchSizeString) {
-    long tmp = Long.parseLong(fetchSizeString.trim());
-    if (tmp > Integer.MAX_VALUE || tmp < 0) {
-      fetchSize = Integer.MAX_VALUE;
-    } else {
-      fetchSize = Integer.parseInt(fetchSizeString.trim());
-    }
-  }
-
-  static void setMaxDisplayNumber(String maxDisplayNum) {
-    long tmp = Long.parseLong(maxDisplayNum.trim());
-    if (tmp > Integer.MAX_VALUE) {
-      throw new NumberFormatException();
-    } else if (tmp <= 0) {
-      continuePrint = true;
-    } else {
-      maxPrintRowCount = Integer.parseInt(maxDisplayNum.trim());
-    }
-  }
-
-  static String[] removePasswordArgs(String[] args) {
-    int index = -1;
-    for (int i = 0; i < args.length; i++) {
-      if (args[i].equals("-" + PASSWORD_ARGS)) {
-        index = i;
-        break;
-      }
-    }
-    if (index >= 0
-        && ((index + 1 >= args.length)
-            || (index + 1 < args.length && keywordSet.contains(args[index + 1])))) {
-      return ArrayUtils.remove(args, index);
-    }
-    return args;
-  }
-
-  @SuppressWarnings("squid:S3776") // Suppress high Cognitive Complexity warning
-  static String[] processExecuteArgs(String[] args) {
-    int index = -1;
-    for (int i = 0; i < args.length; i++) {
-      if (args[i].equals("-" + EXECUTE_ARGS)) {
-        index = i;
-        break;
-      }
-    }
-    if (index >= 0
-        && ((index + 1 >= args.length)
-            || (index + 1 < args.length && keywordSet.contains(args[index + 1])))) {
-      return ArrayUtils.remove(args, index);
-    } else if (index == -1) {
-      return args;
-    } else {
-      StringBuilder executeCommand = new StringBuilder();
-      for (int j = index + 1; j < args.length; j++) {
-        executeCommand.append(args[j]).append(" ");
-      }
-      // remove last space
-      executeCommand.deleteCharAt(executeCommand.length() - 1);
-      // some bashes may not remove quotes of parameters automatically, remove them in that case
-      if (executeCommand.charAt(0) == '\'' || executeCommand.charAt(0) == '\"') {
-        executeCommand.deleteCharAt(0);
-        if (executeCommand.charAt(executeCommand.length() - 1) == '\''
-            || executeCommand.charAt(executeCommand.length() - 1) == '\"') {
-          executeCommand.deleteCharAt(executeCommand.length() - 1);
-        }
-      }
-
-      execute = executeCommand.toString();
-      hasExecuteSQL = true;
-      // When execute sql in CLI with -e mode, we should print all results by setting continuePrint
-      // is true.
-      continuePrint = true;
-      args = Arrays.copyOfRange(args, 0, index);
-      return args;
-    }
-  }
-
-  static void displayLogo(String version) {
-    println(
-        " _____       _________  ______   ______    \n"
-            + "|_   _|     |  _   _  ||_   _ `.|_   _ \\   \n"
-            + "  | |   .--.|_/ | | \\_|  | | `. \\ | |_) |  \n"
-            + "  | | / .'`\\ \\  | |      | |  | | |  __'.  \n"
-            + " _| |_| \\__. | _| |_    _| |_.' /_| |__) | \n"
-            + "|_____|'.__.' |_____|  |______.'|_______/  version "
-            + version
-            + "\n"
-            + "                                           \n");
-  }
-
-  static void echoStarting() {
-    println("---------------------");
-    println("Starting IoTDB Cli");
-    println("---------------------");
-  }
-
-  static OperationResult handleInputCmd(String cmd, IoTDBConnection connection) {
-    String specialCmd = cmd.toLowerCase().trim();
-
-    if (QUIT_COMMAND.equals(specialCmd) || EXIT_COMMAND.equals(specialCmd)) {
-      return OperationResult.STOP_OPER;
-    }
-    if (HELP.equals(specialCmd)) {
-      showHelp();
-      return OperationResult.CONTINUE_OPER;
-    }
-    if (specialCmd.startsWith(SET_TIMESTAMP_DISPLAY)) {
-      setTimestampDisplay(specialCmd, cmd);
-      return OperationResult.CONTINUE_OPER;
-    }
-
-    if (specialCmd.startsWith(SET_TIME_ZONE)) {
-      setTimeZone(specialCmd, cmd, connection);
-      return OperationResult.CONTINUE_OPER;
-    }
-
-    if (specialCmd.startsWith(SET_FETCH_SIZE)) {
-      setFetchSize(specialCmd, cmd);
-      return OperationResult.CONTINUE_OPER;
-    }
-
-    if (specialCmd.startsWith(SET_MAX_DISPLAY_NUM)) {
-      setMaxDisplayNum(specialCmd, cmd);
-      return OperationResult.CONTINUE_OPER;
-    }
-
-    if (specialCmd.startsWith(SHOW_TIMEZONE)) {
-      showTimeZone(connection);
-      return OperationResult.CONTINUE_OPER;
-    }
-    if (specialCmd.startsWith(SHOW_TIMESTAMP_DISPLAY)) {
-      println("Current time format: " + timeFormat);
-      return OperationResult.CONTINUE_OPER;
-    }
-    if (specialCmd.startsWith(SHOW_FETCH_SIZE)) {
-      println("Current fetch size: " + fetchSize);
-      return OperationResult.CONTINUE_OPER;
-    }
-
-    if (specialCmd.startsWith(IMPORT_CMD)) {
-      importCmd(specialCmd, cmd, connection);
-      return OperationResult.CONTINUE_OPER;
-    }
-
-    executeQuery(connection, cmd);
-    return OperationResult.NO_OPER;
-  }
-
-  private static void showHelp() {
-    println("    <your-sql>\t\t\t execute your sql statment");
-    println(
-        String.format("    %s\t\t show how many timeseries are in iotdb", SHOW_METADATA_COMMAND));
-    println(
-        String.format(
-            "    %s=xxx\t eg. long, default, ISO8601, yyyy-MM-dd HH:mm:ss.",
-            SET_TIMESTAMP_DISPLAY));
-    println(String.format("    %s\t show time display type", SHOW_TIMESTAMP_DISPLAY));
-    println(String.format("    %s=xxx\t\t eg. +08:00, Asia/Shanghai.", SET_TIME_ZONE));
-    println(String.format("    %s\t\t show cli time zone", SHOW_TIMEZONE));
-    println(
-        String.format(
-            "    %s=xxx\t\t set fetch size when querying data from server.", SET_FETCH_SIZE));
-    println(String.format("    %s\t\t show fetch size", SHOW_FETCH_SIZE));
-    println(
-        String.format(
-            "    %s=xxx\t eg. set max lines for cli to ouput, -1 equals to unlimited.",
-            SET_MAX_DISPLAY_NUM));
-  }
-
-  private static void setTimestampDisplay(String specialCmd, String cmd) {
-    String[] values = specialCmd.split("=");
-    if (values.length != 2) {
-      println(
-          String.format(
-              "Time display format error, please input like %s=ISO8601", SET_TIMESTAMP_DISPLAY));
-      return;
-    }
-    try {
-      timeFormat = RpcUtils.setTimeFormat(cmd.split("=")[1]);
-    } catch (Exception e) {
-      println(String.format("time display format error, %s", e.getMessage()));
-      return;
-    }
-    println("Time display type has set to " + cmd.split("=")[1].trim());
-  }
-
-  /**
-   * if cli has not specified a zondId, it will be set to cli's system timezone by default otherwise
-   * for insert and query accuracy cli should set timezone the same for all sessions
-   *
-   * @param specialCmd
-   * @param cmd
-   * @param connection
-   */
-  private static void setTimeZone(String specialCmd, String cmd, IoTDBConnection connection) {
-    String[] values = specialCmd.split("=");
-    if (values.length != 2) {
-      println(String.format("Time zone format error, please input like %s=+08:00", SET_TIME_ZONE));
-      return;
-    }
-    try {
-      connection.setTimeZone(cmd.split("=")[1].trim());
-    } catch (Exception e) {
-      println(String.format("Time zone format error: %s", e.getMessage()));
-      return;
-    }
-    println("Time zone has set to " + values[1].trim());
-  }
-
-  private static void setFetchSize(String specialCmd, String cmd) {
-    String[] values = specialCmd.split("=");
-    if (values.length != 2) {
-      println(String.format("Fetch size format error, please input like %s=10000", SET_FETCH_SIZE));
-      return;
-    }
-    try {
-      setFetchSize(cmd.split("=")[1]);
-    } catch (Exception e) {
-      println(String.format("Fetch size format error, %s", e.getMessage()));
-      return;
-    }
-    println("Fetch size has set to " + values[1].trim());
-  }
-
-  private static void setMaxDisplayNum(String specialCmd, String cmd) {
-    String[] values = specialCmd.split("=");
-    if (values.length != 2) {
-      println(
-          String.format(
-              "Max display number format error, please input like %s = 10000",
-              SET_MAX_DISPLAY_NUM));
-      return;
-    }
-    try {
-      setMaxDisplayNumber(cmd.split("=")[1]);
-    } catch (Exception e) {
-      println(String.format("Max display number format error, %s", e.getMessage()));
-      return;
-    }
-    println("Max display number has set to " + values[1].trim());
-  }
-
-  private static void showTimeZone(IoTDBConnection connection) {
-    try {
-      println("Current time zone: " + connection.getTimeZone());
-    } catch (Exception e) {
-      println("Cannot get time zone from server side because: " + e.getMessage());
-    }
-  }
-
-  private static void importCmd(String specialCmd, String cmd, IoTDBConnection connection) {
-    String[] values = specialCmd.split(" ");
-    if (values.length != 2) {
-      println(
-          "Please input like: import /User/myfile. "
-              + "Noted that your file path cannot contain any space character)");
-      return;
-    }
-    println(cmd.split(" ")[1]);
-    try {
-      ImportCsv.importFromTargetPath(
-          host,
-          Integer.valueOf(port),
-          username,
-          password,
-          cmd.split(" ")[1],
-          connection.getTimeZone());
-    } catch (IoTDBConnectionException e) {
-      e.printStackTrace();
-    }
-  }
-
-  private static void executeQuery(IoTDBConnection connection, String cmd) {
-    long startTime = System.currentTimeMillis();
-    try (Statement statement = connection.createStatement()) {
-      ZoneId zoneId = ZoneId.of(connection.getTimeZone());
-      statement.setFetchSize(fetchSize);
-      boolean hasResultSet = statement.execute(cmd.trim());
-      if (hasResultSet) {
-        // print the result
-        try (ResultSet resultSet = statement.getResultSet()) {
-          ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-          int columnLength = resultSetMetaData.getColumnCount();
-          List<Integer> maxSizeList = new ArrayList<>(columnLength);
-          List<List<String>> lists =
-              cacheResult(resultSet, maxSizeList, columnLength, resultSetMetaData, zoneId);
-          output(lists, maxSizeList);
-          long costTime = System.currentTimeMillis() - startTime;
-          println(String.format("It costs %.3fs", costTime / 1000.0));
-          while (!isReachEnd) {
-            if (continuePrint) {
-              maxSizeList = new ArrayList<>(columnLength);
-              lists = cacheResult(resultSet, maxSizeList, columnLength, resultSetMetaData, zoneId);
-              output(lists, maxSizeList);
-              continue;
-            }
-            println(
-                String.format(
-                    "Reach the max_display_num = %s. Press ENTER to show more, input 'q' to quit.",
-                    maxPrintRowCount));
-            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
-            try {
-              if ("".equals(br.readLine())) {
-                maxSizeList = new ArrayList<>(columnLength);
-                lists =
-                    cacheResult(resultSet, maxSizeList, columnLength, resultSetMetaData, zoneId);
-                output(lists, maxSizeList);
-              } else {
-                break;
-              }
-            } catch (IOException e) {
-              e.printStackTrace();
-            }
-          }
-          // output tracing activity
-          if (((AbstractIoTDBJDBCResultSet) resultSet).isSetTracingInfo()) {
-            maxSizeList = new ArrayList<>(2);
-            lists = cacheTracingInfo(resultSet, maxSizeList);
-            outputTracingInfo(lists, maxSizeList);
-          }
-        }
-      } else {
-        println("Msg: " + SUCCESS_MESSAGE);
-      }
-    } catch (Exception e) {
-      println("Msg: " + e.getMessage());
-    } finally {
-      resetArgs();
-    }
-  }
-
-  /**
-   * cache all results
-   *
-   * @param resultSet jdbc resultSet
-   * @param maxSizeList the longest result of every column
-   * @param columnCount the number of column
-   * @param resultSetMetaData jdbc resultSetMetaData
-   * @param zoneId your time zone
-   * @return List<List<String>> result
-   * @throws SQLException throw exception
-   */
-  @SuppressWarnings("squid:S3776") // Suppress high Cognitive Complexity warning
-  private static List<List<String>> cacheResult(
-      ResultSet resultSet,
-      List<Integer> maxSizeList,
-      int columnCount,
-      ResultSetMetaData resultSetMetaData,
-      ZoneId zoneId)
-      throws SQLException {
-
-    int j = 0;
-    if (cursorBeforeFirst) {
-      isReachEnd = !resultSet.next();
-      cursorBeforeFirst = false;
-    }
-
-    List<List<String>> lists = new ArrayList<>(columnCount);
-    if (resultSet instanceof IoTDBJDBCResultSet) {
-      for (int i = 1; i <= columnCount; i++) {
-        List<String> list = new ArrayList<>(maxPrintRowCount + 1);
-        String columnLabel = resultSetMetaData.getColumnLabel(i);
-        list.add(columnLabel);
-        lists.add(list);
-        int count = computeHANCount(columnLabel);
-        maxSizeList.add(columnLabel.length() + count);
-      }
-
-      boolean printTimestamp = !((IoTDBJDBCResultSet) resultSet).isIgnoreTimeStamp();
-      while (j < maxPrintRowCount && !isReachEnd) {
-        for (int i = 1; i <= columnCount; i++) {
-          String tmp;
-          if (printTimestamp && i == 1) {
-            tmp =
-                RpcUtils.formatDatetime(
-                    timeFormat, timestampPrecision, resultSet.getLong(TIMESTAMP_STR), zoneId);
-          } else {
-            tmp = resultSet.getString(i);
-          }
-          if (tmp == null) {
-            tmp = NULL;
-          }
-          lists.get(i - 1).add(tmp);
-          int count = computeHANCount(tmp);
-          int realLength = tmp.length() + count;
-          if (maxSizeList.get(i - 1) < realLength) {
-            maxSizeList.set(i - 1, realLength);
-          }
-        }
-        j++;
-        isReachEnd = !resultSet.next();
-      }
-      return lists;
-    }
-
-    for (int i = 1; i <= columnCount; i += 2) {
-      List<String> timeList = new ArrayList<>(maxPrintRowCount + 1);
-      timeList.add(resultSetMetaData.getColumnLabel(i).substring(0, TIMESTAMP_STR.length()));
-      lists.add(timeList);
-      List<String> valueList = new ArrayList<>(maxPrintRowCount + 1);
-      valueList.add(resultSetMetaData.getColumnLabel(i + 1));
-      lists.add(valueList);
-      maxSizeList.add(TIMESTAMP_STR.length());
-      maxSizeList.add(resultSetMetaData.getColumnLabel(i + 1).length());
-    }
-
-    while (j < maxPrintRowCount && !isReachEnd) {
-      for (int i = 1; i <= columnCount; i++) {
-        String tmp = resultSet.getString(i);
-        if (tmp == null) {
-          tmp = NULL;
-        }
-        if (i % 2 != 0 && !tmp.equals(NULL)) {
-          tmp =
-              RpcUtils.formatDatetime(timeFormat, timestampPrecision, Long.parseLong(tmp), zoneId);
-        }
-        lists.get(i - 1).add(tmp);
-        if (maxSizeList.get(i - 1) < tmp.length()) {
-          maxSizeList.set(i - 1, tmp.length());
-        }
-      }
-      j++;
-      isReachEnd = !resultSet.next();
-    }
-    return lists;
-  }
-
-  private static List<List<String>> cacheTracingInfo(ResultSet resultSet, List<Integer> maxSizeList)
-      throws Exception {
-    List<List<String>> lists = new ArrayList<>(2);
-    lists.add(0, new ArrayList<>());
-    lists.add(1, new ArrayList<>());
-
-    String ACTIVITY_STR = "Activity";
-    String ELAPSED_TIME_STR = "Elapsed Time";
-    lists.get(0).add(ACTIVITY_STR);
-    lists.get(1).add(ELAPSED_TIME_STR);
-    maxSizeList.add(0, ACTIVITY_STR.length());
-    maxSizeList.add(1, ELAPSED_TIME_STR.length());
-
-    List<String> activityList = ((AbstractIoTDBJDBCResultSet) resultSet).getActivityList();
-    List<Long> elapsedTimeList = ((AbstractIoTDBJDBCResultSet) resultSet).getElapsedTimeList();
-    String[] statisticsInfoList = {
-      "seriesPathNum", "seqFileNum", "unSeqFileNum", "seqChunkInfo", "unSeqChunkInfo", "pageNumInfo"
-    };
-
-    for (int i = 0; i < activityList.size(); i++) {
-
-      if (i == activityList.size() - 1) {
-        // cache Statistics
-        for (String infoName : statisticsInfoList) {
-          String info = ((AbstractIoTDBJDBCResultSet) resultSet).getStatisticsInfoByName(infoName);
-          lists.get(0).add(info);
-          lists.get(1).add("");
-          if (info.length() > maxSizeList.get(0)) {
-            maxSizeList.set(0, info.length());
-          }
-        }
-      }
-
-      String activity = activityList.get(i);
-      String elapsedTime = elapsedTimeList.get(i).toString();
-      if (activity.length() > maxSizeList.get(0)) {
-        maxSizeList.set(0, activity.length());
-      }
-      if (elapsedTime.length() > maxSizeList.get(1)) {
-        maxSizeList.set(1, elapsedTime.length());
-      }
-      lists.get(0).add(activity);
-      lists.get(1).add(elapsedTime);
-    }
-
-    return lists;
-  }
-
-  private static void output(List<List<String>> lists, List<Integer> maxSizeList) {
-    printBlockLine(maxSizeList);
-    printRow(lists, 0, maxSizeList);
-    printBlockLine(maxSizeList);
-    for (int i = 1; i < lists.get(0).size(); i++) {
-      printRow(lists, i, maxSizeList);
-    }
-    printBlockLine(maxSizeList);
-    if (isReachEnd) {
-      lineCount += lists.get(0).size() - 1;
-      printCount(lineCount);
-    } else {
-      lineCount += maxPrintRowCount;
-    }
-  }
-
-  private static void outputTracingInfo(List<List<String>> lists, List<Integer> maxSizeList) {
-    println();
-    println("Tracing Activties:");
-    printBlockLine(maxSizeList);
-    printRow(lists, 0, maxSizeList);
-    printBlockLine(maxSizeList);
-    for (int i = 1; i < lists.get(0).size(); i++) {
-      printRow(lists, i, maxSizeList);
-    }
-    printBlockLine(maxSizeList);
-  }
-
-  private static void resetArgs() {
-    lineCount = 0;
-    cursorBeforeFirst = true;
-    isReachEnd = false;
-  }
-
-  enum OperationResult {
-    STOP_OPER,
-    CONTINUE_OPER,
-    NO_OPER
-  }
-
-  static boolean processCommand(String s, IoTDBConnection connection) {
-    if (s == null) {
-      return true;
-    }
-    String[] cmds = s.trim().split(";");
-    for (String cmd : cmds) {
-      if (cmd != null && !"".equals(cmd.trim())) {
-        OperationResult result = handleInputCmd(cmd, connection);
-        switch (result) {
-          case STOP_OPER:
-            return false;
-          case CONTINUE_OPER:
-            continue;
-          default:
-            break;
-        }
-      }
-    }
-    return true;
-  }
-}
diff --git a/cli/src/main/java/org/apache/iotdb/cli/Cli.java b/cli/src/main/java/org/apache/iotdb/cli/Cli.java
deleted file mode 100644
index b13ff71..0000000
--- a/cli/src/main/java/org/apache/iotdb/cli/Cli.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.iotdb.cli;
-
-import org.apache.iotdb.cli.utils.JlineUtils;
-import org.apache.iotdb.exception.ArgsErrorException;
-import org.apache.iotdb.jdbc.Config;
-import org.apache.iotdb.jdbc.IoTDBConnection;
-import org.apache.iotdb.rpc.RpcUtils;
-
-import org.apache.commons.cli.CommandLine;
-import org.apache.commons.cli.CommandLineParser;
-import org.apache.commons.cli.DefaultParser;
-import org.apache.commons.cli.HelpFormatter;
-import org.apache.commons.cli.Options;
-import org.apache.commons.cli.ParseException;
-import org.apache.thrift.TException;
-import org.jline.reader.EndOfFileException;
-import org.jline.reader.LineReader;
-import org.jline.reader.UserInterruptException;
-
-import java.io.IOException;
-import java.sql.DriverManager;
-import java.sql.SQLException;
-
-import static org.apache.iotdb.cli.utils.IoTPrinter.println;
-
-/** args[]: -h 127.0.0.1 -p 6667 -u root -pw root */
-public class Cli extends AbstractCli {
-
-  private static CommandLine commandLine;
-  private static LineReader lineReader;
-
-  /**
-   * IoTDB Client main function.
-   *
-   * @param args launch arguments
-   * @throws ClassNotFoundException ClassNotFoundException
-   */
-  public static void main(String[] args) throws ClassNotFoundException, IOException {
-    Class.forName(Config.JDBC_DRIVER_NAME);
-    Options options = createOptions();
-    HelpFormatter hf = new HelpFormatter();
-    hf.setWidth(MAX_HELP_CONSOLE_WIDTH);
-    commandLine = null;
-
-    if (args == null || args.length == 0) {
-      println(
-          "Require more params input, eg. ./start-cli.sh(start-cli.bat if Windows) "
-              + "-h xxx.xxx.xxx.xxx -p xxxx -u xxx.");
-      println("For more information, please check the following hint.");
-      hf.printHelp(SCRIPT_HINT, options, true);
-      return;
-    }
-    init();
-    String[] newArgs = removePasswordArgs(args);
-    String[] newArgs2 = processExecuteArgs(newArgs);
-    boolean continues = parseCommandLine(options, newArgs2, hf);
-    if (!continues) {
-      return;
-    }
-
-    try {
-      host = checkRequiredArg(HOST_ARGS, HOST_NAME, commandLine, false, host);
-      port = checkRequiredArg(PORT_ARGS, PORT_NAME, commandLine, false, port);
-      username = checkRequiredArg(USERNAME_ARGS, USERNAME_NAME, commandLine, true, null);
-    } catch (ArgsErrorException e) {
-      println(IOTDB_CLI_PREFIX + "> input params error because" + e.getMessage());
-    } catch (Exception e) {
-      println(IOTDB_CLI_PREFIX + "> exit cli with error " + e.getMessage());
-    }
-
-    lineReader = JlineUtils.getLineReader(username, host, port);
-    serve();
-  }
-
-  private static boolean parseCommandLine(Options options, String[] newArgs, HelpFormatter hf) {
-    try {
-      CommandLineParser parser = new DefaultParser();
-      commandLine = parser.parse(options, newArgs);
-      if (commandLine.hasOption(HELP_ARGS)) {
-        hf.printHelp(SCRIPT_HINT, options, true);
-        return false;
-      }
-      if (commandLine.hasOption(RPC_COMPRESS_ARGS)) {
-        Config.rpcThriftCompressionEnable = true;
-      }
-      if (commandLine.hasOption(ISO8601_ARGS)) {
-        timeFormat = RpcUtils.setTimeFormat("long");
-      }
-      if (commandLine.hasOption(MAX_PRINT_ROW_COUNT_ARGS)) {
-        setMaxDisplayNumber(commandLine.getOptionValue(MAX_PRINT_ROW_COUNT_ARGS));
-      }
-    } catch (ParseException e) {
-      println(
-          "Require more params input, eg. ./start-cli.sh(start-cli.bat if Windows) "
-              + "-h xxx.xxx.xxx.xxx -p xxxx -u xxx.");
-      println("For more information, please check the following hint.");
-      hf.printHelp(IOTDB_CLI_PREFIX, options, true);
-      return false;
-    } catch (NumberFormatException e) {
-      println(
-          IOTDB_CLI_PREFIX
-              + "> error format of max print row count, it should be an integer number");
-      return false;
-    }
-    return true;
-  }
-
-  private static void serve() {
-    try {
-      password = commandLine.getOptionValue(PASSWORD_ARGS);
-      if (hasExecuteSQL && password != null) {
-        try (IoTDBConnection connection =
-            (IoTDBConnection)
-                DriverManager.getConnection(
-                    Config.IOTDB_URL_PREFIX + host + ":" + port + "/", username, password)) {
-          properties = connection.getServerProperties();
-          timestampPrecision = properties.getTimestampPrecision();
-          AGGREGRATE_TIME_LIST.addAll(properties.getSupportedTimeAggregationOperations());
-          processCommand(execute, connection);
-          return;
-        } catch (SQLException e) {
-          println(IOTDB_CLI_PREFIX + "> can't execute sql because" + e.getMessage());
-        }
-      }
-      if (password == null) {
-        password = lineReader.readLine("please input your password:", '\0');
-      }
-      receiveCommands(lineReader);
-    } catch (Exception e) {
-      println(IOTDB_CLI_PREFIX + "> exit cli with error " + e.getMessage());
-    }
-  }
-
-  private static void receiveCommands(LineReader reader) throws TException {
-    try (IoTDBConnection connection =
-        (IoTDBConnection)
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + host + ":" + port + "/", username, password)) {
-      String s;
-      properties = connection.getServerProperties();
-      AGGREGRATE_TIME_LIST.addAll(properties.getSupportedTimeAggregationOperations());
-      timestampPrecision = properties.getTimestampPrecision();
-
-      echoStarting();
-      displayLogo(properties.getVersion());
-      println(IOTDB_CLI_PREFIX + "> login successfully");
-      while (true) {
-        try {
-          s = reader.readLine(IOTDB_CLI_PREFIX + "> ", null);
-          boolean continues = processCommand(s, connection);
-          if (!continues) {
-            break;
-          }
-        } catch (UserInterruptException e) {
-          // Exit on signal INT requires confirmation.
-          try {
-            reader.readLine("Press CTRL+C again to exit, or press ENTER to continue", '\0');
-          } catch (UserInterruptException | EndOfFileException e2) {
-            System.exit(0);
-          }
-        } catch (EndOfFileException e) {
-          // Exit on EOF (usually by pressing CTRL+D).
-          System.exit(0);
-        }
-      }
-    } catch (SQLException e) {
-      println(
-          String.format(
-              "%s> %s Host is %s, port is %s.", IOTDB_CLI_PREFIX, e.getMessage(), host, port));
-    }
-  }
-}
diff --git a/cli/src/main/java/org/apache/iotdb/cli/utils/JlineUtils.java b/cli/src/main/java/org/apache/iotdb/cli/utils/JlineUtils.java
deleted file mode 100644
index b185398..0000000
--- a/cli/src/main/java/org/apache/iotdb/cli/utils/JlineUtils.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.iotdb.cli.utils;
-
-import org.apache.iotdb.db.qp.sql.IoTDBSqlLexer;
-
-import org.jline.reader.LineReader;
-import org.jline.reader.LineReader.Option;
-import org.jline.reader.LineReaderBuilder;
-import org.jline.reader.impl.completer.StringsCompleter;
-import org.jline.terminal.Size;
-import org.jline.terminal.Terminal;
-import org.jline.terminal.Terminal.Signal;
-import org.jline.terminal.TerminalBuilder;
-import org.jline.utils.OSUtils;
-import org.jline.widget.AutosuggestionWidgets;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Objects;
-import java.util.Set;
-import java.util.regex.Pattern;
-import java.util.stream.Collectors;
-import java.util.stream.IntStream;
-
-public class JlineUtils {
-
-  public static final Pattern SQL_KEYWORD_PATTERN = Pattern.compile("([A-Z_]+)");
-  public static final Set<String> SQL_KEYWORDS =
-      IntStream.range(0, IoTDBSqlLexer.VOCABULARY.getMaxTokenType())
-          .mapToObj(IoTDBSqlLexer.VOCABULARY::getDisplayName)
-          .filter(Objects::nonNull)
-          .filter(w -> SQL_KEYWORD_PATTERN.matcher(w).matches())
-          .collect(Collectors.toSet());
-
-  public static LineReader getLineReader(String username, String host, String port)
-      throws IOException {
-    // Defaulting to a dumb terminal when a supported terminal can not be correctly created
-    // see https://github.com/jline/jline3/issues/291
-    Terminal terminal = TerminalBuilder.builder().dumb(true).build();
-    if (terminal.getWidth() == 0 || terminal.getHeight() == 0) {
-      // Hard coded terminal size when redirecting.
-      terminal.setSize(new Size(120, 40));
-    }
-    Thread executeThread = Thread.currentThread();
-    // Register signal handler. Instead of shutting down the process, interrupt the current thread
-    // when signal INT is received (usually by pressing CTRL+C).
-    terminal.handle(Signal.INT, signal -> executeThread.interrupt());
-
-    LineReaderBuilder builder = LineReaderBuilder.builder();
-    builder.terminal(terminal);
-
-    // Handle the command history. By default, the number of commands will not exceed 500 and the
-    // size of the history fill will be less than 10 KB. See:
-    // org.jline.reader.impl.history#DefaultHistory
-    String historyFile = ".iotdb_history";
-    String historyFilePath =
-        System.getProperty("user.home")
-            + File.separator
-            + historyFile
-            + "-"
-            + host.hashCode()
-            + "-"
-            + port
-            + "-"
-            + username.hashCode();
-    builder.variable(LineReader.HISTORY_FILE, new File(historyFilePath));
-
-    // TODO: since the lexer doesn't produce tokens for quotation marks, disable the highlighter to
-    // avoid incorrect inputs.
-    //    builder.highlighter(new IoTDBSyntaxHighlighter());
-
-    builder.completer(new StringsCompleter(SQL_KEYWORDS));
-
-    builder.option(Option.CASE_INSENSITIVE_SEARCH, true);
-    builder.option(Option.CASE_INSENSITIVE, true);
-    // See: https://www.gnu.org/software/bash/manual/html_node/Event-Designators.html
-    builder.option(Option.DISABLE_EVENT_EXPANSION, true);
-
-    org.jline.reader.impl.DefaultParser parser = new org.jline.reader.impl.DefaultParser();
-    builder.parser(parser);
-    LineReader lineReader = builder.build();
-    if (OSUtils.IS_WINDOWS) {
-      // If enabled cursor remains in begin parenthesis (gitbash).
-      lineReader.setVariable(LineReader.BLINK_MATCHING_PAREN, 0);
-    }
-
-    // Create autosuggestion widgets
-    AutosuggestionWidgets autosuggestionWidgets = new AutosuggestionWidgets(lineReader);
-    // Enable autosuggestions
-    autosuggestionWidgets.enable();
-    return lineReader;
-  }
-}
diff --git a/cli/src/main/java/org/apache/iotdb/tool/ExportCsv.java b/cli/src/main/java/org/apache/iotdb/tool/ExportCsv.java
deleted file mode 100644
index 1524b43..0000000
--- a/cli/src/main/java/org/apache/iotdb/tool/ExportCsv.java
+++ /dev/null
@@ -1,379 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.iotdb.tool;
-
-import org.apache.iotdb.cli.utils.JlineUtils;
-import org.apache.iotdb.exception.ArgsErrorException;
-import org.apache.iotdb.rpc.IoTDBConnectionException;
-import org.apache.iotdb.rpc.RpcUtils;
-import org.apache.iotdb.rpc.StatementExecutionException;
-import org.apache.iotdb.session.Session;
-import org.apache.iotdb.session.SessionDataSet;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.read.common.RowRecord;
-
-import org.apache.commons.cli.CommandLine;
-import org.apache.commons.cli.CommandLineParser;
-import org.apache.commons.cli.DefaultParser;
-import org.apache.commons.cli.HelpFormatter;
-import org.apache.commons.cli.Option;
-import org.apache.commons.cli.Options;
-import org.apache.commons.cli.ParseException;
-import org.apache.commons.csv.CSVFormat;
-import org.apache.commons.csv.CSVPrinter;
-import org.apache.commons.csv.QuoteMode;
-import org.apache.thrift.TException;
-import org.jline.reader.LineReader;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.time.Instant;
-import java.time.ZonedDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Export CSV file.
- *
- * @version 1.0.0 20170719
- */
-public class ExportCsv extends AbstractCsvTool {
-
-  private static final String TARGET_DIR_ARGS = "td";
-  private static final String TARGET_DIR_NAME = "targetDirectory";
-
-  private static final String TARGET_FILE_ARGS = "f";
-  private static final String TARGET_FILE_NAME = "targetFile";
-
-  private static final String SQL_FILE_ARGS = "s";
-  private static final String SQL_FILE_NAME = "sqlfile";
-
-  private static final String DATA_TYPE_ARGS = "datatype";
-  private static final String DATA_TYPE_NAME = "datatype";
-
-  private static final String QUERY_COMMAND_ARGS = "q";
-  private static final String QUERY_COMMAND_NAME = "queryCommand";
-
-  private static final String TSFILEDB_CLI_PREFIX = "ExportCsv";
-
-  private static final String DUMP_FILE_NAME_DEFAULT = "dump";
-  private static String targetFile = DUMP_FILE_NAME_DEFAULT;
-
-  private static String targetDirectory;
-
-  private static Boolean needDataTypePrinted;
-
-  private static String queryCommand;
-
-  private static String timestampPrecision;
-
-  private static final int EXPORT_PER_LINE_COUNT = 10000;
-
-  /** main function of export csv tool. */
-  public static void main(String[] args) {
-    Options options = createOptions();
-    HelpFormatter hf = new HelpFormatter();
-    CommandLine commandLine;
-    CommandLineParser parser = new DefaultParser();
-    hf.setOptionComparator(null); // avoid reordering
-    hf.setWidth(MAX_HELP_CONSOLE_WIDTH);
-
-    if (args == null || args.length == 0) {
-      System.out.println("Too few params input, please check the following hint.");
-      hf.printHelp(TSFILEDB_CLI_PREFIX, options, true);
-      return;
-    }
-    try {
-      commandLine = parser.parse(options, args);
-    } catch (ParseException e) {
-      System.out.println(e.getMessage());
-      hf.printHelp(TSFILEDB_CLI_PREFIX, options, true);
-      return;
-    }
-    if (commandLine.hasOption(HELP_ARGS)) {
-      hf.printHelp(TSFILEDB_CLI_PREFIX, options, true);
-      return;
-    }
-
-    try {
-      parseBasicParams(commandLine);
-      parseSpecialParams(commandLine);
-      if (!checkTimeFormat()) {
-        return;
-      }
-
-      session = new Session(host, Integer.parseInt(port), username, password);
-      session.open(false);
-      timestampPrecision = session.getTimestampPrecision();
-      setTimeZone();
-
-      if (queryCommand == null) {
-        String sqlFile = commandLine.getOptionValue(SQL_FILE_ARGS);
-        String sql;
-
-        if (sqlFile == null) {
-          LineReader lineReader = JlineUtils.getLineReader(username, host, port);
-          sql = lineReader.readLine(TSFILEDB_CLI_PREFIX + "> please input query: ");
-          System.out.println(sql);
-          String[] values = sql.trim().split(";");
-          for (int i = 0; i < values.length; i++) {
-            dumpResult(values[i], i);
-          }
-        } else {
-          dumpFromSqlFile(sqlFile);
-        }
-      } else {
-        dumpResult(queryCommand, 0);
-      }
-
-    } catch (IOException e) {
-      System.out.println("Failed to operate on file, because " + e.getMessage());
-    } catch (ArgsErrorException e) {
-      System.out.println("Invalid args: " + e.getMessage());
-    } catch (IoTDBConnectionException | StatementExecutionException e) {
-      System.out.println("Connect failed because " + e.getMessage());
-    } catch (TException e) {
-      System.out.println(
-          "Can not get the timestamp precision from server because " + e.getMessage());
-    } finally {
-      if (session != null) {
-        try {
-          session.close();
-        } catch (IoTDBConnectionException e) {
-          System.out.println(
-              "Encounter an error when closing session, error is: " + e.getMessage());
-        }
-      }
-    }
-  }
-
-  private static void parseSpecialParams(CommandLine commandLine) throws ArgsErrorException {
-    targetDirectory = checkRequiredArg(TARGET_DIR_ARGS, TARGET_DIR_NAME, commandLine);
-    targetFile = commandLine.getOptionValue(TARGET_FILE_ARGS);
-    needDataTypePrinted = Boolean.valueOf(commandLine.getOptionValue(DATA_TYPE_ARGS));
-    queryCommand = commandLine.getOptionValue(QUERY_COMMAND_ARGS);
-
-    if (needDataTypePrinted == null) {
-      needDataTypePrinted = true;
-    }
-    if (targetFile == null) {
-      targetFile = DUMP_FILE_NAME_DEFAULT;
-    }
-    timeFormat = commandLine.getOptionValue(TIME_FORMAT_ARGS);
-    if (timeFormat == null) {
-      timeFormat = "default";
-    }
-    timeZoneID = commandLine.getOptionValue(TIME_ZONE_ARGS);
-    if (!targetDirectory.endsWith("/") && !targetDirectory.endsWith("\\")) {
-      targetDirectory += File.separator;
-    }
-  }
-
-  /**
-   * commandline option create.
-   *
-   * @return object Options
-   */
-  private static Options createOptions() {
-    Options options = createNewOptions();
-
-    Option opTargetFile =
-        Option.builder(TARGET_DIR_ARGS)
-            .required()
-            .argName(TARGET_DIR_NAME)
-            .hasArg()
-            .desc("Target File Directory (required)")
-            .build();
-    options.addOption(opTargetFile);
-
... 719763 lines suppressed ...