This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a change to branch fixObjectFunctionsAndAddTests
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 80977f1be4d fix bug
add 426a96423d7 Fixed the calculation error of schema cache (#16818)
add a2806355c03 Fixed the concurrency issue of region migrate and load
(#16796)
add ec7d62751de Add 'show available urls' (#16441)
add d33169d8166 Added back the mis-deleted "()" in last cache (#16824)
add 78fcd84d9e8 Reduced the auth log when paths are too many (#16825)
add b6d21c63ffd perf: Optimize wide table write performance (#16699)
add 8c75110b49e implement the except (distinct | all ) for table model
#16760
add 53c730ca480 added support for Blob objects to the length() function,
allowing for calculating the byte size for Blob inputs (#16170)
add a113051e3b4 implement intersect and except related optimization rule:
MergeIntersect, MergeExcept, RemoveEmptyIntersectBranchs,
EvaluateEmptyIntersect, PruneIntersectSourceColumns, PruneExceptSourceColmns
(#16761)
add 7249a52f48a Fix compile error in DataRegion
add 487bd23839c Merge branch 'force_ci/object_type' into
fixObjectFunctionsAndAddTests
No new revisions were added by this update.
Summary of changes:
.../org/apache/iotdb/db/it/auth/IoTDBAuthIT.java | 2 +
.../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java | 13 +-
.../iotdb/db/it/utils/TSDataTypeTestUtils.java | 113 ++++
.../pipe/it/dual/tablemodel/TableModelUtils.java | 8 +-
.../relational/it/db/it/IoTDBInsertTableIT.java | 6 +
.../scalar/IoTDBScalarFunctionTableIT.java | 18 +-
...tersectTableIT.java => IoTDBExceptTableIT.java} | 72 +-
...nFunctionIT.java => IoTDBLengthFunctionIT.java} | 80 +--
.../it/session/IoTDBSessionRelationalIT.java | 17 +-
.../org/apache/iotdb/session/NodesSupplier.java | 49 +-
.../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 | 2 +
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 7 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 8 +
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 9 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 10 -
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 6 -
.../db/consensus/DataRegionConsensusImpl.java | 6 +
.../dataregion/DataRegionStateMachine.java | 15 +-
.../common/header/DatasetHeaderFactory.java | 4 +
.../fragment/FragmentInstanceContext.java | 2 +-
.../fragment/FragmentInstanceExecution.java | 2 +-
.../relational/ColumnTransformerBuilder.java | 13 +-
.../iotdb/db/queryengine/plan/Coordinator.java | 2 +
.../execution/config/TableConfigTaskVisitor.java | 13 +
.../execution/config/TreeConfigTaskVisitor.java | 8 +
.../config/executor/ClusterConfigTaskExecutor.java | 21 +
.../config/executor/IConfigTaskExecutor.java | 2 +
...AINodesTask.java => ShowAvailableUrlsTask.java} | 30 +-
.../db/queryengine/plan/parser/ASTVisitor.java | 6 +
.../plan/planner/plan/node/PlanGraphPrinter.java | 10 +
.../plan/planner/plan/node/PlanNodeType.java | 4 +
.../plan/planner/plan/node/PlanVisitor.java | 5 +
.../relational/analyzer/StatementAnalyzer.java | 4 +-
.../plan/relational/metadata/Metadata.java | 10 +
.../relational/metadata/TableMetadataImpl.java | 25 +-
.../fetcher/TableHeaderSchemaValidator.java | 378 +++++++++++
.../fetcher/cache/TableDeviceLastCache.java | 2 +-
.../fetcher/cache/TreeDeviceNormalSchema.java | 8 +-
.../plan/relational/planner/RelationPlanner.java | 24 +-
...rceColumns.java => EvaluateEmptyIntersect.java} | 41 +-
...ntIntersectAll.java => ImplementExceptAll.java} | 47 +-
...on.java => ImplementExceptDistinctAsUnion.java} | 52 +-
.../rule/ImplementIntersectDistinctAsUnion.java | 3 +-
.../rule/{MergeUnion.java => MergeExcept.java} | 15 +-
.../rule/{MergeUnion.java => MergeIntersect.java} | 13 +-
.../iterative/rule/PruneDistinctAggregation.java | 27 +-
...eColumns.java => PruneExceptSourceColumns.java} | 14 +-
...lumns.java => PruneIntersectSourceColumns.java} | 15 +-
.../iterative/rule/RemoveEmptyExceptBranches.java | 139 ++++
.../planner/iterative/rule/SetOperationMerge.java | 123 +++-
.../iterative/rule/SetOperationNodeTranslator.java | 4 +-
.../node/{IntersectNode.java => ExceptNode.java} | 21 +-
.../plan/relational/planner/node/Patterns.java | 20 +-
.../optimizations/LogicalOptimizeFactory.java | 43 +-
.../optimizations/UnaliasSymbolReferences.java | 31 +
.../security/TreeAccessCheckVisitor.java | 9 +
.../plan/relational/sql/ast/AstVisitor.java | 4 +
.../plan/relational/sql/ast/InsertRows.java | 19 +-
.../{ShowAIDevices.java => ShowAvailableUrls.java} | 12 +-
.../relational/sql/ast/WrappedInsertStatement.java | 414 +++++++++---
.../plan/relational/sql/parser/AstBuilder.java | 7 +
.../plan/scheduler/load/LoadTsFileScheduler.java | 6 +-
.../plan/statement/StatementVisitor.java | 6 +
.../plan/statement/crud/InsertBaseStatement.java | 145 +++-
.../crud/InsertMultiTabletsStatement.java | 6 +
.../plan/statement/crud/InsertRowStatement.java | 42 ++
.../crud/InsertRowsOfOneDeviceStatement.java | 6 +
.../plan/statement/crud/InsertRowsStatement.java | 6 +
.../plan/statement/crud/InsertTabletStatement.java | 59 ++
...tement.java => ShowAvailableUrlsStatement.java} | 18 +-
...ormer.java => BlobLengthColumnTransformer.java} | 8 +-
.../db/schemaengine/table/DataNodeTableCache.java | 17 +-
.../iotdb/db/service/metrics/WritingMetrics.java | 3 +-
.../iotdb/db/storageengine/StorageEngine.java | 13 +-
.../db/storageengine/dataregion/DataRegion.java | 289 +++++---
.../dataregion/IDataRegionForQuery.java | 2 +-
.../dataregion/VirtualDataRegion.java | 2 +-
.../compaction/repair/RepairTimePartition.java | 2 +-
.../dataregion/memtable/TsFileProcessor.java | 18 +-
.../dataregion/snapshot/SnapshotTaker.java | 14 +-
.../file/UnsealedTsFileRecoverPerformer.java | 6 +-
.../db/storageengine/load/LoadTsFileManager.java | 26 +-
.../db/utils/datastructure/AlignedTVList.java | 4 +-
.../apache/iotdb/db/auth/AuthorityCheckerTest.java | 51 ++
.../plan/relational/analyzer/AnalyzerTest.java | 33 +-
...zeTest.java => EvaluateEmptyIntersectTest.java} | 27 +-
.../{IntersectTest.java => ExceptTest.java} | 51 +-
.../plan/relational/analyzer/MergeExceptTest.java | 147 ++++
...{IntersectTest.java => MergeIntersectTest.java} | 99 ++-
...est.java => RemoveEmptyExceptBranchesTest.java} | 106 ++-
.../plan/relational/analyzer/TSBSMetadata.java | 13 +
.../plan/relational/analyzer/TestMetadata.java | 25 +-
.../plan/statement/InsertStatementTest.java | 97 ++-
.../scalar/BlobLengthColumnTransformerTest.java | 148 ++++
.../DataNodeInternalRPCServiceImplTest.java | 59 +-
.../iotdb/db/storageengine/StorageEngineTest.java | 4 +-
.../storageengine/dataregion/DataRegionTest.java | 4 +-
.../repair/RepairUnsortedFileSchedulerTest.java | 10 +-
.../dataregion/snapshot/IoTDBSnapshotTest.java | 2 +-
.../apache/iotdb/db/utils/TSDataTypeTestUtils.java | 111 +++
.../datastructure/PrimitiveArrayManagerTest.java | 12 +-
.../apache/iotdb/commons/conf/CommonConfig.java | 9 +
.../iotdb/commons/conf/CommonDescriptor.java | 5 +
.../schema/column/ColumnHeaderConstant.java | 5 +
.../schema/table/InsertNodeMeasurementInfo.java | 244 +++++++
.../schema/table/TsFileTableSchemaUtil.java | 207 ++++++
.../apache/iotdb/commons/schema/table/TsTable.java | 226 ++++---
.../schema/table/column/FieldColumnSchema.java | 1 +
.../schema/table/column/TsTableColumnSchema.java | 6 +
.../schema/table/TsFileTableSchemaUtilTest.java | 748 +++++++++++++++++++++
.../db/relational/grammar/sql/RelationalSql.g4 | 11 +-
111 files changed, 4341 insertions(+), 905 deletions(-)
create mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/utils/TSDataTypeTestUtils.java
copy
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{IoTDBIntersectTableIT.java
=> IoTDBExceptTableIT.java} (63%)
copy
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{scalar/IoTDBFromBase64ColumnFunctionIT.java
=> IoTDBLengthFunctionIT.java} (51%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/{relational/ShowAINodesTask.java
=> ShowAvailableUrlsTask.java} (75%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/{PruneUnionSourceColumns.java
=> EvaluateEmptyIntersect.java} (53%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/{ImplementIntersectAll.java
=> ImplementExceptAll.java} (65%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/{ImplementIntersectDistinctAsUnion.java
=> ImplementExceptDistinctAsUnion.java} (69%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/{MergeUnion.java
=> MergeExcept.java} (78%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/{MergeUnion.java
=> MergeIntersect.java} (81%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/{PruneUnionSourceColumns.java
=> PruneExceptSourceColumns.java} (85%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/{PruneUnionSourceColumns.java
=> PruneIntersectSourceColumns.java} (84%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/RemoveEmptyExceptBranches.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/{IntersectNode.java
=> ExceptNode.java} (82%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{ShowAIDevices.java
=> ShowAvailableUrls.java} (84%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/{ShowClusterStatement.java
=> ShowAvailableUrlsStatement.java} (79%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/{ObjectLengthColumnTransformer.java
=> BlobLengthColumnTransformer.java} (80%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/auth/AuthorityCheckerTest.java
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/{ExplainAnalyzeTest.java
=> EvaluateEmptyIntersectTest.java} (64%)
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/{IntersectTest.java
=> ExceptTest.java} (70%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/MergeExceptTest.java
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/{IntersectTest.java
=> MergeIntersectTest.java} (58%)
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/{IntersectTest.java
=> RemoveEmptyExceptBranchesTest.java} (50%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/BlobLengthColumnTransformerTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/TSDataTypeTestUtils.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InsertNodeMeasurementInfo.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/TsFileTableSchemaUtil.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/schema/table/TsFileTableSchemaUtilTest.java