This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a change to branch table_data_deletion
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from ba59a3fa342 Merge branch 'table_data_deletion' of
github.com:apache/iotdb into table_data_deletion
add 9e48f9cf391 Optimize the serialize method of intermedia result of
grouped aggregation
add 38f7219a302 Clean walnode after drop database when using simple
consensus (#13877)
add 14346dc4098 Optimize the serialize method of intermedia result of
aggregation
add c93bdb77c03 Remove use of canUseStatistics when judge aggregation
push-down level in TableModel
add bbfc2f834ba Keep all null rows in table model flush (#13883)
add 52b72edb689 Fix TimePartitionUtils Overflow (#13881)
add 0c7a9471f0e Pipe: fix calculations of
PipeDataNodeRemainingEventAndTimeOperator (#13876)
add 86469d32210 Pipe: Avoid constructing unnecessary pipe subtasks if db
and pattern dismatch (#13873)
add 9d9d6ea6eaa Pipe: add seperated thread pool for phantom reference
clean job (#13813)
add 207bbe8950b Keep the order of times after spliting
RelationalInsertTabletNode (#13886)
add e363388966a Add mode and variance aggregation support for table model
add ecacaa1be88 Load: Use IDeviceID in ChunkData (#13887)
add f61db4875e1 Active Load: Refactoring the code for handling exception
information after loading failure (#13880)
add 2eb060d1854 Pipe: Fix the Pipe receiver's LoadFile and
InsertRowsStatement NPE issues (#13871)
add dbb99bc88de Load: Parallelly load files into different target data
partitions (#13893)
add 4e792002b28 fix replace function error message
add f94865ee1ca Fix the aggregation push down when inner-query was
optimized to AggTableScan
add 0db4ec4373f Fix accidental wrong error msg
add 5d8339257e7 Batch update inserted point number metric (#13910)
add 80cd9f70284 Perfect the aggregation queries when there is no devices
or no data partitions.
add fe23762840c [region migration] Enable write retry for ratis local
write (#13901)
add 0c29fe5a0c0 Revert "Load: Parallelly load files into different target
data partitions (#13893)" (#13905)
add e5d7d558981 Add try_cast function
add ad97746cddf Pipe: Fix mode.snapshot configuration not taking effect
(#13899)
add 77a2dd7232d Support distinguish of DB model && Fixed the table
detection bug when indexOutOfRange && Fixed the bug that conflict databases may
be saved in cache
add 2ffd6b4f118 Merge branch 'master' into table_data_deletion
No new revisions were added by this update.
Summary of changes:
.../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java | 20 +-
.../relational/it/db/it/IoTDBInsertTableIT.java | 36 +-
.../db/it/IoTDBMultiIDsWithAttributesTableIT.java | 179 +++++--
.../scalar/IoTDBCastFunctionTableIT.java | 552 +++++++++++++++++++++
.../relational/it/schema/IoTDBDatabaseIT.java | 22 +
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 6 +-
.../iotdb/confignode/manager/ConfigManager.java | 40 +-
.../agent/runtime/PipeConfigNodeRuntimeAgent.java | 13 +
.../receiver/protocol/IoTDBConfigNodeReceiver.java | 2 +-
.../ref/PipeConfigNodePhantomReferenceManager.java | 2 +-
.../manager/schema/ClusterSchemaManager.java | 15 +-
.../persistence/partition/PartitionInfo.java | 18 +-
.../persistence/schema/ClusterSchemaInfo.java | 29 +-
.../confignode/persistence/schema/ConfigMTree.java | 90 ++--
.../persistence/schema/mnode/IConfigMNode.java | 1 +
.../schema/mnode/impl/ConfigDatabaseMNode.java | 5 +-
.../schema/mnode/impl/ConfigTableNode.java | 4 +-
.../impl/schema/SetTemplateProcedure.java | 148 +++---
.../persistence/schema/ConfigMTreeTest.java | 38 +-
.../iotdb/consensus/ratis/RatisConsensus.java | 4 +
.../metadata/DatabaseConflictException.java | 2 +-
...sException.java => DatabaseModelException.java} | 10 +-
.../agent/runtime/PipeDataNodeRuntimeAgent.java | 13 +
.../db/pipe/agent/task/PipeDataNodeTaskAgent.java | 50 +-
.../agent/task/builder/PipeDataNodeBuilder.java | 6 +-
.../request/PipeTransferTabletBinaryReqV2.java | 13 +
.../request/PipeTransferTabletInsertNodeReqV2.java | 13 +
.../tablet/PipeInsertNodeTabletInsertionEvent.java | 4 +-
.../common/tablet/PipeRawTabletInsertionEvent.java | 4 +-
.../dataregion/DataRegionListeningFilter.java | 35 +-
...oricalDataRegionTsFileAndDeletionExtractor.java | 31 +-
.../PipeDataNodeRemainingEventAndTimeMetrics.java | 8 +-
.../PipeDataNodeRemainingEventAndTimeOperator.java | 13 +-
.../ref/PipeDataNodePhantomReferenceManager.java | 2 +-
.../resource/tsfile/PipeTsFileResourceManager.java | 4 +-
.../iotdb/db/protocol/client/ConfigNodeClient.java | 2 +-
.../iotdb/db/protocol/session/SessionManager.java | 4 +-
.../common/header/ColumnHeaderConstant.java | 12 +-
.../common/header/DatasetHeaderFactory.java | 6 +-
.../exception/MemoryNotEnoughException.java | 8 +-
.../db/queryengine/execution/driver/Driver.java | 6 +-
.../execution/driver/DriverContext.java | 6 +-
.../fragment/FragmentInstanceContext.java | 6 +-
.../fragment/FragmentInstanceExecution.java | 2 +-
.../TableAggregationTableScanOperator.java | 41 +-
.../relational/aggregation/AccumulatorFactory.java | 17 +
.../aggregation/AggregationOperator.java | 2 +-
.../relational/aggregation/AvgAccumulator.java | 26 +-
.../relational/aggregation/FirstAccumulator.java | 52 +-
.../relational/aggregation/FirstByAccumulator.java | 55 +-
.../relational/aggregation/LastAccumulator.java | 49 +-
.../relational/aggregation/LastByAccumulator.java | 54 +-
.../aggregation/TableMaxMinByBaseAccumulator.java | 72 +--
.../aggregation/TableModeAccumulator.java | 480 ++++++++++++++++++
.../aggregation/TableVarianceAccumulator.java | 231 +++++++++
.../source/relational/aggregation/Utils.java | 130 +++++
.../aggregation/grouped/GroupedAvgAccumulator.java | 20 +-
.../grouped/GroupedFirstAccumulator.java | 92 ++--
.../grouped/GroupedFirstByAccumulator.java | 115 +++--
.../grouped/GroupedLastAccumulator.java | 92 ++--
.../grouped/GroupedLastByAccumulator.java | 111 +++--
.../grouped/GroupedMaxMinByBaseAccumulator.java | 102 ++--
.../relational/ColumnTransformerBuilder.java | 6 +-
.../execution/schedule/AbstractDriverThread.java | 11 +-
.../execution/schedule/DriverScheduler.java | 32 +-
.../schedule/DriverTaskAbortedException.java | 2 +-
.../execution/schedule/DriverTaskThread.java | 5 +-
.../schedule/DriverTaskTimeoutSentinelThread.java | 3 +-
.../execution/schedule/IDriverScheduler.java | 2 +-
.../execution/schedule/task/DriverTask.java | 9 +-
.../plan/analyze/ClusterPartitionFetcher.java | 185 +++----
.../analyze/cache/partition/PartitionCache.java | 144 +++---
.../execution/config/TableConfigTaskVisitor.java | 3 +-
.../config/executor/ClusterConfigTaskExecutor.java | 42 +-
.../config/metadata/DatabaseSchemaTask.java | 5 +-
.../config/metadata/ShowDatabaseTask.java | 4 +-
.../config/metadata/relational/ShowDBTask.java | 60 ++-
.../TableModelStatementMemorySourceVisitor.java | 6 +-
.../plan/planner/OperatorTreeGenerator.java | 2 +-
.../plan/planner/TableOperatorGenerator.java | 69 ++-
.../plan/planner/plan/node/PlanGraphPrinter.java | 2 +-
.../planner/plan/node/write/InsertTabletNode.java | 3 +-
.../plan/relational/analyzer/Analysis.java | 17 +-
.../plan/relational/metadata/Metadata.java | 6 -
.../metadata/TableBuiltinAggregationFunction.java | 33 --
.../relational/metadata/TableMetadataImpl.java | 7 +-
.../fetcher/TableHeaderSchemaValidator.java | 10 +-
.../distribute/TableDistributedPlanGenerator.java | 130 +++--
.../PushAggregationIntoTableScan.java | 19 +-
.../optimizations/PushPredicateIntoTableScan.java | 10 +-
.../TransformAggregationToStreamable.java | 2 +-
.../plan/relational/sql/ast/ShowDB.java | 16 +-
.../plan/relational/sql/parser/AstBuilder.java | 11 +-
.../plan/scheduler/load/LoadTsFileScheduler.java | 6 +-
.../statement/metadata/ShowDatabaseStatement.java | 23 +-
... => AbstractCastFunctionColumnTransformer.java} | 78 +--
.../scalar/CastFunctionColumnTransformer.java | 320 +-----------
.../scalar/TryCastFunctionColumnTransformer.java | 75 +++
.../db/schemaengine/table/DataNodeTableCache.java | 2 +
.../metrics/IoTDBInternalLocalReporter.java | 7 +-
.../iotdb/db/storageengine/StorageEngine.java | 13 +-
.../db/storageengine/dataregion/DataRegion.java | 2 +-
.../dataregion/flush/MemTableFlushTask.java | 2 +-
.../dataregion/memtable/AbstractMemTable.java | 140 ++----
.../memtable/AlignedWritableMemChunk.java | 6 +-
.../dataregion/memtable/IMemTable.java | 12 +-
.../dataregion/memtable/IWritableMemChunk.java | 5 +-
.../dataregion/memtable/TsFileProcessor.java | 26 +-
.../dataregion/memtable/WritableMemChunk.java | 2 +-
.../storageengine/dataregion/wal/WALManager.java | 12 +-
.../dataregion/wal/allocation/ElasticStrategy.java | 22 +-
.../wal/recover/file/TsFilePlanRedoer.java | 22 +-
.../db/storageengine/load/LoadTsFileManager.java | 6 +-
.../active/ActiveLoadFailedMessageHandler.java | 116 +++++
.../load/active/ActiveLoadTsFileLoader.java | 27 +-
.../load/splitter/AlignedChunkData.java | 33 +-
.../splitter/BatchedAlignedValueChunkData.java | 3 +-
.../db/storageengine/load/splitter/ChunkData.java | 5 +-
.../load/splitter/NonAlignedChunkData.java | 28 +-
.../load/splitter/TsFileSplitter.java | 9 +-
.../apache/iotdb/db/utils/ErrorHandlingUtils.java | 3 -
.../execution/schedule/DriverSchedulerTest.java | 14 +-
.../DriverTaskTimeoutSentinelThreadTest.java | 14 +-
.../plan/analyze/cache/PartitionCacheTest.java | 8 +-
.../planner/node/write/WritePlanNodeSplitTest.java | 57 +++
.../plan/relational/analyzer/AggregationTest.java | 19 -
.../plan/relational/analyzer/TSBSMetadata.java | 6 -
.../plan/relational/analyzer/TestMatadata.java | 6 -
.../BatchedCompactionWithTsFileSplitterTest.java | 3 +-
.../wal/allocation/ElasticStrategyTest.java | 11 +
.../iotdb/commons/concurrent/ThreadName.java | 2 +
.../apache/iotdb/commons/conf/CommonConfig.java | 2 +-
...ngException.java => QueryTimeoutException.java} | 10 +-
...java => AbstractPipePeriodicalJobExecutor.java} | 38 +-
.../agent/runtime/PipePeriodicalJobExecutor.java | 101 +---
.../PipePeriodicalPhantomReferenceCleaner.java} | 16 +-
.../datastructure/pattern/IoTDBTreePattern.java | 9 +
.../datastructure/pattern/PrefixTreePattern.java | 9 +
.../pipe/datastructure/pattern/TreePattern.java | 7 +
.../resource/ref/PipePhantomReferenceManager.java | 20 +-
.../iotdb/commons/utils/TimePartitionUtils.java | 104 +++-
.../commons/utils/TimePartitionUtilsTest.java | 16 +
.../db/relational/grammar/sql/RelationalSql.g4 | 3 +-
.../src/main/thrift/confignode.thrift | 2 +
144 files changed, 3590 insertions(+), 1973 deletions(-)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/exception/metadata/{AlignedTimeseriesException.java
=> DatabaseModelException.java} (76%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/TableModeAccumulator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/TableVarianceAccumulator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/Utils.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/{CastFunctionColumnTransformer.java
=> AbstractCastFunctionColumnTransformer.java} (82%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/TryCastFunctionColumnTransformer.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/active/ActiveLoadFailedMessageHandler.java
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/{RpcThrottlingException.java
=> QueryTimeoutException.java} (77%)
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/runtime/{PipePeriodicalJobExecutor.java
=> AbstractPipePeriodicalJobExecutor.java} (75%)
copy
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/pipe/agent/task/execution/PipeProcessorSubtaskExecutor.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/runtime/PipePeriodicalPhantomReferenceCleaner.java}
(62%)