This is an automated email from the ASF dual-hosted git repository.
caogaofei pushed a change to branch beyyes/topk
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 9c0a01de949 fix the logic of orderby allids and time
add 002d779e68c Feat/table support show cluster regions datanodes
confignodes (#12852)
add 36e49f2331d Table model ingestion
add 9dd02e819a3 load-tsfile: Avoid request redirection caused by
SessionPool param enableAutoFetch = true (#12894)
add 07a6d1f7566 Subscription: deduplicate tsfile event before prefetching
(#12887)
add 63d303d0d75 Optimize the error msg while encountering memory not
enough exception
add e2b1bb5572f Allow inserting negative timestamp type of value
add 604e30e2486 Limit the row count of a single TVList to
avg_series_point_number_threshold (#12898)
add 85e829177e8 Add count and time statistics for timeseries metadata
modification
add c12cf6d31e2 Pipe Plugin: Pipe Task Safe Deletion, Plugin Directory
Structure Reorganization, and Isolated Pipe Plugin ClassLoader Implementation
(#12868)
add 7b95e1318c8 Fix the comment of float_precision (#12905)
add b8ef640bb4b Load: Fix multi dir strategy applying on loadTsFileDirs
(#12903)
add 3411b72f118 Consider TTL of device in Region scan for active data
add b6247278705 Extend fucntion of EXPLAIN ANALYZE
add 21a8a77a301 Insertion compaction may cause new data lost (#12908)
add 890f04aa529 avoid restart failure when procedure is timeout (#12897)
add f8eed36b185 Fix IndexController visibility issues in concurrency #12911
add 7931cecd002 Pipe: Introduce counter to reduce historical data buildup
in PipeRealtimePriorityBlockingQueue (#12881)
add b8c97cf0ac8 Pipe/Subscription: use heartbeat only extractor if enable
snapshot mode (#12904)
add c0b309cfc7f Fix Unseq data can't update the seq data bug (#12918)
add 0e91323bab1 Perfect the print result of dispatch and timeseries
metadata modification in explain analyze
add b02b8891d27 Perfect impl of dispatch cost in ExplainAnalyze
add 576f0e483e4 Subscription: improve tsfile event deduplication & fix
some minor concurrency-related issues (#12915)
add 632d5fbe78a Pipe: Fix async client returning self too early when
downgrade from handshake v2 to v1 (#12913)
add a07f6425d98 Fixed the bug that fetchSeriesSchema returns series in
black list when the given pattern tree is without wildcards
add 8c0a7e64366 Pipe/Subscription: Update the way SubscriptionCoordinator
and PipeTaskCoordinator acquire locks to prevent procedure success without any
effect (#12909)
add bb514a14eb8 Use max bytes to allocate WAL compressed buffer (#12928)
add c366a247ec5 PipeConsensus: Avoid pipe task being restarted frequently
by Pipe framework (#12931)
add ecd7b86ec74 Optimized DeleteTimeSeriesProcedure not to set mods when
the deleted time series are all views
add 095b2af9f8b Fix uncaught IllegalArgumentException when reading broken
WAL files (#12912)
add 96a589c7cac Do not remove top-level load dir after load & add retry
for getting disk space (#12920)
add 04ef0cc056d Fix python client dependency issue (#12934)
add a0474ca0e74 Support new dataType in select into clause and fill clause
add bfb5c4a524a fix compression ratio warn log (#12936)
add 58f333cc8e3 PipeConsensus: Fix leader write points metric (#12933)
add df133792049 Reduce default mod file threshold for settle compaction
(#12935)
add 0f4e4976919 Subscription: improve end-to-end latency (#12925)
add 7e41c81c05e Subscription: avoid invalidating cache for null response &
improve exception message (#12939)
add 3b3cdb97a24 Skip compiling cpp test code when using -DskipTests
(#12944)
add a8758cde8bc Update dockerfile to use java 17 (#12948)
add d31075986ab Cherry pick Partite Graph Replication #12946
add af17fc9e751 Fix PointPriorityReader compare PointElement (#12945)
add 317e62270e9 Upgrade thrift plugin and optimize codegen for go client
(#12949)
add 9af38c3b3b7 Fix flush error due to compression ratio (#12953)
add 15c6edee952 Pipe: Fixed the bug that historical alias/attributes/tags
may not be transferred in meta pipe when the time series already exists in
receiver & create timeseries non idempotent in PBTree
add 2e2dc91d2ff Bump jline version to 3.26.2 (#12956)
add 2f5dc67f456 Pipe: support alter pipe source (#12932)
add 80a673d90fc Fixed the bug that some schema IT does not run in PBTree
mode
add 18dd6f84e3d Fix sync stuck problem of IoTConsensus and WAL (#12955)
add aadc6fca4ee Remove warning log when CheckPointManager find memtable id
= -1 #12959
add ebbc5a0ea59 Pipe: filter out databases whose name starts with
`root.__system.` (#12957)
add cc4f03f342e Modify the default parameters of DataNode to accelerated
startup #12941
add 31730dbbea8 PipeConsensus: Fix circular replicate in kill -9/restart
cases (#12937)
add f5972a24525 Fixed issue where the wal version kept increasing after
the write load stopped (#12960)
add 175c0e90b51 Enhance the automatic metadata creation logic of
root.__system prefixed devices #12962
add 618e9107104 upgrade thrift maven plugin for cpp client (#12964)
add fd6f14e15dc Export Data And Schema: filter out databases whose name
starts with root.__system. (#12963)
add 6a155246706 Wraps DateTimeUtilsTest in a session (#12971)
add ae5c3b833f8 Remove verbose download log spam from CI builds (#12972)
add 126719722f7 Fixed potential NPE in local write execution & Refactored
queryTerminator
add 21711a615e4 fix CompactionTaskManager ut (#12923)
add efb859c01f4 Optimize log for broken wal. (#12977)
add 8094e3627e9 Clear storage engine snapshot after region migration
(#12975)
add 2726627cd27 Subscription: fix the issue with nodeUrls parameter being
ineffective & missing return for create topic (#12974)
add 189bfccd69d Merge branch 'ty/TableModelGrammar' into beyyes/topk
add a5098916899 Add IoTDBAlignByDeviceWithTemplateIT in table model
(#12987)
add 975bdee32bd Support executeBatch in Table Model
add 8adb0a14b0e Merge branch 'ty/TableModelGrammar' into beyyes/topk
add 73b8da74062 fix ut
No new revisions were added by this update.
Summary of changes:
.github/workflows/cluster-it-1c1d.yml | 1 +
.github/workflows/cluster-it-1c3d.yml | 1 +
.github/workflows/daily-it.yml | 1 +
.github/workflows/multi-language-client.yml | 20 +-
.github/workflows/pipe-it-2cluster.yml | 1 +
.github/workflows/sonar-codecov.yml | 1 +
.github/workflows/unit-test.yml | 1 +
docker/src/main/DockerCompose/do-docker-build.sh | 4 +-
docker/src/main/Dockerfile-0.10.1 | 39 --
docker/src/main/Dockerfile-0.11.4 | 41 --
docker/src/main/Dockerfile-0.12.6-cluster | 53 --
docker/src/main/Dockerfile-0.12.6-node | 45 --
docker/src/main/Dockerfile-0.13.0-cluster | 53 --
docker/src/main/Dockerfile-0.13.3-node | 45 --
.../src/main/Dockerfile-0.13.3-node-multi-platform | 45 --
docker/src/main/Dockerfile-0.8.1 | 40 --
docker/src/main/Dockerfile-0.9.1 | 41 --
docker/src/main/Dockerfile-0.9.1-jre8 | 41 --
docker/src/main/Dockerfile-1.0.0-confignode | 2 +-
docker/src/main/Dockerfile-1.0.0-datanode | 2 +-
docker/src/main/Dockerfile-1.0.0-standalone | 2 +-
docker/src/main/Dockerfile-1c1d | 2 +-
.../it/env/cluster/config/MppCommonConfig.java | 6 +
.../env/cluster/config/MppSharedCommonConfig.java | 7 +
.../it/env/remote/config/RemoteCommonConfig.java | 5 +
.../org/apache/iotdb/itbase/env/CommonConfig.java | 2 +
.../apache/iotdb/db/it/IoTDBDuplicateTimeIT.java | 88 +++
.../apache/iotdb/db/it/IoTDBInsertWithQueryIT.java | 34 +
.../db/it/fill/IoTDBFillWithNewDataTypeIT.java | 145 ++++
.../apache/iotdb/db/it/schema/IoTDBTagAlterIT.java | 1 +
.../org/apache/iotdb/db/it/schema/IoTDBTagIT.java | 1 +
.../apache/iotdb/db/it/schema/IoTDBTagLimitIT.java | 15 +-
.../it/schema/quota/IoTDBClusterDeviceQuotaIT.java | 3 +-
.../db/it/schema/quota/IoTDBClusterQuotaIT.java | 1 +
.../schema/regionscan/IoTDBActiveRegionScanIT.java | 21 +-
.../regionscan/IoTDBActiveRegionScanIT2.java | 15 +-
.../IoTDBActiveRegionScanWithModsIT.java | 25 +-
.../IoTDBActiveRegionScanWithModsIT2.java | 15 +-
.../regionscan/IoTDBActiveRegionScanWithTTLIT.java | 137 ++++
.../iotdb/db/it/selectinto/IoTDBSelectInto2IT.java | 3 +-
.../iotdb/db/it/selectinto/IoTDBSelectInto3IT.java | 3 +-
.../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java | 56 +-
.../org/apache/iotdb/db/it/utils/TestUtils.java | 65 ++
.../iotdb/pipe/it/autocreate/IoTDBPipeAlterIT.java | 183 ++++-
.../pipe/it/autocreate/IoTDBPipeIdempotentIT.java | 84 +--
.../it/manual/IoTDBPipeMetaLeaderChangeIT.java | 22 +-
.../IoTDBAlignByDeviceWithTemplateIT.java | 514 ++++++++++++++
.../iotdb/session/it/IoTDBSessionRelationalIT.java | 765 +++++++++++++++++++++
.../session/it/IoTDBSessionSchemaTemplateIT.java | 4 +-
.../it/dual/IoTDBSubscriptionTopicIT.java | 15 +-
.../it/local/IoTDBSubscriptionBasicIT.java | 96 ++-
.../org/apache/iotdb/util/AbstractSchemaIT.java | 15 +-
.../java/org/apache/iotdb/tool/ExportData.java | 6 +-
.../java/org/apache/iotdb/tool/ExportSchema.java | 2 +-
.../java/org/apache/iotdb/tool/ImportTsFile.java | 12 +-
iotdb-client/client-cpp/pom.xml | 32 +-
iotdb-client/client-py/pom.xml | 7 +
.../java/org/apache/iotdb/isession/ISession.java | 16 +
.../java/org/apache/iotdb/jdbc/IoTDBStatement.java | 11 +
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 3 +
.../rpc/subscription/config/ConsumerConstant.java | 3 +-
.../subscription/payload/poll/TabletsPayload.java | 5 +-
.../java/org/apache/iotdb/session/Session.java | 108 +--
.../apache/iotdb/session/SessionConnection.java | 16 +-
.../session/subscription/SubscriptionSession.java | 1 +
.../consumer/SubscriptionConsumer.java | 29 +-
.../consumer/SubscriptionPushConsumer.java | 6 +-
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 8 +
.../iotdb/confignode/manager/ConfigManager.java | 85 ++-
.../apache/iotdb/confignode/manager/IManager.java | 17 +
.../manager/load/balancer/RegionBalancer.java | 7 +-
...artiteGraphReplicationRegionGroupAllocator.java | 256 +++++++
.../runtime/PipeLeaderChangeHandler.java | 5 +-
.../pipe/coordinator/task/PipeTaskCoordinator.java | 22 +-
.../coordinator/task/PipeTaskCoordinatorLock.java | 2 +-
.../pipe/extractor/ConfigRegionListeningQueue.java | 25 +-
.../subscription/SubscriptionCoordinator.java | 18 +-
.../persistence/pipe/PipePluginInfo.java | 32 +-
.../confignode/persistence/pipe/PipeTaskInfo.java | 73 ++
.../persistence/schema/ClusterSchemaInfo.java | 44 +-
.../confignode/persistence/schema/ConfigMTree.java | 2 +-
.../impl/pipe/AbstractOperatePipeProcedureV2.java | 16 +-
.../impl/pipe/plugin/DropPipePluginProcedure.java | 18 +-
.../runtime/PipeHandleMetaChangeProcedure.java | 12 +
.../impl/pipe/runtime/PipeMetaSyncProcedure.java | 12 +
.../impl/pipe/task/AlterPipeProcedureV2.java | 58 +-
.../impl/pipe/task/CreatePipeProcedureV2.java | 4 +-
.../impl/schema/DeleteTimeSeriesProcedure.java | 152 ++--
.../impl/schema/table/AddTableColumnProcedure.java | 2 +-
.../AbstractOperateSubscriptionProcedure.java | 16 +-
.../runtime/ConsumerGroupMetaSyncProcedure.java | 12 +
...bstractOperateSubscriptionAndPipeProcedure.java | 6 +-
.../topic/runtime/TopicMetaSyncProcedure.java | 12 +
.../procedure/store/ProcedureFactory.java | 5 +-
.../confignode/procedure/store/ProcedureType.java | 1 +
.../thrift/ConfigNodeRPCServiceProcessor.java | 14 +
.../ConfigRegionListeningQueueTest.java | 13 +-
.../impl/pipe/task/AlterPipeProcedureV2Test.java | 10 +-
...reV2Test.java => AlterPipeProcedureV3Test.java} | 19 +-
.../org/apache/iotdb/consensus/IStateMachine.java | 9 +
.../consensus/iot/IoTConsensusServerImpl.java | 1 +
.../consensus/iot/log/ConsensusReqReader.java | 2 +-
.../iot/logdispatcher/IndexController.java | 41 +-
.../apache/iotdb/consensus/pipe/PipeConsensus.java | 47 +-
.../consensus/pipe/PipeConsensusServerImpl.java | 39 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 16 +-
.../dataregion/DataExecutionVisitor.java | 24 +
.../dataregion/DataRegionStateMachine.java | 15 +-
.../schemaregion/SchemaExecutionVisitor.java | 168 +++--
.../db/exception/query/QueryProcessException.java | 5 +
.../iotdb/db/exception/sql/SemanticException.java | 9 +-
.../pipe/agent/plugin/PipeDataNodePluginAgent.java | 35 +-
.../db/pipe/agent/runtime/PipeAgentLauncher.java | 8 +-
.../client/IoTDBDataNodeAsyncClientManager.java | 71 +-
.../pipeconsensus/PipeConsensusAsyncConnector.java | 8 +-
.../async/IoTDBDataRegionAsyncConnector.java | 6 +-
.../tablet/PipeInsertNodeTabletInsertionEvent.java | 1 +
.../common/tsfile/PipeTsFileInsertionEvent.java | 7 +
.../dataregion/IoTDBDataRegionExtractor.java | 27 +-
.../PipeHistoricalDataRegionTsFileExtractor.java | 6 +-
... PipeRealtimeDataRegionHeartbeatExtractor.java} | 58 +-
.../schemaregion/SchemaRegionListeningQueue.java | 22 +-
.../pipeconsensus/PipeConsensusProcessor.java | 7 +-
.../pipeconsensus/PipeConsensusReceiver.java | 3 +-
.../visitor/PipePlanToStatementVisitor.java | 18 +-
.../PipeRealtimePriorityBlockingQueue.java | 54 +-
.../iotdb/db/protocol/client/ConfigNodeClient.java | 22 +-
.../protocol/thrift/impl/ClientRPCServiceImpl.java | 173 +++--
.../impl/DataNodeInternalRPCServiceImpl.java | 50 +-
.../db/queryengine/common/MPPQueryContext.java | 21 +
.../execution/executor/RegionWriteExecutor.java | 88 ++-
.../fragment/FragmentInstanceContext.java | 73 +-
.../fragment/FragmentInstanceExecution.java | 1 +
.../execution/fragment/QueryStatistics.java | 229 +++++-
.../execution/load/LoadTsFileManager.java | 26 +-
.../execution/load/LoadTsFileRateLimiter.java | 2 +-
.../execution/operator/ExplainAnalyzeOperator.java | 7 +-
.../operator/process/AbstractIntoOperator.java | 12 +
.../operator/process/CollectOperator.java | 3 +
.../operator/process/FilterAndProjectOperator.java | 4 +-
.../schema/source/TableDeviceQuerySource.java | 3 +
.../AbstractRegionScanForActiveDataUtil.java | 16 +-
.../source/ActiveDeviceRegionScanOperator.java | 4 +-
.../source/ActiveTimeSeriesRegionScanOperator.java | 3 +-
.../execution/operator/source/FileLoaderUtils.java | 100 +--
.../source/RegionScanForActiveDeviceUtil.java | 17 +-
.../source/RegionScanForActiveTimeSeriesUtil.java | 13 +-
.../execution/operator/source/SeriesScanUtil.java | 24 +-
.../metric/SeriesScanCostMetricSet.java | 49 ++
.../iotdb/db/queryengine/plan/Coordinator.java | 69 +-
.../db/queryengine/plan/analyze/Analysis.java | 18 +-
.../db/queryengine/plan/analyze/AnalyzeUtils.java | 271 ++++++++
.../queryengine/plan/analyze/AnalyzeVisitor.java | 305 +++-----
.../db/queryengine/plan/analyze/Analyzer.java | 4 +
.../plan/analyze/ClusterPartitionFetcher.java | 93 ++-
.../db/queryengine/plan/analyze/IAnalysis.java | 15 +
.../plan/analyze/LoadTsfileAnalyzer.java | 2 +-
.../queryengine/plan/analyze/SelectIntoUtils.java | 4 +-
.../analyze/cache/partition/PartitionCache.java | 20 +-
.../analyze/cache/schema/DataNodeTTLCache.java | 17 +-
.../plan/analyze/schema/ISchemaAutoCreation.java | 2 +
.../plan/analyze/schema/SchemaValidator.java | 26 +
.../execution/config/TableConfigTaskVisitor.java | 54 ++
...TaskVisitor.java => TreeConfigTaskVisitor.java} | 2 +-
.../config/executor/ClusterConfigTaskExecutor.java | 74 ++
.../config/executor/IConfigTaskExecutor.java | 12 +
.../relational/AlterTableAddColumnTask.java | 2 +
.../metadata/relational/CreateTableTask.java | 2 +
.../metadata/relational/ShowConfigNodesTask.java | 80 +++
.../metadata/relational/ShowDataNodesTask.java | 85 +++
.../memory/StatementMemorySourceVisitor.java | 2 +-
.../plan/optimization/AggregationPushDown.java | 2 +-
.../plan/optimization/ColumnInjectionPushDown.java | 2 +-
.../plan/optimization/LimitOffsetPushDown.java | 2 +-
.../OrderByExpressionWithLimitChangeToTopK.java | 2 +-
.../plan/optimization/PredicatePushDown.java | 2 +-
.../db/queryengine/plan/parser/ASTVisitor.java | 13 +
.../plan/parser/StatementGenerator.java | 34 +
.../plan/planner/LocalExecutionPlanner.java | 5 +-
.../queryengine/plan/planner/LogicalPlanner.java | 3 +-
.../plan/planner/OperatorTreeGenerator.java | 42 +-
.../queryengine/plan/planner/TreeModelPlanner.java | 6 +-
.../planner/distribution/DistributionPlanner.java | 10 +-
.../SimpleFragmentParallelPlanner.java | 14 +-
.../distribution/WriteFragmentParallelPlanner.java | 19 +-
.../plan/planner/plan/node/PlanNodeType.java | 29 +-
.../plan/planner/plan/node/PlanVisitor.java | 15 +
.../planner/plan/node/load/LoadTsFileNode.java | 7 +-
.../node/metedata/read/TableDeviceQueryNode.java | 15 +-
.../ContinuousSameSearchIndexSeparatorNode.java} | 29 +-
.../plan/node/write/InsertMultiTabletsNode.java | 5 -
.../plan/planner/plan/node/write/InsertNode.java | 88 ++-
.../planner/plan/node/write/InsertRowNode.java | 67 +-
.../planner/plan/node/write/InsertRowsNode.java | 25 +-
.../plan/node/write/InsertRowsOfOneDeviceNode.java | 21 +-
.../planner/plan/node/write/InsertTabletNode.java | 354 +++++++---
.../plan/node/write/RelationalInsertRowNode.java | 227 ++++++
.../plan/node/write/RelationalInsertRowsNode.java | 188 +++++
.../node/write/RelationalInsertTabletNode.java | 247 +++++++
.../plan/relational/analyzer/Analysis.java | 45 +-
.../plan/relational/analyzer/Analyzer.java | 1 +
.../relational/analyzer/ExpressionAnalyzer.java | 1 +
.../relational/analyzer/StatementAnalyzer.java | 46 +-
.../analyzer/StatementAnalyzerFactory.java | 2 +-
.../plan/relational/metadata/ColumnSchema.java | 11 +-
.../plan/relational/metadata/Metadata.java | 12 +
.../relational/metadata/TableMetadataImpl.java | 6 +
.../plan/relational/metadata/TableSchema.java | 67 ++
.../fetcher/TableHeaderSchemaValidator.java | 13 +-
.../plan/relational/planner/LogicalPlanner.java | 44 +-
.../plan/relational/planner/RelationPlanner.java | 73 ++
.../distribute/DistributedPlanGenerator.java | 11 +-
.../distribute/TableDistributionPlanner.java | 37 +-
.../planner/iterative/rule/PruneTopKColumns.java | 4 +-
.../plan/relational/planner/node/CollectNode.java | 29 +-
.../planner/node/CreateTableDeviceNode.java | 5 +-
.../optimizations/PushPredicateIntoTableScan.java | 12 +
.../plan/relational/sql/ast/AstVisitor.java | 32 +
.../plan/relational/sql/ast/BinaryLiteral.java | 6 +
.../plan/relational/sql/ast/BooleanLiteral.java | 5 +
.../plan/relational/sql/ast/DecimalLiteral.java | 7 +
.../plan/relational/sql/ast/DoubleLiteral.java | 5 +
.../plan/relational/sql/ast/FetchDevice.java | 5 +-
.../sql/ast/{Literal.java => Flush.java} | 19 +-
.../plan/relational/sql/ast/GenericLiteral.java | 7 +
.../plan/relational/sql/ast/InsertRow.java | 91 +++
.../plan/relational/sql/ast/InsertRows.java | 143 ++++
.../plan/relational/sql/ast/InsertTablet.java | 105 +++
.../plan/relational/sql/ast/Literal.java | 5 +
.../plan/relational/sql/ast/LongLiteral.java | 5 +
.../plan/relational/sql/ast/NullLiteral.java | 5 +
.../sql/ast/{NullLiteral.java => ShowCluster.java} | 68 +-
.../sql/ast/{Literal.java => ShowConfigNodes.java} | 36 +-
.../sql/ast/{Literal.java => ShowDataNodes.java} | 36 +-
.../plan/relational/sql/ast/ShowRegions.java | 103 +++
.../plan/relational/sql/ast/StringLiteral.java | 7 +
.../relational/sql/ast/WrappedInsertStatement.java | 198 ++++++
.../plan/relational/sql/ast/WrappedStatement.java | 83 +++
.../plan/relational/sql/parser/AstBuilder.java | 148 +++-
.../plan/relational/sql/util/AstUtil.java | 10 +
.../plan/relational/utils/ConversionUtils.java} | 13 +-
.../scheduler/FragmentInstanceDispatcherImpl.java | 72 +-
.../plan/scheduler/SimpleQueryTerminator.java | 96 +--
.../db/queryengine/plan/statement/Statement.java | 6 +
.../plan/statement/crud/InsertBaseStatement.java | 141 ++++
.../plan/statement/crud/InsertRowStatement.java | 46 +-
.../plan/statement/crud/InsertRowsStatement.java | 6 +
.../plan/statement/crud/InsertTabletStatement.java | 95 +++
.../plan/statement/literal/BooleanLiteral.java | 4 +-
.../plan/statement/literal/DoubleLiteral.java | 3 +-
.../plan/statement/literal/Literal.java | 4 +
.../plan/statement/literal/LongLiteral.java | 26 +-
.../plan/statement/literal/StringLiteral.java | 21 +-
.../metadata/pipe/AlterPipeStatement.java | 18 +
.../statement/sys/ExplainAnalyzeStatement.java | 6 +
.../FragmentInstanceStatisticsDrawer.java | 32 +
.../statistics/QueryPlanStatistics.java | 9 +
.../schemaengine/schemaregion/ISchemaRegion.java | 20 +-
.../attribute/DeviceAttributeStore.java | 9 +-
.../schemaregion/impl/SchemaRegionMemoryImpl.java | 146 ++--
.../schemaregion/impl/SchemaRegionPBTreeImpl.java | 155 +++--
.../mtree/impl/mem/MTreeBelowSGMemoryImpl.java | 139 ++--
.../mtree/impl/pbtree/MTreeBelowSGCachedImpl.java | 131 ++--
.../mtree/impl/pbtree/mnode/ICachedMNode.java | 1 +
.../schemaregion/mtree/traverser/Traverser.java | 7 +
.../write/req/SchemaRegionWritePlanFactory.java | 2 +-
.../req/impl/CreateAlignedTimeSeriesPlanImpl.java | 45 +-
.../write/req/impl/CreateTimeSeriesPlanImpl.java | 9 +
.../db/schemaengine/table/DataNodeTableCache.java | 19 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 2 +-
.../metrics/IoTDBInternalLocalReporter.java | 1 +
.../iotdb/db/storageengine/StorageEngine.java | 6 +-
.../db/storageengine/dataregion/DataRegion.java | 334 +++++----
.../execute/utils/reader/PointPriorityReader.java | 12 +-
.../impl/RewriteCrossSpaceCompactionSelector.java | 75 +-
.../utils/InsertionCompactionCandidateStatus.java} | 15 +-
.../dataregion/flush/CompressionRatio.java | 46 +-
.../dataregion/memtable/AbstractMemTable.java | 80 ++-
.../memtable/AlignedWritableMemChunk.java | 50 +-
.../memtable/AlignedWritableMemChunkGroup.java | 6 +-
.../dataregion/memtable/IMemTable.java | 13 +-
.../dataregion/memtable/IWritableMemChunk.java | 26 +-
.../memtable/IWritableMemChunkGroup.java | 4 +-
.../dataregion/memtable/TsFileProcessor.java | 431 ++++++++----
.../dataregion/memtable/WritableMemChunk.java | 83 ++-
.../dataregion/memtable/WritableMemChunkGroup.java | 4 +-
.../read/reader/chunk/DiskAlignedChunkLoader.java | 4 +-
.../read/reader/chunk/DiskChunkLoader.java | 4 +-
.../read/reader/chunk/MemAlignedChunkLoader.java | 4 +-
.../read/reader/chunk/MemChunkLoader.java | 4 +-
.../read/reader/common/PriorityMergeReader.java | 24 +-
.../dataregion/snapshot/SnapshotTaker.java | 25 +
.../dataregion/tsfile/TsFileResource.java | 26 +-
.../dataregion/wal/buffer/AbstractWALBuffer.java | 4 +-
.../dataregion/wal/buffer/IWALBuffer.java | 4 +-
.../dataregion/wal/buffer/WALBuffer.java | 20 +-
.../dataregion/wal/buffer/WALEntry.java | 3 +
.../dataregion/wal/buffer/WALEntryType.java | 1 +
.../dataregion/wal/buffer/WALInfoEntry.java | 1 +
.../wal/checkpoint/CheckpointManager.java | 3 +-
.../wal/exception/BrokenWALFileException.java} | 13 +-
.../storageengine/dataregion/wal/io/LogWriter.java | 9 +-
.../dataregion/wal/io/WALMetaData.java | 64 +-
.../storageengine/dataregion/wal/io/WALWriter.java | 2 -
.../dataregion/wal/node/IWALNode.java | 4 +
.../dataregion/wal/node/WALFakeNode.java | 7 +
.../storageengine/dataregion/wal/node/WALNode.java | 17 +-
.../wal/recover/file/TsFilePlanRedoer.java | 2 +-
.../rescon/disk/strategy/SequenceStrategy.java | 24 +-
.../agent/SubscriptionBrokerAgent.java | 28 +-
.../agent/SubscriptionConsumerAgent.java | 12 +-
.../subscription/agent/SubscriptionTopicAgent.java | 10 +-
.../broker/SubscriptionBlockingPendingQueue.java} | 25 +-
.../db/subscription/broker/SubscriptionBroker.java | 95 ++-
.../broker/SubscriptionPrefetchingQueue.java | 72 +-
.../broker/SubscriptionPrefetchingTabletQueue.java | 21 +-
.../broker/SubscriptionPrefetchingTsFileQueue.java | 181 ++---
.../TsFileDeduplicationBlockingPendingQueue.java | 81 +++
.../db/subscription/event/SubscriptionEvent.java | 18 +-
.../batch/SubscriptionPipeTabletEventBatch.java | 2 +-
.../batch/SubscriptionPipeTsFileEventBatch.java | 2 +-
.../receiver/SubscriptionReceiverV1.java | 90 ++-
.../db/trigger/executor/TriggerFireVisitor.java | 8 +
.../org/apache/iotdb/db/utils/CommonUtils.java | 118 +++-
.../java/org/apache/iotdb/db/utils/MemUtils.java | 34 +-
.../iotdb/db/utils/TimeFilterForDeviceTTL.java | 76 ++
.../db/utils/datastructure/AlignedTVList.java | 41 +-
.../iotdb/db/utils/datastructure/BinaryTVList.java | 4 +-
.../iotdb/db/utils/datastructure/TVList.java | 10 +-
.../schemaRegion/AbstractSchemaRegionTest.java | 9 +-
.../schemaRegion/SchemaRegionAliasAndTagTest.java | 8 +-
.../schemaRegion/SchemaRegionBasicTest.java | 382 +++++++---
.../schemaRegion/SchemaRegionManagementTest.java | 4 +-
.../SchemaRegionSimpleRecoverTest.java | 135 +++-
.../schemaRegion/SchemaRegionTemplateTest.java | 15 +-
.../schemaRegion/SchemaRegionTestUtil.java | 69 +-
.../schemaRegion/SchemaStatisticsTest.java | 146 ++--
.../agent/plugin/PipeDataNodePluginAgentTest.java | 39 +-
.../extractor/SchemaRegionListeningQueueTest.java | 15 +-
.../db/queryengine/plan/analyze/AnalyzeTest.java | 2 +-
.../plan/optimization/OptimizationTestUtil.java | 4 +-
.../plan/parser/StatementGeneratorTest.java | 188 +++++
.../distribution/DistributionPlannerBasicTest.java | 19 +-
.../plan/planner/distribution/Util.java | 5 +-
.../plan/planner/distribution/Util2.java | 4 +-
.../planner/logical/LogicalPlannerTestUtil.java | 2 +-
.../node/write/InsertRowsNodeSerdeTest.java | 161 ++++-
.../node/write/InsertTabletNodeSerdeTest.java | 158 +++++
.../planner/node/write/WritePlanNodeSplitTest.java | 5 +-
.../plan/relational/analyzer/AnalyzerTest.java | 207 +++++-
.../analyzer/MockTableModelDataPartition.java | 2 +-
.../plan/statement/InsertStatementTest.java | 182 +++++
.../plan/statement/StatementTestUtils.java | 257 +++++++
.../builder/EvaluationDAGBuilderTest.java | 7 +-
.../storageengine/dataregion/DataRegionTest.java | 110 +++
.../compaction/CompactionTaskManagerTest.java | 5 +-
.../InsertionCrossSpaceCompactionSelectorTest.java | 441 +-----------
.../dataregion/flush/CompressionRatioTest.java | 36 +
.../dataregion/memtable/PrimitiveMemTableTest.java | 2 +-
.../dataregion/memtable/TsFileProcessorTest.java | 32 +-
.../dataregion/wal/io/WALFileTest.java | 15 +
.../org/apache/iotdb/db/tools/MLogParserTest.java | 2 +-
.../apache/iotdb/db/utils/DateTimeUtilsTest.java | 65 +-
.../org/apache/iotdb/db/utils/MemUtilsTest.java | 13 +-
.../db/utils/SchemaRegionSnapshotParserTest.java | 10 +-
.../db/utils/datastructure/AlignedTVListTest.java | 8 +-
.../reporter/iotdb/IoTDBSessionReporter.java | 2 +-
.../conf/iotdb-system.properties.template | 7 +-
.../apache/iotdb/commons/conf/CommonConfig.java | 32 +-
.../iotdb/commons/conf/CommonDescriptor.java | 17 +-
.../commons/exception/IoTDBRuntimeException.java | 66 ++
.../commons/executable/ExecutableManager.java | 3 +
.../iotdb/commons/partition/DataPartition.java | 41 +-
.../commons/partition/DataPartitionQueryParam.java | 9 +
.../iotdb/commons/partition/SchemaPartition.java | 4 +-
.../apache/iotdb/commons/path/AlignedFullPath.java | 19 +
.../pipe/agent/plugin/PipePluginConstructor.java | 14 +-
.../iotdb/commons/pipe/config/PipeConfig.java | 16 +-
.../pipe/connector/limiter/GlobalRateLimiter.java | 2 +-
.../connector/limiter/PipeEndPointRateLimiter.java | 2 +-
.../pipe/plugin/meta/PipePluginMetaKeeper.java | 35 +-
.../service/PipePluginClassLoaderManager.java | 42 +-
.../service/PipePluginExecutableManager.java | 43 +-
.../connection/UnboundedBlockingPendingQueue.java | 2 +-
.../schema/node/role/IMeasurementMNode.java | 2 +-
.../commons/schema/node/utils/IMNodeFactory.java | 1 +
.../apache/iotdb/commons/schema/table/TsTable.java | 15 +-
.../schema/table/column/TsTableColumnCategory.java | 33 +-
.../apache/iotdb/commons/schema/ttl/TTLCache.java | 18 +-
.../subscription/config/SubscriptionConfig.java | 7 +
.../org/apache/iotdb/commons/utils/IOUtils.java | 32 +
.../apache/iotdb/commons/utils/JVMCommonUtils.java | 30 +-
.../org/apache/iotdb/commons/utils/PathUtils.java | 7 +
.../pipe/plugin/meta/PipePluginMetaTest.java | 2 +-
.../db/relational/grammar/sql/RelationalSql.g4 | 4 +-
.../src/main/thrift/confignode.thrift | 12 +
.../thrift-datanode/src/main/thrift/client.thrift | 4 +
.../src/main/thrift/datanode.thrift | 9 +-
pom.xml | 14 +-
399 files changed, 12991 insertions(+), 3874 deletions(-)
delete mode 100644 docker/src/main/Dockerfile-0.10.1
delete mode 100644 docker/src/main/Dockerfile-0.11.4
delete mode 100644 docker/src/main/Dockerfile-0.12.6-cluster
delete mode 100644 docker/src/main/Dockerfile-0.12.6-node
delete mode 100644 docker/src/main/Dockerfile-0.13.0-cluster
delete mode 100644 docker/src/main/Dockerfile-0.13.3-node
delete mode 100644 docker/src/main/Dockerfile-0.13.3-node-multi-platform
delete mode 100644 docker/src/main/Dockerfile-0.8.1
delete mode 100644 docker/src/main/Dockerfile-0.9.1
delete mode 100644 docker/src/main/Dockerfile-0.9.1-jre8
create mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBDuplicateTimeIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/fill/IoTDBFillWithNewDataTypeIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/schema/regionscan/IoTDBActiveRegionScanWithTTLIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/query/old/alignbydevice/IoTDBAlignByDeviceWithTemplateIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBSessionRelationalIT.java
create mode 100644
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/balancer/region/PartiteGraphReplicationRegionGroupAllocator.java
copy
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/procedure/impl/pipe/task/{AlterPipeProcedureV2Test.java
=> AlterPipeProcedureV3Test.java} (78%)
rename
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/extractor/dataregion/realtime/{PipeRealtimeDataRegionFakeExtractor.java
=> PipeRealtimeDataRegionHeartbeatExtractor.java} (51%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/AnalyzeUtils.java
rename
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/{ConfigTaskVisitor.java
=> TreeConfigTaskVisitor.java} (99%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/ShowConfigNodesTask.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/ShowDataNodesTask.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/{relational/sql/ast/Literal.java
=> planner/plan/node/write/ContinuousSameSearchIndexSeparatorNode.java} (51%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/write/RelationalInsertRowNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/write/RelationalInsertRowsNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/write/RelationalInsertTabletNode.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{Literal.java
=> Flush.java} (72%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/InsertRow.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/InsertRows.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/InsertTablet.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{NullLiteral.java
=> ShowCluster.java} (50%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{Literal.java
=> ShowConfigNodes.java} (64%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{Literal.java
=> ShowDataNodes.java} (64%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/ShowRegions.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/WrappedInsertStatement.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/WrappedStatement.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{exception/sql/SemanticException.java
=> queryengine/plan/relational/utils/ConversionUtils.java} (77%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{exception/sql/SemanticException.java
=>
storageengine/dataregion/compaction/selector/utils/InsertionCompactionCandidateStatus.java}
(77%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{exception/sql/SemanticException.java
=> storageengine/dataregion/wal/exception/BrokenWALFileException.java} (72%)
copy
iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/pipe/task/connection/UnboundedBlockingPendingQueue.java
=>
datanode/src/main/java/org/apache/iotdb/db/subscription/broker/SubscriptionBlockingPendingQueue.java}
(59%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/subscription/broker/TsFileDeduplicationBlockingPendingQueue.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/TimeFilterForDeviceTTL.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/statement/InsertStatementTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/statement/StatementTestUtils.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/IoTDBRuntimeException.java