You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by hu...@apache.org on 2022/11/21 08:50:41 UTC
[iotdb] branch ml/windowSet updated (0ffeb6c953 -> 67c4adafd9)
This is an automated email from the ASF dual-hosted git repository.
hui pushed a change to branch ml/windowSet
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 0ffeb6c953 fix bug
add a3df3a1b14 Rename time_partition to time_partition_interval_for_storage in system.properties file (#7810)
add c034d4cbce [IOTDB-4142] Add delete generated file logic in pom of antlr (#7820)
add 1b1d9bffad Unify thread number configurations to thread_count && Fix clusterIT NPE (#7817)
add 773c963a15 [IOTDB-4806] Add size limit of UDF jar when create UDF on ConfigNode
add b023bb390c [IOTDB-4744] Fix schema register validation bug (#7816)
add a12f66885e fix ConfigNodeSnapshotIT
add 0460a054a1 fix client bug during deactivate template (#7833)
add 07bdbddf16 [IOTDB-4810] Fix print-tsfile-sketch.bat bug when reading measurementID containing Chinese (#7831)
add 952ffcf87d [IOTDB-4527] [IOTDB-4748] Make IoTDB-SQL syntax more flexible (#7806)
add 6e089fb200 Add docs for udf accuracy (#7824)
add b8a20c4078 Change log level of some messages from INFO to DEBUG (#7834)
add 521f9b5f8e [IOTDB-4738]TsFile damaged after writing empty value pages (#7827)
add 60133208c7 Bump actions/first-interaction from 1.1.0 to 1.1.1 (#7836)
add bc0e88b878 [IOTDB-4695] GROUP LEVEL query de-duplicates result columns unexpected (#7736)
add 6485242274 fix doc typo (#7850)
add cfe0fcfa07 Transfer IoTDBQueryWithRecreatedTimeseriesIT (#7851)
add 36c32c7347 Modify default path of iotdb metric reporter (#7819)
add 954a33f9e1 Rename StandAloneConsensus to OneCopyConsensus (#7832)
add 27c0d99eb2 Bump jetty.version from 9.4.48.v20220622 to 9.4.49.v20220914 (#7837)
add 3ee59e33cb Bump reactor-netty-http from 1.0.4 to 1.0.24 (#7838)
add 426d9344a1 remove (#7856)
add 4efeabeb21 [IOTDB-4791] Optimize the endFile in `TsFileIOWriter` (#7826)
add 3904afce17 [IOTDB-4822]Migrate Query tests to the new IT framework
add 933d51bf04 Fix conflicts in path constructor (#7859)
add d7b2fc48ac Change log level (#7861)
add 520467804c Update IoTDBSessionAlignedInsertIT.java (#7857)
add 3ab613f854 [IOTDB-3149] There is a difference between adding ** path and without a path to list user privileges (#7808)
add 2407a5ae65 [IOTDB-4230] add -p pid, -v version feature into start-server.sh (#7802)
add 267ab13524 Fix isBlocked bug of schema query (#7862)
add 2d9dd5be83 [IOTDB-4814] Using 1C1D as the default mode in integration test (#7855)
add 388c988eb4 [IOTDB-4230]fix start-cli.sh does not support -e (#7866)
add b419918d50 Change log level (#7868)
add 09e256656f Change to Debug level (#7871)
add 6823e6ec57 Add debug level judgement firstly (#7872)
add ff5b62f113 init (#7863)
add b73f8d07a2 Rename iotdb-engine.properties to iotdb-datanode.properties in UTs (#7869)
add dbfacd9c1c [IOTDB-4616] Add conf for ConfigNode OneCopy protocol (#7815)
add 37a0423f24 Hide all SchemaFile options in config file (#7867)
add 78a6b10226 [IOTDB-4801] rewrite UT PipeDataTest & BufferedPipeDataQueueTest
add 71c55e9abd Complete document of Data Write chapter and add ways of loading (#7876)
add 2c1b4e93ce Rename OneCopyConsensus to SimpleConsensus (#7882)
add 695dd65fc7 [IOTDB-3773] [IOTDB-4831] Optimize the rpc call numbers in query processing & make query cost time print more accurate (#7875)
add bc96c312dd Rename and simplify cluster IT actions (#7873)
add 9d0a312585 [IOTDB-4828] Implement TestOnly RPC interface setDataNodeStatus (#7877)
add 5874879e54 [IOTDB-4824] Fix error when insert a null value into a non-existed timeseries (#7884)
add 0c34ee1d9c add: define a constant instead load manager metrics. (#7835)
add 3badb017a9 [IOTDB-4813] Update the doc of metric module and grafana dashboard (#7883)
add 5a448c6e21 [IOTDB-4842] Fix type infer error when insert a large number (#7887)
add ae83e89676 [IOTDB-4616] Support snapshot serialization and deserialization for confignode standalone mode (#7874)
add 617fd5ad99 Upgrade github action version (#7890)
add 9663127db1 [IOTDB-4821]Move settleIT (#7853)
add f857667c9d [IOTDB-4597] add option to set query timeout in Cli
add a9858c9e2c Disable compiling library-udf by default when package distribution (#7896)
add 876564ddc1 [IOTDB-4778][IOTDB-4031][IOTDB-4764][IOTDB-4514] restServer module adaptation and optimization (#7897)
add 31f8eeec26 Bump caffeine from 2.9.1 to 2.9.3 (#7615)
add 1dd2e47c59 [IOTDB-4827][IOTDB-4840] Adaptation and fix mlog logic for for cluster template (#7885)
add b0f68c5801 [IOTDB-4800] [Rewrite UT] Rewrite some UT in compaction module
add 2c8f898988 [IOTDB-4826] Move some IT to integration-test (#7891)
add 37a40629c5 Fix shell scripts in tools and change -b to -d (#7905)
add 62edbd431a [IOTDB-4769] When modifying an alias, you need to add back quotes when the alias is a special character. (#7745)
add 2ef642275c Adjusted location of trigger section, added an example of REST API (#7906)
add 8d0c685b07 Improve query performance (#7894)
add b135ebdeca [IOTDB-4848] fix Bug: TimeSeries cannot be used in logical operator
add 5dd8d88103 Bump reload4j from 1.2.19 to 1.2.22 (#7892)
add f58cc6c223 Add a function quantile in UDF library (#7912)
add abbb45b891 Adjust configuration files (#7909)
add 96c860f876 [IOTDB-4807] Check nodes' status at the INVALIDATE_CACHE state (#7895)
add 95fa01f4fe Update client-go commit to fix CI
add 523e82a437 Fixed the bugs of shell (#7910)
add 24d99ef5d3 [IOTDB-4829] Let NoMoreTsBlockEvent RPC is called in async way (#7911)
add 1b1c57b6d8 [IOTDB-4857] Fix the problem when remove-datanode for ratis 1 replica (#7917)
add 0a9259f489 [IOTDB-4861] Show DataNodes' Internal Address:Port when executing show cluster (#7920)
add 2f9123bc00 [IOTDB-4846][IOTDB-4053] Fix docs and error msg (#7919)
add c8b50b8938 use cached thread pool to accelerate short-lived asynchronous tasks (#7870)
add 3734242d57 [IOTDB-4632] Fix Ratis time out when registering timeseries with each request taking huge measurements (#7913)
add 3e86379d82 [IOTDB-4681] speed up mpp load (#7725)
add cb74d4983d [IOTDB-4673]Removes the space character from both the start and the end of the parameter value (#7921)
add 1f8085c65d [IOTDB-4768] Balancing cluster RegionGroup leader distribution by MinimumCostFlow algorithm (#7774)
add c17c0479ef [IOTDB-4866] Fix schema tree bug when append nested device (#7925)
add f67a8c28d8 Chapter-adjustment (#7922)
add 6abecabfad fix the NPE when addPeer to a MultiLeader Group with 1 replic (#7927)
add bbc910b087 [IOTDB-4868] Drop trigger should fail when trigger.OnDrop throws an exception (#7928)
add 91d475c9b8 Add class which are inspired by Trino into LICENSE (#7926)
add 14cd9c4666 [IOTDB-4871] Only call restore method for stateful trigger
add 7e16003793 Rollback modification of FrangmentInstanceDispatherImpl.dispatchWriteSync (#7933)
add cec66b62f5 Use CAS way to reserve memory (#7939)
add ebad1dd5bf Grafana plugin code optimization (#7934)
add c29f46ac03 Change initBeforeClass to initBeforeTest (#7938)
add 9c271753fd fix: submodule url (#7940)
add fe0fa38d8a [IOTDB-4880] Fix memory leak in query (#7937)
add f4e73491f1 cleanup spotless workaround code and doc (#7942)
add ff2541bf6b [IOTDB-4865] Cluster tool — show cluster details (#7935)
add 939bc592aa Remove old storage engine code and refactor UTs (#7932)
add 87a416e6d2 [IOTDB-4666]Get the devices on one leaf node at a time while compacting (#7646)
add 9ac112433e [IOTDB-4576]Add NULL Operand and modify operations about it & Use False if the series in the predicate does not exist (#7924)
add 072835c94a [IOTDB-4819] Record concrete failure info in FI State and pass it to client
add 2c5f012540 [IOTDB-4745] Add ADD_NEW_NODE state for ConfigNodeProcedure (#7743)
add c04d3fa9cc [IOTDB-4835] Fix InnerSpaceCompaction may be blocked (#7901)
add 887e49fb2b optimize transfer leader implementation (#7923)
add b22ed4b4ad [IOTDB-4811]Fix snapshot file name error (#7900)
add 05633d6e8c [IOTDB-4894] Fix bug that TsFileSketchTool prints only the first page info when there are multiple pages in a chunk (#7955)
add a5d6e97259 [IOTDB-4726]show cluster return with msg: 500 null (#7952)
add 9f9975eac5 [IOTDB-4876] Fix PathPatternTree missing information on subpaths (#7943)
add 7bc44b5db6 [IOTDB-4753] Error serialized data size in TsFileData (#7953)
add fa4613221a Bump swagger-jersey2-jaxrs from 1.5.18 to 1.5.24 (#7893)
add 43cc564aa5 [IOTDB-4558] Use insertRowsOfOneDevice to execute insert multi rows sql statement (#7918)
add 1bd98662c2 [IOTDB-4887] Tidy the UDF and Trigger folders (#7945)
add c1dafdd072 [IOTDB-4851] Perfect ChangeLeader method in RegionMigrateProcedure (#7948)
add 487b3edc16 [IOTDB-4784] Control total memory for enabling time partition for storage engine (#7792)
add 18fc3f391e [IOTDB-4771]BufferedPipeDataQueueTest.testOfferWhileTakingWithDiscontinuousSerialNumber fail (#7954)
add 6a85f6c60c [IOTDB-4838] Adapt SchemaRegionSchemaFileImpl's recovery to Ratis. (#7936)
add 3614ca7899 Remove old storage engine step two (#7959)
add 5e5de92c6c Remove the entry of setting tsfile size (#7962)
add 44c090592b [ISSUE-7941] Fix NumberFormatException when JDK version is 17-internal (#7947)
add 6dcd5a59d5 Fix the problem in greedySelectLeader (#7964)
add 600e376bce [IOTDB-4908] Clear deprecated code related to sync in old standalone (#7965)
add f9c46222b7 [IOTDB-4789]Fix the bug of termination timing log can not be logged (#7775)
add bdf0398436 rename PartitionRegion to ConfigNodeRegion (#7970)
add e4779618c4 [IOTDB-4913] Fix NPE when insert multi rows with null by sql (#7967)
add 665242103d [IOTDB-4891] Rename storage group to database (#7946)
add ee3319e634 [IOTDB-4772][IOTDB-4402] Avoid multiple IoTDB processes accessing same dir (#7562)
add 747786133b Remove redundant isMppMode configuration (#7974)
add 34524ba5db [IOTDB-4920] Fixed the bug that show cluster returns wrong answer
add 2c9c03aa66 [IOTDB-4849] Fix the problem that internal_address is not consistent with target_confignode when first starts Seed-ConfigNode. (#7975)
add 5596e7ccf0 [IOTDB-4922] Support auth in create & drop trigger (#7980)
add 2ffcaefe39 Rename storage group to database in sync module (#7972)
add 4f22e14a22 [IOTDB-4601] Add configuration to close swagger (#7966)
add 89268825f8 [IOTDB-4875][IOTDB-4918] Fix timeseries creation check bug (#7987)
add 09ab7fae87 Resolve some TODO in ITs (#7981)
add e46df71015 [IOTDB-4896] Fix error in closing a TsFileProcessor with an empty memtable (#7971)
add ba7814d6ac Rename storage_groups dir name to databases (#7990)
add 8d9a021da6 [IOTDB-3831] Fix TTL doesn't take effect in last query (#7988)
add 058ca73097 [IOTDB-4921]Add auth check to deactivate and unset and drop template (#7994)
add 4f65f89698 [IOTDB-4941] Prevent compatibility problems in PipeData (#7996)
add d3d50e49bf [IOTDB-4893] modify the data type check of IN operation (#7979)
add a46e565a5d [IOTDB-4704] Modified sync data node retry wait (#7982)
add 7f01748284 [IOTDB-4942] Only checkDirectory when start DataNode (#7999)
add 917c8cff42 [IOTDB-4901][IOTDB-4860] Fix concurrent auto create schema bug (#7993)
add 8b5d429ea7 [IOTDB-4900] Add check for URI when create Trigger/UDF (#8000)
add 37c2792ab8 [IOTDB-4823] Adjust maxRegionGroupCount failed because StorageGroup doesn't exist (#7984)
add b5d9068596 Bump jackson-databind from 2.10.5 to 2.13.4.1 (#7986)
add c0f5d6c0ff Remove more todo in IT (#7998)
add e7a4838e0d [IOTDB-4401] DataNode should not be stopped when any regions are migrated failed (#7997)
add 6d486c9fc9 Bump jackson-databind from 2.13.4 to 2.13.4.1 (#8005)
add f87401b793 [IOTDB-4943][IOTDB-4956] Check type of Class and add detailed message for StateWindowStrategy
add 76e3d015dc [IOTDB-4951] Response failure if drop non-existent pipe (#8008)
add 64eac68ab5 Clear useless code in SchemaFileSketchTool (#8014)
add ee49d420f3 [IOTDB-4498] Update StatusCode to the latest (#7985)
add 0615b672e6 [IOTDB-4950] Add TsFileResourceStatus DELETED
add b594531af6 [IOTDB-4948] Optimize out-of-ttl error message (#8013)
add 31e93324ea [IOTDB-4965] Fix ttl info lost in data region after datanode restarted (#8018)
add e03efc25bc [IOTDB-4414] On using the CLI with OpenID Connect Auth enabled on Server side fails (#8011)
add e1351fbbd6 [IOTDB-4934]Modify error message of use 'null' directly in SQL
add d548214fad use AutoScalingBufferWriteTransport (#8012)
add b84845de2d [IOTDB-4923] Enable metric module in default config (#7973)
add 92c6a57f21 [IOTDB-4954] remove enable_partition and time_partition_interval_for_storage (#8002)
add 32675729ef [IOTDB-4872][IOTDB-4962] Improve delete timeseries msg when using template (#8006)
add 9170255e07 [IOTDB-4939] Remove unsupported compression type (#8009)
add 958064f1bb [IOTDB-4946] Implement show timeseries with deadband process info (#8021)
add cd35746b28 [IOTDB-4955] Make DataPartition inherit policy configurable (#8017)
add 9cdab6e955 [IOTDB-4973] add a copy of time instead of calling getTimestamp
add 3d5eeae81e [IOTDB-4953] Fix some sync-tool document description errors (#8038)
add 313645047e [IOTDB-4975] Explain support last query
add 601169295c [IOTDB-4899] Fix error in loading anonymous class of UDF
add c99fee30c7 Add website compile CI and fix website compile error (#8042)
add e988e7228f [IOTDB-4771]BufferedPipeDataQueueTest.testOfferWhileTakingWithDiscontinuousSerialNumber fail (#8020)
add 176e637a1a [IOTDB-4498] Adjust error code (#8026)
add 3d310e5d4e [IOTDB-4957] Add check for create pipesink and optimize re-connection (#8019)
add 92c1b197a6 [IOTDB-4850] Disable first election feature
add 7bb3f4b2d4 [IOTDB-4668] Add Database name length constraint (#8037)
add c84c97ae96 [IOTDB-4974] Clarify the boundary of how to be in one group in SessionWindow and StateWindow
add 10d054e9b0 Fix multi timeseries creation split bug (#8043)
add 4a856bd5e0 [IOTDB-4969] Fix the distribution plan for AggregationQuery with align by device (#8024)
add 36d98436be Fix some bug about clear environment after testing (#8046)
add e3b89b3c5d Clean some usage of Java in CI workflows (#8052)
add 33dcf2fc14 Make select into error more user-friendly (#8027)
add 5a6b4081de [IOTDB-4959] Remove createPeer state when confignode restart (#8051)
add 9edc7ea31a [IOTDB-4809] Broadcast the RegionRouteMap to all DataNodes except the unknown ones (#8053)
add bf49535e88 [IOTDB-4815] Apply SchemaCache for explicit timeseries query
add b0384095cb [IOTDB-4863] Fix a bug in memory estimation in DeviceViewNode
add fa5a00b19d [IOTDB-3671] Make thread group of ProcedureExecutor warn (#8055)
add fd579587fb improve issue template (#8056)
add 748b8835f1 Remove trigger of old standalone version
add 0152d95887 [IOTDB-4915][IOTDB-4956] Fix ClassCastException and drop trigger when onDrop throws exception (#8045)
add 53bc567b3e [IOTDB-4967] Fix SlidingTimeWindow stops when encounter an empty window (#8033)
add b88f23361a Fix go ci (#8039)
add 8755c3fbea Remove useless code of schema template for old standalone (#8058)
new 1ed17c2670 merge master
new 05c43e0814 fix compiler error
new 67c4adafd9 add SessionExample
The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/ISSUE_TEMPLATE/bug_report.md | 31 -
.github/ISSUE_TEMPLATE/bug_report.yml | 85 ++
.github/ISSUE_TEMPLATE/feature_request.md | 17 -
.github/ISSUE_TEMPLATE/feature_request.yml | 66 +
.github/dependabot.yml | 52 -
.github/workflows/client-cpp.yml | 21 +-
.github/workflows/client-go.yml | 11 +-
.github/workflows/client-python.yml | 11 +-
.../{cluster-it.yml => cluster-it-1c1d.yml} | 24 +-
.../{cluster-it.yml => cluster-it-1c3d.yml} | 15 +-
.github/workflows/e2e.yml | 6 +-
.github/workflows/grafana-plugin.yml | 18 +-
.github/workflows/greetings.yml | 2 +-
.github/workflows/influxdb-protocol.yml | 11 +-
.github/workflows/main-unix.yml | 16 +-
.github/workflows/main-win.yml | 13 +-
.../workflows/{client-go.yml => site-build.yml} | 34 +-
.github/workflows/sonar-coveralls.yml | 36 +-
.github/workflows/standalone-it-for-mpp.yml | 79 -
.github/workflows/sync.yml | 9 +-
.gitmodules | 4 +-
LICENSE | 15 +-
README.md | 19 +-
README_ZH.md | 29 +-
antlr/pom.xml | 17 +
.../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 | 3 +
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 52 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 12 +
.../src/assembly/resources/conf/logback-cli.xml | 20 +-
cli/src/assembly/resources/sbin/start-cli.sh | 118 +-
cli/src/assembly/resources/tools/export-csv.sh | 7 +
cli/src/assembly/resources/tools/export-tsfile.sh | 7 +
cli/src/assembly/resources/tools/import-csv.sh | 7 +
.../java/org/apache/iotdb/cli/AbstractCli.java | 21 +
cli/src/main/java/org/apache/iotdb/cli/Cli.java | 5 +
.../org/apache/iotdb/cli/StartClientScriptIT.java | 3 -
client-go | 2 +-
client-py/README.md | 12 +-
client-py/SessionAlignedTimeseriesExample.py | 4 +-
client-py/SessionExample.py | 8 +-
client-py/iotdb/Session.py | 16 +-
client-py/iotdb/dbapi/tests/test_cursor.py | 8 +-
client-py/iotdb/sqlalchemy/IoTDBDialect.py | 2 +-
client-py/iotdb/sqlalchemy/tests/test_dialect.py | 8 +-
client-py/tests/test_aligned_timeseries.py | 6 +-
client-py/tests/test_dataframe.py | 24 +-
client-py/tests/test_one_device.py | 2 +-
client-py/tests/test_session.py | 6 +-
client-py/tests/test_tablet.py | 4 +-
client-py/tests/test_template.py | 2 +-
client-py/tests/test_todf.py | 6 +-
confignode/src/assembly/confignode.xml | 4 +
.../src/assembly/resources/conf/confignode-env.bat | 27 +-
.../src/assembly/resources/conf/confignode-env.sh | 10 +
.../resources/conf/iotdb-confignode.properties | 41 +-
.../src/assembly/resources/conf/logback-tool.xml | 16 +-
.../assembly/resources/sbin/remove-confignode.sh | 59 +-
.../assembly/resources/sbin/start-confignode.bat | 41 +-
.../assembly/resources/sbin/start-confignode.sh | 169 ++-
.../assembly/resources/sbin/stop-confignode.bat | 3 +
.../src/assembly/resources/sbin/stop-confignode.sh | 4 +-
.../confignode/client/ConfigNodeRequestType.java | 2 +-
.../confignode/client/DataNodeRequestType.java | 1 +
.../client/async/AsyncDataNodeClientPool.java | 10 +
.../client/async/handlers/AsyncClientHandler.java | 1 +
.../client/sync/SyncConfigNodeClientPool.java | 10 +-
.../client/sync/SyncDataNodeClientPool.java | 122 +-
.../iotdb/confignode/conf/ConfigNodeConfig.java | 281 ++--
.../iotdb/confignode/conf/ConfigNodeConstant.java | 6 +
.../confignode/conf/ConfigNodeDescriptor.java | 622 +++++---
.../confignode/conf/ConfigNodeRemoveCheck.java | 2 +-
.../confignode/conf/ConfigNodeStartupCheck.java | 22 +-
.../consensus/request/ConfigPhysicalPlan.java | 7 +
.../write/procedure/UpdateProcedurePlan.java | 8 -
.../consensus/response/DataNodeRegisterResp.java | 20 +
.../consensus/response/TemplateSetInfoResp.java | 1 +
...hine.java => ConfigNodeRegionStateMachine.java} | 139 +-
...n.java => NoAvailableRegionGroupException.java} | 15 +-
.../confignode/manager/ClusterSchemaManager.java | 48 +-
.../iotdb/confignode/manager/ConfigManager.java | 53 +-
.../iotdb/confignode/manager/ConsensusManager.java | 107 +-
.../apache/iotdb/confignode/manager/IManager.java | 4 +
.../iotdb/confignode/manager/ProcedureManager.java | 14 +-
.../iotdb/confignode/manager/SyncManager.java | 8 +-
.../iotdb/confignode/manager/TriggerManager.java | 2 +-
.../iotdb/confignode/manager/UDFManager.java | 34 +-
.../iotdb/confignode/manager/load/LoadManager.java | 9 +-
.../manager/load/LoadManagerMetrics.java | 10 +-
.../manager/load/balancer/PartitionBalancer.java | 6 +-
.../manager/load/balancer/RouteBalancer.java | 147 +-
.../partition/GreedyPartitionAllocator.java | 76 +-
.../balancer/partition/IPartitionAllocator.java | 6 +-
.../manager/load/balancer/router/mcf/MCFEdge.java | 17 +-
.../balancer/router/mcf/MCFLeaderBalancer.java | 305 ++++
.../iotdb/confignode/manager/node/NodeManager.java | 63 +-
.../manager/partition/PartitionManager.java | 46 +-
.../iotdb/confignode/persistence/AuthorInfo.java | 34 +-
.../iotdb/confignode/persistence/TriggerInfo.java | 2 +-
.../iotdb/confignode/persistence/UDFInfo.java | 2 +-
.../iotdb/confignode/persistence/cq/CQInfo.java | 2 +-
.../confignode/persistence/node/NodeInfo.java | 25 +-
.../persistence/partition/PartitionInfo.java | 13 +-
.../partition/StorageGroupPartitionTable.java | 23 +-
.../persistence/schema/ClusterSchemaInfo.java | 26 +-
.../persistence/schema/TemplateTable.java | 5 +-
.../persistence/sync/ClusterSyncInfo.java | 14 +-
.../confignode/procedure/ProcedureExecutor.java | 7 +-
.../procedure/env/ConfigNodeProcedureEnv.java | 151 +-
.../procedure/env/DataNodeRemoveHandler.java | 179 ++-
.../impl/node/AddConfigNodeProcedure.java | 40 +-
.../impl/node/RemoveDataNodeProcedure.java | 111 +-
.../impl/schema/DeactivateTemplateProcedure.java | 6 +
.../impl/schema/DeleteStorageGroupProcedure.java | 6 +-
.../impl/schema/DeleteTimeSeriesProcedure.java | 3 +-
.../impl/statemachine/RegionMigrateProcedure.java | 37 +-
.../procedure/impl/sync/DropPipeProcedure.java | 10 +-
.../procedure/state/AddConfigNodeState.java | 3 +-
.../procedure/store/ConfigProcedureStore.java | 2 +-
.../iotdb/confignode/service/ConfigNode.java | 23 +-
.../thrift/ConfigNodeRPCServiceHandlerMetrics.java | 2 +-
.../thrift/ConfigNodeRPCServiceMetrics.java | 2 +-
.../thrift/ConfigNodeRPCServiceProcessor.java | 23 +-
.../request/ConfigPhysicalPlanSerDeTest.java | 4 +-
.../balancer/router/mcf/MCFLeaderBalancerTest.java | 216 +++
.../confignode/persistence/AuthorInfoTest.java | 38 +-
.../persistence/ClusterSyncInfoTest.java | 40 +-
...nfignode.properties => iotdb-common.properties} | 12 +-
...otdb-metric.yml => iotdb-confignode-metric.yml} | 4 +-
.../confignode1conf/iotdb-confignode.properties | 13 +-
...nfignode.properties => iotdb-common.properties} | 11 +-
...otdb-metric.yml => iotdb-confignode-metric.yml} | 4 +-
.../confignode2conf/iotdb-confignode.properties | 12 +-
...nfignode.properties => iotdb-common.properties} | 11 +-
...otdb-metric.yml => iotdb-confignode-metric.yml} | 4 +-
.../confignode3conf/iotdb-confignode.properties | 12 +-
consensus/README.md | 2 +-
.../apache/iotdb/consensus/ConsensusFactory.java | 7 +-
.../org/apache/iotdb/consensus/IStateMachine.java | 12 +
.../multileader/MultiLeaderConsensus.java | 2 +-
.../multileader/MultiLeaderServerImpl.java | 20 +-
.../multileader/MultiLeaderServerMetrics.java | 4 +-
.../multileader/client/DispatchLogHandler.java | 6 +-
.../multileader/logdispatcher/LogDispatcher.java | 28 +-
.../logdispatcher/MultiLeaderMemoryManager.java | 40 +-
.../MultiLeaderMemoryManagerMetrics.java | 2 +-
.../service/MultiLeaderRPCServiceProcessor.java | 2 +-
.../ratis/ApplicationStateMachineProxy.java | 3 +-
.../iotdb/consensus/ratis/RatisConsensus.java | 23 +-
.../org/apache/iotdb/consensus/ratis/Utils.java | 12 +-
.../SimpleConsensus.java} | 26 +-
.../SimpleServerImpl.java} | 6 +-
.../multileader/MultiLeaderConsensusTest.java | 4 +-
.../iotdb/consensus/multileader/RecoveryTest.java | 4 +-
.../iotdb/consensus/ratis/RatisConsensusTest.java | 22 +-
.../apache/iotdb/consensus/ratis/UtilsTest.java | 4 +-
.../{standalone => simple}/RecoveryTest.java | 6 +-
.../SimpleConsensusTest.java} | 12 +-
.../tests/tools/importCsv/ImportCsvTestIT.java | 6 +-
.../tests/tools/tsfile/ExportTsFileTestIT.java | 6 +-
.../src/test/resources/iotdb-datanode.properties | 11 +-
.../src/test/resources/iotdb-engine.properties | 21 -
distribution/src/assembly/all.xml | 5 +
distribution/src/assembly/confignode.xml | 5 +
distribution/src/assembly/datanode.xml | 5 +
.../GrafanaPlugin/iotdb/conf/iotdb-rest.properties | 3 +
docker/src/main/Dockerfile-1c1d | 14 +-
docker/src/main/Dockerfile-1c1d-influxdb | 16 +-
docs/Blog/Release0_93.md | 2 +-
docs/Development/VoteRelease.md | 4 +-
docs/Download/README.md | 2 +-
docs/UserGuide/API/InfluxDB-Protocol.md | 12 +-
docs/UserGuide/API/Interface-Comparison.md | 4 +-
docs/UserGuide/API/Programming-Cpp-Native-API.md | 6 +-
docs/UserGuide/API/Programming-JDBC.md | 8 +-
docs/UserGuide/API/Programming-Java-Native-API.md | 14 +-
.../UserGuide/API/Programming-Python-Native-API.md | 16 +-
docs/UserGuide/API/Programming-Thrift.md | 2 +-
docs/UserGuide/API/RestService.md | 24 +-
docs/UserGuide/API/Status-Codes.md | 175 ++-
.../Administration-Management/Administration.md | 18 +-
docs/UserGuide/Cluster/Cluster-Concept.md | 4 +-
docs/UserGuide/Cluster/Cluster-Setup.md | 50 +-
docs/UserGuide/Data-Concept/Compression.md | 93 +-
.../Data-Concept/Data-Model-and-Terminology.md | 20 +-
.../{Compression.md => Deadband-Process.md} | 29 +-
docs/UserGuide/Data-Concept/Schema-Template.md | 2 +-
docs/UserGuide/Data-Concept/Time-Partition.md | 17 +-
docs/UserGuide/Data-Modeling/DataRegion.md | 22 +-
docs/UserGuide/Delete-Data/Delete-Data.md | 2 +-
docs/UserGuide/Delete-Data/TTL.md | 26 +-
.../Ecosystem-Integration/Grafana-Plugin.md | 2 +-
.../Ecosystem-Integration/Zeppelin-IoTDB.md | 2 +-
.../Sync-Tool.md | 44 +-
.../Frequently-asked-questions.md | 0
.../Integration-Test-refactoring-tutorial.md | 12 +-
.../Maintenance-Tools/Maintenance-Command.md | 103 +-
docs/UserGuide/Maintenance-Tools/NodeTool.md | 14 +-
.../UserGuide/{Alert => Monitor-Alert}/Alerting.md | 2 +-
.../Metric-Tool.md | 190 ++-
.../Operate-Metadata/Auto-Create-MetaData.md | 10 +-
docs/UserGuide/Operate-Metadata/Node.md | 20 +-
docs/UserGuide/Operate-Metadata/Storage-Group.md | 73 +-
docs/UserGuide/Operate-Metadata/Template.md | 36 +-
docs/UserGuide/Operate-Metadata/Timeseries.md | 36 +-
docs/UserGuide/Process-Data/Continuous-Query.md | 4 +-
docs/UserGuide/Process-Data/Select-Into.md | 6 +-
docs/UserGuide/{Alert => Process-Data}/Triggers.md | 33 +-
.../Process-Data/UDF-User-Defined-Function.md | 20 +-
docs/UserGuide/Query-Data/Aggregate-Query.md | 6 +-
docs/UserGuide/Query-Data/Select-Expression.md | 9 +-
.../UserGuide/QuickStart/Command-Line-Interface.md | 8 +-
docs/UserGuide/QuickStart/QuickStart.md | 49 +-
docs/UserGuide/QuickStart/ServerFileList.md | 53 +-
.../Reference/ConfigNode-Config-Manual.md | 36 +-
docs/UserGuide/Reference/DataNode-Config-Manual.md | 26 +-
docs/UserGuide/Reference/Keywords.md | 2 +
docs/UserGuide/Reference/SQL-Reference.md | 50 +-
docs/UserGuide/Reference/Syntax-Conventions.md | 42 +-
docs/UserGuide/Reference/TSDB-Comparison.md | 4 +-
docs/UserGuide/UDF-Library/Data-Profiling.md | 73 +
docs/UserGuide/UDF-Library/Data-Quality.md | 57 +-
docs/UserGuide/UDF-Library/M4.md | 2 +-
docs/UserGuide/Write-Data/CSV-Tool.md | 6 +-
docs/UserGuide/Write-Data/Load-External-Tsfile.md | 2 +-
.../UserGuide/Write-Data/MQTT.md | 10 +-
.../{UDF-Library/M4.md => Write-Data/REST-API.md} | 37 +-
.../{UDF-Library/M4.md => Write-Data/Session.md} | 16 +-
docs/zh/Development/VoteRelease.md | 4 +-
docs/zh/Download/README.md | 2 +-
docs/zh/UserGuide/API/InfluxDB-Protocol.md | 12 +-
docs/zh/UserGuide/API/Interface-Comparison.md | 4 +-
.../zh/UserGuide/API/Programming-Cpp-Native-API.md | 6 +-
docs/zh/UserGuide/API/Programming-JDBC.md | 8 +-
.../UserGuide/API/Programming-Java-Native-API.md | 12 +-
.../UserGuide/API/Programming-Python-Native-API.md | 14 +-
docs/zh/UserGuide/API/Programming-Thrift.md | 4 +-
docs/zh/UserGuide/API/RestService.md | 22 +-
docs/zh/UserGuide/API/Status-Codes.md | 176 ++-
.../Administration-Management/Administration.md | 18 +-
docs/zh/UserGuide/Cluster/Cluster-Concept.md | 4 +-
docs/zh/UserGuide/Cluster/Cluster-Setup.md | 50 +-
docs/zh/UserGuide/Data-Concept/Compression.md | 88 +-
.../Data-Concept/Data-Model-and-Terminology.md | 22 +-
.../{Compression.md => Deadband-Process.md} | 26 +-
docs/zh/UserGuide/Data-Concept/Schema-Template.md | 4 +-
docs/zh/UserGuide/Data-Concept/Time-Partition.md | 25 +-
docs/zh/UserGuide/Data-Modeling/DataRegion.md | 12 +-
docs/zh/UserGuide/Delete-Data/Delete-Data.md | 2 +-
docs/zh/UserGuide/Delete-Data/TTL.md | 22 +-
.../Ecosystem-Integration/Grafana-Plugin.md | 2 +-
.../Ecosystem-Integration/Zeppelin-IoTDB.md | 2 +-
.../Sync-Tool.md | 39 +-
.../Frequently-asked-questions.md | 0
.../Integration-Test-refactoring-tutorial.md | 8 +-
.../Maintenance-Tools/Maintenance-Command.md | 84 +-
docs/zh/UserGuide/Maintenance-Tools/NodeTool.md | 10 +-
.../Maintenance-Tools/SchemaFileSketch-Tool.md | 2 +-
.../UserGuide/{Alert => Monitor-Alert}/Alerting.md | 2 +-
.../Metric-Tool.md | 222 +--
.../Operate-Metadata/Auto-Create-MetaData.md | 10 +-
docs/zh/UserGuide/Operate-Metadata/Node.md | 18 +-
.../zh/UserGuide/Operate-Metadata/Storage-Group.md | 73 +-
docs/zh/UserGuide/Operate-Metadata/Template.md | 22 +-
docs/zh/UserGuide/Operate-Metadata/Timeseries.md | 18 +-
docs/zh/UserGuide/Process-Data/Continuous-Query.md | 4 +-
docs/zh/UserGuide/Process-Data/Select-Into.md | 6 +-
.../UserGuide/{Alert => Process-Data}/Triggers.md | 28 +-
.../Process-Data/UDF-User-Defined-Function.md | 18 +-
docs/zh/UserGuide/Query-Data/Aggregate-Query.md | 8 +-
docs/zh/UserGuide/Query-Data/Select-Expression.md | 9 +-
.../UserGuide/QuickStart/Command-Line-Interface.md | 8 +-
docs/zh/UserGuide/QuickStart/QuickStart.md | 36 +-
docs/zh/UserGuide/QuickStart/ServerFileList.md | 46 +-
.../Reference/ConfigNode-Config-Manual.md | 28 +-
.../UserGuide/Reference/DataNode-Config-Manual.md | 22 +-
docs/zh/UserGuide/Reference/Keywords.md | 2 +
docs/zh/UserGuide/Reference/SQL-Reference.md | 60 +-
docs/zh/UserGuide/Reference/Syntax-Conventions.md | 44 +-
docs/zh/UserGuide/UDF-Library/Data-Profiling.md | 74 +
docs/zh/UserGuide/UDF-Library/Data-Quality.md | 57 +-
docs/zh/UserGuide/Write-Data/CSV-Tool.md | 6 +-
.../UserGuide/Write-Data/Load-External-Tsfile.md | 2 +-
.../zh/UserGuide/Write-Data/MQTT.md | 10 +-
.../M4.md => zh/UserGuide/Write-Data/REST-API.md} | 38 +-
.../M4.md => zh/UserGuide/Write-Data/Session.md} | 16 +-
.../src/AlignedTimeseriesSessionExample.cpp | 2 +-
.../org/apache/iotdb/flink/FlinkIoTDBSource.java | 2 +-
.../main/java/org/apache/iotdb/JDBCExample.java | 2 +-
.../iotdb/SyntaxConventionRelatedExample.java | 4 +-
example/mqtt/README.md | 2 +-
example/rest-client-c-example/main.c | 4 +-
example/rocketmq/readme.md | 6 +-
.../org/apache/iotdb/DataMigrationExample.java | 4 +-
.../main/java/org/apache/iotdb/SessionExample.java | 89 +-
.../iotdb/SyntaxConventionRelatedExample.java | 8 +-
example/trigger/pom.xml | 2 +-
.../java/org/apache/iotdb/tsfile/TsFileRead.java | 11 +-
example/udf/pom.xml | 3 +-
.../SlidingTimeWindowAccessStrategyExample.java | 105 ++
.../java/org/apache/iotdb/udf/UDTFExample.java | 2 +-
.../Apache IoTDB ConfigNode Dashboard v0.14.0.json | 238 +--
.../Apache IoTDB DataNode Dashboard v0.14.0.json | 121 +-
.../standalone/Apache IoTDB Dashboard v0.14.0.json | 2 +-
grafana-plugin/README.md | 130 +-
grafana-plugin/pkg/main.go | 2 +-
.../pkg/plugin/iotdb_resource_handler.go | 170 +++
grafana-plugin/pkg/plugin/plugin.go | 119 +-
grafana-plugin/src/ConfigEditor.tsx | 70 +-
grafana-plugin/src/datasource.ts | 47 +-
grafana-plugin/src/img/addIoTDBDataSource.png | Bin 0 -> 43760 bytes
grafana-plugin/src/img/showData.png | Bin 0 -> 170827 bytes
grafana-plugin/src/plugin.json | 4 +-
grafana-plugin/src/types.ts | 3 +-
.../iotdb/hadoop/tsfile/TSFRecordReader.java | 2 +-
integration-test/README.md | 61 +-
integration-test/import-control.xml | 6 +-
integration-test/pom.xml | 23 +-
.../java/org/apache/iotdb/it/env/AbstractEnv.java | 15 +
.../apache/iotdb/it/env/AbstractNodeWrapper.java | 8 +-
.../org/apache/iotdb/it/env/ConfigFactory.java | 41 +-
.../org/apache/iotdb/it/env/ConfigNodeWrapper.java | 8 +-
.../org/apache/iotdb/it/env/DataNodeWrapper.java | 3 +-
.../java/org/apache/iotdb/it/env/EnvFactory.java | 20 +-
.../main/java/org/apache/iotdb/it/env/EnvType.java | 14 +-
.../java/org/apache/iotdb/it/env/MppConfig.java | 39 +-
.../org/apache/iotdb/it/env/RemoteServerEnv.java | 8 +-
.../{StandaloneOnMppEnv.java => SimpleEnv.java} | 22 +-
.../apache/iotdb/itbase/constant/TestConstant.java | 11 +-
.../org/apache/iotdb/itbase/env/BaseConfig.java | 40 +-
.../java/org/apache/iotdb/itbase/env/BaseEnv.java | 53 +
.../confignode/it/IoTDBClusterAuthorityIT.java | 40 +-
.../iotdb/confignode/it/IoTDBClusterNodeIT.java | 2 +-
.../it/IoTDBClusterRegionLeaderBalancingIT.java | 155 +-
.../iotdb/confignode/it/IoTDBClusterRestartIT.java | 6 +-
.../confignode/it/IoTDBConfigNodeSnapshotIT.java | 8 +-
.../it/IoTDBConfigNodeSwitchLeaderIT.java | 14 +-
.../iotdb/confignode/it/IoTDBStorageGroupIT.java | 3 +-
.../it/partition/IoTDBPartitionDurableTest.java | 323 ++++
.../IoTDBPartitionGetterIT.java} | 592 ++------
.../partition/IoTDBPartitionInheritPolicyTest.java | 182 +++
.../confignode/it/utils/ConfigNodeTestUtils.java | 66 +
.../org/apache/iotdb/db/it/IOTDBLoadTsFileIT.java | 33 +-
.../java/org/apache/iotdb/db/it/IoTDBAuthIT.java | 45 +-
.../apache/iotdb/db/it}/IoTDBDatetimeFormatIT.java | 33 +-
.../org/apache/iotdb/db/it/IoTDBDeletionIT.java | 38 +-
.../org/apache/iotdb/db/it}/IoTDBEncodingIT.java | 220 +--
.../org/apache/iotdb/db/it/IoTDBExampleIT.java | 6 +-
.../apache/iotdb/db/it}/IoTDBExecuteBatchIT.java | 77 +-
.../apache/iotdb/db/it/IoTDBFilterBetweenIT.java | 20 +-
.../java/org/apache/iotdb/db/it/IoTDBFilterIT.java | 64 +-
.../org/apache/iotdb/db/it/IoTDBFilterNullIT.java | 15 +-
.../apache/iotdb/db/it}/IoTDBFloatPrecisionIT.java | 47 +-
.../apache/iotdb/db/it/IoTDBFlushQueryMergeIT.java | 28 +-
.../apache/iotdb/db/it}/IoTDBInsertMultiRowIT.java | 52 +-
.../org/apache/iotdb/db/it}/IoTDBInsertNaNIT.java | 56 +-
.../org/apache/iotdb/db/it}/IoTDBInsertNullIT.java | 44 +-
.../iotdb/db/it}/IoTDBInsertWithQueryIT.java | 31 +-
.../iotdb/db/it/IoTDBInsertWithoutTimeIT.java | 2 +-
.../org/apache/iotdb/db/it/IoTDBMultiDeviceIT.java | 98 +-
.../org/apache/iotdb/db/it/IoTDBNestedQueryIT.java | 15 +-
.../iotdb/db/it}/IoTDBPartialInsertionIT.java | 50 +-
.../it}/IoTDBQueryWithRecreatedTimeseriesIT.java | 23 +-
.../org/apache/iotdb/db/it/IoTDBQuotedPathIT.java | 7 +-
.../org/apache/iotdb/db/it}/IoTDBRecoverIT.java | 147 +-
.../iotdb/db/it}/IoTDBRecoverUnclosedIT.java | 131 +-
.../org/apache/iotdb/db/it}/IoTDBRestartIT.java | 221 ++-
.../it/IoTDBSameMeasurementsDifferentTypesIT.java | 2 +-
.../org/apache/iotdb/db/it}/IoTDBSettleIT.java | 27 +-
.../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java | 80 +-
.../db/it/IoTDBSyntaxConventionIdentifierIT.java | 275 ++--
.../it/IoTDBSyntaxConventionStringLiteralIT.java | 53 +-
.../org/apache/iotdb/db/it/IoTDBTimeZoneIT.java | 6 +-
.../java/org/apache/iotdb/db/it/IoTDBTtlIT.java | 19 +-
.../it/aggregation/IoTDBAggregationByLevelIT.java | 35 +-
.../db/it/aggregation/IoTDBAggregationIT.java | 70 +-
.../aggregation/IoTDBAggregationLargeDataIT.java | 2 +-
.../aggregation/IoTDBAggregationSmallDataIT.java | 23 +-
.../db/it/aggregation/IoTDBTagAggregationIT.java | 6 +-
.../db/it/alignbydevice/IoTDBAlignByDeviceIT.java | 4 +-
.../aligned/IoTDBAggregationWithDeletion2IT.java | 4 +-
.../it/aligned/IoTDBAggregationWithDeletionIT.java | 7 +-
.../db/it/aligned/IoTDBAlignedDataDeletionIT.java | 36 +-
.../db/it/aligned/IoTDBAlignedLastQuery2IT.java | 4 +-
.../db/it/aligned/IoTDBAlignedLastQuery3IT.java | 4 +-
.../db/it/aligned/IoTDBAlignedLastQueryIT.java | 13 +-
.../db/it/aligned/IoTDBAlignedSeriesQueryIT.java | 104 +-
.../db/it/aligned/IoTDBGroupByLevelQueryIT.java | 2 +-
...GroupByQueryWithValueFilterWithDeletion2IT.java | 4 +-
...BGroupByQueryWithValueFilterWithDeletionIT.java | 4 +-
...upByQueryWithoutValueFilterWithDeletion2IT.java | 4 +-
...oupByQueryWithoutValueFilterWithDeletionIT.java | 4 +-
.../db/it/aligned/IoTDBInsertAlignedValues2IT.java | 10 +-
.../db/it/aligned/IoTDBInsertAlignedValues3IT.java | 10 +-
.../db/it/aligned/IoTDBInsertAlignedValues4IT.java | 4 +-
.../db/it/aligned/IoTDBInsertAlignedValuesIT.java | 41 +-
.../it/aligned/IoTDBLastQueryWithDeletion2IT.java | 8 +-
.../it/aligned/IoTDBLastQueryWithDeletionIT.java | 8 +-
.../aligned/IoTDBLastQueryWithoutLastCache2IT.java | 4 +-
.../aligned/IoTDBLastQueryWithoutLastCacheIT.java | 4 +-
...DBLastQueryWithoutLastCacheWithDeletion2IT.java | 8 +-
...TDBLastQueryWithoutLastCacheWithDeletionIT.java | 8 +-
...BRawQueryWithoutValueFilterWithDeletion2IT.java | 3 +-
...DBRawQueryWithoutValueFilterWithDeletionIT.java | 18 +-
.../org/apache/iotdb/db/it/cq/IoTDBCQExecIT.java | 3 +-
.../java/org/apache/iotdb/db/it/cq/IoTDBCQIT.java | 53 +-
.../iotdb/db/it/env/StandaloneEnvConfig.java | 23 +-
.../apache/iotdb/db/it/groupby/IOTDBGroupByIT.java | 2 +-
.../iotdb/db/it/groupby/IoTDBGroupByUnseqIT.java | 4 +-
.../apache/iotdb/db/it/groupby/IoTDBHavingIT.java | 18 +-
.../IoTDBLastWithTTLIT.java} | 63 +-
.../org/apache/iotdb/db/it/query/IoTDBAliasIT.java | 6 +-
.../iotdb/db/it/query}/IoTDBArithmeticIT.java | 151 +-
.../iotdb/db/it/query}/IoTDBFuzzyQueryIT.java | 161 +-
.../org/apache/iotdb/db/it/query}/IoTDBInIT.java | 76 +-
.../iotdb/db/it/query/IoTDBNullOperandIT.java | 243 +++
.../iotdb/db/it/query/IoTDBNullValueFillIT.java | 5 +-
.../iotdb/db/it/query/IoTDBPaginationIT.java | 2 +-
.../iotdb/db/it/query}/IoTDBQueryDemoIT.java | 631 ++++----
.../query/IoTDBQueryWithComplexValueFilterIT.java | 2 +-
.../apache/iotdb/db/it/query/IoTDBResultSetIT.java | 36 +-
.../it/query}/IoTDBSelectCompareExpressionIT.java | 15 +-
.../iotdb/db/it/query}/IoTDBSelectSchemaIT.java | 15 +-
.../db/it/schema/IoTDBAutoCreateSchemaIT.java | 40 +-
.../it/schema/IoTDBCreateAlignedTimeseriesIT.java | 21 +-
.../db/it/schema/IoTDBCreateStorageGroupIT.java | 31 +-
.../db/it/schema/IoTDBCreateTimeseriesIT.java | 12 +-
.../db/it/schema/IoTDBDeactivateTemplateIT.java | 35 +-
.../it/schema/IoTDBDeleteAlignedTimeseriesIT.java | 7 +-
.../db/it/schema/IoTDBDeleteStorageGroupIT.java | 54 +-
.../db/it/schema/IoTDBDeleteTimeseriesIT.java | 13 +-
.../iotdb/db/it/schema/IoTDBMetadataFetchIT.java | 99 +-
.../iotdb/db/it/schema/IoTDBSchemaTemplateIT.java | 97 +-
.../db/it/schema/IoTDBSortedShowTimeseriesIT.java | 68 +-
.../apache/iotdb/db/it/schema/IoTDBTagAlterIT.java | 208 +--
.../org/apache/iotdb/db/it/schema/IoTDBTagIT.java | 275 ++--
.../iotdb/db/it/selectinto/IoTDBSelectInto2IT.java | 4 +-
.../iotdb/db/it/selectinto/IoTDBSelectInto3IT.java | 4 +-
.../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java | 24 +-
.../org/apache/iotdb/db/it/sync/IoTDBPipeIT.java | 21 +-
.../apache/iotdb/db/it/sync/IoTDBPipeSinkIT.java | 23 +-
.../db/it/trigger/IoTDBTriggerExecutionIT.java | 6 +-
.../db/it/trigger/IoTDBTriggerManagementIT.java | 169 ++-
.../org/apache/iotdb/db/it/udf/IoTDBUDFM4IT.java | 2 +-
.../iotdb/db/it/udf/IoTDBUDFManagementIT.java | 28 +
.../db/it/udf/IoTDBUDFOtherWindowQueryIT.java | 86 +-
.../iotdb/db/it/udf/IoTDBUDFWindowQueryIT.java | 33 +-
.../db/it/udf/IoTDBUDTFAlignByTimeQueryIT.java | 4 +-
.../db/it/udf/IoTDBUDTFBuiltinFunctionIT.java | 15 +-
.../iotdb/db/it/udf/IoTDBUDTFHybridQueryIT.java | 6 +-
.../iotdb/db/it/udf/IoTDBUDTFNonAlignQueryIT.java | 2 +-
.../apache/iotdb/db/it/utils/AlignedWriteUtil.java | 6 +-
.../org/apache/iotdb/db/it/utils/TestUtils.java | 4 +-
.../iotdb/db/it/watermark/IoTDBWatermarkIT.java | 2 +-
.../db/it/withoutNull/IoTDBWithoutAllNullIT.java | 17 +-
.../db/it/withoutNull/IoTDBWithoutAnyNullIT.java | 5 +-
.../withoutNull/IoTDBWithoutNullAllFilterIT.java | 44 +-
.../withoutNull/IoTDBWithoutNullAnyFilterIT.java | 60 +-
.../session/it/IoTDBSessionAlignedInsertIT.java | 95 +-
.../iotdb/session/it/IoTDBSessionComplexIT.java | 76 +-
.../session/it/IoTDBSessionSchemaTemplateIT.java | 12 +-
.../iotdb/session/it/IoTDBSessionSimpleIT.java | 26 +-
.../iotdb/session/it/pool/SessionPoolIT.java | 46 +-
.../src/test/resources/iotdb-datanode.properties | 10 +-
.../src/test/resources/iotdb-engine.properties | 21 -
.../iotdb/integration/env/ClusterEnvBase.java | 4 +-
.../iotdb/integration/env/ClusterEnvConfig.java | 7 +-
.../iotdb/integration/env/RemoteServerEnv.java | 8 +-
.../org/apache/iotdb/itbase/env/BaseConfig.java | 4 -
.../apache/iotdb/db/integration/IOTDBInsertIT.java | 2 +-
.../IoTDBAlignedTimeSeriesCompactionIT.java | 4 +-
.../iotdb/db/integration/IoTDBAuthorizationIT.java | 54 +-
.../iotdb/db/integration/IoTDBClearCacheIT.java | 4 +-
.../apache/iotdb/db/integration/IoTDBCloseIT.java | 2 +-
.../iotdb/db/integration/IoTDBCompactionIT.java | 11 +-
.../integration/IoTDBCompactionWithIDTableIT.java | 11 +-
.../apache/iotdb/db/integration/IoTDBDaemonIT.java | 4 +-
.../iotdb/db/integration/IoTDBDisableAlignIT.java | 4 +-
.../db/integration/IoTDBEngineTimeGeneratorIT.java | 2 +-
.../iotdb/db/integration/IoTDBFilePathUtilsIT.java | 99 --
.../apache/iotdb/db/integration/IoTDBFillIT.java | 4 +-
.../db/integration/IoTDBFlushQueryMergeIT.java | 18 +-
.../db/integration/IoTDBLoadExternalTsfileIT.java | 15 +-
.../IoTDBLoadExternalTsfileWithVirtualSGIT.java | 7 +-
.../integration/IoTDBManageTsFileResourceIT.java | 291 ----
.../iotdb/db/integration/IoTDBMultiSeriesIT.java | 5 +-
.../db/integration/IoTDBMultiStatementsIT.java | 2 +-
.../db/integration/IoTDBNewTsFileCompactionIT.java | 2 +-
.../db/integration/IoTDBOverlappedPageIT.java | 2 +-
.../db/integration/IoTDBQueryMemoryControlIT.java | 2 +-
.../iotdb/db/integration/IoTDBQueryTimeoutIT.java | 4 +-
.../db/integration/IoTDBQueryWithIDTableIT.java | 4 +-
.../db/integration/IoTDBRemovePartitionIT.java | 620 ++++----
.../db/integration/IoTDBRewriteTsFileToolIT.java | 2 +-
.../db/integration/IoTDBRpcCompressionIT.java | 2 +-
.../db/integration/IoTDBSchemaTemplateIT.java | 87 +-
.../iotdb/db/integration/IoTDBSensorUpdateIT.java | 2 +-
.../db/integration/IoTDBSequenceDataQueryIT.java | 2 +-
.../iotdb/db/integration/IoTDBSeriesReaderIT.java | 9 +-
.../db/integration/IoTDBSessionTimeoutIT.java | 2 +-
.../IoTDBSetSystemReadOnlyWritableIT.java | 4 +-
.../integration/IoTDBSizeTieredCompactionIT.java | 44 +-
.../iotdb/db/integration/IoTDBSnapshotIT.java | 8 +-
.../integration/IoTDBSortedShowTimeseriesIT.java | 69 +-
.../iotdb/db/integration/IoTDBTimePartitionIT.java | 5 +-
.../iotdb/db/integration/IoTDBTracingIT.java | 2 +-
.../db/integration/IoTDBTriggerExecutionIT.java | 678 ---------
.../db/integration/IoTDBTriggerForwardIT.java | 305 ----
.../db/integration/IoTDBTriggerManagementIT.java | 539 -------
.../apache/iotdb/db/integration/IoTDBTtlIT.java | 40 +-
.../db/integration/IoTDBUDFWindowQueryIT.java | 2 +-
.../db/integration/IoTDBUDTFHybridQueryIT.java | 2 +-
.../db/integration/IoTDBUDTFNonAlignQueryIT.java | 2 +-
.../db/integration/IoTDBUnseqOverlappedPageIT.java | 2 +-
.../iotdb/db/integration/IoTDBVersionIT.java | 4 +-
.../aggregation/IoTDBUDFNestAggregationIT.java | 17 +-
.../IoTDBUserDefinedAggregationFunctionIT.java | 16 +-
.../db/integration/aligned/AlignedWriteUtil.java | 2 +-
.../aligned/IoTDBGroupByFillQueryBigDataIT.java | 5 +-
.../aligned/IoTDBGroupByFillQueryIT.java | 3 +-
.../aligned/IoTDBLoadExternalAlignedTsFileIT.java | 15 +-
.../db/integration/env/StandaloneEnvConfig.java | 7 +-
.../db/integration/groupby/IoTDBGroupByFillIT.java | 4 +-
.../groupby/IoTDBGroupByFillMixPathsIT.java | 4 +-
.../groupby/IoTDBGroupByFillWithRangeIT.java | 2 +-
.../db/integration/sync/IoTDBSyncReceiverIT.java | 59 -
.../sync/IoTDBSyncReceiverLoaderIT.java | 76 +-
.../db/integration/sync/IoTDBSyncSenderIT.java | 58 +-
.../iotdb/db/integration/sync/SyncTestUtil.java | 4 +-
.../versionadaption/IoTDBDDLVersionAdaptionIT.java | 54 +-
.../IoTDBDeletionVersionAdaptionIT.java | 7 +-
.../IoTDBQueryVersionAdaptionIT.java | 4 +-
.../session/IoTDBSessionAlignedABDeviceIT.java | 6 +-
.../session/IoTDBSessionAlignedAggregationIT.java | 6 +-
.../IoTDBSessionAlignedAggregationWithUnSeqIT.java | 6 +-
.../src/test/resources/iotdb-datanode.properties | 10 +-
.../src/test/resources/iotdb-engine.properties | 21 -
jdbc/README.md | 10 +-
.../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java | 86 +-
.../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java | 12 +-
.../org/apache/iotdb/jdbc/IoTDBResultMetadata.java | 4 +-
.../java/org/apache/iotdb/jdbc/IoTDBStatement.java | 9 +-
.../test/java/org/apache/iotdb/jdbc/BatchTest.java | 2 +-
.../iotdb/jdbc/IoTDBDatabaseMetadataTest.java | 6 +-
.../apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java | 129 +-
library-udf/pom.xml | 115 +-
library-udf/src/assembly/tools/register-UDF.bat | 1 +
library-udf/src/assembly/tools/register-UDF.sh | 1 +
.../iotdb/library/dprofile/UDAFQuantile.java | 127 ++
.../library/dprofile/util/HeapLongKLLSketch.java | 356 +++++
.../dprofile/util/KLLSketchForQuantile.java | 172 +++
metrics/dropwizard-metrics/pom.xml | 2 +-
.../resources/conf/iotdb-confignode-metric.yml | 8 +-
.../resources/conf/iotdb-datanode-metric.yml | 8 +-
.../apache/iotdb/metrics/config/MetricConfig.java | 25 +-
.../iotdb/metrics/utils/IoTDBMetricsUtils.java | 7 +-
.../iotdb/metrics/config/MetricConfigTest.java | 2 +-
.../interface/src/test/resources/iotdb-metric.yml | 2 +-
metrics/micrometer-metrics/pom.xml | 2 +-
.../micrometer/MicrometerMetricManager.java | 2 +
.../resources/conf/iotdb-common.properties | 1258 +++++++---------
.../src/assembly/resources/sbin/iotdb-common.sh | 211 +++
.../commons/auth/authorizer/OpenIdAuthorizer.java | 41 +-
.../org/apache/iotdb/commons/auth/entity/User.java | 13 +-
.../iotdb/commons/concurrent/ThreadName.java | 2 +-
.../apache/iotdb/commons/conf/CommonConfig.java | 9 +-
.../iotdb/commons/conf/CommonDescriptor.java | 61 +-
.../apache/iotdb/commons/conf/IoTDBConstant.java | 55 +-
...titionRegionId.java => ConfigNodeRegionId.java} | 6 +-
.../iotdb/commons/consensus/ConsensusGroupId.java | 8 +-
.../commons/exception/ConfigurationException.java | 6 +-
.../commons/exception/IllegalPathException.java | 4 +-
.../commons/exception/sync/PipeSinkException.java | 4 +-
.../iotdb/commons/partition/DataPartition.java | 10 +-
.../iotdb/commons/partition/SchemaPartition.java | 3 +-
.../org/apache/iotdb/commons/path/PartialPath.java | 6 +-
.../apache/iotdb/commons/path/PathPatternNode.java | 58 +-
.../apache/iotdb/commons/path/PathPatternTree.java | 16 +-
.../iotdb/commons/sync/metadata/SyncMetadata.java | 2 +-
.../iotdb/commons/sync/pipe/TsFilePipeInfo.java | 5 +-
.../iotdb/commons/sync/pipesink/IoTDBPipeSink.java | 29 +-
.../iotdb/commons/sync/pipesink/PipeSink.java | 5 -
.../iotdb/commons/sync/utils/SyncConstant.java | 7 +-
.../org/apache/iotdb/commons/udf/UDFTable.java | 2 +-
.../commons/udf/service/UDFManagementService.java | 27 +-
.../org/apache/iotdb/commons/utils/AuthUtils.java | 20 +-
.../apache/iotdb/commons/utils/JVMCommonUtils.java | 2 +-
.../apache/iotdb/commons/utils/ProcessIdUtils.java | 26 +-
.../apache/iotdb/commons/utils/StatusUtils.java | 155 +-
.../iotdb/commons/path/PathPatternTreeTest.java | 19 +
.../commons/sync/metedata/SyncMetadataTest.java | 4 +-
.../iotdb/commons/utils/JVMCommonUtilsTest.java | 45 +-
.../commons/utils/ThriftCommonsSerDeUtilsTest.java | 2 +-
pom.xml | 22 +-
.../schemaregion/rocksdb/RSchemaRegion.java | 204 +--
.../schemaregion/rocksdb/mnode/RInternalMNode.java | 24 -
.../schemaregion/rocksdb/mnode/RMNode.java | 20 -
.../rocksdb/mnode/RMeasurementMNode.java | 26 -
schema-engine-tag/README.md | 8 +-
.../metadata/tagSchemaRegion/TagSchemaRegion.java | 127 +-
.../utils/PathTagConverterUtils.java | 6 +-
.../utils/ShowTimeSeriesResultUtils.java | 12 +-
.../src/assembly/resources/conf/datanode-env.bat | 25 +-
server/src/assembly/resources/conf/datanode-env.sh | 10 +
.../resources/conf/iotdb-datanode.properties | 49 +-
.../assembly/resources/conf/iotdb-rest.properties | 3 +
.../src/assembly/resources/conf/logback-tool.xml | 16 +-
.../src/assembly/resources/sbin/remove-datanode.sh | 45 +-
.../src/assembly/resources/sbin/start-datanode.bat | 42 +-
.../src/assembly/resources/sbin/start-datanode.sh | 194 ++-
.../assembly/resources/sbin/start-new-server.bat | 55 +-
.../assembly/resources/sbin/start-new-server.sh | 182 ++-
.../src/assembly/resources/sbin/start-server.bat | 126 --
server/src/assembly/resources/sbin/start-server.sh | 151 --
.../src/assembly/resources/sbin/stop-datanode.bat | 3 +
.../src/assembly/resources/sbin/stop-datanode.sh | 6 +-
server/src/assembly/resources/sbin/stop-server.bat | 38 -
server/src/assembly/resources/sbin/stop-server.sh | 74 -
.../assembly/resources/tools/detect-watermark.sh | 9 +-
.../assembly/resources/tools/rocksdb-transfer.bat | 2 +-
.../assembly/resources/tools/rocksdb-transfer.sh | 2 +-
.../resources/tools/schema/SchemaFileSketcher.sh | 9 +-
.../assembly/resources/tools/schema/mLogParser.sh | 9 +-
.../assembly/resources/tools/start-WalChecker.bat | 2 +-
.../assembly/resources/tools/start-WalChecker.sh | 11 +-
.../tools/tsfileToolSet/print-iotdb-data-dir.sh | 10 +-
.../tsfileToolSet/print-tsfile-resource-files.sh | 11 +-
.../tools/tsfileToolSet/print-tsfile-sketch.bat | 7 +-
.../tools/tsfileToolSet/print-tsfile-sketch.sh | 10 +-
.../tools/tsfileToolSet/print-tsfile-visdata.sh | 9 +-
.../resources/tools/tsfileToolSet/settle.sh | 9 +-
.../tools/tsfileToolSet/split-tsfile-tool.sh | 9 +-
.../tools/tsfileToolSet/validate-tsfile.sh | 9 +-
server/src/assembly/server.xml | 17 +
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 19 +-
.../iotdb/db/auth/ClusterAuthorityFetcher.java | 70 +-
.../iotdb/db/auth/StandaloneAuthorityFetcher.java | 5 +-
.../apache/iotdb/db/client/ConfigNodeClient.java | 35 +-
.../org/apache/iotdb/db/client/ConfigNodeInfo.java | 4 +-
.../iotdb/db/client/DataNodeClientPoolFactory.java | 14 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 283 ++--
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 337 ++---
.../org/apache/iotdb/db/conf/IoTDBStartCheck.java | 63 +-
.../db/conf/directories/DirectoryChecker.java | 106 ++
.../iotdb/db/conf/rest/IoTDBRestServiceConfig.java | 11 +
.../db/conf/rest/IoTDBRestServiceDescriptor.java | 3 +
.../db/consensus/DataRegionConsensusImpl.java | 2 +-
.../statemachine/DataRegionStateMachine.java | 16 +
.../statemachine/SchemaRegionStateMachine.java | 2 +-
.../statemachine/visitor/DataExecutionVisitor.java | 42 +-
.../org/apache/iotdb/db/constant/TestConstant.java | 2 +-
.../org/apache/iotdb/db/engine/StorageEngine.java | 1017 +------------
.../apache/iotdb/db/engine/StorageEngineV2.java | 231 +--
.../db/engine/cache/TimeSeriesMetadataCache.java | 5 +-
.../engine/compaction/CompactionTaskManager.java | 20 +-
.../RewriteCrossSpaceCompactionSelector.java | 8 +-
.../compaction/inner/InnerSpaceCompactionTask.java | 7 +-
.../sizetiered/SizeTieredCompactionSelector.java | 78 +-
.../inner/utils/MultiTsFileDeviceIterator.java | 4 +-
.../db/engine/compaction/log/TsFileIdentifier.java | 10 +-
.../impl/ReadChunkCompactionPerformer.java | 2 +-
.../writer/CrossSpaceCompactionWriter.java | 2 +-
.../writer/InnerSpaceCompactionWriter.java | 2 +-
.../iotdb/db/engine/flush/MemTableFlushTask.java | 20 +-
.../db/engine/flush/pool/FlushTaskPoolManager.java | 4 +-
.../iotdb/db/engine/load/AlignedChunkData.java | 339 ++---
.../org/apache/iotdb/db/engine/load/ChunkData.java | 25 +-
.../apache/iotdb/db/engine/load/DeletionData.java | 4 +-
.../iotdb/db/engine/load/LoadTsFileManager.java | 17 +-
.../iotdb/db/engine/load/NonAlignedChunkData.java | 258 ++--
.../apache/iotdb/db/engine/load/TsFileData.java | 3 +-
.../load/TsFileSplitter.java} | 431 ++----
.../iotdb/db/engine/memtable/AbstractMemTable.java | 204 +--
.../engine/memtable/AlignedWritableMemChunk.java | 10 +
.../memtable/AlignedWritableMemChunkGroup.java | 5 +
.../apache/iotdb/db/engine/memtable/IMemTable.java | 25 +-
.../db/engine/memtable/IWritableMemChunk.java | 6 +-
.../db/engine/memtable/IWritableMemChunkGroup.java | 2 +
.../iotdb/db/engine/memtable/WritableMemChunk.java | 9 +-
.../db/engine/memtable/WritableMemChunkGroup.java | 25 +-
.../db/engine/querycontext/QueryDataSource.java | 9 +-
.../selectinto/InsertTabletPlanGenerator.java | 252 ----
.../selectinto/InsertTabletPlansIterator.java | 190 ---
.../iotdb/db/engine/snapshot/SnapshotLoader.java | 2 +-
.../iotdb/db/engine/snapshot/SnapshotLogger.java | 2 +-
.../iotdb/db/engine/snapshot/SnapshotTaker.java | 18 +-
.../iotdb/db/engine/storagegroup/DataRegion.java | 871 +++--------
.../db/engine/storagegroup/DataRegionInfo.java | 6 +-
...hTimeManager.java => HashLastFlushTimeMap.java} | 236 ++-
...meManager.java => IDTableLastFlushTimeMap.java} | 180 +--
...lushTimeManager.java => ILastFlushTimeMap.java} | 34 +-
.../db/engine/storagegroup/TimePartitionInfo.java | 66 +
.../engine/storagegroup/TimePartitionManager.java | 165 +++
.../db/engine/storagegroup/TsFileManager.java | 6 +
.../db/engine/storagegroup/TsFileProcessor.java | 220 +--
.../db/engine/storagegroup/TsFileResource.java | 22 +-
.../engine/storagegroup/TsFileResourceStatus.java | 3 +-
.../dataregion/HashVirtualPartitioner.java | 58 -
.../dataregion/StorageGroupManager.java | 505 -------
.../storagegroup/timeindex/DeviceTimeIndex.java | 15 +-
.../storagegroup/timeindex/FileTimeIndex.java | 11 +-
.../engine/storagegroup/timeindex/ITimeIndex.java | 5 +
.../storagegroup/timeindex/V012FileTimeIndex.java | 6 +
.../db/engine/trigger/builtin/ForwardTrigger.java | 2 +-
.../db/engine/trigger/executor/TriggerEngine.java | 128 --
.../engine/trigger/executor/TriggerExecutor.java | 250 ----
.../trigger/service/TriggerClassLoaderManager.java | 95 --
.../engine/trigger/service/TriggerLogReader.java | 48 -
.../engine/trigger/service/TriggerLogWriter.java | 68 -
.../service/TriggerRegistrationInformation.java | 82 -
.../service/TriggerRegistrationService.java | 505 -------
.../trigger/sink/local/LocalIoTDBHandler.java | 12 +-
.../version/SimpleFileVersionController.java | 2 +-
.../iotdb/db/engine/version/VersionController.java | 12 +-
.../db/exception/ContinuousQueryException.java | 36 -
.../iotdb/db/exception/DataRegionException.java | 4 +-
.../exception/DiskSpaceInsufficientException.java | 2 +-
.../apache/iotdb/db/exception/MergeException.java | 2 +-
.../exception/StorageEngineReadonlyException.java | 2 +-
.../db/exception/SyncConnectionException.java | 6 +-
.../iotdb/db/exception/SystemCheckException.java | 34 -
.../index/UnsupportedIndexTypeException.java | 32 -
.../metadata/AliasAlreadyExistException.java | 2 +-
.../exception/metadata/DeleteFailedException.java | 40 -
.../metadata/MeasurementAlreadyExistException.java | 2 +-
.../metadata/MeasurementInBlackListException.java | 2 +-
.../metadata/PathAlreadyExistException.java | 2 +-
.../exception/metadata/PathNotExistException.java | 24 +-
.../SchemaDirCreationFailureException.java | 2 +-
.../metadata/StorageGroupAlreadySetException.java | 8 +-
.../metadata/StorageGroupNotSetException.java | 10 +-
.../schemafile/ColossalRecordException.java | 6 +-
.../SchemaFileLogCorruptedException.java | 2 +-
.../template/NoTemplateOnMNodeException.java | 2 +-
.../template/TemplateImcompatibeException.java | 4 +-
.../db/exception/query/OutOfTTLException.java | 8 +-
.../iotdb/db/exception/query/PathException.java | 38 -
.../query/UnSupportedFillTypeException.java | 2 +-
.../apache/iotdb/db/index/common/IndexType.java | 10 +-
.../iotdb/db/localconfignode/LocalConfigNode.java | 335 +----
.../db/localconfignode/LocalDataPartitionInfo.java | 4 +-
.../localconfignode/LocalDataPartitionTable.java | 2 +-
.../localconfignode/LocalSchemaPartitionTable.java | 2 +-
.../iotdb/db/metadata/LocalSchemaProcessor.java | 306 +---
.../apache/iotdb/db/metadata/MetadataConstant.java | 3 +-
.../db/metadata/cache/DataNodeSchemaCache.java | 47 +-
.../iotdb/db/metadata/cache/SchemaCacheEntry.java | 12 +-
.../idtable/AppendOnlyDiskSchemaManager.java | 3 +-
.../apache/iotdb/db/metadata/idtable/IDTable.java | 3 +-
.../db/metadata/idtable/IDTableHashmapImpl.java | 136 +-
.../iotdb/db/metadata/idtable/IDTableManager.java | 14 +-
.../db/metadata/idtable/entry/DeviceEntry.java | 37 +-
.../idtable/entry/InsertMeasurementMNode.java | 53 -
.../iotdb/db/metadata/logfile/MLogWriter.java | 43 +-
.../org/apache/iotdb/db/metadata/mnode/IMNode.java | 15 -
.../iotdb/db/metadata/mnode/IMeasurementMNode.java | 5 -
.../iotdb/db/metadata/mnode/InternalMNode.java | 32 -
.../org/apache/iotdb/db/metadata/mnode/MNode.java | 29 -
.../apache/iotdb/db/metadata/mnode/MNodeType.java | 2 +-
.../iotdb/db/metadata/mnode/MeasurementMNode.java | 28 -
.../db/metadata/mnode/StorageGroupEntityMNode.java | 4 +-
.../iotdb/db/metadata/mtree/ConfigMTree.java | 70 +-
.../iotdb/db/metadata/mtree/IMTreeBelowSG.java | 80 +-
.../db/metadata/mtree/MTreeBelowSGCachedImpl.java | 794 +++-------
.../db/metadata/mtree/MTreeBelowSGMemoryImpl.java | 601 +-------
.../mtree/snapshot/MemMTreeSnapshotUtil.java | 4 +-
.../db/metadata/mtree/store/CachedMTreeStore.java | 29 +-
.../mtree/store/disk/schemafile/ISchemaFile.java | 9 +-
.../store/disk/schemafile/MockSchemaFile.java | 7 +-
.../mtree/store/disk/schemafile/RecordUtils.java | 25 +-
.../mtree/store/disk/schemafile/SchemaFile.java | 86 +-
.../store/disk/schemafile/WrappedSegment.java | 2 +-
.../db/metadata/mtree/traverser/Traverser.java | 53 +-
.../mtree/traverser/collector/MNodeCollector.java | 2 +-
.../traverser/collector/StorageGroupCollector.java | 2 +-
.../traverser/counter/StorageGroupCounter.java | 2 +-
.../plan/schemaregion/SchemaRegionPlanType.java | 6 +-
.../plan/schemaregion/SchemaRegionPlanVisitor.java | 15 -
.../impl/ActivateTemplatePlanImpl.java | 44 -
.../impl/DeactivateTemplatePlanImpl.java | 6 +
.../impl/PreDeactivateTemplatePlanImpl.java | 6 +
.../RollbackPreDeactivateTemplatePlanImpl.java | 6 +
.../impl/SchemaRegionPlanDeserializer.java | 44 +-
.../schemaregion/impl/SchemaRegionPlanFactory.java | 29 +-
.../impl/SchemaRegionPlanSerializer.java | 49 -
.../impl/SchemaRegionPlanTxtSerializer.java | 29 -
.../schemaregion/impl/SetTemplatePlanImpl.java | 69 -
.../schemaregion/impl/UnsetTemplatePlanImpl.java | 69 -
.../schemaregion/write/IActivateTemplatePlan.java | 42 -
.../plan/schemaregion/write/ISetTemplatePlan.java | 45 -
.../schemaregion/write/IUnsetTemplatePlan.java | 45 -
.../db/metadata/schemaregion/ISchemaRegion.java | 33 +-
.../db/metadata/schemaregion/SchemaEngine.java | 6 +-
.../schemaregion/SchemaRegionMemoryImpl.java | 497 +------
.../schemaregion/SchemaRegionSchemaFileImpl.java | 807 +++-------
.../metadata/schemaregion/SchemaRegionUtils.java | 48 -
.../storagegroup/IStorageGroupSchemaManager.java | 82 +-
.../storagegroup/StorageGroupSchemaManager.java | 8 +-
.../apache/iotdb/db/metadata/tag/TagManager.java | 58 +-
.../metadata/template/ClusterTemplateManager.java | 31 +-
.../db/metadata/template/TemplateLogReader.java | 46 -
.../db/metadata/template/TemplateLogWriter.java | 64 -
.../db/metadata/template/TemplateManager.java | 384 -----
.../db/metadata/upgrade/MetadataUpgrader.java | 437 ------
.../iotdb/db/metadata/utils/MetaFormatUtils.java | 2 +-
.../apache/iotdb/db/metadata/utils/MetaUtils.java | 24 +-
.../db/mpp/common/header/ColumnHeaderConstant.java | 367 ++---
.../db/mpp/common/header/DatasetHeaderFactory.java | 4 +
.../mpp/common/schematree/ClusterSchemaTree.java | 34 +-
.../common/schematree/DeviceGroupSchemaTree.java | 7 +-
.../db/mpp/common/schematree/ISchemaTree.java | 13 +-
.../common/schematree/node/SchemaEntityNode.java | 1 +
.../iotdb/db/mpp/execution/QueryStateMachine.java | 9 +
.../iotdb/db/mpp/execution/StateMachine.java | 3 -
.../db/mpp/execution/exchange/ISourceHandle.java | 8 +
.../db/mpp/execution/exchange/LocalSinkHandle.java | 23 +-
.../mpp/execution/exchange/LocalSourceHandle.java | 33 +-
.../execution/exchange/MPPDataExchangeManager.java | 34 +-
.../exchange/MPPDataExchangeServiceMetrics.java | 2 +-
...MppDataExchangeServiceThriftHandlerMetrics.java | 2 +-
.../mpp/execution/exchange/SharedTsBlockQueue.java | 25 +-
.../db/mpp/execution/exchange/SinkHandle.java | 98 +-
.../db/mpp/execution/exchange/SourceHandle.java | 21 +-
.../execution/executor/RegionWriteExecutor.java | 32 +-
.../fragment/FragmentInstanceContext.java | 19 +-
.../fragment/FragmentInstanceExecution.java | 11 +-
.../fragment/FragmentInstanceFailureInfo.java | 212 +++
.../execution/fragment/FragmentInstanceInfo.java | 21 +-
.../fragment/FragmentInstanceManager.java | 35 +-
.../fragment/FragmentInstanceStateMachine.java | 14 +-
.../operator/process/AbstractIntoOperator.java | 3 +-
.../operator/process/DeviceViewOperator.java | 6 +-
.../operator/process/FilterAndProjectOperator.java | 10 +-
.../process/last/UpdateLastCacheOperator.java | 15 +-
.../operator/schema/CountMergeOperator.java | 65 +-
.../operator/schema/NodePathsCountOperator.java | 35 +-
.../operator/schema/SchemaFetchMergeOperator.java | 2 +-
.../operator/schema/SchemaFetchScanOperator.java | 2 +-
.../schema/SchemaQueryOrderByHeatOperator.java | 133 +-
.../schema/TimeSeriesSchemaScanOperator.java | 2 +
.../execution/schedule/AbstractDriverThread.java | 2 +-
.../db/mpp/execution/schedule/DriverScheduler.java | 2 +-
.../schedule/FragmentInstanceAbortedException.java | 2 +-
.../org/apache/iotdb/db/mpp/plan/Coordinator.java | 25 +-
.../apache/iotdb/db/mpp/plan/analyze/Analysis.java | 5 +
.../iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java | 122 +-
.../mpp/plan/analyze/ClusterPartitionFetcher.java | 20 +-
.../db/mpp/plan/analyze/ClusterSchemaFetcher.java | 209 ++-
.../db/mpp/plan/analyze/ExpressionAnalyzer.java | 33 +-
.../mpp/plan/analyze/ExpressionTypeAnalyzer.java | 12 +-
.../db/mpp/plan/analyze/IPartitionFetcher.java | 8 +-
.../plan/analyze/StandalonePartitionFetcher.java | 4 +-
.../mpp/plan/analyze/StandaloneSchemaFetcher.java | 2 +-
.../db/mpp/plan/analyze/cache/PartitionCache.java | 121 +-
.../iotdb/db/mpp/plan/constant/StatementType.java | 2 -
.../db/mpp/plan/execution/IQueryExecution.java | 4 +
.../db/mpp/plan/execution/QueryExecution.java | 99 +-
.../mpp/plan/execution/config/ConfigExecution.java | 10 +
.../plan/execution/config/ConfigTaskVisitor.java | 5 +-
.../config/executor/ClusterConfigTaskExecutor.java | 259 ++--
.../config/executor/IConfigTaskExecutor.java | 3 +-
.../executor/StandaloneConfigTaskExecutor.java | 7 +-
.../config/metadata/SetStorageGroupTask.java | 2 +-
...lusterTask.java => ShowClusterDetailsTask.java} | 78 +-
.../execution/config/metadata/ShowClusterTask.java | 12 +-
.../plan/execution/memory/MemorySourceHandle.java | 5 +
.../iotdb/db/mpp/plan/expression/Expression.java | 5 +
.../db/mpp/plan/expression/ExpressionType.java | 2 +
.../db/mpp/plan/expression/leaf/NullOperand.java | 101 ++
.../plan/expression/unary/NegationExpression.java | 2 +
.../visitor/ColumnTransformerVisitor.java | 17 +
.../plan/expression/visitor/ExpressionVisitor.java | 5 +
.../iotdb/db/mpp/plan/parser/ASTVisitor.java | 69 +-
.../db/mpp/plan/parser/StatementGenerator.java | 36 +-
.../plan/planner/LocalExecutionPlanContext.java | 13 +-
.../db/mpp/plan/planner/LocalExecutionPlanner.java | 9 +-
.../db/mpp/plan/planner/LogicalPlanBuilder.java | 6 +-
.../db/mpp/plan/planner/OperatorTreeGenerator.java | 7 +-
.../plan/planner/distribution/SourceRewriter.java | 43 +-
.../plan/planner/plan/node/PlanGraphPrinter.java | 49 +
.../plan/node/load/LoadSingleTsFileNode.java | 415 +-----
.../planner/plan/node/load/LoadTsFileNode.java | 19 +-
.../plan/node/load/LoadTsFilePieceNode.java | 13 +-
.../write/CreateAlignedTimeSeriesNode.java | 6 +-
.../metedata/write/CreateMultiTimeSeriesNode.java | 81 +-
.../node/metedata/write/CreateTimeSeriesNode.java | 6 +-
.../plan/node/metedata/write/MeasurementGroup.java | 96 +-
.../plan/node/source/LastQueryScanNode.java | 6 +-
.../planner/plan/node/write/InsertRowNode.java | 9 +-
.../planner/plan/node/write/InsertRowsNode.java | 6 +-
.../plan/node/write/InsertRowsOfOneDeviceNode.java | 41 +-
.../planner/plan/node/write/InsertTabletNode.java | 37 +-
.../scheduler/AbstractFragInsStateTracker.java | 33 +-
.../db/mpp/plan/scheduler/ClusterScheduler.java | 10 +-
.../scheduler/FixedRateFragInsStateTracker.java | 61 +-
.../scheduler/FragmentInstanceDispatcherImpl.java | 4 +-
.../plan/scheduler/IFragInstanceStateTracker.java | 6 +
.../mpp/plan/scheduler/SimpleQueryTerminator.java | 30 +-
.../db/mpp/plan/scheduler/StandaloneScheduler.java | 2 +-
.../scheduler/load/LoadTsFileDispatcherImpl.java | 8 +-
.../plan/scheduler/load/LoadTsFileScheduler.java | 230 ++-
.../crud/InsertMultiTabletsStatement.java | 2 +-
.../plan/statement/crud/InsertRowStatement.java | 4 +-
.../crud/InsertRowsOfOneDeviceStatement.java | 28 +-
.../plan/statement/crud/InsertRowsStatement.java | 2 +-
.../mpp/plan/statement/crud/InsertStatement.java | 1 -
.../plan/statement/crud/InsertTabletStatement.java | 17 +-
.../plan/statement/metadata/CountStatement.java | 2 +-
.../statement/metadata/CreateTriggerStatement.java | 2 +-
.../statement/metadata/DropTriggerStatement.java | 22 +-
.../statement/metadata/ShowClusterStatement.java | 10 +
.../statement/metadata/ShowDevicesStatement.java | 2 +-
.../metadata/ShowStorageGroupStatement.java | 4 +-
.../db/mpp/plan/statement/sys/FlushStatement.java | 2 +-
.../sys/sync/CreatePipeSinkStatement.java | 7 +-
...izableRowRecordListBackedMultiColumnWindow.java | 12 +
...SerializableTVListBackedSingleColumnWindow.java | 12 +
.../dag/adapter/EmptyRowIterator.java | 22 +-
.../dag/column/ColumnTransformer.java | 31 +
.../binary/CompareBinaryColumnTransformer.java | 7 +-
.../binary/CompareEqualToColumnTransformer.java | 2 +-
.../column/binary/LogicAndColumnTransformer.java | 30 +
.../binary/LogicBinaryColumnTransformer.java | 24 -
.../column/binary/LogicOrColumnTransformer.java | 30 +
.../dag/column/leaf/NullColumnTransformer.java} | 20 +-
.../ternary/CompareTernaryColumnTransformer.java | 17 +-
.../dag/column/unary/InColumnTransformer.java | 48 +-
.../column/unary/LogicNotColumnTransformer.java | 2 +-
.../dag/column/unary/RegularColumnTransformer.java | 2 +-
.../intermediate/ConstantIntermediateLayer.java | 3 +-
.../MultiInputColumnIntermediateLayer.java | 21 +-
...InputColumnMultiReferenceIntermediateLayer.java | 20 +-
...nputColumnSingleReferenceIntermediateLayer.java | 20 +-
.../transformation/dag/util/TransformUtils.java | 8 +-
.../iotdb/db/protocol/influxdb/dto/IoTDBPoint.java | 14 -
.../protocol/influxdb/handler/NewQueryHandler.java | 2 +-
.../influxdb/meta/AbstractInfluxDBMetaManager.java | 2 +-
.../influxdb/meta/NewInfluxDBMetaManager.java | 4 +-
.../influxdb/meta/TagInfluxDBMetaManager.java | 2 +-
.../db/protocol/influxdb/meta/TagInfoRecords.java | 24 -
.../protocol/influxdb/util/QueryResultUtils.java | 11 +-
.../protocol/rest/filter/AuthorizationFilter.java | 28 +-
.../rest/handler/AuthorizationHandler.java | 4 +-
.../db/protocol/rest/handler/ExceptionHandler.java | 10 +-
.../rest/handler/ExecuteStatementHandler.java | 52 +
.../protocol/rest/handler/QueryDataSetHandler.java | 37 +-
.../rest/handler/StatementConstructionHandler.java | 3 +-
.../protocol/rest/impl/GrafanaApiServiceImpl.java | 6 +-
.../db/protocol/rest/impl/RestApiServiceImpl.java | 28 +-
.../apache/iotdb/db/qp/constant/SQLConstant.java | 170 +--
.../apache/iotdb/db/qp/executor/IPlanExecutor.java | 79 -
.../apache/iotdb/db/qp/executor/PlanExecutor.java | 1559 +-------------------
.../db/qp/logical/crud/DeleteDataOperator.java | 15 +-
.../iotdb/db/qp/logical/crud/InsertOperator.java | 31 +-
.../db/qp/logical/sys/CreatePipeOperator.java | 12 +-
.../db/qp/logical/sys/CreatePipeSinkOperator.java | 11 +-
.../db/qp/logical/sys/CreateTriggerOperator.java | 92 --
.../db/qp/logical/sys/DeletePartitionOperator.java | 3 +-
.../iotdb/db/qp/logical/sys/DropPipeOperator.java | 4 +-
.../db/qp/logical/sys/DropPipeSinkOperator.java | 4 +-
.../db/qp/logical/sys/DropTriggerOperator.java | 50 -
.../iotdb/db/qp/logical/sys/ShowPipeOperator.java | 4 +-
.../db/qp/logical/sys/ShowPipeSinkOperator.java | 4 +-
.../qp/logical/sys/ShowPipeSinkTypeOperator.java | 4 +-
.../iotdb/db/qp/logical/sys/StartPipeOperator.java | 4 +-
.../db/qp/logical/sys/StartTriggerOperator.java | 50 -
.../iotdb/db/qp/logical/sys/StopPipeOperator.java | 4 +-
.../db/qp/logical/sys/StopTriggerOperator.java | 50 -
.../apache/iotdb/db/qp/physical/PhysicalPlan.java | 40 -
.../db/qp/physical/crud/DeletePartitionPlan.java | 53 -
.../iotdb/db/qp/physical/crud/DeletePlan.java | 221 ---
.../qp/physical/crud/InsertMultiTabletsPlan.java | 453 ------
.../iotdb/db/qp/physical/crud/InsertPlan.java | 239 ---
.../iotdb/db/qp/physical/crud/InsertRowPlan.java | 812 ----------
.../physical/crud/InsertRowsOfOneDevicePlan.java | 296 ----
.../iotdb/db/qp/physical/crud/InsertRowsPlan.java | 302 ----
.../db/qp/physical/crud/InsertTabletPlan.java | 895 -----------
.../db/qp/physical/sys/ActivateTemplatePlan.java | 4 +-
.../db/qp/physical/sys/AppendTemplatePlan.java | 2 +-
.../physical/sys/CreateAlignedTimeSeriesPlan.java | 8 +-
.../qp/physical/sys/CreateMultiTimeSeriesPlan.java | 6 +-
.../iotdb/db/qp/physical/sys/CreatePipePlan.java | 110 --
.../db/qp/physical/sys/CreatePipeSinkPlan.java | 98 --
.../db/qp/physical/sys/CreateTemplatePlan.java | 7 +-
.../db/qp/physical/sys/CreateTimeSeriesPlan.java | 6 +-
.../db/qp/physical/sys/CreateTriggerPlan.java | 166 ---
.../iotdb/db/qp/physical/sys/DropPipeSinkPlan.java | 45 -
.../iotdb/db/qp/physical/sys/DropTriggerPlan.java | 102 --
.../apache/iotdb/db/qp/physical/sys/FlushPlan.java | 4 +-
.../iotdb/db/qp/physical/sys/OperatePipePlan.java | 45 -
.../iotdb/db/qp/physical/sys/SetTemplatePlan.java | 3 +-
.../iotdb/db/qp/physical/sys/ShowPipePlan.java | 33 -
.../iotdb/db/qp/physical/sys/ShowPipeSinkPlan.java | 33 -
.../apache/iotdb/db/qp/physical/sys/ShowPlan.java | 3 -
.../iotdb/db/qp/physical/sys/StartTriggerPlan.java | 102 --
.../iotdb/db/qp/physical/sys/StopTriggerPlan.java | 102 --
.../db/qp/physical/sys/UnsetTemplatePlan.java | 3 +-
.../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java | 115 +-
.../db/query/control/QueryResourceManager.java | 6 +-
.../iotdb/db/query/control/SessionManager.java | 4 +-
.../iotdb/db/query/dataset/ShowDevicesDataSet.java | 4 +-
.../db/query/dataset/ShowTimeSeriesResult.java | 17 +-
.../db/query/dataset/ShowTimeseriesDataSet.java | 4 +-
.../db/query/executor/AggregationExecutor.java | 2 +-
.../iotdb/db/query/executor/LastQueryExecutor.java | 4 +-
.../iotdb/db/query/pool/QueryTaskManager.java | 4 +-
.../db/query/pool/RawQueryReadTaskPoolManager.java | 4 +-
.../org/apache/iotdb/db/rescon/SystemInfo.java | 46 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 45 +-
.../service/DataNodeInternalRPCServiceMetrics.java | 2 +-
.../db/service/DataNodeServerCommandLine.java | 12 +-
.../GetVersion.java} | 11 +-
.../java/org/apache/iotdb/db/service/IoTDB.java | 29 +-
.../apache/iotdb/db/service/IoTDBShutdownHook.java | 13 +-
.../org/apache/iotdb/db/service/MQTTService.java | 6 +-
.../java/org/apache/iotdb/db/service/NewIoTDB.java | 38 +-
.../apache/iotdb/db/service/RPCServiceMetrics.java | 2 +-
.../iotdb/db/service/RegionMigrateService.java | 88 +-
.../org/apache/iotdb/db/service/SettleService.java | 36 +-
.../org/apache/iotdb/db/service/UpgradeSevice.java | 18 +-
.../iotdb/db/service/metrics/ProcessMetrics.java | 10 +-
.../InternalServiceThriftHandlerMetrics.java | 2 +-
.../handler/RPCServiceThriftHandlerMetrics.java | 2 +-
.../service/thrift/impl/ClientRPCServiceImpl.java | 142 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 61 +-
.../service/thrift/impl/DataNodeRegionManager.java | 2 +-
.../thrift/impl/NewInfluxDBServiceImpl.java | 2 +-
.../db/service/thrift/impl/TSServiceImpl.java | 665 +--------
.../java/org/apache/iotdb/db/sync/SyncService.java | 79 +-
.../db/sync/common/ClusterSyncInfoFetcher.java | 16 +-
.../iotdb/db/sync/common/ISyncInfoFetcher.java | 3 -
.../apache/iotdb/db/sync/common/LocalSyncInfo.java | 12 +-
.../iotdb/db/sync/common/LocalSyncInfoFetcher.java | 12 +-
.../iotdb/db/sync/datasource/PipeOpManager.java | 2 +-
.../iotdb/db/sync/datasource/TsFileOpBlock.java | 5 +-
.../db/sync/externalpipe/ExtPipePluginManager.java | 4 +-
.../iotdb/db/sync/pipedata/DeletionPipeData.java | 14 +-
.../apache/iotdb/db/sync/pipedata/PipeData.java | 35 +-
.../iotdb/db/sync/pipedata/SchemaPipeData.java | 100 --
.../iotdb/db/sync/pipedata/TsFilePipeData.java | 32 +-
.../sync/pipedata/queue/BufferedPipeDataQueue.java | 9 +-
.../db/sync/receiver/load/DeletionLoader.java | 7 -
.../iotdb/db/sync/receiver/load/SchemaLoader.java | 71 -
.../iotdb/db/sync/receiver/load/TsFileLoader.java | 35 +-
.../db/sync/sender/pipe/ExternalPipeSink.java | 20 -
.../iotdb/db/sync/sender/pipe/TsFilePipe.java | 1 +
.../db/sync/transport/client/IoTDBSyncClient.java | 29 +-
.../db/sync/transport/client/SenderManager.java | 135 +-
.../sync/transport/client/SyncClientFactory.java | 12 +
.../db/sync/transport/server/ReceiverManager.java | 10 +-
.../apache/iotdb/db/tools/IoTDBDataDirViewer.java | 4 +-
.../apache/iotdb/db/tools/TsFileSelfCheckTool.java | 3 +-
.../apache/iotdb/db/tools/TsFileSketchTool.java | 196 ++-
.../iotdb/db/tools/TsFileSplitByPartitionTool.java | 10 +-
.../java/org/apache/iotdb/db/tools/WalChecker.java | 12 +-
.../db/tools/dataregion/DeviceMappingViewer.java | 63 -
.../db/tools/upgrade/TsFileOnlineUpgradeTool.java | 6 +-
.../db/tools/validate/TsFileValidationTool.java | 2 +-
.../iotdb/db/trigger/executor/TriggerExecutor.java | 3 +-
.../db/trigger/executor/TriggerFireVisitor.java | 8 +-
.../trigger/service/TriggerInformationUpdater.java | 8 +-
.../trigger/service/TriggerManagementService.java | 7 +-
.../apache/iotdb/db/utils/ErrorHandlingUtils.java | 8 +-
.../org/apache/iotdb/db/utils/FileLoaderUtils.java | 27 +-
.../java/org/apache/iotdb/db/utils/MemUtils.java | 54 -
.../apache/iotdb/db/utils/QueryDataSetUtils.java | 12 +-
.../apache/iotdb/db/utils/TimePartitionUtils.java | 16 +-
.../apache/iotdb/db/utils/TypeInferenceUtils.java | 6 +-
.../db/utils/datastructure/AlignedTVList.java | 4 +-
.../iotdb/db/utils/datastructure/BinaryTVList.java | 17 +-
.../db/utils/datastructure/BooleanTVList.java | 13 +-
.../iotdb/db/utils/datastructure/DoubleTVList.java | 13 +-
.../iotdb/db/utils/datastructure/FloatTVList.java | 13 +-
.../iotdb/db/utils/datastructure/IntTVList.java | 13 +-
.../iotdb/db/utils/datastructure/LongTVList.java | 13 +-
.../iotdb/db/utils/datastructure/TVList.java | 20 +-
.../apache/iotdb/db/utils/sync/SyncPipeUtil.java | 37 -
.../runtime/WindowEvaluationTaskPoolManager.java | 5 +-
.../java/org/apache/iotdb/db/wal/WALManager.java | 8 +-
.../org/apache/iotdb/db/wal/buffer/WALEntry.java | 23 +-
.../apache/iotdb/db/wal/buffer/WALEntryType.java | 7 +-
.../apache/iotdb/db/wal/buffer/WALInfoEntry.java | 20 +-
.../iotdb/db/wal/exception/WALException.java | 6 +-
.../org/apache/iotdb/db/wal/node/IWALNode.java | 11 -
.../org/apache/iotdb/db/wal/node/WALFakeNode.java | 19 -
.../java/org/apache/iotdb/db/wal/node/WALNode.java | 46 +-
.../iotdb/db/wal/recover/WALNodeRecoverTask.java | 2 +-
.../iotdb/db/wal/recover/WALRecoverManager.java | 6 +-
.../db/wal/recover/file/TsFilePlanRedoer.java | 103 +-
.../file/UnsealedTsFileRecoverPerformer.java | 13 +-
.../iotdb/db/auth/AuthorizerManagerTest.java | 4 +-
.../org/apache/iotdb/db/auth/entity/UserTest.java | 4 +-
.../engine/compaction/AbstractCompactionTest.java | 69 +-
.../engine/compaction/CompactionSchedulerTest.java | 386 ++---
.../ReadPointCompactionPerformerTest.java | 158 +-
.../cross/CrossSpaceCompactionExceptionTest.java | 3 +-
.../compaction/cross/CrossSpaceCompactionTest.java | 20 +-
.../cross/CrossSpaceCompactionValidationTest.java | 3 +-
.../cross/RewriteCompactionFileSelectorTest.java | 14 +-
.../RewriteCrossSpaceCompactionRecoverTest.java | 3 +-
.../cross/RewriteCrossSpaceCompactionTest.java | 16 +-
.../inner/InnerCompactionEmptyTsFileTest.java | 1 +
.../inner/InnerCompactionMoreDataTest.java | 63 +-
.../inner/InnerCompactionSchedulerTest.java | 13 +-
.../compaction/inner/InnerCompactionTest.java | 20 +-
.../compaction/inner/InnerSeqCompactionTest.java | 6 +-
.../ReadChunkCompactionPerformerNoAlignedTest.java | 18 +-
.../inner/ReadChunkCompactionPerformerOldTest.java | 2 +-
.../SizeTieredCompactionSelectorTest.java | 4 +-
.../inner/sizetiered/SizeTieredCompactionTest.java | 8 +-
...eCrossSpaceCompactionRecoverCompatibleTest.java | 3 +-
.../SizeTieredCompactionRecoverCompatibleTest.java | 3 +-
.../compaction/utils/CompactionCheckerUtils.java | 9 +-
.../compaction/utils/CompactionConfigRestorer.java | 2 +-
.../utils/MultiTsFileDeviceIteratorTest.java | 120 ++
.../db/engine/memtable/MemTableFlushTaskTest.java | 6 +-
.../db/engine/memtable/MemTableTestUtils.java | 69 +-
.../db/engine/memtable/PrimitiveMemTableTest.java | 65 +-
.../db/engine/storagegroup/DataRegionTest.java | 182 ++-
.../storagegroup/FileNodeManagerBenchmark.java | 132 --
.../storagegroup/IDTableLastFlushTimeMapTest.java | 129 ++
.../engine/storagegroup/LastFlushTimeMapTest.java | 223 +++
.../storagegroup/StorageGroupProcessorTest.java | 871 -----------
.../iotdb/db/engine/storagegroup/TTLTest.java | 175 +--
.../storagegroup/TimePartitionManagerTest.java | 129 ++
.../engine/storagegroup/TsFileProcessorTest.java | 476 ------
.../engine/storagegroup/TsFileProcessorV2Test.java | 12 +-
.../dataregion/HashVirtualPartitionerTest.java | 63 -
.../LocalConfigNodeMultiDataRegionTest.java | 4 -
.../apache/iotdb/db/metadata/SchemaBasicTest.java | 1539 ++-----------------
.../org/apache/iotdb/db/metadata/TemplateTest.java | 322 +---
.../db/metadata/cache/DataNodeSchemaCacheTest.java | 7 +-
.../db/metadata/idtable/IDTableFlushTimeTest.java | 226 ---
.../db/metadata/idtable/IDTableLogFileTest.java | 239 ++-
.../db/metadata/idtable/IDTableRecoverTest.java | 354 ++---
.../iotdb/db/metadata/idtable/IDTableTest.java | 1479 ++++++++++---------
.../db/metadata/idtable/LastQueryWithIDTable.java | 285 ++--
.../iotdb/db/metadata/mtree/ConfigMTreeTest.java | 8 +-
.../iotdb/db/metadata/mtree/MTreeBelowSGTest.java | 2 +-
.../plan/SchemaRegionPlanCompatibilityTest.java | 57 +-
.../schemaRegion/SchemaRegionBasicTest.java | 274 +++-
.../schemaRegion/SchemaRegionSnapshotTest.java | 168 ---
.../db/metadata/upgrade/MetadataUpgradeTest.java | 318 ----
.../common/schematree/ClusterSchemaTreeTest.java | 25 +
.../db/mpp/execution/exchange/SinkHandleTest.java | 28 +-
.../FragmentInstanceFailureInfoSerdeTest.java | 85 ++
.../mpp/execution/operator/OperatorMemoryTest.java | 11 +-
.../operator/schema/CountMergeOperatorTest.java | 4 +-
.../schema/SchemaQueryScanOperatorTest.java | 27 +-
.../schedule/DefaultDriverSchedulerTest.java | 3 +-
.../db/mpp/plan/StandaloneCoordinatorTest.java | 2 -
.../iotdb/db/mpp/plan/analyze/AnalyzeTest.java | 10 +-
.../db/mpp/plan/analyze/FakeSchemaFetcherImpl.java | 2 +-
.../mpp/plan/analyze/cache/PartitionCacheTest.java | 6 +-
.../iotdb/db/mpp/plan/plan/LogicalPlannerTest.java | 2 +-
.../db/mpp/plan/plan/QueryLogicalPlanUtil.java | 6 +-
.../distribution/AggregationDistributionTest.java | 139 +-
.../distribution/DistributionPlannerBasicTest.java | 126 +-
.../distribution/NoDataRegionPlanningTest.java | 37 +-
.../iotdb/db/mpp/plan/plan/distribution/Util.java | 492 ++++--
.../plan/node/write/WritePlanNodeSplitTest.java | 18 +-
.../plan/scheduler/StandaloneSchedulerTest.java | 2 -
.../db/protocol/rest/IoTDBRestServiceTest.java | 18 +-
.../java/org/apache/iotdb/db/qp/PlannerTest.java | 71 +-
.../iotdb/db/qp/logical/LogicalPlanSmallTest.java | 4 +-
.../iotdb/db/qp/other/TSPlanContextAuthorTest.java | 2 +-
.../iotdb/db/qp/physical/ConcatOptimizerTest.java | 138 --
.../qp/physical/InsertRowsOfOneDevicePlanTest.java | 75 -
.../db/qp/physical/PhysicalPlanSerializeTest.java | 326 ----
.../iotdb/db/qp/physical/PhysicalPlanTest.java | 1484 -------------------
.../iotdb/db/qp/physical/SerializationTest.java | 151 --
.../iotdb/db/qp/physical/SerializedSizeTest.java | 130 --
.../iotdb/db/query/dataset/ListDataSetTest.java | 12 +-
.../db/query/dataset/ShowTimeSeriesResultTest.java | 4 +-
.../iotdb/db/query/dataset/SingleDataSetTest.java | 199 ++-
.../org/apache/iotdb/db/service/DaemonTest.java} | 21 +-
.../db/sync/persistence/LocalSyncInfoTest.java | 16 +-
.../sync/pipedata/BufferedPipeDataQueueTest.java | 491 +++---
.../iotdb/db/sync/pipedata/PipeDataTest.java | 11 -
.../org/apache/iotdb/db/tools/MLogParserTest.java | 41 +-
.../iotdb/db/tools/TsFileAndModSettleToolTest.java | 390 +++--
.../org/apache/iotdb/db/tools/WalCheckerTest.java | 28 +-
.../apache/iotdb/db/utils/EnvironmentUtils.java | 37 +-
.../org/apache/iotdb/db/utils/MemUtilsTest.java | 35 +-
.../iotdb/db/utils/TsFileRewriteToolTest.java | 27 +-
.../iotdb/db/utils/TypeInferenceUtilsTest.java | 2 +
.../db/utils/datastructure/PrecisionTest.java | 143 --
.../db/utils/writelog/LogWriterReaderTest.java | 50 +-
.../db/utils/writelog/MultiFileLogReaderTest.java | 15 +-
.../org/apache/iotdb/db/wal/WALManagerTest.java | 52 +-
.../db/wal/allocation/ElasticStrategyTest.java | 16 +-
.../db/wal/allocation/FirstCreateStrategyTest.java | 18 +-
.../db/wal/allocation/RoundRobinStrategyTest.java | 16 +-
.../iotdb/db/wal/buffer/WALBufferCommonTest.java | 68 +-
.../org/apache/iotdb/db/wal/io/WALFileTest.java | 119 +-
.../apache/iotdb/db/wal/node/WALFakeNodeTest.java | 22 +-
.../org/apache/iotdb/db/wal/node/WALNodeTest.java | 90 +-
.../db/wal/recover/WALRecoverManagerTest.java | 116 +-
.../file/SealedTsFileRecoverPerformerTest.java | 32 +-
.../db/wal/recover/file/TsFilePlanRedoerTest.java | 244 +--
.../file/UnsealedTsFileRecoverPerformerTest.java | 60 +-
.../iotdb-common.properties} | 14 +-
...{iotdb-metric.yml => iotdb-datanode-metric.yml} | 2 +-
.../datanode1conf/iotdb-datanode.properties | 7 +-
.../resources/datanode1conf/iotdb-rest.properties | 45 +-
.../iotdb-common.properties} | 14 +-
...{iotdb-metric.yml => iotdb-datanode-metric.yml} | 2 +-
.../datanode2conf/iotdb-datanode.properties | 7 +-
.../resources/datanode2conf/iotdb-rest.properties | 43 -
.../iotdb-common.properties} | 14 +-
...{iotdb-metric.yml => iotdb-datanode-metric.yml} | 2 +-
.../datanode3conf/iotdb-datanode.properties | 11 +-
.../resources/datanode3conf/iotdb-rest.properties | 45 +-
.../src/test/resources/iotdb-datanode.properties | 2 -
server/src/test/resources/iotdb-rest.properties | 3 +
.../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java | 40 +-
.../main/java/org/apache/iotdb/rpc/RpcUtils.java | 8 +-
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 305 ++--
.../java/org/apache/iotdb/session/ISession.java | 13 +
.../java/org/apache/iotdb/session/Session.java | 24 +-
.../apache/iotdb/session/SessionConnection.java | 9 +-
.../org/apache/iotdb/session/SessionDataSet.java | 12 +-
.../org/apache/iotdb/session/pool/SessionPool.java | 63 +
.../src/test/resources/iotdb-datanode.properties | 11 +-
session/src/test/resources/iotdb-engine.properties | 20 -
session/src/test/resources/iotdb-rest.properties | 3 +
site/src/main/.vuepress/config.js | 64 +-
.../src/test/resources/iotdb-datanode.properties | 11 +-
.../src/test/resources/iotdb-engine.properties | 21 -
.../apache/iotdb/spark/db/EnvironmentUtils.java | 20 +-
.../iotdb/spark/tsfile/qp/common/SQLConstant.java | 123 +-
.../apache/iotdb/spark/tsfile/DefaultSource.scala | 10 +-
.../iotdb/spark/tsfile/NarrowConverter.scala | 181 ++-
.../org/apache/iotdb/spark/tsfile/TSFileSuit.scala | 30 +-
test/e2e/cases/cli/res/init.sql | 4 +-
.../test/java/org/apache/iotdb/db/sync/SyncIT.java | 6 +-
thrift-commons/src/main/thrift/common.thrift | 2 +-
.../src/main/thrift/confignode.thrift | 53 +-
thrift/src/main/thrift/client.thrift | 4 +-
thrift/src/main/thrift/datanode.thrift | 12 +-
.../iotdb/tsfile/file/header/ChunkHeader.java | 21 +
.../iotdb/tsfile/file/header/PageHeader.java | 10 +-
.../file/metadata/enums/CompressionType.java | 21 +-
.../iotdb/tsfile/read/TsFileDeviceIterator.java | 34 +-
.../iotdb/tsfile/read/TsFileSequenceReader.java | 130 +-
.../org/apache/iotdb/tsfile/read/common/Path.java | 9 +-
.../iotdb/tsfile/read/common/block/TsBlock.java | 5 +-
.../read/common/block/column/NullColumn.java | 87 +-
.../read/controller/MetadataQuerierByFileImpl.java | 3 +-
.../apache/iotdb/tsfile/utils/FilePathUtils.java | 4 +-
.../iotdb/tsfile/utils/TsFileGeneratorUtils.java | 2 +-
.../apache/iotdb/tsfile/write/TsFileWriter.java | 4 +-
.../write/chunk/AlignedChunkGroupWriterImpl.java | 6 +-
.../tsfile/write/chunk/AlignedChunkWriterImpl.java | 4 +
.../iotdb/tsfile/write/chunk/ChunkWriterImpl.java | 1 +
.../tsfile/write/chunk/IChunkGroupWriter.java | 4 +-
.../iotdb/tsfile/write/chunk/TimeChunkWriter.java | 1 +
.../iotdb/tsfile/write/chunk/ValueChunkWriter.java | 12 +-
.../iotdb/tsfile/write/writer/TsFileIOWriter.java | 30 +-
.../write/writer/TsFileIOWriterEndFileTest.java | 49 +
.../write/writer/tsmiterator/DiskTSMIterator.java | 7 +-
.../write/writer/tsmiterator/TSMIterator.java | 9 +-
.../tsfile/common/block/TsBlockSerdeTest.java | 4 +-
...easurementChunkMetadataListMapIteratorTest.java | 2 +-
.../iotdb/tsfile/read/ReadInPartitionTest.java | 22 +-
.../org/apache/iotdb/tsfile/read/ReadTest.java | 54 +-
.../iotdb/tsfile/read/TimePlainEncodeReadTest.java | 55 +-
.../tsfile/read/TimeSeriesMetadataReadTest.java | 4 +-
.../apache/iotdb/tsfile/read/TsFileReaderTest.java | 126 +-
.../tsfile/read/controller/ChunkLoaderTest.java | 2 +-
.../controller/IMetadataQuerierByFileImplTest.java | 16 +-
.../read/filter/IExpressionOptimizerTest.java | 30 +-
.../read/query/executor/QueryExecutorTest.java | 32 +-
.../read/query/timegenerator/ReadWriteTest.java | 8 +-
.../query/timegenerator/ReaderByTimestampTest.java | 2 +-
.../timegenerator/TimeGeneratorReadEmptyTest.java | 8 +-
.../timegenerator/TimeGeneratorReadWriteTest.java | 8 +-
.../query/timegenerator/TimeGeneratorTest.java | 6 +-
.../iotdb/tsfile/read/reader/ChunkReaderTest.java | 2 +-
.../tsfile/read/reader/FakedTimeGenerator.java | 9 +-
.../iotdb/tsfile/read/reader/ReaderTest.java | 8 +-
.../tsfile/write/DefaultSchemaTemplateTest.java | 2 +-
.../tsfile/write/MetadataIndexConstructorTest.java | 6 +-
...SameMeasurementsWithDifferentDataTypesTest.java | 4 +-
.../iotdb/tsfile/write/TsFileReadWriteTest.java | 4 +-
.../iotdb/tsfile/write/TsFileWriteApiTest.java | 264 ++++
.../iotdb/tsfile/write/TsFileWriterTest.java | 10 +-
.../org/apache/iotdb/tsfile/write/WriteTest.java | 2 +-
.../write/writer/ForceAppendTsFileWriterTest.java | 4 +-
.../write/writer/RestorableTsFileIOWriterTest.java | 36 +-
.../writer/TsFileIOWriterMemoryControlTest.java | 11 +-
.../org/apache/iotdb/udf/api/access/RowWindow.java | 3 +-
.../iotdb/udf/api/collector/PointCollector.java | 4 +-
.../strategy/SessionTimeWindowAccessStrategy.java | 10 +-
zeppelin-interpreter/IoTDB-Zeppelin-Demo.zpln | 2 +-
.../zeppelin/iotdb/IoTDBInterpreterTest.java | 35 +-
1295 files changed, 25944 insertions(+), 44092 deletions(-)
delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md
create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml
delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md
create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml
copy .github/workflows/{cluster-it.yml => cluster-it-1c1d.yml} (83%)
rename .github/workflows/{cluster-it.yml => cluster-it-1c3d.yml} (90%)
copy .github/workflows/{client-go.yml => site-build.yml} (51%)
delete mode 100644 .github/workflows/standalone-it-for-mpp.yml
copy confignode/src/assembly/resources/conf/logback-tool.xml => cli/src/assembly/resources/conf/logback-cli.xml (62%)
mode change 100644 => 100755 cli/src/assembly/resources/sbin/start-cli.sh
mode change 100644 => 100755 confignode/src/assembly/resources/sbin/remove-confignode.sh
rename confignode/src/main/java/org/apache/iotdb/confignode/consensus/statemachine/{PartitionRegionStateMachine.java => ConfigNodeRegionStateMachine.java} (69%)
rename confignode/src/main/java/org/apache/iotdb/confignode/exception/{NotAvailableRegionGroupException.java => NoAvailableRegionGroupException.java} (56%)
rename server/src/main/java/org/apache/iotdb/db/exception/QueryIdNotExsitException.java => confignode/src/main/java/org/apache/iotdb/confignode/manager/load/balancer/router/mcf/MCFEdge.java (69%)
create mode 100644 confignode/src/main/java/org/apache/iotdb/confignode/manager/load/balancer/router/mcf/MCFLeaderBalancer.java
create mode 100644 confignode/src/test/java/org/apache/iotdb/confignode/manager/load/balancer/router/mcf/MCFLeaderBalancerTest.java
copy confignode/src/test/resources/confignode1conf/{iotdb-confignode.properties => iotdb-common.properties} (76%)
rename confignode/src/test/resources/confignode1conf/{iotdb-metric.yml => iotdb-confignode-metric.yml} (97%)
copy confignode/src/test/resources/confignode2conf/{iotdb-confignode.properties => iotdb-common.properties} (76%)
rename confignode/src/test/resources/confignode2conf/{iotdb-metric.yml => iotdb-confignode-metric.yml} (97%)
copy confignode/src/test/resources/confignode3conf/{iotdb-confignode.properties => iotdb-common.properties} (76%)
rename confignode/src/test/resources/confignode3conf/{iotdb-metric.yml => iotdb-confignode-metric.yml} (97%)
rename consensus/src/main/java/org/apache/iotdb/consensus/{standalone/StandAloneConsensus.java => simple/SimpleConsensus.java} (90%)
rename consensus/src/main/java/org/apache/iotdb/consensus/{standalone/StandAloneServerImpl.java => simple/SimpleServerImpl.java} (92%)
rename consensus/src/test/java/org/apache/iotdb/consensus/{standalone => simple}/RecoveryTest.java (95%)
rename consensus/src/test/java/org/apache/iotdb/consensus/{standalone/StandAloneConsensusTest.java => simple/SimpleConsensusTest.java} (96%)
copy {server => cross-tests}/src/test/resources/iotdb-datanode.properties (75%)
delete mode 100644 cross-tests/src/test/resources/iotdb-engine.properties
copy docs/UserGuide/Data-Concept/{Compression.md => Deadband-Process.md} (75%)
rename docs/UserGuide/{Maintenance-Tools => Edge-Cloud-Collaboration}/Sync-Tool.md (90%)
rename docs/UserGuide/{Reference => FAQ}/Frequently-asked-questions.md (100%)
rename docs/UserGuide/{Alert => Monitor-Alert}/Alerting.md (99%)
rename docs/UserGuide/{Maintenance-Tools => Monitor-Alert}/Metric-Tool.md (69%)
rename docs/UserGuide/{Alert => Process-Data}/Triggers.md (91%)
copy server/src/assembly/resources/conf/logback-tool.xml => docs/UserGuide/Write-Data/MQTT.md (88%)
copy docs/UserGuide/{UDF-Library/M4.md => Write-Data/REST-API.md} (52%)
copy docs/UserGuide/{UDF-Library/M4.md => Write-Data/Session.md} (50%)
copy docs/zh/UserGuide/Data-Concept/{Compression.md => Deadband-Process.md} (77%)
rename docs/zh/UserGuide/{Maintenance-Tools => Edge-Cloud-Collaboration}/Sync-Tool.md (90%)
rename docs/zh/UserGuide/{Reference => FAQ}/Frequently-asked-questions.md (100%)
rename docs/zh/UserGuide/{Alert => Monitor-Alert}/Alerting.md (99%)
rename docs/zh/UserGuide/{Maintenance-Tools => Monitor-Alert}/Metric-Tool.md (64%)
rename docs/zh/UserGuide/{Alert => Process-Data}/Triggers.md (93%)
copy server/src/assembly/resources/conf/logback-tool.xml => docs/zh/UserGuide/Write-Data/MQTT.md (89%)
copy docs/{UserGuide/UDF-Library/M4.md => zh/UserGuide/Write-Data/REST-API.md} (51%)
copy docs/{UserGuide/UDF-Library/M4.md => zh/UserGuide/Write-Data/Session.md} (52%)
create mode 100644 example/udf/src/main/java/org/apache/iotdb/udf/SlidingTimeWindowAccessStrategyExample.java
create mode 100644 grafana-plugin/pkg/plugin/iotdb_resource_handler.go
create mode 100644 grafana-plugin/src/img/addIoTDBDataSource.png
create mode 100644 grafana-plugin/src/img/showData.png
copy server/src/main/java/org/apache/iotdb/db/qp/physical/sys/ShowPipeSinkTypePlan.java => integration-test/src/main/java/org/apache/iotdb/it/env/EnvType.java (77%)
rename integration-test/src/main/java/org/apache/iotdb/it/env/{StandaloneOnMppEnv.java => SimpleEnv.java} (67%)
create mode 100644 integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/IoTDBPartitionDurableTest.java
rename integration-test/src/test/java/org/apache/iotdb/confignode/it/{IoTDBClusterPartitionIT.java => partition/IoTDBPartitionGetterIT.java} (52%)
create mode 100644 integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/IoTDBPartitionInheritPolicyTest.java
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBDatetimeFormatIT.java (80%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBEncodingIT.java (77%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBExecuteBatchIT.java (77%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBFloatPrecisionIT.java (85%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBInsertMultiRowIT.java (73%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBInsertNaNIT.java (81%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBInsertNullIT.java (85%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBInsertWithQueryIT.java (93%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBPartialInsertionIT.java (73%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBQueryWithRecreatedTimeseriesIT.java (82%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBRecoverIT.java (74%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBRecoverUnclosedIT.java (70%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBRestartIT.java (57%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it}/IoTDBSettleIT.java (80%)
copy integration-test/src/test/java/org/apache/iotdb/db/it/{IoTDBExampleIT.java => last/IoTDBLastWithTTLIT.java} (50%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it/query}/IoTDBArithmeticIT.java (60%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it/query}/IoTDBFuzzyQueryIT.java (66%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it/query}/IoTDBInIT.java (79%)
create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBNullOperandIT.java
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it/query}/IoTDBQueryDemoIT.java (51%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it/query}/IoTDBSelectCompareExpressionIT.java (97%)
rename {integration/src/test/java/org/apache/iotdb/db/integration => integration-test/src/test/java/org/apache/iotdb/db/it/query}/IoTDBSelectSchemaIT.java (91%)
copy {server => integration-test}/src/test/resources/iotdb-datanode.properties (77%)
delete mode 100644 integration-test/src/test/resources/iotdb-engine.properties
delete mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/IoTDBFilePathUtilsIT.java
delete mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/IoTDBManageTsFileResourceIT.java
delete mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/IoTDBTriggerExecutionIT.java
delete mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/IoTDBTriggerForwardIT.java
delete mode 100644 integration/src/test/java/org/apache/iotdb/db/integration/IoTDBTriggerManagementIT.java
copy {server => integration}/src/test/resources/iotdb-datanode.properties (77%)
delete mode 100644 integration/src/test/resources/iotdb-engine.properties
create mode 100644 library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFQuantile.java
create mode 100644 library-udf/src/main/java/org/apache/iotdb/library/dprofile/util/HeapLongKLLSketch.java
create mode 100644 library-udf/src/main/java/org/apache/iotdb/library/dprofile/util/KLLSketchForQuantile.java
create mode 100755 node-commons/src/assembly/resources/sbin/iotdb-common.sh
rename node-commons/src/main/java/org/apache/iotdb/commons/consensus/{PartitionRegionId.java => ConfigNodeRegionId.java} (87%)
rename server/src/main/java/org/apache/iotdb/db/engine/storagegroup/dataregion/VirtualPartitioner.java => node-commons/src/main/java/org/apache/iotdb/commons/utils/ProcessIdUtils.java (57%)
rename server/src/main/java/org/apache/iotdb/db/engine/trigger/executor/TriggerEvent.java => node-commons/src/test/java/org/apache/iotdb/commons/utils/JVMCommonUtilsTest.java (54%)
delete mode 100755 server/src/assembly/resources/sbin/start-server.bat
delete mode 100755 server/src/assembly/resources/sbin/start-server.sh
delete mode 100755 server/src/assembly/resources/sbin/stop-server.bat
delete mode 100755 server/src/assembly/resources/sbin/stop-server.sh
create mode 100644 server/src/main/java/org/apache/iotdb/db/conf/directories/DirectoryChecker.java
copy server/src/main/java/org/apache/iotdb/db/{mpp/plan/planner/plan/node/load/LoadSingleTsFileNode.java => engine/load/TsFileSplitter.java} (50%)
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/selectinto/InsertTabletPlanGenerator.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/selectinto/InsertTabletPlansIterator.java
mode change 100755 => 100644 server/src/main/java/org/apache/iotdb/db/engine/storagegroup/DataRegion.java
rename server/src/main/java/org/apache/iotdb/db/engine/storagegroup/{LastFlushTimeManager.java => HashLastFlushTimeMap.java} (52%)
rename server/src/main/java/org/apache/iotdb/db/engine/storagegroup/{IDTableFlushTimeManager.java => IDTableLastFlushTimeMap.java} (50%)
rename server/src/main/java/org/apache/iotdb/db/engine/storagegroup/{ILastFlushTimeManager.java => ILastFlushTimeMap.java} (67%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TimePartitionInfo.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TimePartitionManager.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/storagegroup/dataregion/HashVirtualPartitioner.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/storagegroup/dataregion/StorageGroupManager.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/trigger/executor/TriggerEngine.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/trigger/executor/TriggerExecutor.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerClassLoaderManager.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerLogReader.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerLogWriter.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerRegistrationInformation.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/engine/trigger/service/TriggerRegistrationService.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/exception/ContinuousQueryException.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/exception/SystemCheckException.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/exception/index/UnsupportedIndexTypeException.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/exception/metadata/DeleteFailedException.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/exception/query/PathException.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/impl/ActivateTemplatePlanImpl.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/impl/SetTemplatePlanImpl.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/impl/UnsetTemplatePlanImpl.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/write/IActivateTemplatePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/write/ISetTemplatePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/write/IUnsetTemplatePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/template/TemplateLogReader.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/template/TemplateLogWriter.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/template/TemplateManager.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/metadata/upgrade/MetadataUpgrader.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/mpp/execution/fragment/FragmentInstanceFailureInfo.java
copy server/src/main/java/org/apache/iotdb/db/mpp/plan/execution/config/metadata/{ShowClusterTask.java => ShowClusterDetailsTask.java} (56%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/leaf/NullOperand.java
rename integration-test/src/main/java/org/apache/iotdb/it/env/StandaloneDataNodeWrapper.java => server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/adapter/EmptyRowIterator.java (64%)
rename server/src/main/java/org/apache/iotdb/db/{exception/TriggerManagementException.java => mpp/transformation/dag/column/leaf/NullColumnTransformer.java} (63%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/protocol/rest/handler/ExecuteStatementHandler.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/logical/sys/CreateTriggerOperator.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/logical/sys/DropTriggerOperator.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/logical/sys/StartTriggerOperator.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/logical/sys/StopTriggerOperator.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/DeletePartitionPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/DeletePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/InsertMultiTabletsPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/InsertPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/InsertRowPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/InsertRowsOfOneDevicePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/InsertRowsPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/InsertTabletPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/CreatePipePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/CreatePipeSinkPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/CreateTriggerPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/DropPipeSinkPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/DropTriggerPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/OperatePipePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/ShowPipePlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/ShowPipeSinkPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/StartTriggerPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/sys/StopTriggerPlan.java
rename server/src/main/java/org/apache/iotdb/db/{qp/physical/sys/ShowPipeSinkTypePlan.java => service/GetVersion.java} (77%)
delete mode 100644 server/src/main/java/org/apache/iotdb/db/sync/pipedata/SchemaPipeData.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/sync/receiver/load/SchemaLoader.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/tools/dataregion/DeviceMappingViewer.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/engine/compaction/utils/MultiTsFileDeviceIteratorTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/engine/storagegroup/FileNodeManagerBenchmark.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/engine/storagegroup/IDTableLastFlushTimeMapTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/engine/storagegroup/LastFlushTimeMapTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessorTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/engine/storagegroup/TimePartitionManagerTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/engine/storagegroup/TsFileProcessorTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/engine/storagegroup/dataregion/HashVirtualPartitionerTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/metadata/idtable/IDTableFlushTimeTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/metadata/schemaRegion/SchemaRegionSnapshotTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/metadata/upgrade/MetadataUpgradeTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/mpp/execution/fragment/FragmentInstanceFailureInfoSerdeTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/qp/physical/ConcatOptimizerTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/qp/physical/InsertRowsOfOneDevicePlanTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/qp/physical/PhysicalPlanSerializeTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/qp/physical/PhysicalPlanTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/qp/physical/SerializationTest.java
delete mode 100644 server/src/test/java/org/apache/iotdb/db/qp/physical/SerializedSizeTest.java
rename server/src/{main/java/org/apache/iotdb/db/exception/TriggerExecutionException.java => test/java/org/apache/iotdb/db/service/DaemonTest.java} (65%)
delete mode 100644 server/src/test/java/org/apache/iotdb/db/utils/datastructure/PrecisionTest.java
copy server/src/test/resources/{iotdb-datanode.properties => datanode1conf/iotdb-common.properties} (71%)
rename server/src/test/resources/datanode1conf/{iotdb-metric.yml => iotdb-datanode-metric.yml} (98%)
copy server/src/test/resources/{iotdb-datanode.properties => datanode2conf/iotdb-common.properties} (71%)
rename server/src/test/resources/datanode2conf/{iotdb-metric.yml => iotdb-datanode-metric.yml} (98%)
copy server/src/test/resources/{iotdb-datanode.properties => datanode3conf/iotdb-common.properties} (71%)
rename server/src/test/resources/datanode3conf/{iotdb-metric.yml => iotdb-datanode-metric.yml} (98%)
copy {server => session}/src/test/resources/iotdb-datanode.properties (75%)
delete mode 100644 session/src/test/resources/iotdb-engine.properties
copy {server => spark-iotdb-connector}/src/test/resources/iotdb-datanode.properties (75%)
delete mode 100644 spark-iotdb-connector/src/test/resources/iotdb-engine.properties
create mode 100644 tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriterEndFileTest.java
[iotdb] 02/03: fix compiler error
Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hui pushed a commit to branch ml/windowSet
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 05c43e08140ceeb83d13916f0ceb48a431e10d9b
Author: liuminghui233 <54...@qq.com>
AuthorDate: Mon Nov 21 16:47:45 2022 +0800
fix compiler error
---
.../org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java b/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java
index 10408a935c..01806832c4 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java
@@ -496,7 +496,7 @@ public class ClientRPCServiceImpl implements IClientRPCServiceWithHandler {
} finally {
addOperationLatency(Operation.EXECUTE_QUERY, startTime);
long costTime = System.currentTimeMillis() - startTime;
- if (costTime >= CONFIG.getSlowQueryThreshold()) {
+ if (costTime >= config.getSlowQueryThreshold()) {
SLOW_SQL_LOGGER.info("Cost: {} ms, sql is {}", costTime, req);
}
}
@@ -553,7 +553,7 @@ public class ClientRPCServiceImpl implements IClientRPCServiceWithHandler {
} finally {
addOperationLatency(Operation.EXECUTE_QUERY, startTime);
long costTime = System.currentTimeMillis() - startTime;
- if (costTime >= CONFIG.getSlowQueryThreshold()) {
+ if (costTime >= config.getSlowQueryThreshold()) {
SLOW_SQL_LOGGER.info("Cost: {} ms, sql is {}", costTime, req);
}
}
[iotdb] 03/03: add SessionExample
Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hui pushed a commit to branch ml/windowSet
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 67c4adafd9d7e32f5875d65e5abc6c2dec437aef
Author: liuminghui233 <54...@qq.com>
AuthorDate: Mon Nov 21 16:48:02 2022 +0800
add SessionExample
---
client-py/SessionExample.py | 770 +++++++++++++++++++++++---------------------
1 file changed, 399 insertions(+), 371 deletions(-)
diff --git a/client-py/SessionExample.py b/client-py/SessionExample.py
index a91b456ca0..09db8fc519 100644
--- a/client-py/SessionExample.py
+++ b/client-py/SessionExample.py
@@ -17,6 +17,9 @@
#
# Uncomment the following line to use apache-iotdb module installed by pip3
+
+import random
+
import numpy as np
from iotdb.Session import Session
@@ -35,382 +38,407 @@ password_ = "root"
session = Session(ip, port_, username_, password_, fetch_size=1024, zone_id="UTC+8")
session.open(False)
-# create and delete databases
-session.set_storage_group("root.sg_test_01")
-session.set_storage_group("root.sg_test_02")
-session.set_storage_group("root.sg_test_03")
-session.set_storage_group("root.sg_test_04")
-session.delete_storage_group("root.sg_test_02")
-session.delete_storage_groups(["root.sg_test_03", "root.sg_test_04"])
-
-# setting time series.
-session.create_time_series(
- "root.sg_test_01.d_01.s_01", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY
-)
-session.create_time_series(
- "root.sg_test_01.d_01.s_02", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY
-)
-session.create_time_series(
- "root.sg_test_01.d_01.s_03", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY
-)
-session.create_time_series(
- "root.sg_test_01.d_02.s_01",
- TSDataType.BOOLEAN,
- TSEncoding.PLAIN,
- Compressor.SNAPPY,
- None,
- {"tag1": "v1"},
- {"description": "v1"},
- "temperature",
-)
-
-# setting multiple time series once.
-ts_path_lst_ = [
- "root.sg_test_01.d_01.s_04",
- "root.sg_test_01.d_01.s_05",
- "root.sg_test_01.d_01.s_06",
- "root.sg_test_01.d_01.s_07",
- "root.sg_test_01.d_01.s_08",
- "root.sg_test_01.d_01.s_09",
-]
-data_type_lst_ = [
- TSDataType.FLOAT,
- TSDataType.DOUBLE,
- TSDataType.TEXT,
- TSDataType.FLOAT,
- TSDataType.DOUBLE,
- TSDataType.TEXT,
-]
-encoding_lst_ = [TSEncoding.PLAIN for _ in range(len(data_type_lst_))]
-compressor_lst_ = [Compressor.SNAPPY for _ in range(len(data_type_lst_))]
-session.create_multi_time_series(
- ts_path_lst_, data_type_lst_, encoding_lst_, compressor_lst_
-)
-
-ts_path_lst_ = [
- "root.sg_test_01.d_02.s_04",
- "root.sg_test_01.d_02.s_05",
- "root.sg_test_01.d_02.s_06",
- "root.sg_test_01.d_02.s_07",
- "root.sg_test_01.d_02.s_08",
- "root.sg_test_01.d_02.s_09",
-]
-data_type_lst_ = [
- TSDataType.FLOAT,
- TSDataType.DOUBLE,
- TSDataType.TEXT,
- TSDataType.FLOAT,
- TSDataType.DOUBLE,
- TSDataType.TEXT,
+ts_path_list = [
+ "root.eg.exchange.s0",
+ "root.eg.exchange.s1",
+ "root.eg.exchange.s2",
+ "root.eg.exchange.s3",
+ "root.eg.exchange.s4",
+ "root.eg.exchange.s5",
+ "root.eg.exchange.s6",
+ "root.eg.exchange.s7"
]
-encoding_lst_ = [TSEncoding.PLAIN for _ in range(len(data_type_lst_))]
-compressor_lst_ = [Compressor.SNAPPY for _ in range(len(data_type_lst_))]
-tags_lst_ = [{"tag2": "v2"} for _ in range(len(data_type_lst_))]
-attributes_lst_ = [{"description": "v2"} for _ in range(len(data_type_lst_))]
-session.create_multi_time_series(
- ts_path_lst_,
- data_type_lst_,
- encoding_lst_,
- compressor_lst_,
- None,
- tags_lst_,
- attributes_lst_,
- None,
-)
-
-# delete time series
-session.delete_time_series(
- [
- "root.sg_test_01.d_01.s_07",
- "root.sg_test_01.d_01.s_08",
- "root.sg_test_01.d_01.s_09",
- ]
-)
-
-# checking time series
-print(
- "s_07 expecting False, checking result: ",
- session.check_time_series_exists("root.sg_test_01.d_01.s_07"),
-)
-print(
- "s_03 expecting True, checking result: ",
- session.check_time_series_exists("root.sg_test_01.d_01.s_03"),
-)
-print(
- "d_02.s_01 expecting True, checking result: ",
- session.check_time_series_exists("root.sg_test_01.d_02.s_01"),
-)
-print(
- "d_02.s_06 expecting True, checking result: ",
- session.check_time_series_exists("root.sg_test_01.d_02.s_06"),
-)
-
-# insert one record into the database.
-measurements_ = ["s_01", "s_02", "s_03", "s_04", "s_05", "s_06"]
-values_ = [False, 10, 11, 1.1, 10011.1, "test_record"]
-data_types_ = [
- TSDataType.BOOLEAN,
- TSDataType.INT32,
- TSDataType.INT64,
- TSDataType.FLOAT,
- TSDataType.DOUBLE,
- TSDataType.TEXT,
-]
-session.insert_record("root.sg_test_01.d_01", 1, measurements_, data_types_, values_)
-
-# insert multiple records into database
-measurements_list_ = [
- ["s_01", "s_02", "s_03", "s_04", "s_05", "s_06"],
- ["s_01", "s_02", "s_03", "s_04", "s_05", "s_06"],
-]
-values_list_ = [
- [False, 22, 33, 4.4, 55.1, "test_records01"],
- [True, 77, 88, 1.25, 8.125, "test_records02"],
-]
-data_type_list_ = [data_types_, data_types_]
-device_ids_ = ["root.sg_test_01.d_01", "root.sg_test_01.d_01"]
-session.insert_records(
- device_ids_, [2, 3], measurements_list_, data_type_list_, values_list_
-)
-
-# insert one tablet into the database.
-values_ = [
- [False, 10, 11, 1.1, 10011.1, "test01"],
- [True, 100, 11111, 1.25, 101.0, "test02"],
- [False, 100, 1, 188.1, 688.25, "test03"],
- [True, 0, 0, 0, 6.25, "test04"],
-] # Non-ASCII text will cause error since bytes can only hold 0-128 nums.
-timestamps_ = [4, 5, 6, 7]
-tablet_ = Tablet(
- "root.sg_test_01.d_01", measurements_, data_types_, values_, timestamps_
-)
-session.insert_tablet(tablet_)
-
-# insert one numpy tablet into the database.
-np_values_ = [
- np.array([False, True, False, True], TSDataType.BOOLEAN.np_dtype()),
- np.array([10, 100, 100, 0], TSDataType.INT32.np_dtype()),
- np.array([11, 11111, 1, 0], TSDataType.INT64.np_dtype()),
- np.array([1.1, 1.25, 188.1, 0], TSDataType.FLOAT.np_dtype()),
- np.array([10011.1, 101.0, 688.25, 6.25], TSDataType.DOUBLE.np_dtype()),
- np.array(["test01", "test02", "test03", "test04"], TSDataType.TEXT.np_dtype()),
-]
-np_timestamps_ = np.array([1, 2, 3, 4], TSDataType.INT64.np_dtype())
-np_tablet_ = NumpyTablet(
- "root.sg_test_01.d_02", measurements_, data_types_, np_values_, np_timestamps_
-)
-session.insert_tablet(np_tablet_)
-
-# insert one unsorted numpy tablet into the database.
-np_values_unsorted = [
- np.array([False, False, False, True, True], np.dtype(">?")),
- np.array([0, 10, 100, 1000, 10000], np.dtype(">i4")),
- np.array([1, 11, 111, 1111, 11111], np.dtype(">i8")),
- np.array([1.1, 1.25, 188.1, 0, 8.999], np.dtype(">f4")),
- np.array([10011.1, 101.0, 688.25, 6.25, 8, 776], np.dtype(">f8")),
- np.array(["test09", "test08", "test07", "test06", "test05"]),
-]
-np_timestamps_unsorted = np.array([9, 8, 7, 6, 5], np.dtype(">i8"))
-np_tablet_unsorted = NumpyTablet(
- "root.sg_test_01.d_02",
- measurements_,
- data_types_,
- np_values_unsorted,
- np_timestamps_unsorted,
-)
-session.insert_tablet(np_tablet_unsorted)
-print(np_tablet_unsorted.get_timestamps())
-for value in np_tablet_unsorted.get_values():
- print(value)
-
-# insert multiple tablets into database
-tablet_01 = Tablet(
- "root.sg_test_01.d_01", measurements_, data_types_, values_, [8, 9, 10, 11]
-)
-tablet_02 = Tablet(
- "root.sg_test_01.d_01", measurements_, data_types_, values_, [12, 13, 14, 15]
-)
-session.insert_tablets([tablet_01, tablet_02])
-
-# insert one tablet with empty cells into the database.
-values_ = [
- [None, 10, 11, 1.1, 10011.1, "test01"],
- [True, None, 11111, 1.25, 101.0, "test02"],
- [False, 100, 1, None, 688.25, "test03"],
- [True, 0, 0, 0, 6.25, None],
-] # Non-ASCII text will cause error since bytes can only hold 0-128 nums.
-timestamps_ = [16, 17, 18, 19]
-tablet_ = Tablet(
- "root.sg_test_01.d_01", measurements_, data_types_, values_, timestamps_
-)
-session.insert_tablet(tablet_)
-
-# insert records of one device
-time_list = [1, 2, 3]
-measurements_list = [
- ["s_01", "s_02", "s_03"],
- ["s_01", "s_02", "s_03"],
- ["s_01", "s_02", "s_03"],
-]
-data_types_list = [
- [TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64],
- [TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64],
- [TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64],
-]
-values_list = [[False, 22, 33], [True, 1, 23], [False, 15, 26]]
-
-session.insert_records_of_one_device(
- "root.sg_test_01.d_01", time_list, measurements_list, data_types_list, values_list
-)
-
-# execute non-query sql statement
-session.execute_non_query_statement(
- "insert into root.sg_test_01.d_01(timestamp, s_02) values(16, 188)"
-)
-
-# execute sql query statement
-with session.execute_query_statement(
- "select * from root.sg_test_01.d_01"
-) as session_data_set:
- session_data_set.set_fetch_size(1024)
- while session_data_set.has_next():
- print(session_data_set.next())
-# execute sql query statement
-with session.execute_query_statement(
- "select s_01, s_02, s_03, s_04, s_05, s_06 from root.sg_test_01.d_02"
-) as session_data_set:
- session_data_set.set_fetch_size(1024)
- while session_data_set.has_next():
- print(session_data_set.next())
-
-# execute statement
-with session.execute_statement(
- "select * from root.sg_test_01.d_01"
-) as session_data_set:
- while session_data_set.has_next():
- print(session_data_set.next())
-
-session.execute_statement(
- "insert into root.sg_test_01.d_01(timestamp, s_02) values(16, 188)"
-)
-
-# insert string records of one device
-time_list = [1, 2, 3]
-measurements_list = [
- ["s_01", "s_02", "s_03"],
- ["s_01", "s_02", "s_03"],
- ["s_01", "s_02", "s_03"],
-]
-values_list = [["False", "22", "33"], ["True", "1", "23"], ["False", "15", "26"]]
-
-session.insert_string_records_of_one_device(
- "root.sg_test_01.d_03",
- time_list,
- measurements_list,
- values_list,
-)
-
-with session.execute_raw_data_query(
- ["root.sg_test_01.d_03.s_01", "root.sg_test_01.d_03.s_02"], 1, 4
-) as session_data_set:
- session_data_set.set_fetch_size(1024)
- while session_data_set.has_next():
- print(session_data_set.next())
-
-with session.execute_last_data_query(
- ["root.sg_test_01.d_03.s_01", "root.sg_test_01.d_03.s_02"], 0
-) as session_data_set:
- session_data_set.set_fetch_size(1024)
- while session_data_set.has_next():
- print(session_data_set.next())
-
-# delete database
-session.delete_storage_group("root.sg_test_01")
-
-# create measurement node template
-template = Template(name="template_python", share_time=False)
-m_node_1 = MeasurementNode(
- name="s1",
- data_type=TSDataType.INT64,
- encoding=TSEncoding.RLE,
- compression_type=Compressor.SNAPPY,
-)
-m_node_2 = MeasurementNode(
- name="s2",
- data_type=TSDataType.INT64,
- encoding=TSEncoding.RLE,
- compression_type=Compressor.SNAPPY,
-)
-m_node_3 = MeasurementNode(
- name="s3",
- data_type=TSDataType.INT64,
- encoding=TSEncoding.RLE,
- compression_type=Compressor.SNAPPY,
-)
-template.add_template(m_node_1)
-template.add_template(m_node_2)
-template.add_template(m_node_3)
-session.create_schema_template(template)
-print("create template success template_python")
-# create internal node template
-template_name = "treeTemplate_python"
-template = Template(name=template_name, share_time=True)
-i_node_gps = InternalNode(name="GPS", share_time=False)
-i_node_v = InternalNode(name="vehicle", share_time=True)
-m_node_x = MeasurementNode("x", TSDataType.FLOAT, TSEncoding.RLE, Compressor.SNAPPY)
+fetch_args = {
+ "start_time": 631123200000,
+ "end_time": 1286640000000,
+ "interval": 86400000 * 96,
+ "sliding_step": 86400000,
+ # "indexes": [0, 1]
+ "indexes": random.sample([i for i in range(0, 7492)], 100)
+}
-i_node_gps.add_child(m_node_x)
-i_node_v.add_child(m_node_x)
-template.add_template(i_node_gps)
-template.add_template(i_node_v)
-template.add_template(m_node_x)
+result = session.fetch_window_batch(ts_path_list, None, fetch_args)
+print(result.shape)
-session.create_schema_template(template)
-print("create template success treeTemplate_python}")
-
-print(session.is_measurement_in_template(template_name, "GPS"))
-print(session.is_measurement_in_template(template_name, "GPS.x"))
-print(session.show_all_templates())
-
-# # append schema template
-data_types = [TSDataType.FLOAT, TSDataType.FLOAT, TSDataType.DOUBLE]
-encoding_list = [TSEncoding.RLE, TSEncoding.RLE, TSEncoding.GORILLA]
-compressor_list = [Compressor.SNAPPY, Compressor.SNAPPY, Compressor.LZ4]
-
-measurements_aligned_path = ["aligned.s1", "aligned.s2", "aligned.s3"]
-session.add_measurements_in_template(
- template_name,
- measurements_aligned_path,
- data_types,
- encoding_list,
- compressor_list,
- is_aligned=True,
-)
-# session.drop_schema_template("add_template_python")
-measurements_aligned_path = ["unaligned.s1", "unaligned.s2", "unaligned.s3"]
-session.add_measurements_in_template(
- template_name,
- measurements_aligned_path,
- data_types,
- encoding_list,
- compressor_list,
- is_aligned=False,
-)
-session.delete_node_in_template(template_name, "aligned.s1")
-print(session.count_measurements_in_template(template_name))
-print(session.is_path_exist_in_template(template_name, "aligned.s1"))
-print(session.is_path_exist_in_template(template_name, "aligned.s2"))
-
-session.set_schema_template(template_name, "root.python.set")
-print(session.show_paths_template_using_on(template_name))
-print(session.show_paths_template_set_on(template_name))
-session.unset_schema_template(template_name, "root.python.set")
+#
+# # create and delete databases
+# session.set_storage_group("root.sg_test_01")
+# session.set_storage_group("root.sg_test_02")
+# session.set_storage_group("root.sg_test_03")
+# session.set_storage_group("root.sg_test_04")
+# session.delete_storage_group("root.sg_test_02")
+# session.delete_storage_groups(["root.sg_test_03", "root.sg_test_04"])
+#
+# # setting time series.
+# session.create_time_series(
+# "root.sg_test_01.d_01.s_01", TSDataType.BOOLEAN, TSEncoding.PLAIN, Compressor.SNAPPY
+# )
+# session.create_time_series(
+# "root.sg_test_01.d_01.s_02", TSDataType.INT32, TSEncoding.PLAIN, Compressor.SNAPPY
+# )
+# session.create_time_series(
+# "root.sg_test_01.d_01.s_03", TSDataType.INT64, TSEncoding.PLAIN, Compressor.SNAPPY
+# )
+# session.create_time_series(
+# "root.sg_test_01.d_02.s_01",
+# TSDataType.BOOLEAN,
+# TSEncoding.PLAIN,
+# Compressor.SNAPPY,
+# None,
+# {"tag1": "v1"},
+# {"description": "v1"},
+# "temperature",
+# )
+#
+# # setting multiple time series once.
+# ts_path_lst_ = [
+# "root.sg_test_01.d_01.s_04",
+# "root.sg_test_01.d_01.s_05",
+# "root.sg_test_01.d_01.s_06",
+# "root.sg_test_01.d_01.s_07",
+# "root.sg_test_01.d_01.s_08",
+# "root.sg_test_01.d_01.s_09",
+# ]
+# data_type_lst_ = [
+# TSDataType.FLOAT,
+# TSDataType.DOUBLE,
+# TSDataType.TEXT,
+# TSDataType.FLOAT,
+# TSDataType.DOUBLE,
+# TSDataType.TEXT,
+# ]
+# encoding_lst_ = [TSEncoding.PLAIN for _ in range(len(data_type_lst_))]
+# compressor_lst_ = [Compressor.SNAPPY for _ in range(len(data_type_lst_))]
+# session.create_multi_time_series(
+# ts_path_lst_, data_type_lst_, encoding_lst_, compressor_lst_
+# )
+#
+# ts_path_lst_ = [
+# "root.sg_test_01.d_02.s_04",
+# "root.sg_test_01.d_02.s_05",
+# "root.sg_test_01.d_02.s_06",
+# "root.sg_test_01.d_02.s_07",
+# "root.sg_test_01.d_02.s_08",
+# "root.sg_test_01.d_02.s_09",
+# ]
+# data_type_lst_ = [
+# TSDataType.FLOAT,
+# TSDataType.DOUBLE,
+# TSDataType.TEXT,
+# TSDataType.FLOAT,
+# TSDataType.DOUBLE,
+# TSDataType.TEXT,
+# ]
+# encoding_lst_ = [TSEncoding.PLAIN for _ in range(len(data_type_lst_))]
+# compressor_lst_ = [Compressor.SNAPPY for _ in range(len(data_type_lst_))]
+# tags_lst_ = [{"tag2": "v2"} for _ in range(len(data_type_lst_))]
+# attributes_lst_ = [{"description": "v2"} for _ in range(len(data_type_lst_))]
+# session.create_multi_time_series(
+# ts_path_lst_,
+# data_type_lst_,
+# encoding_lst_,
+# compressor_lst_,
+# None,
+# tags_lst_,
+# attributes_lst_,
+# None,
+# )
+#
+# # delete time series
+# session.delete_time_series(
+# [
+# "root.sg_test_01.d_01.s_07",
+# "root.sg_test_01.d_01.s_08",
+# "root.sg_test_01.d_01.s_09",
+# ]
+# )
+#
+# # checking time series
+# print(
+# "s_07 expecting False, checking result: ",
+# session.check_time_series_exists("root.sg_test_01.d_01.s_07"),
+# )
+# print(
+# "s_03 expecting True, checking result: ",
+# session.check_time_series_exists("root.sg_test_01.d_01.s_03"),
+# )
+# print(
+# "d_02.s_01 expecting True, checking result: ",
+# session.check_time_series_exists("root.sg_test_01.d_02.s_01"),
+# )
+# print(
+# "d_02.s_06 expecting True, checking result: ",
+# session.check_time_series_exists("root.sg_test_01.d_02.s_06"),
+# )
+#
+# # insert one record into the database.
+# measurements_ = ["s_01", "s_02", "s_03", "s_04", "s_05", "s_06"]
+# values_ = [False, 10, 11, 1.1, 10011.1, "test_record"]
+# data_types_ = [
+# TSDataType.BOOLEAN,
+# TSDataType.INT32,
+# TSDataType.INT64,
+# TSDataType.FLOAT,
+# TSDataType.DOUBLE,
+# TSDataType.TEXT,
+# ]
+# session.insert_record("root.sg_test_01.d_01", 1, measurements_, data_types_, values_)
+#
+# # insert multiple records into database
+# measurements_list_ = [
+# ["s_01", "s_02", "s_03", "s_04", "s_05", "s_06"],
+# ["s_01", "s_02", "s_03", "s_04", "s_05", "s_06"],
+# ]
+# values_list_ = [
+# [False, 22, 33, 4.4, 55.1, "test_records01"],
+# [True, 77, 88, 1.25, 8.125, "test_records02"],
+# ]
+# data_type_list_ = [data_types_, data_types_]
+# device_ids_ = ["root.sg_test_01.d_01", "root.sg_test_01.d_01"]
+# session.insert_records(
+# device_ids_, [2, 3], measurements_list_, data_type_list_, values_list_
+# )
+#
+# # insert one tablet into the database.
+# values_ = [
+# [False, 10, 11, 1.1, 10011.1, "test01"],
+# [True, 100, 11111, 1.25, 101.0, "test02"],
+# [False, 100, 1, 188.1, 688.25, "test03"],
+# [True, 0, 0, 0, 6.25, "test04"],
+# ] # Non-ASCII text will cause error since bytes can only hold 0-128 nums.
+# timestamps_ = [4, 5, 6, 7]
+# tablet_ = Tablet(
+# "root.sg_test_01.d_01", measurements_, data_types_, values_, timestamps_
+# )
+# session.insert_tablet(tablet_)
+#
+# # insert one numpy tablet into the database.
+# np_values_ = [
+# np.array([False, True, False, True], TSDataType.BOOLEAN.np_dtype()),
+# np.array([10, 100, 100, 0], TSDataType.INT32.np_dtype()),
+# np.array([11, 11111, 1, 0], TSDataType.INT64.np_dtype()),
+# np.array([1.1, 1.25, 188.1, 0], TSDataType.FLOAT.np_dtype()),
+# np.array([10011.1, 101.0, 688.25, 6.25], TSDataType.DOUBLE.np_dtype()),
+# np.array(["test01", "test02", "test03", "test04"], TSDataType.TEXT.np_dtype()),
+# ]
+# np_timestamps_ = np.array([1, 2, 3, 4], TSDataType.INT64.np_dtype())
+# np_tablet_ = NumpyTablet(
+# "root.sg_test_01.d_02", measurements_, data_types_, np_values_, np_timestamps_
+# )
+# session.insert_tablet(np_tablet_)
+#
+# # insert one unsorted numpy tablet into the database.
+# np_values_unsorted = [
+# np.array([False, False, False, True, True], np.dtype(">?")),
+# np.array([0, 10, 100, 1000, 10000], np.dtype(">i4")),
+# np.array([1, 11, 111, 1111, 11111], np.dtype(">i8")),
+# np.array([1.1, 1.25, 188.1, 0, 8.999], np.dtype(">f4")),
+# np.array([10011.1, 101.0, 688.25, 6.25, 8, 776], np.dtype(">f8")),
+# np.array(["test09", "test08", "test07", "test06", "test05"]),
+# ]
+# np_timestamps_unsorted = np.array([9, 8, 7, 6, 5], np.dtype(">i8"))
+# np_tablet_unsorted = NumpyTablet(
+# "root.sg_test_01.d_02",
+# measurements_,
+# data_types_,
+# np_values_unsorted,
+# np_timestamps_unsorted,
+# )
+# session.insert_tablet(np_tablet_unsorted)
+# print(np_tablet_unsorted.get_timestamps())
+# for value in np_tablet_unsorted.get_values():
+# print(value)
+#
+# # insert multiple tablets into database
+# tablet_01 = Tablet(
+# "root.sg_test_01.d_01", measurements_, data_types_, values_, [8, 9, 10, 11]
+# )
+# tablet_02 = Tablet(
+# "root.sg_test_01.d_01", measurements_, data_types_, values_, [12, 13, 14, 15]
+# )
+# session.insert_tablets([tablet_01, tablet_02])
+#
+# # insert one tablet with empty cells into the database.
+# values_ = [
+# [None, 10, 11, 1.1, 10011.1, "test01"],
+# [True, None, 11111, 1.25, 101.0, "test02"],
+# [False, 100, 1, None, 688.25, "test03"],
+# [True, 0, 0, 0, 6.25, None],
+# ] # Non-ASCII text will cause error since bytes can only hold 0-128 nums.
+# timestamps_ = [16, 17, 18, 19]
+# tablet_ = Tablet(
+# "root.sg_test_01.d_01", measurements_, data_types_, values_, timestamps_
+# )
+# session.insert_tablet(tablet_)
+#
+# # insert records of one device
+# time_list = [1, 2, 3]
+# measurements_list = [
+# ["s_01", "s_02", "s_03"],
+# ["s_01", "s_02", "s_03"],
+# ["s_01", "s_02", "s_03"],
+# ]
+# data_types_list = [
+# [TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64],
+# [TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64],
+# [TSDataType.BOOLEAN, TSDataType.INT32, TSDataType.INT64],
+# ]
+# values_list = [[False, 22, 33], [True, 1, 23], [False, 15, 26]]
+#
+# session.insert_records_of_one_device(
+# "root.sg_test_01.d_01", time_list, measurements_list, data_types_list, values_list
+# )
+#
+# # execute non-query sql statement
+# session.execute_non_query_statement(
+# "insert into root.sg_test_01.d_01(timestamp, s_02) values(16, 188)"
+# )
+#
+# # execute sql query statement
+# with session.execute_query_statement(
+# "select * from root.sg_test_01.d_01"
+# ) as session_data_set:
+# session_data_set.set_fetch_size(1024)
+# while session_data_set.has_next():
+# print(session_data_set.next())
+# # execute sql query statement
+# with session.execute_query_statement(
+# "select s_01, s_02, s_03, s_04, s_05, s_06 from root.sg_test_01.d_02"
+# ) as session_data_set:
+# session_data_set.set_fetch_size(1024)
+# while session_data_set.has_next():
+# print(session_data_set.next())
+#
+# # execute statement
+# with session.execute_statement(
+# "select * from root.sg_test_01.d_01"
+# ) as session_data_set:
+# while session_data_set.has_next():
+# print(session_data_set.next())
+#
+# session.execute_statement(
+# "insert into root.sg_test_01.d_01(timestamp, s_02) values(16, 188)"
+# )
+#
+# # insert string records of one device
+# time_list = [1, 2, 3]
+# measurements_list = [
+# ["s_01", "s_02", "s_03"],
+# ["s_01", "s_02", "s_03"],
+# ["s_01", "s_02", "s_03"],
+# ]
+# values_list = [["False", "22", "33"], ["True", "1", "23"], ["False", "15", "26"]]
+#
+# session.insert_string_records_of_one_device(
+# "root.sg_test_01.d_03",
+# time_list,
+# measurements_list,
+# values_list,
+# )
+#
+# with session.execute_raw_data_query(
+# ["root.sg_test_01.d_03.s_01", "root.sg_test_01.d_03.s_02"], 1, 4
+# ) as session_data_set:
+# session_data_set.set_fetch_size(1024)
+# while session_data_set.has_next():
+# print(session_data_set.next())
+#
+# with session.execute_last_data_query(
+# ["root.sg_test_01.d_03.s_01", "root.sg_test_01.d_03.s_02"], 0
+# ) as session_data_set:
+# session_data_set.set_fetch_size(1024)
+# while session_data_set.has_next():
+# print(session_data_set.next())
+#
+# # delete database
+# session.delete_storage_group("root.sg_test_01")
+#
+# # create measurement node template
+# template = Template(name="template_python", share_time=False)
+# m_node_1 = MeasurementNode(
+# name="s1",
+# data_type=TSDataType.INT64,
+# encoding=TSEncoding.RLE,
+# compression_type=Compressor.SNAPPY,
+# )
+# m_node_2 = MeasurementNode(
+# name="s2",
+# data_type=TSDataType.INT64,
+# encoding=TSEncoding.RLE,
+# compression_type=Compressor.SNAPPY,
+# )
+# m_node_3 = MeasurementNode(
+# name="s3",
+# data_type=TSDataType.INT64,
+# encoding=TSEncoding.RLE,
+# compression_type=Compressor.SNAPPY,
+# )
+# template.add_template(m_node_1)
+# template.add_template(m_node_2)
+# template.add_template(m_node_3)
+# session.create_schema_template(template)
+# print("create template success template_python")
+#
+# # create internal node template
+# template_name = "treeTemplate_python"
+# template = Template(name=template_name, share_time=True)
+# i_node_gps = InternalNode(name="GPS", share_time=False)
+# i_node_v = InternalNode(name="vehicle", share_time=True)
+# m_node_x = MeasurementNode("x", TSDataType.FLOAT, TSEncoding.RLE, Compressor.SNAPPY)
+#
+# i_node_gps.add_child(m_node_x)
+# i_node_v.add_child(m_node_x)
+# template.add_template(i_node_gps)
+# template.add_template(i_node_v)
+# template.add_template(m_node_x)
+#
+# session.create_schema_template(template)
+# print("create template success treeTemplate_python}")
+#
+# print(session.is_measurement_in_template(template_name, "GPS"))
+# print(session.is_measurement_in_template(template_name, "GPS.x"))
+# print(session.show_all_templates())
+#
+# # # append schema template
+# data_types = [TSDataType.FLOAT, TSDataType.FLOAT, TSDataType.DOUBLE]
+# encoding_list = [TSEncoding.RLE, TSEncoding.RLE, TSEncoding.GORILLA]
+# compressor_list = [Compressor.SNAPPY, Compressor.SNAPPY, Compressor.LZ4]
+#
+# measurements_aligned_path = ["aligned.s1", "aligned.s2", "aligned.s3"]
+# session.add_measurements_in_template(
+# template_name,
+# measurements_aligned_path,
+# data_types,
+# encoding_list,
+# compressor_list,
+# is_aligned=True,
+# )
+# # session.drop_schema_template("add_template_python")
+# measurements_aligned_path = ["unaligned.s1", "unaligned.s2", "unaligned.s3"]
+# session.add_measurements_in_template(
+# template_name,
+# measurements_aligned_path,
+# data_types,
+# encoding_list,
+# compressor_list,
+# is_aligned=False,
+# )
+# session.delete_node_in_template(template_name, "aligned.s1")
+# print(session.count_measurements_in_template(template_name))
+# print(session.is_path_exist_in_template(template_name, "aligned.s1"))
+# print(session.is_path_exist_in_template(template_name, "aligned.s2"))
+#
+# session.set_schema_template(template_name, "root.python.set")
+# print(session.show_paths_template_using_on(template_name))
+# print(session.show_paths_template_set_on(template_name))
+# session.unset_schema_template(template_name, "root.python.set")
+#
+# # drop template
+# session.drop_schema_template("template_python")
+# session.drop_schema_template(template_name)
+# print("drop template success, template_python and treeTemplate_python")
-# drop template
-session.drop_schema_template("template_python")
-session.drop_schema_template(template_name)
-print("drop template success, template_python and treeTemplate_python")
# close session connection.
session.close()
[iotdb] 01/03: merge master
Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hui pushed a commit to branch ml/windowSet
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 1ed17c26702e94278af639a994a69927b4d7ea27
Merge: 0ffeb6c953 8755c3fbea
Author: liuminghui233 <54...@qq.com>
AuthorDate: Mon Nov 21 16:26:15 2022 +0800
merge master
.github/ISSUE_TEMPLATE/bug_report.md | 31 -
.github/ISSUE_TEMPLATE/bug_report.yml | 85 ++
.github/ISSUE_TEMPLATE/feature_request.md | 17 -
.github/ISSUE_TEMPLATE/feature_request.yml | 66 +
.github/dependabot.yml | 52 -
.github/workflows/client-cpp.yml | 21 +-
.github/workflows/client-go.yml | 11 +-
.github/workflows/client-python.yml | 11 +-
.../{cluster-it.yml => cluster-it-1c1d.yml} | 24 +-
.../{cluster-it.yml => cluster-it-1c3d.yml} | 15 +-
.github/workflows/e2e.yml | 6 +-
.github/workflows/grafana-plugin.yml | 18 +-
.github/workflows/greetings.yml | 2 +-
.github/workflows/influxdb-protocol.yml | 11 +-
.github/workflows/main-unix.yml | 16 +-
.github/workflows/main-win.yml | 13 +-
.../workflows/{client-go.yml => site-build.yml} | 34 +-
.github/workflows/sonar-coveralls.yml | 36 +-
.github/workflows/standalone-it-for-mpp.yml | 79 -
.github/workflows/sync.yml | 9 +-
.gitmodules | 4 +-
LICENSE | 15 +-
README.md | 19 +-
README_ZH.md | 29 +-
antlr/pom.xml | 17 +
.../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 | 3 +
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 52 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 12 +
.../src/assembly/resources/conf/logback-cli.xml | 20 +-
cli/src/assembly/resources/sbin/start-cli.sh | 118 +-
cli/src/assembly/resources/tools/export-csv.sh | 7 +
cli/src/assembly/resources/tools/export-tsfile.sh | 7 +
cli/src/assembly/resources/tools/import-csv.sh | 7 +
.../java/org/apache/iotdb/cli/AbstractCli.java | 21 +
cli/src/main/java/org/apache/iotdb/cli/Cli.java | 5 +
.../org/apache/iotdb/cli/StartClientScriptIT.java | 3 -
client-go | 2 +-
client-py/README.md | 12 +-
client-py/SessionAlignedTimeseriesExample.py | 4 +-
client-py/SessionExample.py | 772 +++++-----
client-py/iotdb/Session.py | 16 +-
client-py/iotdb/dbapi/tests/test_cursor.py | 8 +-
client-py/iotdb/sqlalchemy/IoTDBDialect.py | 2 +-
client-py/iotdb/sqlalchemy/tests/test_dialect.py | 8 +-
client-py/tests/test_aligned_timeseries.py | 6 +-
client-py/tests/test_dataframe.py | 24 +-
client-py/tests/test_one_device.py | 2 +-
client-py/tests/test_session.py | 6 +-
client-py/tests/test_tablet.py | 4 +-
client-py/tests/test_template.py | 2 +-
client-py/tests/test_todf.py | 6 +-
confignode/src/assembly/confignode.xml | 4 +
.../src/assembly/resources/conf/confignode-env.bat | 27 +-
.../src/assembly/resources/conf/confignode-env.sh | 10 +
.../resources/conf/iotdb-confignode.properties | 41 +-
.../src/assembly/resources/conf/logback-tool.xml | 16 +-
.../assembly/resources/sbin/remove-confignode.sh | 59 +-
.../assembly/resources/sbin/start-confignode.bat | 41 +-
.../assembly/resources/sbin/start-confignode.sh | 169 ++-
.../assembly/resources/sbin/stop-confignode.bat | 3 +
.../src/assembly/resources/sbin/stop-confignode.sh | 4 +-
.../confignode/client/ConfigNodeRequestType.java | 2 +-
.../confignode/client/DataNodeRequestType.java | 1 +
.../client/async/AsyncDataNodeClientPool.java | 10 +
.../client/async/handlers/AsyncClientHandler.java | 1 +
.../client/sync/SyncConfigNodeClientPool.java | 10 +-
.../client/sync/SyncDataNodeClientPool.java | 122 +-
.../iotdb/confignode/conf/ConfigNodeConfig.java | 281 ++--
.../iotdb/confignode/conf/ConfigNodeConstant.java | 6 +
.../confignode/conf/ConfigNodeDescriptor.java | 622 +++++---
.../confignode/conf/ConfigNodeRemoveCheck.java | 2 +-
.../confignode/conf/ConfigNodeStartupCheck.java | 22 +-
.../consensus/request/ConfigPhysicalPlan.java | 7 +
.../write/procedure/UpdateProcedurePlan.java | 8 -
.../consensus/response/DataNodeRegisterResp.java | 20 +
.../consensus/response/TemplateSetInfoResp.java | 1 +
...hine.java => ConfigNodeRegionStateMachine.java} | 139 +-
...n.java => NoAvailableRegionGroupException.java} | 15 +-
.../confignode/manager/ClusterSchemaManager.java | 48 +-
.../iotdb/confignode/manager/ConfigManager.java | 53 +-
.../iotdb/confignode/manager/ConsensusManager.java | 107 +-
.../apache/iotdb/confignode/manager/IManager.java | 4 +
.../iotdb/confignode/manager/ProcedureManager.java | 14 +-
.../iotdb/confignode/manager/SyncManager.java | 8 +-
.../iotdb/confignode/manager/TriggerManager.java | 2 +-
.../iotdb/confignode/manager/UDFManager.java | 34 +-
.../iotdb/confignode/manager/load/LoadManager.java | 9 +-
.../manager/load/LoadManagerMetrics.java | 10 +-
.../manager/load/balancer/PartitionBalancer.java | 6 +-
.../manager/load/balancer/RouteBalancer.java | 147 +-
.../partition/GreedyPartitionAllocator.java | 76 +-
.../balancer/partition/IPartitionAllocator.java | 6 +-
.../manager/load/balancer/router/mcf/MCFEdge.java | 17 +-
.../balancer/router/mcf/MCFLeaderBalancer.java | 305 ++++
.../iotdb/confignode/manager/node/NodeManager.java | 63 +-
.../manager/partition/PartitionManager.java | 46 +-
.../iotdb/confignode/persistence/AuthorInfo.java | 34 +-
.../iotdb/confignode/persistence/TriggerInfo.java | 2 +-
.../iotdb/confignode/persistence/UDFInfo.java | 2 +-
.../iotdb/confignode/persistence/cq/CQInfo.java | 2 +-
.../confignode/persistence/node/NodeInfo.java | 25 +-
.../persistence/partition/PartitionInfo.java | 13 +-
.../partition/StorageGroupPartitionTable.java | 23 +-
.../persistence/schema/ClusterSchemaInfo.java | 26 +-
.../persistence/schema/TemplateTable.java | 5 +-
.../persistence/sync/ClusterSyncInfo.java | 14 +-
.../confignode/procedure/ProcedureExecutor.java | 7 +-
.../procedure/env/ConfigNodeProcedureEnv.java | 151 +-
.../procedure/env/DataNodeRemoveHandler.java | 179 ++-
.../impl/node/AddConfigNodeProcedure.java | 40 +-
.../impl/node/RemoveDataNodeProcedure.java | 111 +-
.../impl/schema/DeactivateTemplateProcedure.java | 6 +
.../impl/schema/DeleteStorageGroupProcedure.java | 6 +-
.../impl/schema/DeleteTimeSeriesProcedure.java | 3 +-
.../impl/statemachine/RegionMigrateProcedure.java | 37 +-
.../procedure/impl/sync/DropPipeProcedure.java | 10 +-
.../procedure/state/AddConfigNodeState.java | 3 +-
.../procedure/store/ConfigProcedureStore.java | 2 +-
.../iotdb/confignode/service/ConfigNode.java | 23 +-
.../thrift/ConfigNodeRPCServiceHandlerMetrics.java | 2 +-
.../thrift/ConfigNodeRPCServiceMetrics.java | 2 +-
.../thrift/ConfigNodeRPCServiceProcessor.java | 23 +-
.../request/ConfigPhysicalPlanSerDeTest.java | 4 +-
.../balancer/router/mcf/MCFLeaderBalancerTest.java | 216 +++
.../confignode/persistence/AuthorInfoTest.java | 38 +-
.../persistence/ClusterSyncInfoTest.java | 40 +-
...nfignode.properties => iotdb-common.properties} | 12 +-
...otdb-metric.yml => iotdb-confignode-metric.yml} | 4 +-
.../confignode1conf/iotdb-confignode.properties | 13 +-
...nfignode.properties => iotdb-common.properties} | 11 +-
...otdb-metric.yml => iotdb-confignode-metric.yml} | 4 +-
.../confignode2conf/iotdb-confignode.properties | 12 +-
...nfignode.properties => iotdb-common.properties} | 11 +-
...otdb-metric.yml => iotdb-confignode-metric.yml} | 4 +-
.../confignode3conf/iotdb-confignode.properties | 12 +-
consensus/README.md | 2 +-
.../apache/iotdb/consensus/ConsensusFactory.java | 7 +-
.../org/apache/iotdb/consensus/IStateMachine.java | 12 +
.../multileader/MultiLeaderConsensus.java | 2 +-
.../multileader/MultiLeaderServerImpl.java | 20 +-
.../multileader/MultiLeaderServerMetrics.java | 4 +-
.../multileader/client/DispatchLogHandler.java | 6 +-
.../multileader/logdispatcher/LogDispatcher.java | 28 +-
.../logdispatcher/MultiLeaderMemoryManager.java | 40 +-
.../MultiLeaderMemoryManagerMetrics.java | 2 +-
.../service/MultiLeaderRPCServiceProcessor.java | 2 +-
.../ratis/ApplicationStateMachineProxy.java | 3 +-
.../iotdb/consensus/ratis/RatisConsensus.java | 23 +-
.../org/apache/iotdb/consensus/ratis/Utils.java | 12 +-
.../SimpleConsensus.java} | 26 +-
.../SimpleServerImpl.java} | 6 +-
.../multileader/MultiLeaderConsensusTest.java | 4 +-
.../iotdb/consensus/multileader/RecoveryTest.java | 4 +-
.../iotdb/consensus/ratis/RatisConsensusTest.java | 22 +-
.../apache/iotdb/consensus/ratis/UtilsTest.java | 4 +-
.../{standalone => simple}/RecoveryTest.java | 6 +-
.../SimpleConsensusTest.java} | 12 +-
.../tests/tools/importCsv/ImportCsvTestIT.java | 6 +-
.../tests/tools/tsfile/ExportTsFileTestIT.java | 6 +-
.../src/test/resources/iotdb-datanode.properties | 11 +-
.../src/test/resources/iotdb-engine.properties | 21 -
distribution/src/assembly/all.xml | 5 +
distribution/src/assembly/confignode.xml | 5 +
distribution/src/assembly/datanode.xml | 5 +
.../GrafanaPlugin/iotdb/conf/iotdb-rest.properties | 3 +
docker/src/main/Dockerfile-1c1d | 14 +-
docker/src/main/Dockerfile-1c1d-influxdb | 16 +-
docs/Blog/Release0_93.md | 2 +-
docs/Development/VoteRelease.md | 4 +-
docs/Download/README.md | 2 +-
docs/UserGuide/API/InfluxDB-Protocol.md | 12 +-
docs/UserGuide/API/Interface-Comparison.md | 4 +-
docs/UserGuide/API/Programming-Cpp-Native-API.md | 6 +-
docs/UserGuide/API/Programming-JDBC.md | 8 +-
docs/UserGuide/API/Programming-Java-Native-API.md | 14 +-
.../UserGuide/API/Programming-Python-Native-API.md | 16 +-
docs/UserGuide/API/Programming-Thrift.md | 2 +-
docs/UserGuide/API/RestService.md | 24 +-
docs/UserGuide/API/Status-Codes.md | 175 ++-
.../Administration-Management/Administration.md | 18 +-
docs/UserGuide/Cluster/Cluster-Concept.md | 4 +-
docs/UserGuide/Cluster/Cluster-Setup.md | 50 +-
docs/UserGuide/Data-Concept/Compression.md | 93 +-
.../Data-Concept/Data-Model-and-Terminology.md | 20 +-
.../{Compression.md => Deadband-Process.md} | 29 +-
docs/UserGuide/Data-Concept/Schema-Template.md | 2 +-
docs/UserGuide/Data-Concept/Time-Partition.md | 17 +-
docs/UserGuide/Data-Modeling/DataRegion.md | 22 +-
docs/UserGuide/Delete-Data/Delete-Data.md | 2 +-
docs/UserGuide/Delete-Data/TTL.md | 26 +-
.../Ecosystem-Integration/Grafana-Plugin.md | 2 +-
.../Ecosystem-Integration/Zeppelin-IoTDB.md | 2 +-
.../Sync-Tool.md | 44 +-
.../Frequently-asked-questions.md | 0
.../Integration-Test-refactoring-tutorial.md | 12 +-
.../Maintenance-Tools/Maintenance-Command.md | 103 +-
docs/UserGuide/Maintenance-Tools/NodeTool.md | 14 +-
.../UserGuide/{Alert => Monitor-Alert}/Alerting.md | 2 +-
.../Metric-Tool.md | 190 ++-
.../Operate-Metadata/Auto-Create-MetaData.md | 10 +-
docs/UserGuide/Operate-Metadata/Node.md | 20 +-
docs/UserGuide/Operate-Metadata/Storage-Group.md | 73 +-
docs/UserGuide/Operate-Metadata/Template.md | 36 +-
docs/UserGuide/Operate-Metadata/Timeseries.md | 36 +-
docs/UserGuide/Process-Data/Continuous-Query.md | 4 +-
docs/UserGuide/Process-Data/Select-Into.md | 6 +-
docs/UserGuide/{Alert => Process-Data}/Triggers.md | 33 +-
.../Process-Data/UDF-User-Defined-Function.md | 20 +-
docs/UserGuide/Query-Data/Aggregate-Query.md | 6 +-
docs/UserGuide/Query-Data/Select-Expression.md | 9 +-
.../UserGuide/QuickStart/Command-Line-Interface.md | 8 +-
docs/UserGuide/QuickStart/QuickStart.md | 49 +-
docs/UserGuide/QuickStart/ServerFileList.md | 53 +-
.../Reference/ConfigNode-Config-Manual.md | 36 +-
docs/UserGuide/Reference/DataNode-Config-Manual.md | 26 +-
docs/UserGuide/Reference/Keywords.md | 2 +
docs/UserGuide/Reference/SQL-Reference.md | 50 +-
docs/UserGuide/Reference/Syntax-Conventions.md | 42 +-
docs/UserGuide/Reference/TSDB-Comparison.md | 4 +-
docs/UserGuide/UDF-Library/Data-Profiling.md | 73 +
docs/UserGuide/UDF-Library/Data-Quality.md | 57 +-
docs/UserGuide/UDF-Library/M4.md | 2 +-
docs/UserGuide/Write-Data/CSV-Tool.md | 6 +-
docs/UserGuide/Write-Data/Load-External-Tsfile.md | 2 +-
.../UserGuide/Write-Data/MQTT.md | 10 +-
.../{UDF-Library/M4.md => Write-Data/REST-API.md} | 37 +-
.../{UDF-Library/M4.md => Write-Data/Session.md} | 16 +-
docs/zh/Development/VoteRelease.md | 4 +-
docs/zh/Download/README.md | 2 +-
docs/zh/UserGuide/API/InfluxDB-Protocol.md | 12 +-
docs/zh/UserGuide/API/Interface-Comparison.md | 4 +-
.../zh/UserGuide/API/Programming-Cpp-Native-API.md | 6 +-
docs/zh/UserGuide/API/Programming-JDBC.md | 8 +-
.../UserGuide/API/Programming-Java-Native-API.md | 12 +-
.../UserGuide/API/Programming-Python-Native-API.md | 14 +-
docs/zh/UserGuide/API/Programming-Thrift.md | 4 +-
docs/zh/UserGuide/API/RestService.md | 22 +-
docs/zh/UserGuide/API/Status-Codes.md | 176 ++-
.../Administration-Management/Administration.md | 18 +-
docs/zh/UserGuide/Cluster/Cluster-Concept.md | 4 +-
docs/zh/UserGuide/Cluster/Cluster-Setup.md | 50 +-
docs/zh/UserGuide/Data-Concept/Compression.md | 88 +-
.../Data-Concept/Data-Model-and-Terminology.md | 22 +-
.../{Compression.md => Deadband-Process.md} | 26 +-
docs/zh/UserGuide/Data-Concept/Schema-Template.md | 4 +-
docs/zh/UserGuide/Data-Concept/Time-Partition.md | 25 +-
docs/zh/UserGuide/Data-Modeling/DataRegion.md | 12 +-
docs/zh/UserGuide/Delete-Data/Delete-Data.md | 2 +-
docs/zh/UserGuide/Delete-Data/TTL.md | 22 +-
.../Ecosystem-Integration/Grafana-Plugin.md | 2 +-
.../Ecosystem-Integration/Zeppelin-IoTDB.md | 2 +-
.../Sync-Tool.md | 39 +-
.../Frequently-asked-questions.md | 0
.../Integration-Test-refactoring-tutorial.md | 8 +-
.../Maintenance-Tools/Maintenance-Command.md | 84 +-
docs/zh/UserGuide/Maintenance-Tools/NodeTool.md | 10 +-
.../Maintenance-Tools/SchemaFileSketch-Tool.md | 2 +-
.../UserGuide/{Alert => Monitor-Alert}/Alerting.md | 2 +-
.../Metric-Tool.md | 222 +--
.../Operate-Metadata/Auto-Create-MetaData.md | 10 +-
docs/zh/UserGuide/Operate-Metadata/Node.md | 18 +-
.../zh/UserGuide/Operate-Metadata/Storage-Group.md | 73 +-
docs/zh/UserGuide/Operate-Metadata/Template.md | 22 +-
docs/zh/UserGuide/Operate-Metadata/Timeseries.md | 18 +-
docs/zh/UserGuide/Process-Data/Continuous-Query.md | 4 +-
docs/zh/UserGuide/Process-Data/Select-Into.md | 6 +-
.../UserGuide/{Alert => Process-Data}/Triggers.md | 28 +-
.../Process-Data/UDF-User-Defined-Function.md | 18 +-
docs/zh/UserGuide/Query-Data/Aggregate-Query.md | 8 +-
docs/zh/UserGuide/Query-Data/Select-Expression.md | 9 +-
.../UserGuide/QuickStart/Command-Line-Interface.md | 8 +-
docs/zh/UserGuide/QuickStart/QuickStart.md | 36 +-
docs/zh/UserGuide/QuickStart/ServerFileList.md | 46 +-
.../Reference/ConfigNode-Config-Manual.md | 28 +-
.../UserGuide/Reference/DataNode-Config-Manual.md | 22 +-
docs/zh/UserGuide/Reference/Keywords.md | 2 +
docs/zh/UserGuide/Reference/SQL-Reference.md | 60 +-
docs/zh/UserGuide/Reference/Syntax-Conventions.md | 44 +-
docs/zh/UserGuide/UDF-Library/Data-Profiling.md | 74 +
docs/zh/UserGuide/UDF-Library/Data-Quality.md | 57 +-
docs/zh/UserGuide/Write-Data/CSV-Tool.md | 6 +-
.../UserGuide/Write-Data/Load-External-Tsfile.md | 2 +-
.../zh/UserGuide/Write-Data/MQTT.md | 10 +-
.../M4.md => zh/UserGuide/Write-Data/REST-API.md} | 38 +-
.../M4.md => zh/UserGuide/Write-Data/Session.md} | 16 +-
.../src/AlignedTimeseriesSessionExample.cpp | 2 +-
.../org/apache/iotdb/flink/FlinkIoTDBSource.java | 2 +-
.../main/java/org/apache/iotdb/JDBCExample.java | 2 +-
.../iotdb/SyntaxConventionRelatedExample.java | 4 +-
example/mqtt/README.md | 2 +-
example/rest-client-c-example/main.c | 4 +-
example/rocketmq/readme.md | 6 +-
.../org/apache/iotdb/DataMigrationExample.java | 4 +-
.../main/java/org/apache/iotdb/SessionExample.java | 89 +-
.../iotdb/SyntaxConventionRelatedExample.java | 8 +-
example/trigger/pom.xml | 2 +-
.../java/org/apache/iotdb/tsfile/TsFileRead.java | 11 +-
example/udf/pom.xml | 3 +-
.../SlidingTimeWindowAccessStrategyExample.java | 105 ++
.../java/org/apache/iotdb/udf/UDTFExample.java | 2 +-
.../Apache IoTDB ConfigNode Dashboard v0.14.0.json | 238 +--
.../Apache IoTDB DataNode Dashboard v0.14.0.json | 121 +-
.../standalone/Apache IoTDB Dashboard v0.14.0.json | 2 +-
grafana-plugin/README.md | 130 +-
grafana-plugin/pkg/main.go | 2 +-
.../pkg/plugin/iotdb_resource_handler.go | 170 +++
grafana-plugin/pkg/plugin/plugin.go | 119 +-
grafana-plugin/src/ConfigEditor.tsx | 70 +-
grafana-plugin/src/datasource.ts | 47 +-
grafana-plugin/src/img/addIoTDBDataSource.png | Bin 0 -> 43760 bytes
grafana-plugin/src/img/showData.png | Bin 0 -> 170827 bytes
grafana-plugin/src/plugin.json | 4 +-
grafana-plugin/src/types.ts | 3 +-
.../iotdb/hadoop/tsfile/TSFRecordReader.java | 2 +-
integration-test/README.md | 61 +-
integration-test/import-control.xml | 6 +-
integration-test/pom.xml | 23 +-
.../java/org/apache/iotdb/it/env/AbstractEnv.java | 15 +
.../apache/iotdb/it/env/AbstractNodeWrapper.java | 8 +-
.../org/apache/iotdb/it/env/ConfigFactory.java | 41 +-
.../org/apache/iotdb/it/env/ConfigNodeWrapper.java | 8 +-
.../org/apache/iotdb/it/env/DataNodeWrapper.java | 3 +-
.../java/org/apache/iotdb/it/env/EnvFactory.java | 20 +-
.../main/java/org/apache/iotdb/it/env/EnvType.java | 14 +-
.../java/org/apache/iotdb/it/env/MppConfig.java | 39 +-
.../org/apache/iotdb/it/env/RemoteServerEnv.java | 8 +-
.../{StandaloneOnMppEnv.java => SimpleEnv.java} | 22 +-
.../apache/iotdb/itbase/constant/TestConstant.java | 11 +-
.../org/apache/iotdb/itbase/env/BaseConfig.java | 40 +-
.../java/org/apache/iotdb/itbase/env/BaseEnv.java | 53 +
.../confignode/it/IoTDBClusterAuthorityIT.java | 40 +-
.../iotdb/confignode/it/IoTDBClusterNodeIT.java | 2 +-
.../it/IoTDBClusterRegionLeaderBalancingIT.java | 155 +-
.../iotdb/confignode/it/IoTDBClusterRestartIT.java | 6 +-
.../confignode/it/IoTDBConfigNodeSnapshotIT.java | 8 +-
.../it/IoTDBConfigNodeSwitchLeaderIT.java | 14 +-
.../iotdb/confignode/it/IoTDBStorageGroupIT.java | 3 +-
.../it/partition/IoTDBPartitionDurableTest.java | 323 ++++
.../IoTDBPartitionGetterIT.java} | 592 ++------
.../partition/IoTDBPartitionInheritPolicyTest.java | 182 +++
.../confignode/it/utils/ConfigNodeTestUtils.java | 66 +
.../org/apache/iotdb/db/it/IOTDBLoadTsFileIT.java | 33 +-
.../java/org/apache/iotdb/db/it/IoTDBAuthIT.java | 45 +-
.../apache/iotdb/db/it}/IoTDBDatetimeFormatIT.java | 33 +-
.../org/apache/iotdb/db/it/IoTDBDeletionIT.java | 38 +-
.../org/apache/iotdb/db/it}/IoTDBEncodingIT.java | 220 +--
.../org/apache/iotdb/db/it/IoTDBExampleIT.java | 6 +-
.../apache/iotdb/db/it}/IoTDBExecuteBatchIT.java | 77 +-
.../apache/iotdb/db/it/IoTDBFilterBetweenIT.java | 20 +-
.../java/org/apache/iotdb/db/it/IoTDBFilterIT.java | 64 +-
.../org/apache/iotdb/db/it/IoTDBFilterNullIT.java | 15 +-
.../apache/iotdb/db/it}/IoTDBFloatPrecisionIT.java | 47 +-
.../apache/iotdb/db/it/IoTDBFlushQueryMergeIT.java | 28 +-
.../apache/iotdb/db/it}/IoTDBInsertMultiRowIT.java | 52 +-
.../org/apache/iotdb/db/it}/IoTDBInsertNaNIT.java | 56 +-
.../org/apache/iotdb/db/it}/IoTDBInsertNullIT.java | 44 +-
.../iotdb/db/it}/IoTDBInsertWithQueryIT.java | 31 +-
.../iotdb/db/it/IoTDBInsertWithoutTimeIT.java | 2 +-
.../org/apache/iotdb/db/it/IoTDBMultiDeviceIT.java | 98 +-
.../org/apache/iotdb/db/it/IoTDBNestedQueryIT.java | 15 +-
.../iotdb/db/it}/IoTDBPartialInsertionIT.java | 50 +-
.../it}/IoTDBQueryWithRecreatedTimeseriesIT.java | 23 +-
.../org/apache/iotdb/db/it/IoTDBQuotedPathIT.java | 7 +-
.../org/apache/iotdb/db/it}/IoTDBRecoverIT.java | 147 +-
.../iotdb/db/it}/IoTDBRecoverUnclosedIT.java | 131 +-
.../org/apache/iotdb/db/it}/IoTDBRestartIT.java | 221 ++-
.../it/IoTDBSameMeasurementsDifferentTypesIT.java | 2 +-
.../org/apache/iotdb/db/it}/IoTDBSettleIT.java | 27 +-
.../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java | 80 +-
.../db/it/IoTDBSyntaxConventionIdentifierIT.java | 275 ++--
.../it/IoTDBSyntaxConventionStringLiteralIT.java | 53 +-
.../org/apache/iotdb/db/it/IoTDBTimeZoneIT.java | 6 +-
.../java/org/apache/iotdb/db/it/IoTDBTtlIT.java | 19 +-
.../it/aggregation/IoTDBAggregationByLevelIT.java | 35 +-
.../db/it/aggregation/IoTDBAggregationIT.java | 70 +-
.../aggregation/IoTDBAggregationLargeDataIT.java | 2 +-
.../aggregation/IoTDBAggregationSmallDataIT.java | 23 +-
.../db/it/aggregation/IoTDBTagAggregationIT.java | 6 +-
.../db/it/alignbydevice/IoTDBAlignByDeviceIT.java | 4 +-
.../aligned/IoTDBAggregationWithDeletion2IT.java | 4 +-
.../it/aligned/IoTDBAggregationWithDeletionIT.java | 7 +-
.../db/it/aligned/IoTDBAlignedDataDeletionIT.java | 36 +-
.../db/it/aligned/IoTDBAlignedLastQuery2IT.java | 4 +-
.../db/it/aligned/IoTDBAlignedLastQuery3IT.java | 4 +-
.../db/it/aligned/IoTDBAlignedLastQueryIT.java | 13 +-
.../db/it/aligned/IoTDBAlignedSeriesQueryIT.java | 104 +-
.../db/it/aligned/IoTDBGroupByLevelQueryIT.java | 2 +-
...GroupByQueryWithValueFilterWithDeletion2IT.java | 4 +-
...BGroupByQueryWithValueFilterWithDeletionIT.java | 4 +-
...upByQueryWithoutValueFilterWithDeletion2IT.java | 4 +-
...oupByQueryWithoutValueFilterWithDeletionIT.java | 4 +-
.../db/it/aligned/IoTDBInsertAlignedValues2IT.java | 10 +-
.../db/it/aligned/IoTDBInsertAlignedValues3IT.java | 10 +-
.../db/it/aligned/IoTDBInsertAlignedValues4IT.java | 4 +-
.../db/it/aligned/IoTDBInsertAlignedValuesIT.java | 41 +-
.../it/aligned/IoTDBLastQueryWithDeletion2IT.java | 8 +-
.../it/aligned/IoTDBLastQueryWithDeletionIT.java | 8 +-
.../aligned/IoTDBLastQueryWithoutLastCache2IT.java | 4 +-
.../aligned/IoTDBLastQueryWithoutLastCacheIT.java | 4 +-
...DBLastQueryWithoutLastCacheWithDeletion2IT.java | 8 +-
...TDBLastQueryWithoutLastCacheWithDeletionIT.java | 8 +-
...BRawQueryWithoutValueFilterWithDeletion2IT.java | 3 +-
...DBRawQueryWithoutValueFilterWithDeletionIT.java | 18 +-
.../org/apache/iotdb/db/it/cq/IoTDBCQExecIT.java | 3 +-
.../java/org/apache/iotdb/db/it/cq/IoTDBCQIT.java | 53 +-
.../iotdb/db/it/env/StandaloneEnvConfig.java | 23 +-
.../apache/iotdb/db/it/groupby/IOTDBGroupByIT.java | 2 +-
.../iotdb/db/it/groupby/IoTDBGroupByUnseqIT.java | 4 +-
.../apache/iotdb/db/it/groupby/IoTDBHavingIT.java | 18 +-
.../IoTDBLastWithTTLIT.java} | 63 +-
.../org/apache/iotdb/db/it/query/IoTDBAliasIT.java | 6 +-
.../iotdb/db/it/query}/IoTDBArithmeticIT.java | 151 +-
.../iotdb/db/it/query}/IoTDBFuzzyQueryIT.java | 161 +-
.../org/apache/iotdb/db/it/query}/IoTDBInIT.java | 76 +-
.../iotdb/db/it/query/IoTDBNullOperandIT.java | 243 +++
.../iotdb/db/it/query/IoTDBNullValueFillIT.java | 5 +-
.../iotdb/db/it/query/IoTDBPaginationIT.java | 2 +-
.../iotdb/db/it/query}/IoTDBQueryDemoIT.java | 631 ++++----
.../query/IoTDBQueryWithComplexValueFilterIT.java | 2 +-
.../apache/iotdb/db/it/query/IoTDBResultSetIT.java | 36 +-
.../it/query}/IoTDBSelectCompareExpressionIT.java | 15 +-
.../iotdb/db/it/query}/IoTDBSelectSchemaIT.java | 15 +-
.../db/it/schema/IoTDBAutoCreateSchemaIT.java | 40 +-
.../it/schema/IoTDBCreateAlignedTimeseriesIT.java | 21 +-
.../db/it/schema/IoTDBCreateStorageGroupIT.java | 31 +-
.../db/it/schema/IoTDBCreateTimeseriesIT.java | 12 +-
.../db/it/schema/IoTDBDeactivateTemplateIT.java | 35 +-
.../it/schema/IoTDBDeleteAlignedTimeseriesIT.java | 7 +-
.../db/it/schema/IoTDBDeleteStorageGroupIT.java | 54 +-
.../db/it/schema/IoTDBDeleteTimeseriesIT.java | 13 +-
.../iotdb/db/it/schema/IoTDBMetadataFetchIT.java | 99 +-
.../iotdb/db/it/schema/IoTDBSchemaTemplateIT.java | 97 +-
.../db/it/schema/IoTDBSortedShowTimeseriesIT.java | 68 +-
.../apache/iotdb/db/it/schema/IoTDBTagAlterIT.java | 208 +--
.../org/apache/iotdb/db/it/schema/IoTDBTagIT.java | 275 ++--
.../iotdb/db/it/selectinto/IoTDBSelectInto2IT.java | 4 +-
.../iotdb/db/it/selectinto/IoTDBSelectInto3IT.java | 4 +-
.../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java | 24 +-
.../org/apache/iotdb/db/it/sync/IoTDBPipeIT.java | 21 +-
.../apache/iotdb/db/it/sync/IoTDBPipeSinkIT.java | 23 +-
.../db/it/trigger/IoTDBTriggerExecutionIT.java | 6 +-
.../db/it/trigger/IoTDBTriggerManagementIT.java | 169 ++-
.../org/apache/iotdb/db/it/udf/IoTDBUDFM4IT.java | 2 +-
.../iotdb/db/it/udf/IoTDBUDFManagementIT.java | 28 +
.../db/it/udf/IoTDBUDFOtherWindowQueryIT.java | 86 +-
.../iotdb/db/it/udf/IoTDBUDFWindowQueryIT.java | 33 +-
.../db/it/udf/IoTDBUDTFAlignByTimeQueryIT.java | 4 +-
.../db/it/udf/IoTDBUDTFBuiltinFunctionIT.java | 15 +-
.../iotdb/db/it/udf/IoTDBUDTFHybridQueryIT.java | 6 +-
.../iotdb/db/it/udf/IoTDBUDTFNonAlignQueryIT.java | 2 +-
.../apache/iotdb/db/it/utils/AlignedWriteUtil.java | 6 +-
.../org/apache/iotdb/db/it/utils/TestUtils.java | 4 +-
.../iotdb/db/it/watermark/IoTDBWatermarkIT.java | 2 +-
.../db/it/withoutNull/IoTDBWithoutAllNullIT.java | 17 +-
.../db/it/withoutNull/IoTDBWithoutAnyNullIT.java | 5 +-
.../withoutNull/IoTDBWithoutNullAllFilterIT.java | 44 +-
.../withoutNull/IoTDBWithoutNullAnyFilterIT.java | 60 +-
.../session/it/IoTDBSessionAlignedInsertIT.java | 95 +-
.../iotdb/session/it/IoTDBSessionComplexIT.java | 76 +-
.../session/it/IoTDBSessionSchemaTemplateIT.java | 12 +-
.../iotdb/session/it/IoTDBSessionSimpleIT.java | 26 +-
.../iotdb/session/it/pool/SessionPoolIT.java | 46 +-
.../src/test/resources/iotdb-datanode.properties | 10 +-
.../src/test/resources/iotdb-engine.properties | 21 -
.../iotdb/integration/env/ClusterEnvBase.java | 4 +-
.../iotdb/integration/env/ClusterEnvConfig.java | 7 +-
.../iotdb/integration/env/RemoteServerEnv.java | 8 +-
.../org/apache/iotdb/itbase/env/BaseConfig.java | 4 -
.../apache/iotdb/db/integration/IOTDBInsertIT.java | 2 +-
.../IoTDBAlignedTimeSeriesCompactionIT.java | 4 +-
.../iotdb/db/integration/IoTDBAuthorizationIT.java | 54 +-
.../iotdb/db/integration/IoTDBClearCacheIT.java | 4 +-
.../apache/iotdb/db/integration/IoTDBCloseIT.java | 2 +-
.../iotdb/db/integration/IoTDBCompactionIT.java | 11 +-
.../integration/IoTDBCompactionWithIDTableIT.java | 11 +-
.../apache/iotdb/db/integration/IoTDBDaemonIT.java | 4 +-
.../iotdb/db/integration/IoTDBDisableAlignIT.java | 4 +-
.../db/integration/IoTDBEngineTimeGeneratorIT.java | 2 +-
.../iotdb/db/integration/IoTDBFilePathUtilsIT.java | 99 --
.../apache/iotdb/db/integration/IoTDBFillIT.java | 4 +-
.../db/integration/IoTDBFlushQueryMergeIT.java | 18 +-
.../db/integration/IoTDBLoadExternalTsfileIT.java | 15 +-
.../IoTDBLoadExternalTsfileWithVirtualSGIT.java | 7 +-
.../integration/IoTDBManageTsFileResourceIT.java | 291 ----
.../iotdb/db/integration/IoTDBMultiSeriesIT.java | 5 +-
.../db/integration/IoTDBMultiStatementsIT.java | 2 +-
.../db/integration/IoTDBNewTsFileCompactionIT.java | 2 +-
.../db/integration/IoTDBOverlappedPageIT.java | 2 +-
.../db/integration/IoTDBQueryMemoryControlIT.java | 2 +-
.../iotdb/db/integration/IoTDBQueryTimeoutIT.java | 4 +-
.../db/integration/IoTDBQueryWithIDTableIT.java | 4 +-
.../db/integration/IoTDBRemovePartitionIT.java | 620 ++++----
.../db/integration/IoTDBRewriteTsFileToolIT.java | 2 +-
.../db/integration/IoTDBRpcCompressionIT.java | 2 +-
.../db/integration/IoTDBSchemaTemplateIT.java | 87 +-
.../iotdb/db/integration/IoTDBSensorUpdateIT.java | 2 +-
.../db/integration/IoTDBSequenceDataQueryIT.java | 2 +-
.../iotdb/db/integration/IoTDBSeriesReaderIT.java | 9 +-
.../db/integration/IoTDBSessionTimeoutIT.java | 2 +-
.../IoTDBSetSystemReadOnlyWritableIT.java | 4 +-
.../integration/IoTDBSizeTieredCompactionIT.java | 44 +-
.../iotdb/db/integration/IoTDBSnapshotIT.java | 8 +-
.../integration/IoTDBSortedShowTimeseriesIT.java | 69 +-
.../iotdb/db/integration/IoTDBTimePartitionIT.java | 5 +-
.../iotdb/db/integration/IoTDBTracingIT.java | 2 +-
.../db/integration/IoTDBTriggerExecutionIT.java | 678 ---------
.../db/integration/IoTDBTriggerForwardIT.java | 305 ----
.../db/integration/IoTDBTriggerManagementIT.java | 539 -------
.../apache/iotdb/db/integration/IoTDBTtlIT.java | 40 +-
.../db/integration/IoTDBUDFWindowQueryIT.java | 2 +-
.../db/integration/IoTDBUDTFHybridQueryIT.java | 2 +-
.../db/integration/IoTDBUDTFNonAlignQueryIT.java | 2 +-
.../db/integration/IoTDBUnseqOverlappedPageIT.java | 2 +-
.../iotdb/db/integration/IoTDBVersionIT.java | 4 +-
.../aggregation/IoTDBUDFNestAggregationIT.java | 17 +-
.../IoTDBUserDefinedAggregationFunctionIT.java | 16 +-
.../db/integration/aligned/AlignedWriteUtil.java | 2 +-
.../aligned/IoTDBGroupByFillQueryBigDataIT.java | 5 +-
.../aligned/IoTDBGroupByFillQueryIT.java | 3 +-
.../aligned/IoTDBLoadExternalAlignedTsFileIT.java | 15 +-
.../db/integration/env/StandaloneEnvConfig.java | 7 +-
.../db/integration/groupby/IoTDBGroupByFillIT.java | 4 +-
.../groupby/IoTDBGroupByFillMixPathsIT.java | 4 +-
.../groupby/IoTDBGroupByFillWithRangeIT.java | 2 +-
.../db/integration/sync/IoTDBSyncReceiverIT.java | 59 -
.../sync/IoTDBSyncReceiverLoaderIT.java | 76 +-
.../db/integration/sync/IoTDBSyncSenderIT.java | 58 +-
.../iotdb/db/integration/sync/SyncTestUtil.java | 4 +-
.../versionadaption/IoTDBDDLVersionAdaptionIT.java | 54 +-
.../IoTDBDeletionVersionAdaptionIT.java | 7 +-
.../IoTDBQueryVersionAdaptionIT.java | 4 +-
.../session/IoTDBSessionAlignedABDeviceIT.java | 6 +-
.../session/IoTDBSessionAlignedAggregationIT.java | 6 +-
.../IoTDBSessionAlignedAggregationWithUnSeqIT.java | 6 +-
.../src/test/resources/iotdb-datanode.properties | 10 +-
.../src/test/resources/iotdb-engine.properties | 21 -
jdbc/README.md | 10 +-
.../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java | 86 +-
.../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java | 12 +-
.../org/apache/iotdb/jdbc/IoTDBResultMetadata.java | 4 +-
.../java/org/apache/iotdb/jdbc/IoTDBStatement.java | 9 +-
.../test/java/org/apache/iotdb/jdbc/BatchTest.java | 2 +-
.../iotdb/jdbc/IoTDBDatabaseMetadataTest.java | 6 +-
.../apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java | 129 +-
library-udf/pom.xml | 115 +-
library-udf/src/assembly/tools/register-UDF.bat | 1 +
library-udf/src/assembly/tools/register-UDF.sh | 1 +
.../iotdb/library/dprofile/UDAFQuantile.java | 127 ++
.../library/dprofile/util/HeapLongKLLSketch.java | 356 +++++
.../dprofile/util/KLLSketchForQuantile.java | 172 +++
metrics/dropwizard-metrics/pom.xml | 2 +-
.../resources/conf/iotdb-confignode-metric.yml | 8 +-
.../resources/conf/iotdb-datanode-metric.yml | 8 +-
.../apache/iotdb/metrics/config/MetricConfig.java | 25 +-
.../iotdb/metrics/utils/IoTDBMetricsUtils.java | 7 +-
.../iotdb/metrics/config/MetricConfigTest.java | 2 +-
.../interface/src/test/resources/iotdb-metric.yml | 2 +-
metrics/micrometer-metrics/pom.xml | 2 +-
.../micrometer/MicrometerMetricManager.java | 2 +
.../resources/conf/iotdb-common.properties | 1258 +++++++---------
.../src/assembly/resources/sbin/iotdb-common.sh | 211 +++
.../commons/auth/authorizer/OpenIdAuthorizer.java | 41 +-
.../org/apache/iotdb/commons/auth/entity/User.java | 13 +-
.../iotdb/commons/concurrent/ThreadName.java | 2 +-
.../apache/iotdb/commons/conf/CommonConfig.java | 9 +-
.../iotdb/commons/conf/CommonDescriptor.java | 61 +-
.../apache/iotdb/commons/conf/IoTDBConstant.java | 55 +-
...titionRegionId.java => ConfigNodeRegionId.java} | 6 +-
.../iotdb/commons/consensus/ConsensusGroupId.java | 8 +-
.../commons/exception/ConfigurationException.java | 6 +-
.../commons/exception/IllegalPathException.java | 4 +-
.../commons/exception/sync/PipeSinkException.java | 4 +-
.../iotdb/commons/partition/DataPartition.java | 10 +-
.../iotdb/commons/partition/SchemaPartition.java | 3 +-
.../org/apache/iotdb/commons/path/PartialPath.java | 6 +-
.../apache/iotdb/commons/path/PathPatternNode.java | 58 +-
.../apache/iotdb/commons/path/PathPatternTree.java | 16 +-
.../iotdb/commons/sync/metadata/SyncMetadata.java | 2 +-
.../iotdb/commons/sync/pipe/TsFilePipeInfo.java | 5 +-
.../iotdb/commons/sync/pipesink/IoTDBPipeSink.java | 29 +-
.../iotdb/commons/sync/pipesink/PipeSink.java | 5 -
.../iotdb/commons/sync/utils/SyncConstant.java | 7 +-
.../org/apache/iotdb/commons/udf/UDFTable.java | 2 +-
.../commons/udf/service/UDFManagementService.java | 27 +-
.../org/apache/iotdb/commons/utils/AuthUtils.java | 20 +-
.../apache/iotdb/commons/utils/JVMCommonUtils.java | 2 +-
.../apache/iotdb/commons/utils/ProcessIdUtils.java | 26 +-
.../apache/iotdb/commons/utils/StatusUtils.java | 155 +-
.../iotdb/commons/path/PathPatternTreeTest.java | 19 +
.../commons/sync/metedata/SyncMetadataTest.java | 4 +-
.../iotdb/commons/utils/JVMCommonUtilsTest.java | 45 +-
.../commons/utils/ThriftCommonsSerDeUtilsTest.java | 2 +-
pom.xml | 22 +-
.../schemaregion/rocksdb/RSchemaRegion.java | 204 +--
.../schemaregion/rocksdb/mnode/RInternalMNode.java | 24 -
.../schemaregion/rocksdb/mnode/RMNode.java | 20 -
.../rocksdb/mnode/RMeasurementMNode.java | 26 -
schema-engine-tag/README.md | 8 +-
.../metadata/tagSchemaRegion/TagSchemaRegion.java | 127 +-
.../utils/PathTagConverterUtils.java | 6 +-
.../utils/ShowTimeSeriesResultUtils.java | 12 +-
.../src/assembly/resources/conf/datanode-env.bat | 25 +-
server/src/assembly/resources/conf/datanode-env.sh | 10 +
.../resources/conf/iotdb-datanode.properties | 49 +-
.../assembly/resources/conf/iotdb-rest.properties | 3 +
.../src/assembly/resources/conf/logback-tool.xml | 16 +-
.../src/assembly/resources/sbin/remove-datanode.sh | 45 +-
.../src/assembly/resources/sbin/start-datanode.bat | 42 +-
.../src/assembly/resources/sbin/start-datanode.sh | 194 ++-
.../assembly/resources/sbin/start-new-server.bat | 55 +-
.../assembly/resources/sbin/start-new-server.sh | 182 ++-
.../src/assembly/resources/sbin/start-server.bat | 126 --
server/src/assembly/resources/sbin/start-server.sh | 151 --
.../src/assembly/resources/sbin/stop-datanode.bat | 3 +
.../src/assembly/resources/sbin/stop-datanode.sh | 6 +-
server/src/assembly/resources/sbin/stop-server.bat | 38 -
server/src/assembly/resources/sbin/stop-server.sh | 74 -
.../assembly/resources/tools/detect-watermark.sh | 9 +-
.../assembly/resources/tools/rocksdb-transfer.bat | 2 +-
.../assembly/resources/tools/rocksdb-transfer.sh | 2 +-
.../resources/tools/schema/SchemaFileSketcher.sh | 9 +-
.../assembly/resources/tools/schema/mLogParser.sh | 9 +-
.../assembly/resources/tools/start-WalChecker.bat | 2 +-
.../assembly/resources/tools/start-WalChecker.sh | 11 +-
.../tools/tsfileToolSet/print-iotdb-data-dir.sh | 10 +-
.../tsfileToolSet/print-tsfile-resource-files.sh | 11 +-
.../tools/tsfileToolSet/print-tsfile-sketch.bat | 7 +-
.../tools/tsfileToolSet/print-tsfile-sketch.sh | 10 +-
.../tools/tsfileToolSet/print-tsfile-visdata.sh | 9 +-
.../resources/tools/tsfileToolSet/settle.sh | 9 +-
.../tools/tsfileToolSet/split-tsfile-tool.sh | 9 +-
.../tools/tsfileToolSet/validate-tsfile.sh | 9 +-
server/src/assembly/server.xml | 17 +
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 19 +-
.../iotdb/db/auth/ClusterAuthorityFetcher.java | 70 +-
.../iotdb/db/auth/StandaloneAuthorityFetcher.java | 5 +-
.../apache/iotdb/db/client/ConfigNodeClient.java | 35 +-
.../org/apache/iotdb/db/client/ConfigNodeInfo.java | 4 +-
.../iotdb/db/client/DataNodeClientPoolFactory.java | 14 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 283 ++--
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 337 ++---
.../org/apache/iotdb/db/conf/IoTDBStartCheck.java | 63 +-
.../db/conf/directories/DirectoryChecker.java | 106 ++
.../iotdb/db/conf/rest/IoTDBRestServiceConfig.java | 11 +
.../db/conf/rest/IoTDBRestServiceDescriptor.java | 3 +
.../db/consensus/DataRegionConsensusImpl.java | 2 +-
.../statemachine/DataRegionStateMachine.java | 16 +
.../statemachine/SchemaRegionStateMachine.java | 2 +-
.../statemachine/visitor/DataExecutionVisitor.java | 42 +-
.../org/apache/iotdb/db/constant/TestConstant.java | 2 +-
.../org/apache/iotdb/db/engine/StorageEngine.java | 1017 +------------
.../apache/iotdb/db/engine/StorageEngineV2.java | 231 +--
.../db/engine/cache/TimeSeriesMetadataCache.java | 5 +-
.../engine/compaction/CompactionTaskManager.java | 20 +-
.../RewriteCrossSpaceCompactionSelector.java | 8 +-
.../compaction/inner/InnerSpaceCompactionTask.java | 7 +-
.../sizetiered/SizeTieredCompactionSelector.java | 78 +-
.../inner/utils/MultiTsFileDeviceIterator.java | 4 +-
.../db/engine/compaction/log/TsFileIdentifier.java | 10 +-
.../impl/ReadChunkCompactionPerformer.java | 2 +-
.../writer/CrossSpaceCompactionWriter.java | 2 +-
.../writer/InnerSpaceCompactionWriter.java | 2 +-
.../iotdb/db/engine/flush/MemTableFlushTask.java | 20 +-
.../db/engine/flush/pool/FlushTaskPoolManager.java | 4 +-
.../iotdb/db/engine/load/AlignedChunkData.java | 339 ++---
.../org/apache/iotdb/db/engine/load/ChunkData.java | 25 +-
.../apache/iotdb/db/engine/load/DeletionData.java | 4 +-
.../iotdb/db/engine/load/LoadTsFileManager.java | 17 +-
.../iotdb/db/engine/load/NonAlignedChunkData.java | 258 ++--
.../apache/iotdb/db/engine/load/TsFileData.java | 3 +-
.../load/TsFileSplitter.java} | 431 ++----
.../iotdb/db/engine/memtable/AbstractMemTable.java | 204 +--
.../engine/memtable/AlignedWritableMemChunk.java | 10 +
.../memtable/AlignedWritableMemChunkGroup.java | 5 +
.../apache/iotdb/db/engine/memtable/IMemTable.java | 25 +-
.../db/engine/memtable/IWritableMemChunk.java | 6 +-
.../db/engine/memtable/IWritableMemChunkGroup.java | 2 +
.../iotdb/db/engine/memtable/WritableMemChunk.java | 9 +-
.../db/engine/memtable/WritableMemChunkGroup.java | 25 +-
.../db/engine/querycontext/QueryDataSource.java | 9 +-
.../selectinto/InsertTabletPlanGenerator.java | 252 ----
.../selectinto/InsertTabletPlansIterator.java | 190 ---
.../iotdb/db/engine/snapshot/SnapshotLoader.java | 2 +-
.../iotdb/db/engine/snapshot/SnapshotLogger.java | 2 +-
.../iotdb/db/engine/snapshot/SnapshotTaker.java | 18 +-
.../iotdb/db/engine/storagegroup/DataRegion.java | 871 +++--------
.../db/engine/storagegroup/DataRegionInfo.java | 6 +-
...hTimeManager.java => HashLastFlushTimeMap.java} | 236 ++-
...meManager.java => IDTableLastFlushTimeMap.java} | 180 +--
...lushTimeManager.java => ILastFlushTimeMap.java} | 34 +-
.../db/engine/storagegroup/TimePartitionInfo.java | 66 +
.../engine/storagegroup/TimePartitionManager.java | 165 +++
.../db/engine/storagegroup/TsFileManager.java | 6 +
.../db/engine/storagegroup/TsFileProcessor.java | 220 +--
.../db/engine/storagegroup/TsFileResource.java | 22 +-
.../engine/storagegroup/TsFileResourceStatus.java | 3 +-
.../dataregion/HashVirtualPartitioner.java | 58 -
.../dataregion/StorageGroupManager.java | 505 -------
.../storagegroup/timeindex/DeviceTimeIndex.java | 15 +-
.../storagegroup/timeindex/FileTimeIndex.java | 11 +-
.../engine/storagegroup/timeindex/ITimeIndex.java | 5 +
.../storagegroup/timeindex/V012FileTimeIndex.java | 6 +
.../db/engine/trigger/builtin/ForwardTrigger.java | 2 +-
.../db/engine/trigger/executor/TriggerEngine.java | 128 --
.../engine/trigger/executor/TriggerExecutor.java | 250 ----
.../trigger/service/TriggerClassLoaderManager.java | 95 --
.../engine/trigger/service/TriggerLogReader.java | 48 -
.../engine/trigger/service/TriggerLogWriter.java | 68 -
.../service/TriggerRegistrationInformation.java | 82 -
.../service/TriggerRegistrationService.java | 505 -------
.../trigger/sink/local/LocalIoTDBHandler.java | 12 +-
.../version/SimpleFileVersionController.java | 2 +-
.../iotdb/db/engine/version/VersionController.java | 12 +-
.../db/exception/ContinuousQueryException.java | 36 -
.../iotdb/db/exception/DataRegionException.java | 4 +-
.../exception/DiskSpaceInsufficientException.java | 2 +-
.../apache/iotdb/db/exception/MergeException.java | 2 +-
.../exception/StorageEngineReadonlyException.java | 2 +-
.../db/exception/SyncConnectionException.java | 6 +-
.../iotdb/db/exception/SystemCheckException.java | 34 -
.../index/UnsupportedIndexTypeException.java | 32 -
.../metadata/AliasAlreadyExistException.java | 2 +-
.../exception/metadata/DeleteFailedException.java | 40 -
.../metadata/MeasurementAlreadyExistException.java | 2 +-
.../metadata/MeasurementInBlackListException.java | 2 +-
.../metadata/PathAlreadyExistException.java | 2 +-
.../exception/metadata/PathNotExistException.java | 24 +-
.../SchemaDirCreationFailureException.java | 2 +-
.../metadata/StorageGroupAlreadySetException.java | 8 +-
.../metadata/StorageGroupNotSetException.java | 10 +-
.../schemafile/ColossalRecordException.java | 6 +-
.../SchemaFileLogCorruptedException.java | 2 +-
.../template/NoTemplateOnMNodeException.java | 2 +-
.../template/TemplateImcompatibeException.java | 4 +-
.../db/exception/query/OutOfTTLException.java | 8 +-
.../iotdb/db/exception/query/PathException.java | 38 -
.../query/UnSupportedFillTypeException.java | 2 +-
.../apache/iotdb/db/index/common/IndexType.java | 10 +-
.../iotdb/db/localconfignode/LocalConfigNode.java | 335 +----
.../db/localconfignode/LocalDataPartitionInfo.java | 4 +-
.../localconfignode/LocalDataPartitionTable.java | 2 +-
.../localconfignode/LocalSchemaPartitionTable.java | 2 +-
.../iotdb/db/metadata/LocalSchemaProcessor.java | 306 +---
.../apache/iotdb/db/metadata/MetadataConstant.java | 3 +-
.../db/metadata/cache/DataNodeSchemaCache.java | 47 +-
.../iotdb/db/metadata/cache/SchemaCacheEntry.java | 12 +-
.../idtable/AppendOnlyDiskSchemaManager.java | 3 +-
.../apache/iotdb/db/metadata/idtable/IDTable.java | 3 +-
.../db/metadata/idtable/IDTableHashmapImpl.java | 136 +-
.../iotdb/db/metadata/idtable/IDTableManager.java | 14 +-
.../db/metadata/idtable/entry/DeviceEntry.java | 37 +-
.../idtable/entry/InsertMeasurementMNode.java | 53 -
.../iotdb/db/metadata/logfile/MLogWriter.java | 43 +-
.../org/apache/iotdb/db/metadata/mnode/IMNode.java | 15 -
.../iotdb/db/metadata/mnode/IMeasurementMNode.java | 5 -
.../iotdb/db/metadata/mnode/InternalMNode.java | 32 -
.../org/apache/iotdb/db/metadata/mnode/MNode.java | 29 -
.../apache/iotdb/db/metadata/mnode/MNodeType.java | 2 +-
.../iotdb/db/metadata/mnode/MeasurementMNode.java | 28 -
.../db/metadata/mnode/StorageGroupEntityMNode.java | 4 +-
.../iotdb/db/metadata/mtree/ConfigMTree.java | 70 +-
.../iotdb/db/metadata/mtree/IMTreeBelowSG.java | 80 +-
.../db/metadata/mtree/MTreeBelowSGCachedImpl.java | 794 +++-------
.../db/metadata/mtree/MTreeBelowSGMemoryImpl.java | 601 +-------
.../mtree/snapshot/MemMTreeSnapshotUtil.java | 4 +-
.../db/metadata/mtree/store/CachedMTreeStore.java | 29 +-
.../mtree/store/disk/schemafile/ISchemaFile.java | 9 +-
.../store/disk/schemafile/MockSchemaFile.java | 7 +-
.../mtree/store/disk/schemafile/RecordUtils.java | 25 +-
.../mtree/store/disk/schemafile/SchemaFile.java | 86 +-
.../store/disk/schemafile/WrappedSegment.java | 2 +-
.../db/metadata/mtree/traverser/Traverser.java | 53 +-
.../mtree/traverser/collector/MNodeCollector.java | 2 +-
.../traverser/collector/StorageGroupCollector.java | 2 +-
.../traverser/counter/StorageGroupCounter.java | 2 +-
.../plan/schemaregion/SchemaRegionPlanType.java | 6 +-
.../plan/schemaregion/SchemaRegionPlanVisitor.java | 15 -
.../impl/ActivateTemplatePlanImpl.java | 44 -
.../impl/DeactivateTemplatePlanImpl.java | 6 +
.../impl/PreDeactivateTemplatePlanImpl.java | 6 +
.../RollbackPreDeactivateTemplatePlanImpl.java | 6 +
.../impl/SchemaRegionPlanDeserializer.java | 44 +-
.../schemaregion/impl/SchemaRegionPlanFactory.java | 29 +-
.../impl/SchemaRegionPlanSerializer.java | 49 -
.../impl/SchemaRegionPlanTxtSerializer.java | 29 -
.../schemaregion/impl/SetTemplatePlanImpl.java | 69 -
.../schemaregion/impl/UnsetTemplatePlanImpl.java | 69 -
.../schemaregion/write/IActivateTemplatePlan.java | 42 -
.../plan/schemaregion/write/ISetTemplatePlan.java | 45 -
.../schemaregion/write/IUnsetTemplatePlan.java | 45 -
.../db/metadata/schemaregion/ISchemaRegion.java | 33 +-
.../db/metadata/schemaregion/SchemaEngine.java | 6 +-
.../schemaregion/SchemaRegionMemoryImpl.java | 497 +------
.../schemaregion/SchemaRegionSchemaFileImpl.java | 807 +++-------
.../metadata/schemaregion/SchemaRegionUtils.java | 48 -
.../storagegroup/IStorageGroupSchemaManager.java | 82 +-
.../storagegroup/StorageGroupSchemaManager.java | 8 +-
.../apache/iotdb/db/metadata/tag/TagManager.java | 58 +-
.../metadata/template/ClusterTemplateManager.java | 31 +-
.../db/metadata/template/TemplateLogReader.java | 46 -
.../db/metadata/template/TemplateLogWriter.java | 64 -
.../db/metadata/template/TemplateManager.java | 384 -----
.../db/metadata/upgrade/MetadataUpgrader.java | 437 ------
.../iotdb/db/metadata/utils/MetaFormatUtils.java | 2 +-
.../apache/iotdb/db/metadata/utils/MetaUtils.java | 24 +-
.../db/mpp/common/header/ColumnHeaderConstant.java | 367 ++---
.../db/mpp/common/header/DatasetHeaderFactory.java | 4 +
.../mpp/common/schematree/ClusterSchemaTree.java | 34 +-
.../common/schematree/DeviceGroupSchemaTree.java | 7 +-
.../db/mpp/common/schematree/ISchemaTree.java | 13 +-
.../common/schematree/node/SchemaEntityNode.java | 1 +
.../iotdb/db/mpp/execution/QueryStateMachine.java | 9 +
.../iotdb/db/mpp/execution/StateMachine.java | 3 -
.../db/mpp/execution/exchange/ISourceHandle.java | 8 +
.../db/mpp/execution/exchange/LocalSinkHandle.java | 23 +-
.../mpp/execution/exchange/LocalSourceHandle.java | 33 +-
.../execution/exchange/MPPDataExchangeManager.java | 34 +-
.../exchange/MPPDataExchangeServiceMetrics.java | 2 +-
...MppDataExchangeServiceThriftHandlerMetrics.java | 2 +-
.../mpp/execution/exchange/SharedTsBlockQueue.java | 25 +-
.../db/mpp/execution/exchange/SinkHandle.java | 98 +-
.../db/mpp/execution/exchange/SourceHandle.java | 21 +-
.../execution/executor/RegionWriteExecutor.java | 32 +-
.../fragment/FragmentInstanceContext.java | 19 +-
.../fragment/FragmentInstanceExecution.java | 11 +-
.../fragment/FragmentInstanceFailureInfo.java | 212 +++
.../execution/fragment/FragmentInstanceInfo.java | 21 +-
.../fragment/FragmentInstanceManager.java | 35 +-
.../fragment/FragmentInstanceStateMachine.java | 14 +-
.../operator/process/AbstractIntoOperator.java | 3 +-
.../operator/process/DeviceViewOperator.java | 6 +-
.../operator/process/FilterAndProjectOperator.java | 10 +-
.../process/last/UpdateLastCacheOperator.java | 15 +-
.../operator/schema/CountMergeOperator.java | 65 +-
.../operator/schema/NodePathsCountOperator.java | 35 +-
.../operator/schema/SchemaFetchMergeOperator.java | 2 +-
.../operator/schema/SchemaFetchScanOperator.java | 2 +-
.../schema/SchemaQueryOrderByHeatOperator.java | 133 +-
.../schema/TimeSeriesSchemaScanOperator.java | 2 +
.../execution/schedule/AbstractDriverThread.java | 2 +-
.../db/mpp/execution/schedule/DriverScheduler.java | 2 +-
.../schedule/FragmentInstanceAbortedException.java | 2 +-
.../org/apache/iotdb/db/mpp/plan/Coordinator.java | 25 +-
.../apache/iotdb/db/mpp/plan/analyze/Analysis.java | 5 +
.../iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java | 122 +-
.../mpp/plan/analyze/ClusterPartitionFetcher.java | 20 +-
.../db/mpp/plan/analyze/ClusterSchemaFetcher.java | 209 ++-
.../db/mpp/plan/analyze/ExpressionAnalyzer.java | 33 +-
.../mpp/plan/analyze/ExpressionTypeAnalyzer.java | 12 +-
.../db/mpp/plan/analyze/IPartitionFetcher.java | 8 +-
.../plan/analyze/StandalonePartitionFetcher.java | 4 +-
.../mpp/plan/analyze/StandaloneSchemaFetcher.java | 2 +-
.../db/mpp/plan/analyze/cache/PartitionCache.java | 121 +-
.../iotdb/db/mpp/plan/constant/StatementType.java | 2 -
.../db/mpp/plan/execution/IQueryExecution.java | 4 +
.../db/mpp/plan/execution/QueryExecution.java | 99 +-
.../mpp/plan/execution/config/ConfigExecution.java | 10 +
.../plan/execution/config/ConfigTaskVisitor.java | 5 +-
.../config/executor/ClusterConfigTaskExecutor.java | 259 ++--
.../config/executor/IConfigTaskExecutor.java | 3 +-
.../executor/StandaloneConfigTaskExecutor.java | 7 +-
.../config/metadata/SetStorageGroupTask.java | 2 +-
...lusterTask.java => ShowClusterDetailsTask.java} | 78 +-
.../execution/config/metadata/ShowClusterTask.java | 12 +-
.../plan/execution/memory/MemorySourceHandle.java | 5 +
.../iotdb/db/mpp/plan/expression/Expression.java | 5 +
.../db/mpp/plan/expression/ExpressionType.java | 2 +
.../db/mpp/plan/expression/leaf/NullOperand.java | 101 ++
.../plan/expression/unary/NegationExpression.java | 2 +
.../visitor/ColumnTransformerVisitor.java | 17 +
.../plan/expression/visitor/ExpressionVisitor.java | 5 +
.../iotdb/db/mpp/plan/parser/ASTVisitor.java | 69 +-
.../db/mpp/plan/parser/StatementGenerator.java | 36 +-
.../plan/planner/LocalExecutionPlanContext.java | 13 +-
.../db/mpp/plan/planner/LocalExecutionPlanner.java | 9 +-
.../db/mpp/plan/planner/LogicalPlanBuilder.java | 6 +-
.../db/mpp/plan/planner/OperatorTreeGenerator.java | 7 +-
.../plan/planner/distribution/SourceRewriter.java | 43 +-
.../plan/planner/plan/node/PlanGraphPrinter.java | 49 +
.../plan/node/load/LoadSingleTsFileNode.java | 415 +-----
.../planner/plan/node/load/LoadTsFileNode.java | 19 +-
.../plan/node/load/LoadTsFilePieceNode.java | 13 +-
.../write/CreateAlignedTimeSeriesNode.java | 6 +-
.../metedata/write/CreateMultiTimeSeriesNode.java | 81 +-
.../node/metedata/write/CreateTimeSeriesNode.java | 6 +-
.../plan/node/metedata/write/MeasurementGroup.java | 96 +-
.../plan/node/source/LastQueryScanNode.java | 6 +-
.../planner/plan/node/write/InsertRowNode.java | 9 +-
.../planner/plan/node/write/InsertRowsNode.java | 6 +-
.../plan/node/write/InsertRowsOfOneDeviceNode.java | 41 +-
.../planner/plan/node/write/InsertTabletNode.java | 37 +-
.../scheduler/AbstractFragInsStateTracker.java | 33 +-
.../db/mpp/plan/scheduler/ClusterScheduler.java | 10 +-
.../scheduler/FixedRateFragInsStateTracker.java | 61 +-
.../scheduler/FragmentInstanceDispatcherImpl.java | 4 +-
.../plan/scheduler/IFragInstanceStateTracker.java | 6 +
.../mpp/plan/scheduler/SimpleQueryTerminator.java | 30 +-
.../db/mpp/plan/scheduler/StandaloneScheduler.java | 2 +-
.../scheduler/load/LoadTsFileDispatcherImpl.java | 8 +-
.../plan/scheduler/load/LoadTsFileScheduler.java | 230 ++-
.../crud/InsertMultiTabletsStatement.java | 2 +-
.../plan/statement/crud/InsertRowStatement.java | 4 +-
.../crud/InsertRowsOfOneDeviceStatement.java | 28 +-
.../plan/statement/crud/InsertRowsStatement.java | 2 +-
.../mpp/plan/statement/crud/InsertStatement.java | 1 -
.../plan/statement/crud/InsertTabletStatement.java | 17 +-
.../plan/statement/metadata/CountStatement.java | 2 +-
.../statement/metadata/CreateTriggerStatement.java | 2 +-
.../statement/metadata/DropTriggerStatement.java | 22 +-
.../statement/metadata/ShowClusterStatement.java | 10 +
.../statement/metadata/ShowDevicesStatement.java | 2 +-
.../metadata/ShowStorageGroupStatement.java | 4 +-
.../db/mpp/plan/statement/sys/FlushStatement.java | 2 +-
.../sys/sync/CreatePipeSinkStatement.java | 7 +-
...izableRowRecordListBackedMultiColumnWindow.java | 12 +
...SerializableTVListBackedSingleColumnWindow.java | 12 +
.../dag/adapter/EmptyRowIterator.java | 22 +-
.../dag/column/ColumnTransformer.java | 31 +
.../binary/CompareBinaryColumnTransformer.java | 7 +-
.../binary/CompareEqualToColumnTransformer.java | 2 +-
.../column/binary/LogicAndColumnTransformer.java | 30 +
.../binary/LogicBinaryColumnTransformer.java | 24 -
.../column/binary/LogicOrColumnTransformer.java | 30 +
.../dag/column/leaf/NullColumnTransformer.java} | 20 +-
.../ternary/CompareTernaryColumnTransformer.java | 17 +-
.../dag/column/unary/InColumnTransformer.java | 48 +-
.../column/unary/LogicNotColumnTransformer.java | 2 +-
.../dag/column/unary/RegularColumnTransformer.java | 2 +-
.../intermediate/ConstantIntermediateLayer.java | 3 +-
.../MultiInputColumnIntermediateLayer.java | 21 +-
...InputColumnMultiReferenceIntermediateLayer.java | 20 +-
...nputColumnSingleReferenceIntermediateLayer.java | 20 +-
.../transformation/dag/util/TransformUtils.java | 8 +-
.../iotdb/db/protocol/influxdb/dto/IoTDBPoint.java | 14 -
.../protocol/influxdb/handler/NewQueryHandler.java | 2 +-
.../influxdb/meta/AbstractInfluxDBMetaManager.java | 2 +-
.../influxdb/meta/NewInfluxDBMetaManager.java | 4 +-
.../influxdb/meta/TagInfluxDBMetaManager.java | 2 +-
.../db/protocol/influxdb/meta/TagInfoRecords.java | 24 -
.../protocol/influxdb/util/QueryResultUtils.java | 11 +-
.../protocol/rest/filter/AuthorizationFilter.java | 28 +-
.../rest/handler/AuthorizationHandler.java | 4 +-
.../db/protocol/rest/handler/ExceptionHandler.java | 10 +-
.../rest/handler/ExecuteStatementHandler.java | 52 +
.../protocol/rest/handler/QueryDataSetHandler.java | 37 +-
.../rest/handler/StatementConstructionHandler.java | 3 +-
.../protocol/rest/impl/GrafanaApiServiceImpl.java | 6 +-
.../db/protocol/rest/impl/RestApiServiceImpl.java | 28 +-
.../apache/iotdb/db/qp/constant/SQLConstant.java | 170 +--
.../apache/iotdb/db/qp/executor/IPlanExecutor.java | 79 -
.../apache/iotdb/db/qp/executor/PlanExecutor.java | 1559 +-------------------
.../db/qp/logical/crud/DeleteDataOperator.java | 15 +-
.../iotdb/db/qp/logical/crud/InsertOperator.java | 31 +-
.../db/qp/logical/sys/CreatePipeOperator.java | 12 +-
.../db/qp/logical/sys/CreatePipeSinkOperator.java | 11 +-
.../db/qp/logical/sys/CreateTriggerOperator.java | 92 --
.../db/qp/logical/sys/DeletePartitionOperator.java | 3 +-
.../iotdb/db/qp/logical/sys/DropPipeOperator.java | 4 +-
.../db/qp/logical/sys/DropPipeSinkOperator.java | 4 +-
.../db/qp/logical/sys/DropTriggerOperator.java | 50 -
.../iotdb/db/qp/logical/sys/ShowPipeOperator.java | 4 +-
.../db/qp/logical/sys/ShowPipeSinkOperator.java | 4 +-
.../qp/logical/sys/ShowPipeSinkTypeOperator.java | 4 +-
.../iotdb/db/qp/logical/sys/StartPipeOperator.java | 4 +-
.../db/qp/logical/sys/StartTriggerOperator.java | 50 -
.../iotdb/db/qp/logical/sys/StopPipeOperator.java | 4 +-
.../db/qp/logical/sys/StopTriggerOperator.java | 50 -
.../apache/iotdb/db/qp/physical/PhysicalPlan.java | 40 -
.../db/qp/physical/crud/DeletePartitionPlan.java | 53 -
.../iotdb/db/qp/physical/crud/DeletePlan.java | 221 ---
.../qp/physical/crud/InsertMultiTabletsPlan.java | 453 ------
.../iotdb/db/qp/physical/crud/InsertPlan.java | 239 ---
.../iotdb/db/qp/physical/crud/InsertRowPlan.java | 812 ----------
.../physical/crud/InsertRowsOfOneDevicePlan.java | 296 ----
.../iotdb/db/qp/physical/crud/InsertRowsPlan.java | 302 ----
.../db/qp/physical/crud/InsertTabletPlan.java | 895 -----------
.../db/qp/physical/sys/ActivateTemplatePlan.java | 4 +-
.../db/qp/physical/sys/AppendTemplatePlan.java | 2 +-
.../physical/sys/CreateAlignedTimeSeriesPlan.java | 8 +-
.../qp/physical/sys/CreateMultiTimeSeriesPlan.java | 6 +-
.../iotdb/db/qp/physical/sys/CreatePipePlan.java | 110 --
.../db/qp/physical/sys/CreatePipeSinkPlan.java | 98 --
.../db/qp/physical/sys/CreateTemplatePlan.java | 7 +-
.../db/qp/physical/sys/CreateTimeSeriesPlan.java | 6 +-
.../db/qp/physical/sys/CreateTriggerPlan.java | 166 ---
.../iotdb/db/qp/physical/sys/DropPipeSinkPlan.java | 45 -
.../iotdb/db/qp/physical/sys/DropTriggerPlan.java | 102 --
.../apache/iotdb/db/qp/physical/sys/FlushPlan.java | 4 +-
.../iotdb/db/qp/physical/sys/OperatePipePlan.java | 45 -
.../iotdb/db/qp/physical/sys/SetTemplatePlan.java | 3 +-
.../iotdb/db/qp/physical/sys/ShowPipePlan.java | 33 -
.../iotdb/db/qp/physical/sys/ShowPipeSinkPlan.java | 33 -
.../apache/iotdb/db/qp/physical/sys/ShowPlan.java | 3 -
.../iotdb/db/qp/physical/sys/StartTriggerPlan.java | 102 --
.../iotdb/db/qp/physical/sys/StopTriggerPlan.java | 102 --
.../db/qp/physical/sys/UnsetTemplatePlan.java | 3 +-
.../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java | 115 +-
.../db/query/control/QueryResourceManager.java | 6 +-
.../iotdb/db/query/control/SessionManager.java | 4 +-
.../iotdb/db/query/dataset/ShowDevicesDataSet.java | 4 +-
.../db/query/dataset/ShowTimeSeriesResult.java | 17 +-
.../db/query/dataset/ShowTimeseriesDataSet.java | 4 +-
.../db/query/executor/AggregationExecutor.java | 2 +-
.../iotdb/db/query/executor/LastQueryExecutor.java | 4 +-
.../iotdb/db/query/pool/QueryTaskManager.java | 4 +-
.../db/query/pool/RawQueryReadTaskPoolManager.java | 4 +-
.../org/apache/iotdb/db/rescon/SystemInfo.java | 46 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 45 +-
.../service/DataNodeInternalRPCServiceMetrics.java | 2 +-
.../db/service/DataNodeServerCommandLine.java | 12 +-
.../GetVersion.java} | 11 +-
.../java/org/apache/iotdb/db/service/IoTDB.java | 29 +-
.../apache/iotdb/db/service/IoTDBShutdownHook.java | 13 +-
.../org/apache/iotdb/db/service/MQTTService.java | 6 +-
.../java/org/apache/iotdb/db/service/NewIoTDB.java | 38 +-
.../apache/iotdb/db/service/RPCServiceMetrics.java | 2 +-
.../iotdb/db/service/RegionMigrateService.java | 88 +-
.../org/apache/iotdb/db/service/SettleService.java | 36 +-
.../org/apache/iotdb/db/service/UpgradeSevice.java | 18 +-
.../iotdb/db/service/metrics/ProcessMetrics.java | 10 +-
.../InternalServiceThriftHandlerMetrics.java | 2 +-
.../handler/RPCServiceThriftHandlerMetrics.java | 2 +-
.../service/thrift/impl/ClientRPCServiceImpl.java | 138 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 61 +-
.../service/thrift/impl/DataNodeRegionManager.java | 2 +-
.../thrift/impl/NewInfluxDBServiceImpl.java | 2 +-
.../db/service/thrift/impl/TSServiceImpl.java | 665 +--------
.../java/org/apache/iotdb/db/sync/SyncService.java | 79 +-
.../db/sync/common/ClusterSyncInfoFetcher.java | 16 +-
.../iotdb/db/sync/common/ISyncInfoFetcher.java | 3 -
.../apache/iotdb/db/sync/common/LocalSyncInfo.java | 12 +-
.../iotdb/db/sync/common/LocalSyncInfoFetcher.java | 12 +-
.../iotdb/db/sync/datasource/PipeOpManager.java | 2 +-
.../iotdb/db/sync/datasource/TsFileOpBlock.java | 5 +-
.../db/sync/externalpipe/ExtPipePluginManager.java | 4 +-
.../iotdb/db/sync/pipedata/DeletionPipeData.java | 14 +-
.../apache/iotdb/db/sync/pipedata/PipeData.java | 35 +-
.../iotdb/db/sync/pipedata/SchemaPipeData.java | 100 --
.../iotdb/db/sync/pipedata/TsFilePipeData.java | 32 +-
.../sync/pipedata/queue/BufferedPipeDataQueue.java | 9 +-
.../db/sync/receiver/load/DeletionLoader.java | 7 -
.../iotdb/db/sync/receiver/load/SchemaLoader.java | 71 -
.../iotdb/db/sync/receiver/load/TsFileLoader.java | 35 +-
.../db/sync/sender/pipe/ExternalPipeSink.java | 20 -
.../iotdb/db/sync/sender/pipe/TsFilePipe.java | 1 +
.../db/sync/transport/client/IoTDBSyncClient.java | 29 +-
.../db/sync/transport/client/SenderManager.java | 135 +-
.../sync/transport/client/SyncClientFactory.java | 12 +
.../db/sync/transport/server/ReceiverManager.java | 10 +-
.../apache/iotdb/db/tools/IoTDBDataDirViewer.java | 4 +-
.../apache/iotdb/db/tools/TsFileSelfCheckTool.java | 3 +-
.../apache/iotdb/db/tools/TsFileSketchTool.java | 196 ++-
.../iotdb/db/tools/TsFileSplitByPartitionTool.java | 10 +-
.../java/org/apache/iotdb/db/tools/WalChecker.java | 12 +-
.../db/tools/dataregion/DeviceMappingViewer.java | 63 -
.../db/tools/upgrade/TsFileOnlineUpgradeTool.java | 6 +-
.../db/tools/validate/TsFileValidationTool.java | 2 +-
.../iotdb/db/trigger/executor/TriggerExecutor.java | 3 +-
.../db/trigger/executor/TriggerFireVisitor.java | 8 +-
.../trigger/service/TriggerInformationUpdater.java | 8 +-
.../trigger/service/TriggerManagementService.java | 7 +-
.../apache/iotdb/db/utils/ErrorHandlingUtils.java | 8 +-
.../org/apache/iotdb/db/utils/FileLoaderUtils.java | 27 +-
.../java/org/apache/iotdb/db/utils/MemUtils.java | 54 -
.../apache/iotdb/db/utils/QueryDataSetUtils.java | 12 +-
.../apache/iotdb/db/utils/TimePartitionUtils.java | 16 +-
.../apache/iotdb/db/utils/TypeInferenceUtils.java | 6 +-
.../db/utils/datastructure/AlignedTVList.java | 4 +-
.../iotdb/db/utils/datastructure/BinaryTVList.java | 17 +-
.../db/utils/datastructure/BooleanTVList.java | 13 +-
.../iotdb/db/utils/datastructure/DoubleTVList.java | 13 +-
.../iotdb/db/utils/datastructure/FloatTVList.java | 13 +-
.../iotdb/db/utils/datastructure/IntTVList.java | 13 +-
.../iotdb/db/utils/datastructure/LongTVList.java | 13 +-
.../iotdb/db/utils/datastructure/TVList.java | 20 +-
.../apache/iotdb/db/utils/sync/SyncPipeUtil.java | 37 -
.../runtime/WindowEvaluationTaskPoolManager.java | 5 +-
.../java/org/apache/iotdb/db/wal/WALManager.java | 8 +-
.../org/apache/iotdb/db/wal/buffer/WALEntry.java | 23 +-
.../apache/iotdb/db/wal/buffer/WALEntryType.java | 7 +-
.../apache/iotdb/db/wal/buffer/WALInfoEntry.java | 20 +-
.../iotdb/db/wal/exception/WALException.java | 6 +-
.../org/apache/iotdb/db/wal/node/IWALNode.java | 11 -
.../org/apache/iotdb/db/wal/node/WALFakeNode.java | 19 -
.../java/org/apache/iotdb/db/wal/node/WALNode.java | 46 +-
.../iotdb/db/wal/recover/WALNodeRecoverTask.java | 2 +-
.../iotdb/db/wal/recover/WALRecoverManager.java | 6 +-
.../db/wal/recover/file/TsFilePlanRedoer.java | 103 +-
.../file/UnsealedTsFileRecoverPerformer.java | 13 +-
.../iotdb/db/auth/AuthorizerManagerTest.java | 4 +-
.../org/apache/iotdb/db/auth/entity/UserTest.java | 4 +-
.../engine/compaction/AbstractCompactionTest.java | 69 +-
.../engine/compaction/CompactionSchedulerTest.java | 386 ++---
.../ReadPointCompactionPerformerTest.java | 158 +-
.../cross/CrossSpaceCompactionExceptionTest.java | 3 +-
.../compaction/cross/CrossSpaceCompactionTest.java | 20 +-
.../cross/CrossSpaceCompactionValidationTest.java | 3 +-
.../cross/RewriteCompactionFileSelectorTest.java | 14 +-
.../RewriteCrossSpaceCompactionRecoverTest.java | 3 +-
.../cross/RewriteCrossSpaceCompactionTest.java | 16 +-
.../inner/InnerCompactionEmptyTsFileTest.java | 1 +
.../inner/InnerCompactionMoreDataTest.java | 63 +-
.../inner/InnerCompactionSchedulerTest.java | 13 +-
.../compaction/inner/InnerCompactionTest.java | 20 +-
.../compaction/inner/InnerSeqCompactionTest.java | 6 +-
.../ReadChunkCompactionPerformerNoAlignedTest.java | 18 +-
.../inner/ReadChunkCompactionPerformerOldTest.java | 2 +-
.../SizeTieredCompactionSelectorTest.java | 4 +-
.../inner/sizetiered/SizeTieredCompactionTest.java | 8 +-
...eCrossSpaceCompactionRecoverCompatibleTest.java | 3 +-
.../SizeTieredCompactionRecoverCompatibleTest.java | 3 +-
.../compaction/utils/CompactionCheckerUtils.java | 9 +-
.../compaction/utils/CompactionConfigRestorer.java | 2 +-
.../utils/MultiTsFileDeviceIteratorTest.java | 120 ++
.../db/engine/memtable/MemTableFlushTaskTest.java | 6 +-
.../db/engine/memtable/MemTableTestUtils.java | 69 +-
.../db/engine/memtable/PrimitiveMemTableTest.java | 65 +-
.../db/engine/storagegroup/DataRegionTest.java | 182 ++-
.../storagegroup/FileNodeManagerBenchmark.java | 132 --
.../storagegroup/IDTableLastFlushTimeMapTest.java | 129 ++
.../engine/storagegroup/LastFlushTimeMapTest.java | 223 +++
.../storagegroup/StorageGroupProcessorTest.java | 871 -----------
.../iotdb/db/engine/storagegroup/TTLTest.java | 175 +--
.../storagegroup/TimePartitionManagerTest.java | 129 ++
.../engine/storagegroup/TsFileProcessorTest.java | 476 ------
.../engine/storagegroup/TsFileProcessorV2Test.java | 12 +-
.../dataregion/HashVirtualPartitionerTest.java | 63 -
.../LocalConfigNodeMultiDataRegionTest.java | 4 -
.../apache/iotdb/db/metadata/SchemaBasicTest.java | 1539 ++-----------------
.../org/apache/iotdb/db/metadata/TemplateTest.java | 322 +---
.../db/metadata/cache/DataNodeSchemaCacheTest.java | 7 +-
.../db/metadata/idtable/IDTableFlushTimeTest.java | 226 ---
.../db/metadata/idtable/IDTableLogFileTest.java | 239 ++-
.../db/metadata/idtable/IDTableRecoverTest.java | 354 ++---
.../iotdb/db/metadata/idtable/IDTableTest.java | 1479 ++++++++++---------
.../db/metadata/idtable/LastQueryWithIDTable.java | 285 ++--
.../iotdb/db/metadata/mtree/ConfigMTreeTest.java | 8 +-
.../iotdb/db/metadata/mtree/MTreeBelowSGTest.java | 2 +-
.../plan/SchemaRegionPlanCompatibilityTest.java | 57 +-
.../schemaRegion/SchemaRegionBasicTest.java | 274 +++-
.../schemaRegion/SchemaRegionSnapshotTest.java | 168 ---
.../db/metadata/upgrade/MetadataUpgradeTest.java | 318 ----
.../common/schematree/ClusterSchemaTreeTest.java | 25 +
.../db/mpp/execution/exchange/SinkHandleTest.java | 28 +-
.../FragmentInstanceFailureInfoSerdeTest.java | 85 ++
.../mpp/execution/operator/OperatorMemoryTest.java | 11 +-
.../operator/schema/CountMergeOperatorTest.java | 4 +-
.../schema/SchemaQueryScanOperatorTest.java | 27 +-
.../schedule/DefaultDriverSchedulerTest.java | 3 +-
.../db/mpp/plan/StandaloneCoordinatorTest.java | 2 -
.../iotdb/db/mpp/plan/analyze/AnalyzeTest.java | 10 +-
.../db/mpp/plan/analyze/FakeSchemaFetcherImpl.java | 2 +-
.../mpp/plan/analyze/cache/PartitionCacheTest.java | 6 +-
.../iotdb/db/mpp/plan/plan/LogicalPlannerTest.java | 2 +-
.../db/mpp/plan/plan/QueryLogicalPlanUtil.java | 6 +-
.../distribution/AggregationDistributionTest.java | 139 +-
.../distribution/DistributionPlannerBasicTest.java | 126 +-
.../distribution/NoDataRegionPlanningTest.java | 37 +-
.../iotdb/db/mpp/plan/plan/distribution/Util.java | 492 ++++--
.../plan/node/write/WritePlanNodeSplitTest.java | 18 +-
.../plan/scheduler/StandaloneSchedulerTest.java | 2 -
.../db/protocol/rest/IoTDBRestServiceTest.java | 18 +-
.../java/org/apache/iotdb/db/qp/PlannerTest.java | 71 +-
.../iotdb/db/qp/logical/LogicalPlanSmallTest.java | 4 +-
.../iotdb/db/qp/other/TSPlanContextAuthorTest.java | 2 +-
.../iotdb/db/qp/physical/ConcatOptimizerTest.java | 138 --
.../qp/physical/InsertRowsOfOneDevicePlanTest.java | 75 -
.../db/qp/physical/PhysicalPlanSerializeTest.java | 326 ----
.../iotdb/db/qp/physical/PhysicalPlanTest.java | 1484 -------------------
.../iotdb/db/qp/physical/SerializationTest.java | 151 --
.../iotdb/db/qp/physical/SerializedSizeTest.java | 130 --
.../iotdb/db/query/dataset/ListDataSetTest.java | 12 +-
.../db/query/dataset/ShowTimeSeriesResultTest.java | 4 +-
.../iotdb/db/query/dataset/SingleDataSetTest.java | 199 ++-
.../org/apache/iotdb/db/service/DaemonTest.java} | 21 +-
.../db/sync/persistence/LocalSyncInfoTest.java | 16 +-
.../sync/pipedata/BufferedPipeDataQueueTest.java | 491 +++---
.../iotdb/db/sync/pipedata/PipeDataTest.java | 11 -
.../org/apache/iotdb/db/tools/MLogParserTest.java | 41 +-
.../iotdb/db/tools/TsFileAndModSettleToolTest.java | 390 +++--
.../org/apache/iotdb/db/tools/WalCheckerTest.java | 28 +-
.../apache/iotdb/db/utils/EnvironmentUtils.java | 37 +-
.../org/apache/iotdb/db/utils/MemUtilsTest.java | 35 +-
.../iotdb/db/utils/TsFileRewriteToolTest.java | 27 +-
.../iotdb/db/utils/TypeInferenceUtilsTest.java | 2 +
.../db/utils/datastructure/PrecisionTest.java | 143 --
.../db/utils/writelog/LogWriterReaderTest.java | 50 +-
.../db/utils/writelog/MultiFileLogReaderTest.java | 15 +-
.../org/apache/iotdb/db/wal/WALManagerTest.java | 52 +-
.../db/wal/allocation/ElasticStrategyTest.java | 16 +-
.../db/wal/allocation/FirstCreateStrategyTest.java | 18 +-
.../db/wal/allocation/RoundRobinStrategyTest.java | 16 +-
.../iotdb/db/wal/buffer/WALBufferCommonTest.java | 68 +-
.../org/apache/iotdb/db/wal/io/WALFileTest.java | 119 +-
.../apache/iotdb/db/wal/node/WALFakeNodeTest.java | 22 +-
.../org/apache/iotdb/db/wal/node/WALNodeTest.java | 90 +-
.../db/wal/recover/WALRecoverManagerTest.java | 116 +-
.../file/SealedTsFileRecoverPerformerTest.java | 32 +-
.../db/wal/recover/file/TsFilePlanRedoerTest.java | 244 +--
.../file/UnsealedTsFileRecoverPerformerTest.java | 60 +-
.../iotdb-common.properties} | 14 +-
...{iotdb-metric.yml => iotdb-datanode-metric.yml} | 2 +-
.../datanode1conf/iotdb-datanode.properties | 7 +-
.../resources/datanode1conf/iotdb-rest.properties | 45 +-
.../iotdb-common.properties} | 14 +-
...{iotdb-metric.yml => iotdb-datanode-metric.yml} | 2 +-
.../datanode2conf/iotdb-datanode.properties | 7 +-
.../resources/datanode2conf/iotdb-rest.properties | 43 -
.../iotdb-common.properties} | 14 +-
...{iotdb-metric.yml => iotdb-datanode-metric.yml} | 2 +-
.../datanode3conf/iotdb-datanode.properties | 11 +-
.../resources/datanode3conf/iotdb-rest.properties | 45 +-
.../src/test/resources/iotdb-datanode.properties | 2 -
server/src/test/resources/iotdb-rest.properties | 3 +
.../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java | 40 +-
.../main/java/org/apache/iotdb/rpc/RpcUtils.java | 8 +-
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 305 ++--
.../java/org/apache/iotdb/session/ISession.java | 13 +
.../java/org/apache/iotdb/session/Session.java | 24 +-
.../apache/iotdb/session/SessionConnection.java | 9 +-
.../org/apache/iotdb/session/SessionDataSet.java | 12 +-
.../org/apache/iotdb/session/pool/SessionPool.java | 63 +
.../src/test/resources/iotdb-datanode.properties | 11 +-
session/src/test/resources/iotdb-engine.properties | 20 -
session/src/test/resources/iotdb-rest.properties | 3 +
site/src/main/.vuepress/config.js | 64 +-
.../src/test/resources/iotdb-datanode.properties | 11 +-
.../src/test/resources/iotdb-engine.properties | 21 -
.../apache/iotdb/spark/db/EnvironmentUtils.java | 20 +-
.../iotdb/spark/tsfile/qp/common/SQLConstant.java | 123 +-
.../apache/iotdb/spark/tsfile/DefaultSource.scala | 10 +-
.../iotdb/spark/tsfile/NarrowConverter.scala | 181 ++-
.../org/apache/iotdb/spark/tsfile/TSFileSuit.scala | 30 +-
test/e2e/cases/cli/res/init.sql | 4 +-
.../test/java/org/apache/iotdb/db/sync/SyncIT.java | 6 +-
thrift-commons/src/main/thrift/common.thrift | 2 +-
.../src/main/thrift/confignode.thrift | 53 +-
thrift/src/main/thrift/client.thrift | 4 +-
thrift/src/main/thrift/datanode.thrift | 12 +-
.../iotdb/tsfile/file/header/ChunkHeader.java | 21 +
.../iotdb/tsfile/file/header/PageHeader.java | 10 +-
.../file/metadata/enums/CompressionType.java | 21 +-
.../iotdb/tsfile/read/TsFileDeviceIterator.java | 34 +-
.../iotdb/tsfile/read/TsFileSequenceReader.java | 130 +-
.../org/apache/iotdb/tsfile/read/common/Path.java | 9 +-
.../iotdb/tsfile/read/common/block/TsBlock.java | 5 +-
.../read/common/block/column/NullColumn.java | 87 +-
.../read/controller/MetadataQuerierByFileImpl.java | 3 +-
.../apache/iotdb/tsfile/utils/FilePathUtils.java | 4 +-
.../iotdb/tsfile/utils/TsFileGeneratorUtils.java | 2 +-
.../apache/iotdb/tsfile/write/TsFileWriter.java | 4 +-
.../write/chunk/AlignedChunkGroupWriterImpl.java | 6 +-
.../tsfile/write/chunk/AlignedChunkWriterImpl.java | 4 +
.../iotdb/tsfile/write/chunk/ChunkWriterImpl.java | 1 +
.../tsfile/write/chunk/IChunkGroupWriter.java | 4 +-
.../iotdb/tsfile/write/chunk/TimeChunkWriter.java | 1 +
.../iotdb/tsfile/write/chunk/ValueChunkWriter.java | 12 +-
.../iotdb/tsfile/write/writer/TsFileIOWriter.java | 30 +-
.../write/writer/TsFileIOWriterEndFileTest.java | 49 +
.../write/writer/tsmiterator/DiskTSMIterator.java | 7 +-
.../write/writer/tsmiterator/TSMIterator.java | 9 +-
.../tsfile/common/block/TsBlockSerdeTest.java | 4 +-
...easurementChunkMetadataListMapIteratorTest.java | 2 +-
.../iotdb/tsfile/read/ReadInPartitionTest.java | 22 +-
.../org/apache/iotdb/tsfile/read/ReadTest.java | 54 +-
.../iotdb/tsfile/read/TimePlainEncodeReadTest.java | 55 +-
.../tsfile/read/TimeSeriesMetadataReadTest.java | 4 +-
.../apache/iotdb/tsfile/read/TsFileReaderTest.java | 126 +-
.../tsfile/read/controller/ChunkLoaderTest.java | 2 +-
.../controller/IMetadataQuerierByFileImplTest.java | 16 +-
.../read/filter/IExpressionOptimizerTest.java | 30 +-
.../read/query/executor/QueryExecutorTest.java | 32 +-
.../read/query/timegenerator/ReadWriteTest.java | 8 +-
.../query/timegenerator/ReaderByTimestampTest.java | 2 +-
.../timegenerator/TimeGeneratorReadEmptyTest.java | 8 +-
.../timegenerator/TimeGeneratorReadWriteTest.java | 8 +-
.../query/timegenerator/TimeGeneratorTest.java | 6 +-
.../iotdb/tsfile/read/reader/ChunkReaderTest.java | 2 +-
.../tsfile/read/reader/FakedTimeGenerator.java | 9 +-
.../iotdb/tsfile/read/reader/ReaderTest.java | 8 +-
.../tsfile/write/DefaultSchemaTemplateTest.java | 2 +-
.../tsfile/write/MetadataIndexConstructorTest.java | 6 +-
...SameMeasurementsWithDifferentDataTypesTest.java | 4 +-
.../iotdb/tsfile/write/TsFileReadWriteTest.java | 4 +-
.../iotdb/tsfile/write/TsFileWriteApiTest.java | 264 ++++
.../iotdb/tsfile/write/TsFileWriterTest.java | 10 +-
.../org/apache/iotdb/tsfile/write/WriteTest.java | 2 +-
.../write/writer/ForceAppendTsFileWriterTest.java | 4 +-
.../write/writer/RestorableTsFileIOWriterTest.java | 36 +-
.../writer/TsFileIOWriterMemoryControlTest.java | 11 +-
.../org/apache/iotdb/udf/api/access/RowWindow.java | 3 +-
.../iotdb/udf/api/collector/PointCollector.java | 4 +-
.../strategy/SessionTimeWindowAccessStrategy.java | 10 +-
zeppelin-interpreter/IoTDB-Zeppelin-Demo.zpln | 2 +-
.../zeppelin/iotdb/IoTDBInterpreterTest.java | 35 +-
1295 files changed, 26310 insertions(+), 44486 deletions(-)
diff --cc server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java
index 814fd22deb,43515a61f2..10408a935c
--- a/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java
@@@ -130,10 -128,8 +131,9 @@@ import java.util.Map
import java.util.Optional;
import static org.apache.iotdb.db.service.basic.ServiceProvider.AUDIT_LOGGER;
- import static org.apache.iotdb.db.service.basic.ServiceProvider.CONFIG;
import static org.apache.iotdb.db.service.basic.ServiceProvider.CURRENT_RPC_VERSION;
import static org.apache.iotdb.db.service.basic.ServiceProvider.QUERY_FREQUENCY_RECORDER;
+import static org.apache.iotdb.db.service.basic.ServiceProvider.SLOW_SQL_LOGGER;
import static org.apache.iotdb.db.utils.ErrorHandlingUtils.onIoTDBException;
import static org.apache.iotdb.db.utils.ErrorHandlingUtils.onNPEOrUnexpectedException;
import static org.apache.iotdb.db.utils.ErrorHandlingUtils.onQueryException;
@@@ -1856,17 -1772,9 +1890,17 @@@ public class ClientRPCServiceImpl imple
return resp;
}
+ private TSFetchWindowBatchResp createTSFetchWindowBatchResp(DatasetHeader header) {
+ TSFetchWindowBatchResp resp = RpcUtils.getTSFetchWindowBatchResp(TSStatusCode.SUCCESS_STATUS);
+ resp.setColumnNameList(header.getRespColumns());
+ resp.setColumnTypeList(header.getRespDataTypeList());
+ resp.setColumnNameIndexMap(header.getColumnNameIndexMap());
+ return resp;
+ }
+
private TSStatus getNotLoggedInStatus() {
return RpcUtils.getStatus(
- TSStatusCode.NOT_LOGIN_ERROR,
+ TSStatusCode.NOT_LOGIN,
"Log in failed. Either you are not authorized or the session has timed out.");
}
diff --cc server/src/main/java/org/apache/iotdb/db/utils/QueryDataSetUtils.java
index b0d26a7b0d,e0575880ea..629e6efa74
--- a/server/src/main/java/org/apache/iotdb/db/utils/QueryDataSetUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/utils/QueryDataSetUtils.java
@@@ -398,259 -401,9 +402,259 @@@ public class QueryDataSetUtils
}
rowCount += positionCount;
}
- return res;
+ return new Pair<>(res, !queryExecution.hasNextResult());
}
+ public static List<List<ByteBuffer>> convertTsBlocksToWindowBatch(
+ IQueryExecution queryExecution, List<Integer> samplingIndexes) throws IoTDBException {
+ List<List<ByteBuffer>> sortedWindowBatch = new ArrayList<>();
+
+ while (true) {
+ Optional<ByteBuffer> optionalByteBuffer = queryExecution.getByteBufferBatchResult();
+ if (!optionalByteBuffer.isPresent()) {
+ break;
+ }
+
+ List<ByteBuffer> res = new ArrayList<>();
+ ByteBuffer byteBuffer = optionalByteBuffer.get();
+ byteBuffer.mark();
+ int valueColumnCount = byteBuffer.getInt();
+ for (int i = 0; i < valueColumnCount; i++) {
+ byteBuffer.get();
+ }
+ int positionCount = byteBuffer.getInt();
+ byteBuffer.reset();
+ if (positionCount != 0) {
+ res.add(byteBuffer);
+ }
+
+ sortedWindowBatch.add(res);
+ }
+
+ List<List<ByteBuffer>> windowBatch = new ArrayList<>(sortedWindowBatch.size());
+ List<Integer> sortedSamplingIndexes =
+ samplingIndexes.stream().sorted().collect(Collectors.toList());
+
+ for (Integer samplingIndex : samplingIndexes) {
+ int mapIndex = sortedSamplingIndexes.indexOf(samplingIndex);
+ windowBatch.add(sortedWindowBatch.get(mapIndex));
+ }
+ return windowBatch;
+ }
+
+ public static List<TSQueryDataSet> convertTsBlocksToWindowBatchDataSetList(
+ IQueryExecution queryExecution, List<Integer> samplingIndexes)
+ throws IoTDBException, IOException {
+ List<TSQueryDataSet> sortedWindowBatch = new ArrayList<>();
+
+ int columnNum = queryExecution.getOutputValueColumnCount();
+ // one time column and each value column has an actual value buffer and a bitmap value to
+ // indicate whether it is a null
+ int columnNumWithTime = columnNum * 2 + 1;
+
+ while (true) {
+ Optional<TsBlock> optionalTsBlock = queryExecution.getBatchResult();
+ if (!optionalTsBlock.isPresent()) {
+ break;
+ }
+ TsBlock tsBlock = optionalTsBlock.get();
+ if (tsBlock.isEmpty()) {
+ continue;
+ }
+
+ TSQueryDataSet tsQueryDataSet = new TSQueryDataSet();
+
+ DataOutputStream[] dataOutputStreams = new DataOutputStream[columnNumWithTime];
+ ByteArrayOutputStream[] byteArrayOutputStreams = new ByteArrayOutputStream[columnNumWithTime];
+ for (int i = 0; i < columnNumWithTime; i++) {
+ byteArrayOutputStreams[i] = new ByteArrayOutputStream();
+ dataOutputStreams[i] = new DataOutputStream(byteArrayOutputStreams[i]);
+ }
+
+ int rowCount = 0;
+ int[] valueOccupation = new int[columnNum];
+
+ // used to record a bitmap for every 8 points
+ int[] bitmaps = new int[columnNum];
+
+ int currentCount = tsBlock.getPositionCount();
+ // serialize time column
+ for (int i = 0; i < currentCount; i++) {
+ // use columnOutput to write byte array
+ dataOutputStreams[0].writeLong(tsBlock.getTimeByIndex(i));
+ }
+
+ // serialize each value column and its bitmap
+ for (int k = 0; k < columnNum; k++) {
+ // get DataOutputStream for current value column and its bitmap
+ DataOutputStream dataOutputStream = dataOutputStreams[2 * k + 1];
+ DataOutputStream dataBitmapOutputStream = dataOutputStreams[2 * (k + 1)];
+
+ Column column = tsBlock.getColumn(k);
+ TSDataType type = column.getDataType();
+ switch (type) {
+ case INT32:
+ for (int i = 0; i < currentCount; i++) {
+ rowCount++;
+ if (column.isNull(i)) {
+ bitmaps[k] = bitmaps[k] << 1;
+ } else {
+ bitmaps[k] = (bitmaps[k] << 1) | FLAG;
+ dataOutputStream.writeInt(column.getInt(i));
+ valueOccupation[k] += 4;
+ }
+ if (rowCount != 0 && rowCount % 8 == 0) {
+ dataBitmapOutputStream.writeByte(bitmaps[k]);
+ // we should clear the bitmap every 8 points
+ bitmaps[k] = 0;
+ }
+ }
+ break;
+ case INT64:
+ for (int i = 0; i < currentCount; i++) {
+ rowCount++;
+ if (column.isNull(i)) {
+ bitmaps[k] = bitmaps[k] << 1;
+ } else {
+ bitmaps[k] = (bitmaps[k] << 1) | FLAG;
+ dataOutputStream.writeLong(column.getLong(i));
+ valueOccupation[k] += 8;
+ }
+ if (rowCount != 0 && rowCount % 8 == 0) {
+ dataBitmapOutputStream.writeByte(bitmaps[k]);
+ // we should clear the bitmap every 8 points
+ bitmaps[k] = 0;
+ }
+ }
+ break;
+ case FLOAT:
+ for (int i = 0; i < currentCount; i++) {
+ rowCount++;
+ if (column.isNull(i)) {
+ bitmaps[k] = bitmaps[k] << 1;
+ } else {
+ bitmaps[k] = (bitmaps[k] << 1) | FLAG;
+ dataOutputStream.writeFloat(column.getFloat(i));
+ valueOccupation[k] += 4;
+ }
+ if (rowCount != 0 && rowCount % 8 == 0) {
+ dataBitmapOutputStream.writeByte(bitmaps[k]);
+ // we should clear the bitmap every 8 points
+ bitmaps[k] = 0;
+ }
+ }
+ break;
+ case DOUBLE:
+ for (int i = 0; i < currentCount; i++) {
+ rowCount++;
+ if (column.isNull(i)) {
+ bitmaps[k] = bitmaps[k] << 1;
+ } else {
+ bitmaps[k] = (bitmaps[k] << 1) | FLAG;
+ dataOutputStream.writeDouble(column.getDouble(i));
+ valueOccupation[k] += 8;
+ }
+ if (rowCount != 0 && rowCount % 8 == 0) {
+ dataBitmapOutputStream.writeByte(bitmaps[k]);
+ // we should clear the bitmap every 8 points
+ bitmaps[k] = 0;
+ }
+ }
+ break;
+ case BOOLEAN:
+ for (int i = 0; i < currentCount; i++) {
+ rowCount++;
+ if (column.isNull(i)) {
+ bitmaps[k] = bitmaps[k] << 1;
+ } else {
+ bitmaps[k] = (bitmaps[k] << 1) | FLAG;
+ dataOutputStream.writeBoolean(column.getBoolean(i));
+ valueOccupation[k] += 1;
+ }
+ if (rowCount != 0 && rowCount % 8 == 0) {
+ dataBitmapOutputStream.writeByte(bitmaps[k]);
+ // we should clear the bitmap every 8 points
+ bitmaps[k] = 0;
+ }
+ }
+ break;
+ case TEXT:
+ for (int i = 0; i < currentCount; i++) {
+ rowCount++;
+ if (column.isNull(i)) {
+ bitmaps[k] = bitmaps[k] << 1;
+ } else {
+ bitmaps[k] = (bitmaps[k] << 1) | FLAG;
+ Binary binary = column.getBinary(i);
+ dataOutputStream.writeInt(binary.getLength());
+ dataOutputStream.write(binary.getValues());
+ valueOccupation[k] = valueOccupation[k] + 4 + binary.getLength();
+ }
+ if (rowCount != 0 && rowCount % 8 == 0) {
+ dataBitmapOutputStream.writeByte(bitmaps[k]);
+ // we should clear the bitmap every 8 points
+ bitmaps[k] = 0;
+ }
+ }
+ break;
+ default:
+ throw new UnSupportedDataTypeException(
+ String.format("Data type %s is not supported.", type));
+ }
+ if (k != columnNum - 1) {
+ rowCount -= currentCount;
+ }
+ }
+
+ // feed the remaining bitmap
+ int remaining = rowCount % 8;
+ for (int k = 0; k < columnNum; k++) {
+ if (remaining != 0) {
+ DataOutputStream dataBitmapOutputStream = dataOutputStreams[2 * (k + 1)];
+ dataBitmapOutputStream.writeByte(bitmaps[k] << (8 - remaining));
+ }
+ }
+
+ // calculate the time buffer size
+ int timeOccupation = rowCount * 8;
+ ByteBuffer timeBuffer = ByteBuffer.allocate(timeOccupation);
+ timeBuffer.put(byteArrayOutputStreams[0].toByteArray());
+ timeBuffer.flip();
+ tsQueryDataSet.setTime(timeBuffer);
+
+ // calculate the bitmap buffer size
+ int bitmapOccupation = (rowCount + 7) / 8;
+
+ List<ByteBuffer> bitmapList = new LinkedList<>();
+ List<ByteBuffer> valueList = new LinkedList<>();
+ for (int i = 1; i < byteArrayOutputStreams.length; i += 2) {
+ ByteBuffer valueBuffer = ByteBuffer.allocate(valueOccupation[(i - 1) / 2]);
+ valueBuffer.put(byteArrayOutputStreams[i].toByteArray());
+ valueBuffer.flip();
+ valueList.add(valueBuffer);
+
+ ByteBuffer bitmapBuffer = ByteBuffer.allocate(bitmapOccupation);
+ bitmapBuffer.put(byteArrayOutputStreams[i + 1].toByteArray());
+ bitmapBuffer.flip();
+ bitmapList.add(bitmapBuffer);
+ }
+ tsQueryDataSet.setBitmapList(bitmapList);
+ tsQueryDataSet.setValueList(valueList);
+
+ sortedWindowBatch.add(tsQueryDataSet);
+ }
+
+ List<TSQueryDataSet> windowBatch = new ArrayList<>(sortedWindowBatch.size());
+ List<Integer> sortedSamplingIndexes =
+ samplingIndexes.stream().sorted().collect(Collectors.toList());
+
+ for (Integer samplingIndex : samplingIndexes) {
+ int mapIndex = sortedSamplingIndexes.indexOf(samplingIndex);
+ windowBatch.add(sortedWindowBatch.get(mapIndex));
+ }
+ return windowBatch;
+ }
+
public static long[] readTimesFromBuffer(ByteBuffer buffer, int size) {
long[] times = new long[size];
for (int i = 0; i < size; i++) {
diff --cc session/src/main/java/org/apache/iotdb/session/SessionConnection.java
index f0a11bcecc,bd2ca927bc..a934c0fefa
--- a/session/src/main/java/org/apache/iotdb/session/SessionConnection.java
+++ b/session/src/main/java/org/apache/iotdb/session/SessionConnection.java
@@@ -482,52 -480,10 +484,53 @@@ public class SessionConnection
client,
sessionId,
tsExecuteStatementResp.queryResult,
- tsExecuteStatementResp.isIgnoreTimeStamp());
+ tsExecuteStatementResp.isIgnoreTimeStamp(),
+ tsExecuteStatementResp.moreData);
}
+ public List<SessionDataSet> fetchWindowBatch(
+ List<String> queryPaths,
+ String functionName,
+ long startTime,
+ long endTime,
+ long interval,
+ long slidingStep,
+ List<Integer> indexes)
+ throws StatementExecutionException {
+ TSFetchWindowBatchReq req =
+ new TSFetchWindowBatchReq(
+ sessionId,
+ statementId,
+ queryPaths,
+ new TGroupByTimeParameter(startTime, endTime, interval, slidingStep, indexes));
+ if (functionName != null) {
+ req.setFunctionName(functionName);
+ }
+
+ TSFetchWindowBatchResp resp;
+ try {
+ resp = client.fetchWindowBatchV2(req);
+ RpcUtils.verifySuccess(resp.getStatus());
+ } catch (TException e) {
+ throw new StatementExecutionException("");
+ }
+
+ List<SessionDataSet> windowSet = new ArrayList<>();
+ for (List<ByteBuffer> window : resp.getWindowBatch()) {
+ SessionDataSet sessionDataSet =
+ new SessionDataSet(
+ resp.columnNameList,
+ resp.columnTypeList,
+ resp.columnNameIndexMap,
+ -1,
+ statementId,
+ sessionId,
+ window);
+ windowSet.add(sessionDataSet);
+ }
+ return windowSet;
+ }
+
protected void insertRecord(TSInsertRecordReq request)
throws IoTDBConnectionException, StatementExecutionException, RedirectException {
request.setSessionId(sessionId);