This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a change to branch share_mod_file
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 8a907047b28 spotless
add adcedc0bc57 [remove datanode] Refuse to remove when there are any
other unknown or readonly DataNodes in the consensus group (#14145)
add ec5d2ca1603 LOGGER.error(e.getMessage()) IS REALLY A BAD IDEA (#14137)
add 4edc42b97f8 Pipe: Fix the problem that the Aligned information of the
Tablet generated by TsFileInsertionEventScanParser is incorrect (#14136)
add 01a46eeab7e Bump tsfile version to 1.2.0-dd29bcc-SNAPSHOT #14163
add e66f3a8a727 Fixed bug where Ratis could not write large requests and
could not be configured (#14160)
add a7f2d6bb437 Load: Fix locally load v3 tsfile with PlainDeviceTimeIndex
(#14098)
add 22cf9449c40 Pipe: Improve performance when syncing table data between
clusters with param 'table-name' = '.*' or with param 'database-name' = '.*' by
reducing unnecessary tsfile parse & Fix data filter with both tree and table
patterns (#14150)
add 7852cb67411 ignore timeout exception for consensus pipe operate
procedures (#14116)
add 6242d939c22 remove procedure no longer acquire node lock (#14115)
add a7df2051915 Update README_ZH.md (#14171)
add 65ab3ea7b2c Distinguish database model in database drop / support
currentDatabase + currentUser expression in common query & updateStatement
add e2543f308bf Refactor Table session (#14157)
add 9466829bb16 Pipe: Reduce the amount of log information printed after a
batch fails (#14172)
add d171a53053e Make TsTable always store uppercase "INF" && Fixed the NPE
bug when TTL is set to "INF" && Distinguish database model in alter database
add 9b22f7c6304 Fix stopping cn leader stuck when region region migration
#14175
add 0ec59a3dbf7 Fix deleteDirectoryAndEmptyParent NPE (#14178)
add d82dffdbc8e IoTConsensusV2: Fix npe when data region is not existed
(#14180)
add a6897264a66 IoTConsensusV2: Support Table Model Replicate (#14169)
add 76066d41df0 Pipe: Fix filter issue when both tree extraction and table
extraction are enabled and one extraction has non default pattern (#14184)
add 63bcf6e874a Subscription: revert ScheduledExecutorService to
ExecutorService to avoid task queue oom & fix subscription task count (#14186)
add 24a00905ff2 Fix aggregation query of TableModel when there are
numerous regions in one device
add 6e41961c82c Fix multi table joins error and add more integration tests
add 34228a91cb9 Fix some query metric
add 8491391cafe Optimize first, last, first_by, last_by aggregation
process in table model
add 3ba0903a5d1 Allow time column specification in table creation &
Enhance table IT's TTL for insertion & disable SCHEMA_REPLICATION_FACTOR /
DATA_REPLICATION_FACTOR in table database definition
add c3bd12de2f2 Disable create/alter tree databases with
SCHEMA/DATA_REPLICATION_FACTOR & Refine tsTable get TTL logic (#14194)
add d107c2d2b3c Support EXPLAIN ANALYZE in table model (#14189)
add 559b58a2183 Enhance repair data file scan util (#14167)
add 68daea60b0a Pipe/Subscription: Filter out non-working DR PipeTasks in
CN & Reduce model judgement cost in
PipeHistoricalDataRegionTsFileAndDeletionExtractor (#14059)
add e0c6cf63821 Fix bug in inner join of table model (#14198)
add c7e2d8e67c5 Optimize insertRelationalTablet performance (#14197)
add 293746efae3 Refactor mod-file-related FileMetric (#14199)
add 85152702457 Merge branch 'master' into share_mod_file
No new revisions were added by this update.
Summary of changes:
README_ZH.md | 2 +-
.../org/apache/iotdb/TableModelSessionExample.java | 107 ++++--
.../apache/iotdb/TableModelSessionPoolExample.java | 110 +++++-
.../iotdb/it/env/cluster/env/AbstractEnv.java | 95 +++--
.../iotdb/it/env/remote/env/RemoteServerEnv.java | 91 +++--
.../java/org/apache/iotdb/itbase/env/BaseEnv.java | 34 +-
.../iotdb/pipe/it/tablemodel/TableModelUtils.java | 10 +-
.../relational/it/db/it/IoTDBInsertTableIT.java | 66 ++--
.../db/it/IoTDBMultiIDsWithAttributesTableIT.java | 133 +++++--
.../it/query/old/orderBy/IoTDBOrderByTableIT.java | 42 +--
.../relational/it/schema/IoTDBDatabaseIT.java | 3 +-
.../iotdb/relational/it/schema/IoTDBTableIT.java | 54 ++-
.../it/session/IoTDBTableModelSessionIT.java | 6 +-
.../pool/IoTDBInsertTableSessionPoolIT.java | 30 +-
.../session/pool/IoTDBTableModelSessionPoolIT.java | 17 +-
.../iotdb/session/it/IoTDBSessionRelationalIT.java | 401 ++++++---------------
.../java/org/apache/iotdb/isession/ISession.java | 16 -
.../org/apache/iotdb/isession/ITableSession.java | 89 +++++
.../apache/iotdb/isession/pool/ISessionPool.java | 3 -
.../iotdb/isession/pool/ITableSessionPool.java | 48 +++
.../iotdb/session/AbstractSessionBuilder.java | 71 ++++
.../java/org/apache/iotdb/session/Session.java | 133 ++-----
.../org/apache/iotdb/session/TableSession.java} | 77 ++--
.../apache/iotdb/session/TableSessionBuilder.java | 275 ++++++++++++++
.../session/pool/AbstractSessionPoolBuilder.java | 13 +-
.../org/apache/iotdb/session/pool/SessionPool.java | 84 +----
.../iotdb/session/pool/TableSessionPool.java} | 24 +-
.../session/pool/TableSessionPoolBuilder.java | 293 +++++++++++++++
...essionWrapper.java => TableSessionWrapper.java} | 123 ++-----
.../iotdb/session/SessionCacheLeaderTest.java | 2 +-
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 2 -
.../request/write/database/DatabaseSchemaPlan.java | 12 +-
.../statemachine/ConfigRegionStateMachine.java | 6 +-
.../iotdb/confignode/manager/ConfigManager.java | 33 +-
.../iotdb/confignode/manager/ProcedureManager.java | 77 ++++
.../manager/partition/PartitionManager.java | 4 +-
.../pipe/coordinator/task/PipeTaskCoordinator.java | 29 +-
.../manager/schema/ClusterSchemaManager.java | 7 +-
.../persistence/executor/ConfigPlanExecutor.java | 4 +-
.../persistence/schema/ClusterSchemaInfo.java | 13 +
.../procedure/env/RegionMaintainHandler.java | 1 +
.../procedure/env/RemoveDataNodeHandler.java | 20 +-
.../impl/node/RemoveDataNodesProcedure.java | 26 ++
.../impl/pipe/AbstractOperatePipeProcedureV2.java | 79 +++-
...bstractOperateSubscriptionAndPipeProcedure.java | 4 +-
.../thrift/ConfigNodeRPCServiceProcessor.java | 6 +-
.../confignode/manager/ProcedureManagerTest.java | 24 ++
.../apache/iotdb/consensus/config/RatisConfig.java | 28 --
.../pipe/consensuspipe/ConsensusPipeManager.java | 6 +
.../apache/iotdb/consensus/ratis/utils/Utils.java | 23 +-
.../dataregion/DataRegionStateMachine.java | 2 +-
.../exception/metadata/DatabaseModelException.java | 15 +
.../connector/PipeConnectorSubtaskLifeCycle.java | 4 +-
.../subtask/processor/PipeProcessorSubtask.java | 4 +-
.../PipeConsensusTabletBatchEventHandler.java | 10 +-
.../request/PipeConsensusDeleteNodeReq.java | 7 +-
.../PipeTransferTabletBatchEventHandler.java | 6 +-
.../pipe/consensus/deletion/DeletionResource.java | 15 +-
.../deletion/DeletionResourceManager.java | 8 +-
.../common/deletion/PipeDeleteDataNodeEvent.java | 9 +-
.../scan/TsFileInsertionEventScanParser.java | 14 +-
.../event/realtime/PipeRealtimeEventFactory.java | 4 +-
.../dataregion/DataRegionListeningFilter.java | 28 ++
...oricalDataRegionTsFileAndDeletionExtractor.java | 56 +--
.../listener/PipeInsertionDataNodeListener.java | 17 +-
.../pipeconsensus/PipeConsensusReceiver.java | 38 +-
.../iotdb/db/protocol/client/ConfigNodeClient.java | 2 +-
.../db/queryengine/common/MPPQueryContext.java | 6 +
.../execution/operator/source/SeriesScanUtil.java | 6 +-
.../source/relational/TableInnerJoinOperator.java | 7 +-
.../relational/aggregation/FirstAccumulator.java | 19 +-
.../relational/aggregation/FirstByAccumulator.java | 19 +-
.../aggregation/FirstByDescAccumulator.java | 55 +++
.../aggregation/FirstDescAccumulator.java | 55 +++
.../relational/aggregation/LastAccumulator.java | 13 +-
.../relational/aggregation/LastByAccumulator.java | 16 +-
.../aggregation/LastByDescAccumulator.java | 62 ++++
.../aggregation/LastDescAccumulator.java | 61 ++++
.../metric/SeriesScanCostMetricSet.java | 22 +-
.../db/queryengine/plan/analyze/Analyzer.java | 9 +-
.../analyze/cache/schema/DataNodeTTLCache.java | 4 +-
.../queryengine/plan/execution/QueryExecution.java | 11 +-
.../execution/config/TableConfigTaskVisitor.java | 38 +-
.../config/executor/ClusterConfigTaskExecutor.java | 29 +-
.../config/metadata/relational/CreateDBTask.java | 6 +-
.../db/queryengine/plan/parser/ASTVisitor.java | 24 +-
.../queryengine/plan/planner/LogicalPlanner.java | 12 +-
.../plan/planner/TableOperatorGenerator.java | 91 +++--
.../plan/planner/plan/node/ExplainAnalyzeNode.java | 11 +
.../plan/node/pipe/PipeEnrichedDeleteDataNode.java | 2 +
.../AbstractDeleteDataNode.java} | 55 ++-
.../planner/plan/node/write/DeleteDataNode.java | 36 +-
.../planner/plan/node/write/DeleteNodeType.java} | 62 ++--
.../planner/plan/node/write/InsertTabletNode.java | 12 +-
.../plan/node/write/RelationalDeleteDataNode.java | 40 +-
.../node/write/RelationalInsertTabletNode.java | 88 +++--
.../plan/relational/analyzer/Analysis.java | 6 +-
.../plan/relational/analyzer/Analyzer.java | 8 +-
.../relational/analyzer/StatementAnalyzer.java | 3 +-
.../plan/relational/planner/IrTypeAnalyzer.java | 12 +
.../plan/relational/planner/RelationPlanner.java | 3 +
.../relational/planner/TableLogicalPlanner.java | 70 +++-
.../plan/relational/planner/TableModelPlanner.java | 2 +-
.../planner/distribute/AddExchangeNodes.java | 34 +-
.../distribute/TableDistributedPlanGenerator.java | 32 +-
.../distribute/TableDistributedPlanner.java | 7 +-
.../distribute/TableModelQueryFragmentPlanner.java | 5 +-
.../relational/planner/ir/ExpressionRewriter.java | 12 +
.../planner/ir/ExpressionTreeRewriter.java | 32 +-
.../plan/relational/planner/node/JoinNode.java | 5 +
.../PushAggregationIntoTableScan.java | 4 +-
.../PushLimitOffsetIntoTableScan.java | 3 +-
.../optimizations/PushPredicateIntoTableScan.java | 15 +-
.../TransformAggregationToStreamable.java | 4 +-
.../optimizations/UnaliasSymbolReferences.java | 10 +
.../plan/relational/sql/ast/ColumnDefinition.java | 11 +-
.../plan/relational/sql/ast/CurrentDatabase.java | 13 +-
.../plan/relational/sql/ast/CurrentUser.java | 13 +-
.../plan/relational/sql/ast/ExplainAnalyze.java | 5 +
.../plan/relational/sql/ast/InsertTablet.java | 3 +
.../queryengine/plan/relational/sql/ast/Query.java | 5 +
.../plan/relational/sql/ast/Statement.java | 4 +
.../relational/sql/ast/TableExpressionType.java | 4 +-
.../plan/relational/sql/parser/AstBuilder.java | 4 +-
.../plan/relational/sql/parser/SqlParser.java | 8 +
.../plan/scheduler/load/LoadTsFileScheduler.java | 22 ++
.../plan/statement/crud/InsertTabletStatement.java | 10 +
.../metadata/DatabaseSchemaStatement.java | 28 +-
.../iotdb/db/storageengine/buffer/ChunkCache.java | 8 +-
.../db/storageengine/dataregion/DataRegion.java | 24 +-
.../CompactionStatisticsCheckFailedException.java | 87 +++++
.../task/RepairUnsortedFileCompactionTask.java | 4 +-
.../compaction/execute/utils/CompactionUtils.java | 4 -
.../compaction/repair/RepairDataFileScanUtil.java | 338 ++++++++++++-----
.../repair/RepairTimePartitionScanTask.java | 4 +-
.../dataregion/modification/DeletionPredicate.java | 22 +-
.../dataregion/modification/IDPredicate.java | 64 ++--
.../dataregion/modification/ModEntry.java | 16 +-
.../dataregion/modification/ModificationFile.java | 31 +-
.../modification/PartitionLevelModFileManager.java | 2 -
.../modification/TableDeletionEntry.java | 14 +-
.../dataregion/modification/TreeDeletionEntry.java | 14 +-
.../dataregion/tsfile/TsFileResource.java | 12 +-
.../tsfile/timeindex/ArrayDeviceTimeIndex.java | 12 +
.../task/subtask/SubscriptionConnectorSubtask.java | 12 +-
.../SubscriptionConnectorSubtaskLifeCycle.java | 8 +-
.../iotdb/db/utils/io/BufferSerializable.java | 2 +-
.../iotdb/db/utils/io/StreamSerializable.java | 2 +-
.../db/pipe/consensus/DeletionRecoverTest.java | 48 ++-
.../db/pipe/consensus/DeletionResourceTest.java | 70 +++-
.../node/write/RelationalDeleteDataNodeTest.java | 2 +-
.../plan/relational/analyzer/AggregationTest.java | 114 ++++--
.../plan/relational/analyzer/TestMatadata.java | 30 ++
.../inner/InnerSpaceCompactionSelectorTest.java | 2 +-
.../repair/RepairDataFileScanUtilTest.java | 128 ++++++-
.../modification/ModificationFileTest.java | 8 +-
.../agent/task/execution/PipeSubtaskExecutor.java | 6 +-
.../task/subtask/PipeAbstractConnectorSubtask.java | 6 +-
.../pipe/agent/task/subtask/PipeSubtask.java | 4 +-
.../config/constant/PipeExtractorConstant.java | 2 +
.../pipe/datastructure/pattern/TablePattern.java | 28 +-
.../apache/iotdb/commons/schema/table/TsTable.java | 26 +-
.../schema/table/column/TimeColumnSchema.java | 21 +-
.../org/apache/iotdb/commons/utils/FileUtils.java | 5 +-
.../db/relational/grammar/sql/RelationalSql.g4 | 2 +-
.../src/main/thrift/confignode.thrift | 1 +
pom.xml | 2 +-
167 files changed, 3777 insertions(+), 1771 deletions(-)
create mode 100644
iotdb-client/isession/src/main/java/org/apache/iotdb/isession/ITableSession.java
create mode 100644
iotdb-client/isession/src/main/java/org/apache/iotdb/isession/pool/ITableSessionPool.java
create mode 100644
iotdb-client/session/src/main/java/org/apache/iotdb/session/AbstractSessionBuilder.java
rename
iotdb-client/{isession/src/main/java/org/apache/iotdb/isession/IPooledSession.java
=> session/src/main/java/org/apache/iotdb/session/TableSession.java} (51%)
create mode 100644
iotdb-client/session/src/main/java/org/apache/iotdb/session/TableSessionBuilder.java
copy
integration-test/src/main/java/org/apache/iotdb/it/framework/IoTDBTestConstants.java
=>
iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/AbstractSessionPoolBuilder.java
(65%)
copy
iotdb-client/{service-rpc/src/main/java/org/apache/iotdb/rpc/NonOpenTransport.java
=> session/src/main/java/org/apache/iotdb/session/pool/TableSessionPool.java}
(62%)
create mode 100644
iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/TableSessionPoolBuilder.java
rename
iotdb-client/session/src/main/java/org/apache/iotdb/session/pool/{SessionWrapper.java
=> TableSessionWrapper.java} (62%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/{metadata/read/AbstractSchemaMergeNode.java
=> write/AbstractDeleteDataNode.java} (51%)
copy
iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/schema/node/MNodeType.java
=>
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/write/DeleteNodeType.java}
(56%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/exception/CompactionStatisticsCheckFailedException.java