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

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


    from c2db2bf  fix uppercase bug
     add 9135547  [IOTDB-1164]Optimize the executeBatch interface in JDBC 
(#2725)
     add 7f9aaaa  [IOTDB-1043] Change rpc port &use internal ip for 
communication between nodes in cluster (#2740)
     add d718827  fix NPE bug in QueryTimeManager
     add 45210d7  apply spotless
     add f63b849  fix bug
     add 5fcff40  Merge pull request #2759 from apache/fixQueryInfoNull
     add 76b6d82  Downgrade readlock to writelock in delete (#2774)
     add 371b852  Fix the sketch tool in new tsfile format (#2775)
     add 4de1f8b  change the default max JVM heap size from 8G to 64G (#2771)
     add ba4cfaa  [IOTDB-1118] [Distributed] Limit query log lag in mid 
consistency level (#2766)
     add 5409c37  Update the picture of tsfile format (#2773)
     add c50628b  [IOTDB-1181] Upgrade jetty jar to fix CVE-2020-27216
     add d622fe8  Add welcome info for who submit issues/PRs the first time. 
(#2779)
     add e9bd562  [IOTDB-1186] Remove redundant sync meta leader in query 
process for cluster module
     add 7c40ce7  Update IoTDBConstant.java  remove unused field (#2777)
     add 4c2a3b5  [IOTDB-1189] [Distributed]optimize thread pool client close 
(#2782)
     add ca02b36  Add max direct memory size parameter to env.sh
     add 6694c5d  Update the SeedUrl Format Exception Info when using cluster 
mode (#2786)
     add 6832eee  [ISSUE-2661] SyncClientPool And AsyncClientPool have 
concurrency problem (#2791)
     add 0198f5c  Add generated-sources as source folder
     add bfa529b  (Fix Github Action)Update apt source before installing 
libboost
     add 19ad435  [IOTDB-1204] set parameter in iotdb-cluster.properties (#2797)
     add 1f54e62  Update cpp client build doc (#2796)
     add 7d5329f  [IOTDB-1192] Fix sql end with semicolon  (#2798)
     add a857820  Update UDF User Defined Function.md
     add aad1bcd  [IOTDB-1193] Remove redundant sync meta leader in CManager 
for cluster module (#2787)
     add 02a4ecf  [IOTDB-1208] revise the cluster setup docs (#2807)
     add ff3a0f9  Fix compaction with cluster snapshot deletion (#2811)
     add 1f98174  [IOTDB-1221] Compaction module: chunk metadata lists returned 
by the getMeasurementChunkMetadataListMapIterator method are not 
lexicographically ordered by the measurement names (#2817)
     add bccb441  check and persist the system properties of the cluster 
version (#2816)
     add 251c979  Rename timeout parameter (#2824)
     add 653841b  download calcite-core's dependency penhato from 
public.nexus.pentaho.org rather than spring.io
     add b692da0  Skip code coverage and sonar reports in a forked pull request
     add 743f57d  fix test executor error (#2829)
     add 4f60e92  [IOTDB-1187] Fix unseq compaction loss data bug after delete 
operation (#2785)
     add e35a3e4  Fix refactor query code, reduce complexity in 
PhysicalGenerator (#2820)
     add daa50d7  optimize the doc that WAL has three ways to be flashed to 
disk (#2822)
     add 5540272  [ISSUE-2827] add an overrided addChild() method in MNode. 
(#2828)
     add a735202  Optimize the code structure of deduplicate()  (#2856)
     add adc61e2  Optimize the code structure of deduplicate() - PART2 (#2863)
     add a8b01f1  [IOTDB-1234] fix ImportCsv tool cannot parse empty string 
(#2857)
     add c9026e2  Optimize cluster query (#2859)
     add 32eaa9e  simplify the Avg formula on removing redundant operations 
(#2868)
     add 6ffd095  [IOTDB-1274] fix the insert blocked caused the bugs in mem 
control module
     add 9e886df  Use switch case in enums class  (#2882)
     add c351b32  fix add "-" in thread name (#2884)
     add ec70703  [IOTDB-1214] Add Flink-IoTDB documents to the website (#2813)
     add b214511  [IOTDB-1251] optimize route intervals (#2886)
     add 155df75  [IOTDB-1207]Open time partition causes stackoverflow in 
Cluster Module (#2809)
     add 77cdc38  [IOTDB-1240]support show node command in cluster version 
(#2866)
     add ee4f073  Fix_IoTDBNewTsFileCompactionIT_problem (#2890)
     add 3781cc2  fix spelling mistake (#2889)
     add 64c11bc  [IOTDB-1255] refactor cluster package and jar name (#2892)
     add 5455d3b  [IOTDB-1252] optimize test mult-times perform (#2887)
     add 4f4ee90  Update cluster setup example after changing artifactId in 
cluster module  (#2899)
     add 85604b4  [IOTDB-1250] fix pull schema bug that the 
pullTimeSeriesSchema and  pullMeasurementSchema is misused(#2894)
     add 8fc8de3  [IOTDB-854] Limit the memory foorprint of the committed log 
cache (#2879)
     add ec5b756  fix Flink TsFile doc url error caused by PR2813 (#2893)
     add 9b22439  IOTDB-1241 support redirect query for cluster (#2867)
     add 3bdde72  Open IoTDBRemovePartitionIT ci log for diagnosis; fix 
System.out is closed in IoTDBCheckConfigIT (#2812)
     add 4377d18  [IOTDB-1256] upgrade Jackson to 2.11.0 because of loopholes 
CVE-2020-25649 (#2896)
     add 952a180  Add the method size() to Row in UDF (#2897)
     add 910b184  [IOTDB-1117][Distributed]Batched creation and fetch of 
RemoteSeriesReader(#2875)
     add be1d6a6  Fix alter context for max_degree_of_index_node default-value. 
(#2910)
     add 1c66316  fix Chinese Flink TsFile doc name
     add e67b770  [IOTDB-1236] Improve jdbc performance for creating timeseries 
in cluster module (#2872)
     add c5be711  Improve Python Client (#2898)
     add 876a576  Fix Add Operation bug introduced by #2872 (#2918)
     add 1fd2e19  [IOTDB-1248] forward the pull schema request to the leader 
(#2902)
     add d2c1030  Make CSV Tool doc more readable (#2926)
     add b28fa65  [ISSUE-2905] Fix Files.deleteIfExists() doesn't work for HDFS 
file (#2912)
     add e3d0e8e  [IOTDB-1258] jcl-over-slf4j have security vulnerabilities 
CVE-2018-8088 (#2906)
     add 4b533ff  [IOTDB-1260] optimize time_range query because syncMetaLeader 
(#2929)
     add a453b2f  [ISSUE-2790] Fix greetings.yml workflow (#2936)
     add c8f6d0f  [Distributed] Fix stackoverflow bug caused by 
InsertMultiTabletPlan or InsertRowsPlan  (#2938)
     add abdb580  [Distributed] Fix show remote timeseries serialization bug 
(#2940)
     add 170d679  [IOTDB-1260] optimize time_range query because syncMetaLeader 
(#2943)
     add 52a7251  fix spelling mistake in TsFile's readme doc (#2947)
     add 92e4755  [IOTDB-1265] fix bug: correct cluster to iotdb-cluster (#2949)
     add 43c4981  [ISSUE-2730] Add the number of unseq merge times in TsFile 
name. (#2939)
     add 9a05be4   [IOTDB-1257] Make a little bit improvement of config and fix 
some bugs for setting logic (#2904)
     add 8c38f6d  Fix unseq compaction file selector conflicts with time 
partition bug (#2920)
     add 2e7a32e  [IOTDB-1262] The test fails to be executed independently
     add ee908fb  bug fix:correct cluster to iotdb-cluster when pacakging zip 
files (#2954)
     add 453d95d  [IOTDB-1194]Fix a bug of checking time partition in 
DeviceTimeIndex (#2800)
     add 5a752b0  [IOTDB-1267] optimize ServerTimeGenerator IExpression 
parameter (#2955)
     add 5b73c1d  [ISSUE-2730] Change the upgraded TsFile names (#2952)
     add 48c5488  [ISSUE-2919] Fix C++ client memory leak bug (#2937)
     add 70e451e  Throw exception when device to be queried is not in 
TsFileMetaData (#2944)
     add 1d7386d  [IOTDB-1273]Feature/restrucutre python module as well as 
supporting pandas dataframe (#2922)
     add fa86482  Fix monitor bug caused by virtual storage group name (#2852)
     add fa5aafa  [IOTDB-1197] add iotdb-client-go as a git submodule of IoTDB 
repo (#2792)
     add b2986cc  [Distributed]fix stackoverflow when parse plan failed (#2953)
     add d726fb3  [IOTDB-1180] Reset the system log file names and maximal 
disk-space size (#2765)
     add 3f739bf  [IOTDB-1276]Add explain sql support and remove debug_state 
parameter (#2848)
     add 4afda52  Fix incompatible max_degree_of_index_node (#2962)
     add b9b3ea7  [ISSUE-2911]Fix The write stream is not closed when executing 
the command 'tracing off' (#2961)
     add 2619fe0  [IOTDB-1230]Support cross multi time partition when loading 
one TsFile (#2864)
     add 2825e47  [IOTDB-1277] support IoTDB as Flink source  (#2963)
     add 2728564   Fix the errors and reorganize the chapters of user guide 
(#2916)
     add 2bf4845  Log more memory usage information in SystemInfo (#2967)
     add a344eb7  [IOTDB-1278]limit the class name length <=25 in logback and 
reduce thread pool name length (#2966)
     add becb301  [CLIENT-PY] Fixed print statements with logging output. Added 
Exceptions instead of empty returns (#2968)
     add edb6d9e  [IOTDB-1190]Fully support HTTP URL char set in IoTDB path 
(#2776)
     add fd7e68f  [IOTDB-1202] reduce the size of client library (#2795)
     add 04be7b6  Fix group by month bug that use calendar month rather than 
use 30 days (#2964)
     add 24e7d23  for releasing 0.12.0: add version 0.12 in website, add 
release_note
     add 1e88f65  add parent pom to example/udf/example
     add cea339d  [IOTDB-1282] fix C++ class SessionDataSet mem-leak
     add 63d08a2  [CLIENT-PY] Fixed Situation where non-timeseries queries 
cannot be cast to df.
     add 03f7f01  Alter upgrade tool instruction error (#2985)
     add 5c9da96  [Distributed] add cluster setup example doc (#2984)
     add 8b10a94  update the website for release 0.11.3 and 0.12.0
     add 4df5856  Optimize sync leader for meta (#2987)
     add f5c3c1d  [IOTDB-1283] add-node.sh supports printgc (#2978)
     add 7681112  fix release notes link (#3002)
     add da7959d  Minor improve the concurrency problem caused by the checking 
apply thread and the compact entries thread (#3001)
     add 3f5af4a  [IOTDB-1298] Insertion performance loss due to meaningless 
autoboxing and unboxing (#3003)
     add 34f2b17  lowering the logging level from debug to trace when serialize 
meta (#3005)
     add 1382d2e  [Distributed] fix the plan index miss  (#3007)
     add fc0af02  [IOTDB-1308] Users with READ_TIMESERIES permission cannot 
execute group by fill queries (#3014)
     add 9fc331b  [IOTDB-1294] Compaction mods for new mods structure (#3013)
     add 05d77fa  fix issue iotdb-1219 (#3020)
     add 44a209f  [IOTDB-1217] Trigger module: API, executor and management 
services (#2815)
     add 507b950  [IOTDB-1309]add dockerfile for 0.11.3 and 0.12.0 (#3023)
     add c131da2  [IOTDB-1254] Trigger module: windowing utility (#2891)
     add e656ea5  uncomment the less used configuration (#2993)
     add c648e5a  Refactor the user documents of `API` (#3032)
     add 9b06cae  [IOTDB-1303] Group by without aggregation function used in 
select clause (#3011)
     add 7be35d6  [IOTDB-1317] Log CatchUp always failed du to not check the 
follower's match index (#3029)
     add 9870fb8  Merge branch 'master' into index_manager_part2

No new revisions were added by this update.

Summary of changes:
 .github/workflows/client-go.yml                    |  51 ++
 .github/workflows/client.yml                       |  30 +-
 .github/workflows/greetings.yml                    |  13 +
 .github/workflows/sonar-coveralls.yml              |  14 +-
 .gitignore                                         |   8 +
 .gitmodules                                        |   3 +
 Jenkinsfile                                        |   2 +-
 LICENSE-binary                                     |   4 +-
 README.md                                          |  49 +-
 README_ZH.md                                       |  34 +-
 RELEASE_NOTES.md                                   | 149 ++++
 antlr/pom.xml                                      |  19 +
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlBase.g4   |   9 +-
 client-cpp/README.md                               |   6 +-
 client-cpp/src/main/Session.cpp                    |  30 +-
 client-cpp/src/main/Session.h                      |  36 +-
 client-go                                          |   1 +
 client-py/{src/iotdb/utils/__init__.py => .flake8} |  17 +-
 client-py/.gitignore                               |   5 +
 client-py/README.md                                | 209 ++++++
 client-py/SessionExample.py                        | 177 +++++
 client-py/SessionTest.py                           | 243 +++++++
 client-py/iotdb/IoTDBContainer.py                  |  51 ++
 client-py/{src => }/iotdb/Session.py               | 408 ++++++++---
 client-py/{src => }/iotdb/__init__.py              |   1 -
 client-py/{src => }/iotdb/utils/Field.py           |  10 +-
 client-py/{src => }/iotdb/utils/IoTDBConstants.py  |   0
 client-py/{src => }/iotdb/utils/IoTDBRpcDataSet.py | 104 ++-
 client-py/{src => }/iotdb/utils/RowRecord.py       |   5 +-
 client-py/{src => }/iotdb/utils/SessionDataSet.py  | 118 +++-
 client-py/{src => }/iotdb/utils/Tablet.py          |  25 +-
 client-py/{src => }/iotdb/utils/__init__.py        |   1 -
 client-py/pom.xml                                  |  77 +--
 client-py/pypi/README.md                           |  73 --
 .../utils/IoTDBConstants.py => pyproject.toml}     |  61 +-
 client-py/readme.md                                |  80 ---
 client-py/{src/iotdb/__init__.py => release.sh}    |  22 +
 .../{src/iotdb/__init__.py => requirements.txt}    |   4 +
 .../iotdb/__init__.py => requirements_dev.txt}     |   9 +
 client-py/{pypi => }/setup.py                      |  18 +-
 client-py/src/SessionExample.py                    | 115 ---
 client-py/src/SessionTest.py                       | 158 -----
 client-py/{src/iotdb => tests}/__init__.py         |   1 -
 client-py/tests/test_dataframe.py                  |  62 ++
 cluster/pom.xml                                    |  17 +-
 .../resources/conf/iotdb-cluster.properties        |  90 ++-
 cluster/src/assembly/resources/sbin/add-node.sh    |  25 +-
 cluster/src/assembly/resources/sbin/start-node.bat |  48 +-
 cluster/src/assembly/resources/sbin/start-node.sh  |  39 +-
 .../java/org/apache/iotdb/cluster/ClientMain.java  |   4 +-
 .../java/org/apache/iotdb/cluster/ClusterMain.java | 115 +--
 .../apache/iotdb/cluster/RemoteTsFileResource.java |   5 +-
 .../iotdb/cluster/client/DataClientProvider.java   |   7 +-
 .../cluster/client/async/AsyncClientPool.java      |  44 +-
 .../cluster/client/async/AsyncDataClient.java      |   2 +-
 .../client/async/AsyncDataHeartbeatClient.java     |   2 +-
 .../cluster/client/async/AsyncMetaClient.java      |   2 +-
 .../client/async/AsyncMetaHeartbeatClient.java     |   2 +-
 .../cluster/client/sync/SyncClientAdaptor.java     |  17 +
 .../iotdb/cluster/client/sync/SyncClientPool.java  |  69 +-
 .../iotdb/cluster/client/sync/SyncDataClient.java  |  13 +-
 .../client/sync/SyncDataHeartbeatClient.java       |   2 +-
 .../iotdb/cluster/client/sync/SyncMetaClient.java  |  19 +-
 .../client/sync/SyncMetaHeartbeatClient.java       |   2 +-
 .../apache/iotdb/cluster/config/ClusterConfig.java |  89 ++-
 .../iotdb/cluster/config/ClusterConstant.java      |   2 -
 .../iotdb/cluster/config/ClusterDescriptor.java    | 170 ++---
 .../iotdb/cluster/coordinator/Coordinator.java     |  30 +-
 .../exception/BadSeedUrlFormatException.java       |   3 +-
 .../exception/CheckConsistencyException.java       |   4 +
 .../org/apache/iotdb/cluster/log/HardState.java    |  56 +-
 .../java/org/apache/iotdb/cluster/log/Log.java     |  10 +
 .../apache/iotdb/cluster/log/LogDispatcher.java    |   8 +-
 .../iotdb/cluster/log/catchup/CatchUpTask.java     |  48 +-
 .../iotdb/cluster/log/catchup/LogCatchUpTask.java  |   4 +-
 .../iotdb/cluster/log/logtypes/AddNodeLog.java     |   6 +-
 .../iotdb/cluster/log/logtypes/RemoveNodeLog.java  |   6 +-
 .../cluster/log/manage/CommittedEntryManager.java  |  40 ++
 .../iotdb/cluster/log/manage/RaftLogManager.java   |  37 +-
 .../serializable/SyncLogDequeSerializer.java       |   4 +-
 .../log/snapshot/PullSnapshotTaskDescriptor.java   |  18 +-
 .../apache/iotdb/cluster/metadata/CMManager.java   | 190 +++--
 .../apache/iotdb/cluster/metadata/MetaPuller.java  |  28 +-
 .../iotdb/cluster/partition/slot/SlotManager.java  |   6 +-
 .../cluster/partition/slot/SlotPartitionTable.java |   8 +-
 .../cluster/query/ClusterDataQueryExecutor.java    | 223 +++++-
 .../cluster/query/ClusterPhysicalGenerator.java    |  20 +-
 .../iotdb/cluster/query/ClusterPlanExecutor.java   | 133 +++-
 .../iotdb/cluster/query/LocalQueryExecutor.java    | 158 ++++-
 .../iotdb/cluster/query/RemoteQueryContext.java    |   4 +
 .../query/aggregate/ClusterAggregateExecutor.java  |   2 +-
 .../cluster/query/aggregate/ClusterAggregator.java |  14 +-
 .../cluster/query/fill/ClusterPreviousFill.java    |  14 +-
 .../groupby/ClusterGroupByVFilterDataSet.java      |   6 +-
 .../query/groupby/RemoteGroupByExecutor.java       |  27 +-
 .../query/last/ClusterLastQueryExecutor.java       |  14 +-
 .../cluster/query/reader/ClusterReaderFactory.java | 353 +++++++++-
 .../cluster/query/reader/ClusterTimeGenerator.java | 151 +++-
 .../iotdb/cluster/query/reader/DataSourceInfo.java |  12 +-
 .../iotdb/cluster/query/reader/EmptyReader.java    |   3 +-
 .../cluster/query/reader/MergedReaderByTime.java   |   8 +-
 .../reader/RemoteSeriesReaderByTimestamp.java      |  40 +-
 .../query/reader/mult/AbstractMultPointReader.java |  70 ++
 .../reader/mult/AssignPathManagedMergeReader.java} |  67 +-
 .../reader/mult/AssignPathPriorityMergeReader.java |  66 ++
 .../query/reader/mult/IMultBatchReader.java        |  18 +-
 .../cluster/query/reader/mult/MultBatchReader.java |  73 ++
 .../MultDataSourceInfo.java}                       | 126 ++--
 .../cluster/query/reader/mult/MultEmptyReader.java |  35 +-
 .../reader/mult/MultSeriesRawDataPointReader.java  |  55 ++
 .../query/reader/mult/RemoteMultSeriesReader.java  | 222 ++++++
 .../apache/iotdb/cluster/server/ClientServer.java  |  21 +-
 .../iotdb/cluster/server/DataClusterServer.java    |  84 ++-
 .../iotdb/cluster/server/MetaClusterServer.java    |  22 +-
 .../cluster/server/PullSnapshotHintService.java    |   9 +-
 .../apache/iotdb/cluster/server/RaftServer.java    |  14 +-
 .../caller/GetChildNodeNextLevelHandler.java       |  59 ++
 .../server/heartbeat/DataHeartbeatServer.java      |   4 +-
 .../cluster/server/heartbeat/HeartbeatServer.java  |   6 +-
 .../server/heartbeat/MetaHeartbeatServer.java      |  12 +-
 .../cluster/server/member/DataGroupMember.java     |   5 +-
 .../cluster/server/member/MetaGroupMember.java     |  77 ++-
 .../iotdb/cluster/server/member/RaftMember.java    | 223 ++++--
 .../iotdb/cluster/server/monitor/NodeReport.java   |   2 +-
 .../cluster/server/service/BaseAsyncService.java   |  22 +-
 .../cluster/server/service/BaseSyncService.java    |  38 +-
 .../cluster/server/service/DataAsyncService.java   | 129 +++-
 .../cluster/server/service/DataSyncService.java    | 141 ++--
 .../cluster/server/service/MetaSyncService.java    |   5 +-
 .../apache/iotdb/cluster/utils/ClusterNode.java    |  28 +-
 .../apache/iotdb/cluster/utils/ClusterUtils.java   |  26 +-
 .../iotdb/cluster/utils/NodeSerializeUtils.java    |  90 +++
 .../utils/nodetool/function/NodeToolCmd.java       |   3 +-
 .../cluster/client/DataClientProviderTest.java     | 156 ++++-
 .../cluster/client/async/AsyncClientPoolTest.java  |  37 +-
 .../cluster/client/async/AsyncDataClientTest.java  |  22 +-
 .../client/async/AsyncDataHeartbeatClientTest.java |  20 +-
 .../cluster/client/async/AsyncMetaClientTest.java  |  22 +-
 .../client/async/AsyncMetaHeartbeatClientTest.java |  22 +-
 .../cluster/client/sync/SyncClientAdaptorTest.java |   9 +
 .../cluster/client/sync/SyncClientPoolTest.java    |  17 +-
 .../cluster/client/sync/SyncDataClientTest.java    |  60 +-
 .../client/sync/SyncDataHeartbeatClientTest.java   |   6 +-
 .../cluster/client/sync/SyncMetaClientTest.java    |  52 +-
 .../client/sync/SyncMetaHeartbeatClientTest.java   |   6 +-
 .../cluster/common/TestAsyncClientFactory.java     |   2 +-
 .../iotdb/cluster/common/TestAsyncDataClient.java  |  48 +-
 .../cluster/common/TestManagedSeriesReader.java    |  23 +-
 .../cluster/common/TestPartitionedLogManager.java  |   5 +-
 .../org/apache/iotdb/cluster/common/TestUtils.java |   5 +-
 .../cluster/integration/BaseSingleNodeTest.java    |   7 +-
 .../apache/iotdb/cluster/log/HardStateTest.java    |   3 +-
 .../iotdb/cluster/log/LogDispatcherTest.java       |  10 +-
 .../cluster/log/applier/DataLogApplierTest.java    |   3 +-
 .../cluster/log/applier/MetaLogApplierTest.java    |   4 +-
 .../cluster/log/catchup/LogCatchUpTaskTest.java    |  22 +-
 .../log/catchup/SnapshotCatchUpTaskTest.java       |  44 +-
 .../cluster/log/logtypes/SerializeLogTest.java     |   4 +-
 .../cluster/log/manage/RaftLogManagerTest.java     |  35 +
 .../cluster/log/snapshot/DataSnapshotTest.java     |   8 +
 .../cluster/partition/SlotPartitionTableTest.java  |  25 +-
 .../apache/iotdb/cluster/query/BaseQueryTest.java  |   4 +-
 .../query/ClusterDataQueryExecutorTest.java        |  80 +++
 .../ClusterGroupByNoVFilterDataSetTest.java        |   3 +
 .../query/groupby/RemoteGroupByExecutorTest.java   |   4 +-
 .../query/manage/ClusterQueryManagerTest.java      |   2 +-
 .../query/reader/ClusterTimeGeneratorTest.java     |   2 +-
 .../reader/RemoteSeriesReaderByTimestampTest.java  |  68 +-
 .../mult/AssignPathManagedMergeReaderTest.java     | 190 +++++
 .../mult/MultSeriesRawDataPointReaderTest.java     |  67 ++
 .../reader/mult/RemoteMultSeriesReaderTest.java    | 286 ++++++++
 .../handlers/caller/HeartbeatHandlerTest.java      |   4 +-
 .../member/{MemberTest.java => BaseMember.java}    | 180 +----
 .../cluster/server/member/DataGroupMemberTest.java | 111 ++-
 .../cluster/server/member/MetaGroupMemberTest.java |  53 +-
 .../cluster/server/member/RaftMemberTest.java      | 245 +++++++
 .../org/apache/iotdb/cluster/utils/Constants.java  |  17 +-
 .../iotdb/cluster/utils/SerializeUtilTest.java     |  13 +
 .../resources/node1conf/iotdb-cluster.properties   |  20 +-
 .../resources/node1conf}/iotdb-engine.properties   |  17 +-
 .../resources/node2conf/iotdb-cluster.properties   |  20 +-
 .../resources/node2conf}/iotdb-engine.properties   |  17 +-
 .../resources/node3conf/iotdb-cluster.properties   |  20 +-
 .../resources/node3conf}/iotdb-engine.properties   |  17 +-
 code-coverage/pom.xml                              |   6 +
 .../tests/tools/importCsv/AbstractScript.java      |   4 +-
 .../tests/tools/importCsv/ExportCsvTestIT.java     |  36 +-
 .../tests/tools/importCsv/ImportCsvTestIT.java     |  79 ++-
 distribution/pom.xml                               |   2 +-
 distribution/src/assembly/all.xml                  |   2 +-
 distribution/src/assembly/cluster.xml              |   2 +-
 docker/ReadMe.md                                   |  50 +-
 .../src/main/Dockerfile-0.11.3                     |  23 +
 docker/src/main/Dockerfile-0.12.0-cluster          |  53 ++
 docker/src/main/Dockerfile-0.12.0-node             |  45 ++
 docs/Development/ContributeGuide.md                |  11 +
 docs/Download/README.md                            |  57 +-
 docs/SystemDesign/QueryEngine/QueryEngine.md       |   2 +-
 docs/SystemDesign/StorageEngine/WAL.md             |   6 +-
 docs/SystemDesign/TsFile/Format.md                 |   4 +-
 docs/UserGuide/API/Programming-Cpp-Native-API.md   | 248 +++++++
 docs/UserGuide/API/Programming-Go-Native-API.md    |  65 ++
 .../Programming-JDBC.md}                           |  29 +-
 .../Programming-Java-Native-API.md}                | 363 ++++------
 .../UserGuide/API/Programming-Python-Native-API.md | 207 ++++++
 .../Programming-TsFile-API.md}                     | 264 +++----
 .../Administration.md                              |   5 +-
 docs/UserGuide/Advanced-Features/Triggers.md       | 503 ++++++++++++++
 .../UDF-User-Defined-Function.md}                  |   6 +-
 .../Config Manual.md => Appendix/Config-Manual.md} |   4 +-
 .../SQL Reference.md => Appendix/SQL-Reference.md} |   4 +-
 .../Status Codes.md => Appendix/Status-Codes.md}   |   3 +-
 .../Command-Line-Interface.md}                     |  48 +-
 .../Client/Programming - Other Languages.md        |  72 --
 docs/UserGuide/Cluster/Cluster-Setup-Example.md    |  47 ++
 .../Cluster Setup.md => Cluster/Cluster-Setup.md}  |  72 +-
 .../Sync-Tool.md}                                  |  98 +--
 .../Programming-MQTT.md}                           |  55 +-
 .../Programming-Thrift.md                          | 157 +++++
 docs/UserGuide/Comparison/TSDB-Comparison.md       |   4 +-
 .../{Concept => Data-Concept}/Compression.md       |   4 +-
 .../Data-Model-and-Terminology.md}                 |   8 +-
 .../Data Type.md => Data-Concept/Data-Type.md}     |   9 +-
 .../{Concept => Data-Concept}/Encoding.md          |  14 +-
 docs/UserGuide/{Concept => Data-Concept}/SDT.md    |   4 +-
 .../UserGuide/Ecosystem Integration/Flink IoTDB.md | 213 ++++++
 .../Ecosystem Integration/Flink TsFile.md          | 181 +++++
 docs/UserGuide/Ecosystem Integration/Grafana.md    |  45 +-
 .../UserGuide/Ecosystem Integration/Hive TsFile.md |  45 +-
 .../Ecosystem Integration/MapReduce TsFile.md      |  31 +-
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |  36 +-
 .../Ecosystem Integration/Spark TsFile.md          |  51 +-
 .../Writing Data on HDFS.md                        |  24 +-
 .../Ecosystem Integration/Zeppelin-IoTDB.md        |  37 +-
 .../Frequently-asked-questions.md}                 |  31 +-
 .../Architecture.md                                |   2 +-
 .../{Overview => IoTDB-Introduction}/Features.md   |   2 +-
 .../Publication.md                                 |   4 +-
 .../{Overview => IoTDB-Introduction}/Scenario.md   |  18 +-
 .../What-is-IoTDB.md}                              |   0
 .../DDL-Data-Definition-Language.md}               | 288 ++++----
 .../DML-Data-Manipulation-Language.md}             |  28 +-
 .../Maintenance-Command.md}                        |  52 +-
 docs/UserGuide/Operation Manual/Triggers.md        | 100 ---
 .../{Architecture => QuickStart}/Files.md          |  18 +-
 .../{Get Started => QuickStart}/QuickStart.md      |  46 +-
 .../{Server => QuickStart}/ServerFileList.md       |  14 +-
 .../WayToGetIoTDB.md}                              |  77 ++-
 docs/UserGuide/Server/Download.md                  |  74 --
 docs/UserGuide/Server/Single Node Setup.md         |  38 -
 .../CSV Tool.md => System-Tools/CSV-Tool.md}       | 102 ++-
 .../JMX Tool.md => System-Tools/JMX-Tool.md}       |   0
 .../Load-External-Tsfile.md}                       |  14 +-
 .../MLogParser-Tool.md}                            |   7 +-
 .../Monitor-and-Log-Tools.md}                      |  31 +-
 .../{System Tools => System-Tools}/NodeTool.md     |  44 +-
 .../Performance-Tracing-Tool.md}                   |   4 +-
 .../Query-History-Visualization-Tool.md}           |   3 +-
 .../Watermark-Tool.md}                             |  25 +-
 docs/zh/Download/README.md                         |  55 +-
 docs/zh/SystemDesign/QueryEngine/QueryEngine.md    |   2 +-
 docs/zh/SystemDesign/StorageEngine/FileLists.md    |   2 +-
 docs/zh/SystemDesign/StorageEngine/WAL.md          |   7 +-
 docs/zh/SystemDesign/TsFile/Format.md              |   4 +-
 docs/zh/SystemDesign/TsFile/Read.md                |  10 +-
 .../zh/UserGuide/API/Programming-Cpp-Native-API.md | 242 +++++++
 docs/zh/UserGuide/API/Programming-Go-Native-API.md |  65 ++
 .../Programming-JDBC.md}                           |  26 +-
 .../UserGuide/API/Programming-Java-Native-API.md   | 249 +++++++
 .../UserGuide/API/Programming-Python-Native-API.md | 220 ++++++
 .../Programming-TsFile-API.md}                     | 483 +++++++------
 .../Administration.md                              |  50 +-
 docs/zh/UserGuide/Advanced-Features/Triggers.md    | 521 ++++++++++++++
 .../UDF-User-Defined-Function.md}                  |  61 +-
 .../Config Manual.md => Appendix/Config-Manual.md} | 332 ++++++---
 .../SQL Reference.md => Appendix/SQL-Reference.md} |  19 +-
 .../Status Codes.md => Appendix/Status-Codes.md}   |   7 +-
 .../Command-Line-Interface.md}                     |  64 +-
 .../UserGuide/Client/Programming - Native API.md   | 421 -----------
 .../Client/Programming - Other Languages.md        |  66 --
 docs/zh/UserGuide/Cluster/Cluster-Setup-Example.md |  46 ++
 .../Cluster Setup.md => Cluster/Cluster-Setup.md}  | 102 ++-
 .../Collaboration-of-Edge-and-Cloud/Sync-Tool.md   | 187 +++++
 .../Programming-MQTT.md}                           |  57 +-
 .../Programming-Thrift.md                          | 157 +++++
 .../{Concept => Data-Concept}/Compression.md       |   4 +-
 .../Data-Model-and-Terminology.md}                 |  23 +-
 .../Data Type.md => Data-Concept/Data-Type.md}     |   5 +-
 .../{Concept => Data-Concept}/Encoding.md          |  12 +-
 docs/zh/UserGuide/{Concept => Data-Concept}/SDT.md |   4 +-
 .../UserGuide/Ecosystem Integration/Flink IoTDB.md | 122 ++++
 .../Ecosystem Integration/Flink TsFile.md          | 179 +++++
 docs/zh/UserGuide/Ecosystem Integration/Grafana.md |  46 +-
 .../UserGuide/Ecosystem Integration/Hive TsFile.md |  37 +-
 .../Ecosystem Integration/MapReduce TsFile.md      | 203 +++---
 .../UserGuide/Ecosystem Integration/Spark IoTDB.md |  61 +-
 .../Ecosystem Integration/Spark TsFile.md          | 215 +++---
 .../Writing Data on HDFS.md                        |  22 +-
 .../Ecosystem Integration/Zeppelin-IoTDB.md        |  32 +-
 .../Frequently-asked-questions.md}                 |  33 +-
 .../Architecture.md                                |   6 +-
 .../{Overview => IoTDB-Introduction}/Features.md   |   3 +-
 .../Publication.md                                 |   6 +-
 .../{Overview => IoTDB-Introduction}/Scenario.md   |  22 +-
 .../What-is-IoTDB.md}                              |   4 +-
 .../DDL-Data-Definition-Language.md}               | 303 ++++----
 .../DML-Data-Manipulation-Language.md}             | 769 +++++++++------------
 .../Maintenance-Command.md}                        |  54 +-
 docs/zh/UserGuide/Operation Manual/Triggers.md     | 100 ---
 .../{Architecture => QuickStart}/Files.md          |  18 +-
 .../{Get Started => QuickStart}/QuickStart.md      | 100 +--
 .../{Server => QuickStart}/ServerFileList.md       |   8 +-
 .../WayToGetIoTDB.md}                              |  86 ++-
 docs/zh/UserGuide/Server/Download.md               |  76 --
 docs/zh/UserGuide/Server/Single Node Setup.md      |  39 --
 docs/zh/UserGuide/System Tools/Sync Tool.md        | 275 --------
 .../CSV Tool.md => System-Tools/CSV-Tool.md}       |  99 ++-
 .../JMX Tool.md => System-Tools/JMX-Tool.md}       |   0
 .../Load-External-Tsfile.md}                       |  24 +-
 .../MLogParser-Tool.md}                            |   7 +-
 .../Monitor-and-Log-Tools.md}                      |  76 +-
 .../{System Tools => System-Tools}/NodeTool.md     |  46 +-
 .../Performance-Tracing-Tool.md}                   |   4 +-
 .../Query-History-Visualization-Tool.md}           |   4 +-
 .../Watermark-Tool.md}                             |  40 +-
 example/client-cpp-example/README.md               |   2 +-
 example/client-cpp-example/src/SessionExample.cpp  | 329 +++++----
 .../org/apache/iotdb/flink/FlinkIoTDBSink.java     |   5 +-
 .../org/apache/iotdb/flink/FlinkIoTDBSource.java   |  94 +++
 .../main/java/org/apache/iotdb/SessionExample.java | 102 ++-
 .../java/org/apache/iotdb/tsfile/TsFileRead.java   |   1 +
 .../apache/iotdb/tsfile/TsFileSequenceRead.java    |   3 +-
 .../iotdb/tsfile/TsFileWriteWithTSRecord.java      |   1 -
 .../apache/iotdb/tsfile/TsFileWriteWithTablet.java |   2 +-
 example/udf/pom.xml                                |   8 +-
 .../java/org/apache/iotdb/flink/IoTDBSink.java     |  13 +-
 .../java/org/apache/iotdb/flink/IoTDBSource.java   | 100 +++
 .../apache/iotdb/flink/options/IoTDBOptions.java   |  70 ++
 .../IoTDBSinkOptions.java}                         |  51 +-
 .../iotdb/flink/options/IoTDBSourceOptions.java    |  51 ++
 .../flink/DefaultIoTSerializationSchemaTest.java   |   6 +-
 .../iotdb/flink/IoTDBSinkBatchInsertTest.java      |   5 +-
 .../iotdb/flink/IoTDBSinkBatchTimerTest.java       |   5 +-
 .../apache/iotdb/flink/IoTDBSinkInsertTest.java    |   5 +-
 grafana/pom.xml                                    |   4 +
 hive-connector/pom.xml                             |  12 +-
 jdbc/pom.xml                                       |   5 -
 .../main/java/org/apache/iotdb/jdbc/Config.java    |  12 +-
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |   4 +-
 .../apache/iotdb/jdbc/IoTDBConnectionParams.java   |  22 +-
 .../src/main/java/org/apache/iotdb/jdbc/Utils.java |  11 +-
 pom.xml                                            |  40 +-
 server/file-changelists/conf-changelist.md         |   7 +
 server/pom.xml                                     |  11 +
 .../resources/conf/iotdb-engine.properties         | 303 ++++----
 server/src/assembly/resources/conf/iotdb-env.bat   |   7 +-
 server/src/assembly/resources/conf/iotdb-env.sh    |  11 +-
 server/src/assembly/resources/conf/logback.xml     | 170 ++---
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |  26 +-
 .../iotdb/db/concurrent/IoTThreadFactory.java      |   3 +-
 .../org/apache/iotdb/db/concurrent/ThreadName.java |  43 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 109 ++-
 .../org/apache/iotdb/db/conf/IoTDBConstant.java    |  13 +-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  97 +--
 .../apache/iotdb/db/cost/statistic/Operation.java  |   2 +
 .../org/apache/iotdb/db/engine/StorageEngine.java  |   6 +-
 .../apache/iotdb/db/engine/cache/ChunkCache.java   |   6 +-
 .../db/engine/cache/TimeSeriesMetadataCache.java   |  15 +-
 .../db/engine/compaction/TsFileManagement.java     |  39 +-
 .../level/LevelCompactionTsFileManagement.java     |  98 ++-
 .../no/NoCompactionTsFileManagement.java           | 180 ++++-
 .../engine/compaction/utils/CompactionUtils.java   |  30 +-
 .../apache/iotdb/db/engine/flush/FlushManager.java |   5 +-
 .../db/engine/merge/manage/MergeResource.java      |  27 +
 .../iotdb/db/engine/merge/task/MergeFileTask.java  |  59 +-
 .../db/engine/merge/task/MergeMultiChunkTask.java  |   5 +-
 .../iotdb/db/engine/modification/Deletion.java     |  16 +
 .../engine/storagegroup/StorageGroupProcessor.java |  66 +-
 .../db/engine/storagegroup/TsFileProcessor.java    |  10 +
 .../db/engine/storagegroup/TsFileResource.java     | 169 ++++-
 .../storagegroup/timeindex/DeviceTimeIndex.java    |  59 +-
 .../storagegroup/timeindex/FileTimeIndex.java      |  40 +-
 .../engine/storagegroup/timeindex/ITimeIndex.java  |  37 +-
 .../iotdb/db/engine/trigger/api/Trigger.java       | 116 ++++
 .../db/engine/trigger/api/TriggerAttributes.java   |  98 +++
 .../db/engine/trigger/executor/TriggerEngine.java  | 114 +++
 .../trigger/{api => executor}/TriggerEvent.java    |  26 +-
 .../engine/trigger/executor/TriggerExecutor.java   | 242 +++++++
 .../engine/trigger/service/TriggerClassLoader.java |  55 ++
 .../trigger/service/TriggerClassLoaderManager.java |  94 +++
 .../trigger/service/TriggerLogReader.java}         |  30 +-
 .../engine/trigger/service/TriggerLogWriter.java   |  68 ++
 .../service/TriggerRegistrationInformation.java}   |  49 +-
 .../service/TriggerRegistrationService.java        | 447 ++++++++++++
 .../iotdb/db/engine/upgrade/UpgradeTask.java       |   2 +-
 .../TriggerExecutionException.java}                |  17 +-
 .../TriggerManagementException.java}               |  17 +-
 .../org/apache/iotdb/db/metadata/MManager.java     |  11 +-
 .../org/apache/iotdb/db/metadata/mnode/MNode.java  |  31 +
 .../iotdb/db/metadata/mnode/MeasurementMNode.java  |  11 +
 .../org/apache/iotdb/db/monitor/StatMonitor.java   |   2 +
 .../apache/iotdb/db/qp/executor/PlanExecutor.java  |  85 ++-
 .../org/apache/iotdb/db/qp/logical/Operator.java   |  21 +-
 .../db/qp/logical/sys/CreateTriggerOperator.java   |   2 +-
 .../db/qp/logical/sys/ShowTriggersOperator.java    |  12 -
 .../apache/iotdb/db/qp/physical/PhysicalPlan.java  |  69 +-
 .../iotdb/db/qp/physical/crud/AggregationPlan.java |  32 +
 .../iotdb/db/qp/physical/crud/FillQueryPlan.java   |   9 +
 .../iotdb/db/qp/physical/crud/GroupByTimePlan.java |   2 +
 .../db/qp/physical/crud/InsertMultiTabletPlan.java |  12 +
 .../physical/crud/InsertRowsOfOneDevicePlan.java   |   9 +
 .../iotdb/db/qp/physical/crud/InsertRowsPlan.java  |  13 +
 .../db/qp/physical/crud/InsertTabletPlan.java      |  26 +-
 .../iotdb/db/qp/physical/crud/QueryPlan.java       |  28 +-
 .../apache/iotdb/db/qp/physical/crud/UDTFPlan.java |   8 +
 .../qp/physical/sys/CreateMultiTimeSeriesPlan.java |  20 +
 .../db/qp/physical/sys/CreateTriggerPlan.java      |  96 ++-
 .../iotdb/db/qp/physical/sys/DropTriggerPlan.java  |  31 +-
 .../iotdb/db/qp/physical/sys/ShowTriggersPlan.java |  10 +-
 .../iotdb/db/qp/physical/sys/StartTriggerPlan.java |  31 +-
 .../iotdb/db/qp/physical/sys/StopTriggerPlan.java  |  31 +-
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    |  25 +-
 .../iotdb/db/qp/strategy/PhysicalGenerator.java    | 506 +++++++-------
 .../db/query/aggregation/AggregateResult.java      |   4 +
 .../db/query/aggregation/impl/AvgAggrResult.java   |  25 +-
 .../db/query/aggregation/impl/CountAggrResult.java |  18 +-
 .../aggregation/impl/FirstValueAggrResult.java     |  26 +-
 .../aggregation/impl/FirstValueDescAggrResult.java |  20 +-
 .../aggregation/impl/LastValueAggrResult.java      |  26 +-
 .../aggregation/impl/LastValueDescAggrResult.java  |  37 +-
 .../query/aggregation/impl/MaxTimeAggrResult.java  |  20 +-
 .../aggregation/impl/MaxTimeDescAggrResult.java    |  31 +-
 .../query/aggregation/impl/MaxValueAggrResult.java |  18 +-
 .../query/aggregation/impl/MinTimeAggrResult.java  |  24 +-
 .../aggregation/impl/MinTimeDescAggrResult.java    |  17 +-
 .../query/aggregation/impl/MinValueAggrResult.java |  18 +-
 .../db/query/aggregation/impl/SumAggrResult.java   |  15 +-
 .../iotdb/db/query/context/QueryContext.java       |  11 +
 .../db/query/control/QueryResourceManager.java     |   9 +
 .../iotdb/db/query/control/QueryTimeManager.java   |  16 +-
 .../iotdb/db/query/control/TracingManager.java     |  27 +-
 .../db/query/dataset/AlignByDeviceDataSet.java     |  11 +
 .../dataset/RawQueryDataSetWithValueFilter.java    | 172 +++--
 .../dataset/RawQueryDataSetWithoutValueFilter.java |  11 +
 .../db/query/dataset/ShowTimeSeriesResult.java     |   2 +-
 .../groupby/GroupByWithValueFilterDataSet.java     |   9 +-
 .../groupby/GroupByWithoutValueFilterDataSet.java  |   5 +-
 .../db/query/executor/AggregationExecutor.java     |  89 ++-
 .../iotdb/db/query/executor/LastQueryExecutor.java |  16 +
 .../iotdb/db/query/executor/QueryRouter.java       |  27 +-
 .../db/query/executor/RawDataQueryExecutor.java    |  34 +-
 .../iotdb/db/query/executor/UDTFQueryExecutor.java |   6 +-
 .../adapter/ByTimestampReaderAdapter.java          |  48 +-
 .../db/query/reader/chunk/DiskChunkLoader.java     |   9 +-
 .../reader/chunk/DiskChunkReaderByTimestamp.java   |  55 +-
 .../chunk/metadata/DiskChunkMetadataLoader.java    |  27 +-
 .../db/query/reader/series/IReaderByTimestamp.java |   2 +-
 .../reader/series/SeriesReaderByTimestamp.java     |  17 +-
 .../universal/CachedPriorityMergeReader.java       |   3 +-
 .../reader/universal/DescPriorityMergeReader.java  |   4 +-
 .../iotdb/db/query/reader/universal/Element.java   |  72 ++
 .../reader/universal/PriorityMergeReader.java      |  39 +-
 .../query/timegenerator/ServerTimeGenerator.java   |   5 +-
 .../apache/iotdb/db/query/udf/api/access/Row.java  |   7 +
 .../iotdb/db/query/udf/core/access/RowImpl.java    |   5 +
 .../row/ElasticSerializableRowRecordList.java      |  13 +-
 .../org/apache/iotdb/db/rescon/SystemInfo.java     |  79 ++-
 .../java/org/apache/iotdb/db/service/IoTDB.java    |  11 +-
 .../org/apache/iotdb/db/service/ServiceType.java   |   1 +
 .../org/apache/iotdb/db/service/TSServiceImpl.java | 423 +++++++++---
 .../iotdb/db/sync/sender/transfer/SyncClient.java  |   4 +-
 ...lineUpgradeTool.java => TsFileRewriteTool.java} | 246 +++----
 .../apache/iotdb/db/tools/TsFileSketchTool.java    |   6 +-
 .../db/tools/upgrade/TsFileOnlineUpgradeTool.java  | 262 +------
 .../org/apache/iotdb/db/utils/FileLoaderUtils.java |   3 +-
 .../org/apache/iotdb/db/utils/FilePathUtils.java   |   2 +-
 .../org/apache/iotdb/db/utils/SerializeUtils.java  |  44 --
 .../windowing/api/Evaluator.java}                  |  17 +-
 .../windowing/api/Window.java}                     |  64 +-
 .../windowing/configuration/Configuration.java}    |  21 +-
 .../SlidingSizeWindowConfiguration.java            |  61 ++
 .../SlidingTimeWindowConfiguration.java            |  61 ++
 .../windowing/exception/WindowingException.java}   |  16 +-
 .../SlidingSizeWindowEvaluationHandler.java        |  58 ++
 .../SlidingTimeWindowEvaluationHandler.java        |  78 +++
 .../handler/SlidingWindowEvaluationHandler.java    | 124 ++++
 .../windowing/runtime/WindowEvaluationTask.java}   |  25 +-
 .../runtime/WindowEvaluationTaskPoolManager.java   |  99 +++
 .../utils/windowing/window/EvictableBatchList.java | 173 +++++
 .../db/utils/windowing/window/WindowImpl.java      | 204 ++++++
 .../apache/iotdb/db/auth/AuthorityCheckerTest.java |  21 +-
 .../db/engine/compaction/CompactionChunkTest.java  |  12 +-
 .../compaction/LevelCompactionMergeTest.java       |  71 ++
 .../engine/compaction/LevelCompactionModsTest.java |  45 +-
 .../compaction/LevelCompactionMoreDataTest.java    |   6 +
 .../compaction/LevelCompactionRecoverTest.java     |  12 +
 .../db/engine/compaction/LevelCompactionTest.java  |  10 +-
 .../LevelCompactionTsFileManagementTest.java       |   8 +
 .../NoCompactionTsFileManagementTest.java          |   8 +
 .../engine/merge/MaxFileMergeFileSelectorTest.java |  53 +-
 .../iotdb/db/engine/merge/MergeOverLapTest.java    |   6 +
 .../iotdb/db/engine/merge/MergeTaskTest.java       |  56 ++
 .../apache/iotdb/db/engine/merge/MergeTest.java    |   8 +
 .../storagegroup/StorageGroupProcessorTest.java    |  28 +-
 .../iotdb/db/engine/storagegroup/TTLTest.java      |  12 +-
 .../db/engine/trigger/example/Accumulator.java     |  95 +++
 .../iotdb/db/engine/trigger/example/Counter.java   |  96 +++
 .../iotdb/db/integration/IOTDBGroupByIT.java       | 192 +----
 .../integration/IOTDBGroupByInnerIntervalIT.java   | 135 ++--
 .../iotdb/db/integration/IoTDBCheckConfigIT.java   |   3 +-
 .../db/integration/IoTDBEngineTimeGeneratorIT.java |  24 +-
 .../iotdb/db/integration/IoTDBExecuteBatchIT.java  | 197 ++++++
 .../iotdb/db/integration/IoTDBGroupByFillIT.java   |  97 ++-
 .../iotdb/db/integration/IoTDBGroupByMonthIT.java  | 180 +++++
 ...IoTDBLoadExternalTsfileWithTimePartitionIT.java | 192 +++++
 .../db/integration/IoTDBNewTsFileCompactionIT.java |   2 +-
 .../iotdb/db/integration/IoTDBQueryDemoIT.java     |   8 +-
 .../db/integration/IoTDBRemovePartitionIT.java     |  11 +
 .../db/integration/IoTDBTriggerExecutionIT.java    | 553 +++++++++++++++
 .../db/integration/IoTDBTriggerManagementIT.java   | 500 ++++++++++++++
 .../aggregation/IoTDBAggregationByLevelIT.java     |  21 +
 .../aggregation/IoTDBAggregationIT.java            | 137 ++--
 .../db/integration/auth/IoTDBAuthorizationIT.java  |  37 +
 .../apache/iotdb/db/metadata/mnode/MNodeTest.java  |  27 +
 .../iotdb/db/monitor/IoTDBStatMonitorTest.java     |   6 +-
 .../iotdb/db/qp/physical/PhysicalPlanTest.java     |   7 +-
 .../iotdb/db/query/control/TracingManagerTest.java |   3 +
 .../reader/series/SeriesReaderByTimestampTest.java |  12 +-
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |  12 +-
 .../apache/iotdb/db/utils/SerializeUtilsTest.java  |  13 -
 .../iotdb/db/utils/TsFileRewriteToolTest.java      | 273 ++++++++
 .../SlidingSizeWindowEvaluationHandlerTest.java    | 184 +++++
 .../SlidingTimeWindowEvaluationHandlerTest.java    | 226 ++++++
 server/src/test/resources/iotdb-engine.properties  |  36 +-
 server/src/test/resources/logback.xml              |   8 +-
 service-rpc/pom.xml                                |  11 +
 .../org/apache/iotdb/rpc/RedirectException.java    |   3 +-
 .../org/apache/iotdb/rpc/RpcTransportFactory.java  |  14 +-
 .../main/java/org/apache/iotdb/rpc/RpcUtils.java   |  10 +-
 .../rpc/TCompressedElasticFramedTransport.java     |  12 +-
 .../apache/iotdb/rpc/TElasticFramedTransport.java  |  71 +-
 .../iotdb/rpc/TSnappyElasticFramedTransport.java   |  21 +-
 .../rpc/TimeoutChangeableTFastFramedTransport.java |  13 +-
 session/pom.xml                                    |   9 +-
 .../java/org/apache/iotdb/session/Session.java     | 115 ++-
 .../apache/iotdb/session/SessionConnection.java    |  36 +-
 .../iotdb/session/IoTDBSessionComplexIT.java       |  55 ++
 site/pom.xml                                       |  92 +++
 site/src/main/.vuepress/config.js                  | 559 ++++++++++++---
 .../README.md                                      |   8 +-
 {antlr => thrift-cluster}/pom.xml                  |  34 +-
 {thrift => thrift-cluster}/rpc-changelist.md       |   0
 .../src/main/thrift/cluster.thrift                 |  50 +-
 .../README.md                                      |   8 +-
 {antlr => thrift-sync}/pom.xml                     |  34 +-
 {thrift => thrift-sync}/rpc-changelist.md          |   0
 .../src/main/thrift/sync.thrift                    |   0
 .../Shared Nothing Cluster.md => thrift/README.md  |   8 +-
 thrift/pom.xml                                     |  19 +
 thrift/src/main/thrift/rpc.thrift                  |   3 +
 .../iotdb/tsfile/common/conf/TSFileConfig.java     |   2 +-
 .../iotdb/tsfile/file/metadata/ChunkMetadata.java  |   4 +-
 .../tsfile/file/metadata/TimeseriesMetadata.java   |  25 +
 .../file/metadata/enums/CompressionType.java       |  24 +-
 .../file/metadata/enums/MetadataIndexNodeType.java |  17 +-
 .../tsfile/file/metadata/enums/TSDataType.java     |  21 +-
 .../tsfile/file/metadata/enums/TSEncoding.java     |  27 +-
 .../tsfile/fileSystem/fsFactory/FSFactory.java     |   8 +
 .../tsfile/fileSystem/fsFactory/HDFSFactory.java   |   5 +
 .../fileSystem/fsFactory/LocalFSFactory.java       |   6 +
 .../iotdb/tsfile/read/TsFileSequenceReader.java    |  17 +-
 .../iotdb/tsfile/read/filter/GroupByFilter.java    |  11 +-
 .../tsfile/read/filter/GroupByMonthFilter.java     | 176 +++++
 .../query/dataset/DataSetWithTimeGenerator.java    |   2 +-
 .../tsfile/read/query/dataset/QueryDataSet.java    |  53 ++
 .../read/query/timegenerator/TimeGenerator.java    |  52 +-
 .../read/query/timegenerator/node/AndNode.java     |  18 +-
 .../read/query/timegenerator/node/OrNode.java      |  42 +-
 .../iotdb/tsfile/read/reader/LocalTsFileInput.java |   1 +
 .../apache/iotdb/tsfile/write/schema/Schema.java   |   2 +-
 .../iotdb/tsfile/write/writer/TsFileIOWriter.java  |   4 +-
 ...easurementChunkMetadataListMapIteratorTest.java |  65 +-
 .../tsfile/read/filter/GroupByMonthFilterTest.java | 226 ++++++
 .../tsfile/read/reader/FakedTimeGenerator.java     |  15 +-
 .../write/writer/RestorableTsFileIOWriterTest.java |   5 +-
 .../zeppelin/iotdb/IoTDBInterpreterTest.java       |   2 +-
 586 files changed, 24320 insertions(+), 9446 deletions(-)
 create mode 100644 .github/workflows/client-go.yml
 create mode 100644 .github/workflows/greetings.yml
 create mode 100644 .gitmodules
 create mode 160000 client-go
 copy client-py/{src/iotdb/utils/__init__.py => .flake8} (72%)
 create mode 100644 client-py/.gitignore
 create mode 100644 client-py/README.md
 create mode 100644 client-py/SessionExample.py
 create mode 100644 client-py/SessionTest.py
 create mode 100644 client-py/iotdb/IoTDBContainer.py
 rename client-py/{src => }/iotdb/Session.py (63%)
 copy client-py/{src => }/iotdb/__init__.py (99%)
 rename client-py/{src => }/iotdb/utils/Field.py (96%)
 copy client-py/{src => }/iotdb/utils/IoTDBConstants.py (100%)
 rename client-py/{src => }/iotdb/utils/IoTDBRpcDataSet.py (75%)
 rename client-py/{src => }/iotdb/utils/RowRecord.py (95%)
 rename client-py/{src => }/iotdb/utils/SessionDataSet.py (53%)
 rename client-py/{src => }/iotdb/utils/Tablet.py (90%)
 copy client-py/{src => }/iotdb/utils/__init__.py (99%)
 delete mode 100644 client-py/pypi/README.md
 rename client-py/{src/iotdb/utils/IoTDBConstants.py => pyproject.toml} (61%)
 delete mode 100644 client-py/readme.md
 copy client-py/{src/iotdb/__init__.py => release.sh} (66%)
 mode change 100644 => 100755
 copy client-py/{src/iotdb/__init__.py => requirements.txt} (92%)
 copy client-py/{src/iotdb/__init__.py => requirements_dev.txt} (84%)
 rename client-py/{pypi => }/setup.py (82%)
 delete mode 100644 client-py/src/SessionExample.py
 delete mode 100644 client-py/src/SessionTest.py
 rename client-py/{src/iotdb => tests}/__init__.py (99%)
 create mode 100644 client-py/tests/test_dataframe.py
 create mode 100644 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/mult/AbstractMultPointReader.java
 copy 
cluster/src/{test/java/org/apache/iotdb/cluster/common/TestManagedSeriesReader.java
 => 
main/java/org/apache/iotdb/cluster/query/reader/mult/AssignPathManagedMergeReader.java}
 (52%)
 create mode 100644 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/mult/AssignPathPriorityMergeReader.java
 copy 
server/src/main/java/org/apache/iotdb/db/qp/physical/sys/ShowTriggersPlan.java 
=> 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/mult/IMultBatchReader.java
 (69%)
 create mode 100644 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/mult/MultBatchReader.java
 copy 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/{DataSourceInfo.java
 => mult/MultDataSourceInfo.java} (70%)
 copy 
server/src/main/java/org/apache/iotdb/db/query/reader/chunk/DiskChunkLoader.java
 => 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/mult/MultEmptyReader.java
 (58%)
 create mode 100644 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/mult/MultSeriesRawDataPointReader.java
 create mode 100644 
cluster/src/main/java/org/apache/iotdb/cluster/query/reader/mult/RemoteMultSeriesReader.java
 create mode 100644 
cluster/src/main/java/org/apache/iotdb/cluster/server/handlers/caller/GetChildNodeNextLevelHandler.java
 create mode 100644 
cluster/src/main/java/org/apache/iotdb/cluster/utils/NodeSerializeUtils.java
 create mode 100644 
cluster/src/test/java/org/apache/iotdb/cluster/query/reader/mult/AssignPathManagedMergeReaderTest.java
 create mode 100644 
cluster/src/test/java/org/apache/iotdb/cluster/query/reader/mult/MultSeriesRawDataPointReaderTest.java
 create mode 100644 
cluster/src/test/java/org/apache/iotdb/cluster/query/reader/mult/RemoteMultSeriesReaderTest.java
 rename 
cluster/src/test/java/org/apache/iotdb/cluster/server/member/{MemberTest.java 
=> BaseMember.java} (65%)
 create mode 100644 
cluster/src/test/java/org/apache/iotdb/cluster/server/member/RaftMemberTest.java
 copy 
server/src/main/java/org/apache/iotdb/db/engine/trigger/api/TriggerEvent.java 
=> cluster/src/test/java/org/apache/iotdb/cluster/utils/Constants.java (76%)
 copy client-py/src/iotdb/utils/__init__.py => 
cluster/src/test/resources/node1conf/iotdb-cluster.properties (59%)
 copy {server/src/test/resources => 
cluster/src/test/resources/node1conf}/iotdb-engine.properties (78%)
 copy client-py/src/iotdb/utils/__init__.py => 
cluster/src/test/resources/node2conf/iotdb-cluster.properties (59%)
 copy {server/src/test/resources => 
cluster/src/test/resources/node2conf}/iotdb-engine.properties (78%)
 copy client-py/src/iotdb/utils/__init__.py => 
cluster/src/test/resources/node3conf/iotdb-cluster.properties (59%)
 copy {server/src/test/resources => 
cluster/src/test/resources/node3conf}/iotdb-engine.properties (78%)
 rename client-py/src/iotdb/utils/__init__.py => 
docker/src/main/Dockerfile-0.11.3 (51%)
 create mode 100644 docker/src/main/Dockerfile-0.12.0-cluster
 create mode 100644 docker/src/main/Dockerfile-0.12.0-node
 create mode 100644 docs/UserGuide/API/Programming-Cpp-Native-API.md
 create mode 100644 docs/UserGuide/API/Programming-Go-Native-API.md
 rename docs/UserGuide/{Client/Programming - JDBC.md => 
API/Programming-JDBC.md} (95%)
 rename docs/UserGuide/{Client/Programming - Native API.md => 
API/Programming-Java-Native-API.md} (58%)
 create mode 100644 docs/UserGuide/API/Programming-Python-Native-API.md
 rename docs/UserGuide/{Client/Programming - TsFile API.md => 
API/Programming-TsFile-API.md} (80%)
 rename docs/UserGuide/{Operation Manual => 
Administration-Management}/Administration.md (96%)
 create mode 100644 docs/UserGuide/Advanced-Features/Triggers.md
 rename docs/UserGuide/{Operation Manual/UDF User Defined Function.md => 
Advanced-Features/UDF-User-Defined-Function.md} (99%)
 rename docs/UserGuide/{Server/Config Manual.md => Appendix/Config-Manual.md} 
(99%)
 rename docs/UserGuide/{Operation Manual/SQL Reference.md => 
Appendix/SQL-Reference.md} (99%)
 rename docs/UserGuide/{Client/Status Codes.md => Appendix/Status-Codes.md} 
(99%)
 rename docs/UserGuide/{Client/Command Line Interface.md => 
CLI/Command-Line-Interface.md} (89%)
 delete mode 100644 docs/UserGuide/Client/Programming - Other Languages.md
 create mode 100644 docs/UserGuide/Cluster/Cluster-Setup-Example.md
 rename docs/UserGuide/{Server/Cluster Setup.md => Cluster/Cluster-Setup.md} 
(67%)
 rename docs/UserGuide/{System Tools/Sync Tool.md => 
Collaboration-of-Edge-and-Cloud/Sync-Tool.md} (77%)
 rename docs/UserGuide/{Client/Programming - MQTT.md => 
Communication-Service-Protocol/Programming-MQTT.md} (79%)
 create mode 100644 
docs/UserGuide/Communication-Service-Protocol/Programming-Thrift.md
 rename docs/UserGuide/{Concept => Data-Concept}/Compression.md (96%)
 rename docs/UserGuide/{Concept/Data Model and Terminology.md => 
Data-Concept/Data-Model-and-Terminology.md} (93%)
 rename docs/UserGuide/{Concept/Data Type.md => Data-Concept/Data-Type.md} (74%)
 rename docs/UserGuide/{Concept => Data-Concept}/Encoding.md (82%)
 rename docs/UserGuide/{Concept => Data-Concept}/SDT.md (98%)
 create mode 100644 docs/UserGuide/Ecosystem Integration/Flink IoTDB.md
 create mode 100644 docs/UserGuide/Ecosystem Integration/Flink TsFile.md
 rename docs/UserGuide/{Architecture => Ecosystem Integration}/Writing Data on 
HDFS.md (87%)
 rename docs/UserGuide/{Get Started/Frequently asked questions.md => 
FAQ/Frequently-asked-questions.md} (83%)
 rename docs/UserGuide/{Overview => IoTDB-Introduction}/Architecture.md (99%)
 rename docs/UserGuide/{Overview => IoTDB-Introduction}/Features.md (99%)
 rename docs/UserGuide/{Get Started => IoTDB-Introduction}/Publication.md (97%)
 rename docs/UserGuide/{Overview => IoTDB-Introduction}/Scenario.md (94%)
 rename docs/UserGuide/{Overview/What is IoTDB.md => 
IoTDB-Introduction/What-is-IoTDB.md} (100%)
 rename docs/UserGuide/{Operation Manual/DDL Data Definition Language.md => 
IoTDB-SQL-Language/DDL-Data-Definition-Language.md} (89%)
 rename docs/UserGuide/{Operation Manual/DML Data Manipulation Language.md => 
IoTDB-SQL-Language/DML-Data-Manipulation-Language.md} (97%)
 rename docs/UserGuide/{Operation Manual/Kill Query.md => 
IoTDB-SQL-Language/Maintenance-Command.md} (65%)
 delete mode 100644 docs/UserGuide/Operation Manual/Triggers.md
 rename docs/UserGuide/{Architecture => QuickStart}/Files.md (82%)
 rename docs/UserGuide/{Get Started => QuickStart}/QuickStart.md (90%)
 rename docs/UserGuide/{Server => QuickStart}/ServerFileList.md (95%)
 rename docs/UserGuide/{Server/Docker Image.md => QuickStart/WayToGetIoTDB.md} 
(56%)
 delete mode 100644 docs/UserGuide/Server/Download.md
 delete mode 100644 docs/UserGuide/Server/Single Node Setup.md
 rename docs/UserGuide/{System Tools/CSV Tool.md => System-Tools/CSV-Tool.md} 
(50%)
 rename docs/UserGuide/{System Tools/JMX Tool.md => System-Tools/JMX-Tool.md} 
(100%)
 rename docs/UserGuide/{System Tools/Load External Tsfile.md => 
System-Tools/Load-External-Tsfile.md} (95%)
 rename docs/UserGuide/{System Tools/MLogParser Tool.md => 
System-Tools/MLogParser-Tool.md} (97%)
 rename docs/UserGuide/{System Tools/Monitor and Log Tools.md => 
System-Tools/Monitor-and-Log-Tools.md} (94%)
 rename docs/UserGuide/{System Tools => System-Tools}/NodeTool.md (86%)
 rename docs/UserGuide/{System Tools/Performance Tracing Tool.md => 
System-Tools/Performance-Tracing-Tool.md} (98%)
 rename docs/UserGuide/{System Tools/Query History Visualization Tool.md => 
System-Tools/Query-History-Visualization-Tool.md} (97%)
 rename docs/UserGuide/{System Tools/Watermark Tool.md => 
System-Tools/Watermark-Tool.md} (96%)
 create mode 100644 docs/zh/UserGuide/API/Programming-Cpp-Native-API.md
 create mode 100644 docs/zh/UserGuide/API/Programming-Go-Native-API.md
 rename docs/zh/UserGuide/{Client/Programming - JDBC.md => 
API/Programming-JDBC.md} (95%)
 create mode 100644 docs/zh/UserGuide/API/Programming-Java-Native-API.md
 create mode 100644 docs/zh/UserGuide/API/Programming-Python-Native-API.md
 rename docs/zh/UserGuide/{Client/Programming - TsFile API.md => 
API/Programming-TsFile-API.md} (55%)
 rename docs/zh/UserGuide/{Operation Manual => 
Administration-Management}/Administration.md (82%)
 create mode 100644 docs/zh/UserGuide/Advanced-Features/Triggers.md
 rename docs/zh/UserGuide/{Operation Manual/UDF User Defined Function.md => 
Advanced-Features/UDF-User-Defined-Function.md} (93%)
 rename docs/zh/UserGuide/{Server/Config Manual.md => 
Appendix/Config-Manual.md} (69%)
 rename docs/zh/UserGuide/{Operation Manual/SQL Reference.md => 
Appendix/SQL-Reference.md} (99%)
 rename docs/zh/UserGuide/{Client/Status Codes.md => Appendix/Status-Codes.md} 
(95%)
 rename docs/zh/UserGuide/{Client/Command Line Interface.md => 
CLI/Command-Line-Interface.md} (82%)
 delete mode 100644 docs/zh/UserGuide/Client/Programming - Native API.md
 delete mode 100644 docs/zh/UserGuide/Client/Programming - Other Languages.md
 create mode 100644 docs/zh/UserGuide/Cluster/Cluster-Setup-Example.md
 rename docs/zh/UserGuide/{Server/Cluster Setup.md => Cluster/Cluster-Setup.md} 
(61%)
 create mode 100644 
docs/zh/UserGuide/Collaboration-of-Edge-and-Cloud/Sync-Tool.md
 rename docs/zh/UserGuide/{Client/Programming - MQTT.md => 
Communication-Service-Protocol/Programming-MQTT.md} (79%)
 create mode 100644 
docs/zh/UserGuide/Communication-Service-Protocol/Programming-Thrift.md
 rename docs/zh/UserGuide/{Concept => Data-Concept}/Compression.md (93%)
 rename docs/zh/UserGuide/{Concept/Data Model and Terminology.md => 
Data-Concept/Data-Model-and-Terminology.md} (88%)
 rename docs/zh/UserGuide/{Concept/Data Type.md => Data-Concept/Data-Type.md} 
(78%)
 rename docs/zh/UserGuide/{Concept => Data-Concept}/Encoding.md (86%)
 rename docs/zh/UserGuide/{Concept => Data-Concept}/SDT.md (97%)
 create mode 100644 docs/zh/UserGuide/Ecosystem Integration/Flink IoTDB.md
 create mode 100644 docs/zh/UserGuide/Ecosystem Integration/Flink TsFile.md
 rename docs/zh/UserGuide/{Architecture => Ecosystem Integration}/Writing Data 
on HDFS.md (88%)
 rename docs/zh/UserGuide/{Get Started/Frequently asked questions.md => 
FAQ/Frequently-asked-questions.md} (81%)
 rename docs/zh/UserGuide/{Overview => IoTDB-Introduction}/Architecture.md (88%)
 rename docs/zh/UserGuide/{Overview => IoTDB-Introduction}/Features.md (98%)
 rename docs/zh/UserGuide/{Get Started => IoTDB-Introduction}/Publication.md 
(96%)
 rename docs/zh/UserGuide/{Overview => IoTDB-Introduction}/Scenario.md (93%)
 rename docs/zh/UserGuide/{Overview/What is IoTDB.md => 
IoTDB-Introduction/What-is-IoTDB.md} (96%)
 rename docs/zh/UserGuide/{Operation Manual/DDL Data Definition Language.md => 
IoTDB-SQL-Language/DDL-Data-Definition-Language.md} (87%)
 rename docs/zh/UserGuide/{Operation Manual/DML Data Manipulation Language.md 
=> IoTDB-SQL-Language/DML-Data-Manipulation-Language.md} (89%)
 rename docs/zh/UserGuide/{Operation Manual/Kill Query.md => 
IoTDB-SQL-Language/Maintenance-Command.md} (62%)
 delete mode 100644 docs/zh/UserGuide/Operation Manual/Triggers.md
 rename docs/zh/UserGuide/{Architecture => QuickStart}/Files.md (84%)
 rename docs/zh/UserGuide/{Get Started => QuickStart}/QuickStart.md (78%)
 rename docs/zh/UserGuide/{Server => QuickStart}/ServerFileList.md (95%)
 rename docs/zh/UserGuide/{Server/Docker Image.md => 
QuickStart/WayToGetIoTDB.md} (56%)
 delete mode 100644 docs/zh/UserGuide/Server/Download.md
 delete mode 100644 docs/zh/UserGuide/Server/Single Node Setup.md
 delete mode 100644 docs/zh/UserGuide/System Tools/Sync Tool.md
 rename docs/zh/UserGuide/{System Tools/CSV Tool.md => 
System-Tools/CSV-Tool.md} (52%)
 rename docs/zh/UserGuide/{System Tools/JMX Tool.md => 
System-Tools/JMX-Tool.md} (100%)
 rename docs/zh/UserGuide/{System Tools/Load External Tsfile.md => 
System-Tools/Load-External-Tsfile.md} (89%)
 rename docs/zh/UserGuide/{System Tools/MLogParser Tool.md => 
System-Tools/MLogParser-Tool.md} (96%)
 rename docs/zh/UserGuide/{System Tools/Monitor and Log Tools.md => 
System-Tools/Monitor-and-Log-Tools.md} (85%)
 rename docs/zh/UserGuide/{System Tools => System-Tools}/NodeTool.md (82%)
 rename docs/zh/UserGuide/{System Tools/Performance Tracing Tool.md => 
System-Tools/Performance-Tracing-Tool.md} (98%)
 rename docs/zh/UserGuide/{System Tools/Query History Visualization Tool.md => 
System-Tools/Query-History-Visualization-Tool.md} (96%)
 rename docs/zh/UserGuide/{System Tools/Watermark Tool.md => 
System-Tools/Watermark-Tool.md} (93%)
 create mode 100644 
example/flink/src/main/java/org/apache/iotdb/flink/FlinkIoTDBSource.java
 create mode 100644 
flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/IoTDBSource.java
 create mode 100644 
flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/options/IoTDBOptions.java
 rename 
flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/{IoTDBOptions.java 
=> options/IoTDBSinkOptions.java} (79%)
 create mode 100644 
flink-iotdb-connector/src/main/java/org/apache/iotdb/flink/options/IoTDBSourceOptions.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/api/Trigger.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/api/TriggerAttributes.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/executor/TriggerEngine.java
 copy server/src/main/java/org/apache/iotdb/db/engine/trigger/{api => 
executor}/TriggerEvent.java (61%)
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/executor/TriggerExecutor.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerClassLoader.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerClassLoaderManager.java
 copy 
server/src/main/java/org/apache/iotdb/db/{qp/physical/sys/StopTriggerPlan.java 
=> engine/trigger/service/TriggerLogReader.java} (60%)
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerLogWriter.java
 copy 
server/src/main/java/org/apache/iotdb/db/{qp/physical/sys/CreateTriggerPlan.java
 => engine/trigger/service/TriggerRegistrationInformation.java} (61%)
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerRegistrationService.java
 copy 
server/src/main/java/org/apache/iotdb/db/{engine/trigger/api/TriggerEvent.java 
=> exception/TriggerExecutionException.java} (73%)
 copy 
server/src/main/java/org/apache/iotdb/db/{engine/trigger/api/TriggerEvent.java 
=> exception/TriggerManagementException.java} (73%)
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/query/reader/universal/Element.java
 copy 
server/src/main/java/org/apache/iotdb/db/tools/{upgrade/TsFileOnlineUpgradeTool.java
 => TsFileRewriteTool.java} (70%)
 copy 
server/src/main/java/org/apache/iotdb/db/{engine/trigger/api/TriggerEvent.java 
=> utils/windowing/api/Evaluator.java} (74%)
 copy 
server/src/main/java/org/apache/iotdb/db/{qp/physical/crud/FillQueryPlan.java 
=> utils/windowing/api/Window.java} (51%)
 copy 
server/src/main/java/org/apache/iotdb/db/{qp/logical/sys/ShowTriggersOperator.java
 => utils/windowing/configuration/Configuration.java} (64%)
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/configuration/SlidingSizeWindowConfiguration.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/configuration/SlidingTimeWindowConfiguration.java
 rename 
server/src/main/java/org/apache/iotdb/db/{engine/trigger/api/TriggerEvent.java 
=> utils/windowing/exception/WindowingException.java} (75%)
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/handler/SlidingSizeWindowEvaluationHandler.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/handler/SlidingTimeWindowEvaluationHandler.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/handler/SlidingWindowEvaluationHandler.java
 copy 
server/src/main/java/org/apache/iotdb/db/{qp/physical/sys/ShowTriggersPlan.java 
=> utils/windowing/runtime/WindowEvaluationTask.java} (57%)
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/runtime/WindowEvaluationTaskPoolManager.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/window/EvictableBatchList.java
 create mode 100644 
server/src/main/java/org/apache/iotdb/db/utils/windowing/window/WindowImpl.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/engine/trigger/example/Accumulator.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/engine/trigger/example/Counter.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/integration/IoTDBExecuteBatchIT.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/integration/IoTDBGroupByMonthIT.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/integration/IoTDBLoadExternalTsfileWithTimePartitionIT.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/integration/IoTDBTriggerExecutionIT.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/integration/IoTDBTriggerManagementIT.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/utils/TsFileRewriteToolTest.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/utils/windowing/SlidingSizeWindowEvaluationHandlerTest.java
 create mode 100644 
server/src/test/java/org/apache/iotdb/db/utils/windowing/SlidingTimeWindowEvaluationHandlerTest.java
 rename docs/UserGuide/Architecture/Shared Nothing Cluster.md => 
thrift-cluster/README.md (85%)
 copy {antlr => thrift-cluster}/pom.xml (65%)
 copy {thrift => thrift-cluster}/rpc-changelist.md (100%)
 rename {thrift => thrift-cluster}/src/main/thrift/cluster.thrift (89%)
 copy docs/zh/UserGuide/Architecture/Shared Nothing Cluster.md => 
thrift-sync/README.md (90%)
 copy {antlr => thrift-sync}/pom.xml (65%)
 copy {thrift => thrift-sync}/rpc-changelist.md (100%)
 rename {thrift => thrift-sync}/src/main/thrift/sync.thrift (100%)
 rename docs/zh/UserGuide/Architecture/Shared Nothing Cluster.md => 
thrift/README.md (91%)
 create mode 100644 
tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/GroupByMonthFilter.java
 create mode 100644 
tsfile/src/test/java/org/apache/iotdb/tsfile/read/filter/GroupByMonthFilterTest.java

Reply via email to