This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a change to branch table_deletion_plus
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from a6d816190f5 fix InsertionCompaction
add 079fc8fd085 Subscription: basic support for table model from SQL to
IConfigTask & Pipe: fix too many warn logs from findAllStuckPipes() (#14287)
add 2b4ab69dff6 Add AccessControl support for query and database related
add a409dabf9c8 IoTConsensusV2: Fix up iotv2 wal check (#14280)
add 01f0a8fa30c Procedure: Fix procedure framework data race (#14250)
add b3892dac3cc Add TrimProperties to trim properties auto (#14289)
add a1a972c8462 feat(client-cpp): add basic TableModel settings &
insertRelationalTablet interface (#14097)
add 07e146faee6 [region migration] Handle InterruptedException during
waitTaskFinish() more properly #14305
add cfc5ef319e2 [Vulnerability-check] Adjust schedule time #14304
add 790bc26d4fc IoTV2: Improve create consensus log based on product
scenario #14306
add 54a6d818c57 Region Migration: Set default it to IoTV2 (#14294)
add 4f4dd798295 Optimized the config execution & query failure logs
add f84a52eca0f Pipe: Fix potential NPE from
WALEntryHandler#getInsertNodeViaCacheIfPossible & Improve performance for pipe
slightly (#14312)
add 4513e5548d9 Pipe: Implement OpcUa connector for table model (#14283)
add 06d9f3bb963 Add UT for query auth check
add 502f54a5beb Pipe: Added the CreateMultiTimeSeries with merge logic and
disabled timeSeries existence check at SchemaExecutionVisitor for plans
transferred by pipe (#14317)
add fd105e030d6 Add Binary Allocator (#14321)
add 133a9cb9885 Update export script prompt information (#14276)
add e46d34ab213 Pipe: fix the reference count leak of events published in
the assigner during restart (#14308)
add 9b04df7d7b4 Optimized the error log of devices related operations when
where specifies time/measurement columns
add b2f032527b5 Support uncorrelated scalar subquery in
SELECT/WHERE/HAVING clause
add 0ea7de03f37 Increase the default upper bound for ClientManager #14325
add b1e69045f99 Support table model sql insertion without column name
(#14310)
add f8176b7146b Fix auth test (#14337)
add c789ba8e555 fix addRemotePeer data inconsistency (#14332)
add 695d3be5ccd [remove datanode] Fix concurrent modification when
removing fails and rollback #14333
add 903c3599c42 [remove datanode X IoTV2] Fix concurrent modification when
removing fails and rollback #14336
add 16f71c8b632 Support show-queries and kill-query
add 9493f7dcc80 Enable tolerating any exceptions and not block cluster
initialization during schema region recover
add 076b2538a17 add udaf PatternMatch DTWMatch (#14258) (#14340)
add a9c55474839 Pipe: add information about sender's IP and port in the
pipe receiver logs (#14343)
add 5c84e68de09 Implement alter database in table model
add 09288dac0cb [TABLE MODEL] Implement CREATE/SHOW/DROP Function and
user-defined scalar function
add 950ecff3418 modify table session example (#14357)
add 621693f5159 Pipe IT: table model tests for consensus pipes × user
pipes (#14200)
add 761c67edd18 Fix file header of Java Class #14350
add ad09bd3c57e Pipe: Support table statements' data type conversion on
receiver type mismatch (#14354)
add f1714d05cdb Adjust default data region num per node from 5 to to cpu
core / 2 (#14348)
add e48aa4f67a5 Remove sqlalchemy upper version constraint for python
client (#14083)
add 05ea4738871 finish (#14366)
add f2a5854f182 WAL buffer queue memory control (#14329)
add 6073d25712c Restruct procedure waiting strategy to fix NPE bug when
completed procedures were cleaned before getting result (#14360)
add 21652cc2180 Fixed the bug of ID Like judgement in queries
add 589866872db Fix group by nature month when timezone is not default
add 70691e4b2be Add `removeInput` and `removable` to some specific
Accmulators
add ba824548e0b fix wal queue stuck and fix metric (#14387)
add 37450ec160b Supprt trusted_uri_pattern in config file
add e1884cad2f8 Support us and ns timePrecision in udf-library part-1
add 839e2221dce Move model annotations to tsfile (#14358)
add 9c65c326c4d Pipe: Deleted the "root" prefix dir in table model for OPC
UA Sink (#14385)
add 54197b95d28 Pipe: Fix the deadlock of PeriodicalJob thread caused by
using parallelStream to split restartAllStuckPipes' subtasks (#14392)
add d3b96d8136c show more use ctx.getIn(), because Sometimes it's not
system. in (#14322)
add 88ffa48e320 Fix ThreadPoolMetrics concurrent NPE bug & Fix metric
leaks when frequently creating and deleting database (#14388)
add 4be990922b4 [region migration] Remove retry of
RegionMigrateService::addPeer (#14362)
add 8144e5c4613 Fix ThreadPoolMetrics NPE (#14404)
add 4c213313a9f Sampling queries in each DN
add c4f1ba61b26 [Py-client] Print Dataset is closed error msg if user
continues to fetch from it (#14396)
add e2cd299d17a When the config node can not find the configuration file,
the set configuration command does not update other nodes' configuration
(#14390)
add 73c1e329fc7 add todos check (#14367)
add d0de00610ec Temporarily skip check TODO (#14413)
add c310cb0c3eb IoTV2: Fix consensus pipe operation time out (#14399)
add 809b3aaff8e Pipe: Fixed the bug that a failed check sum may
permanently disable an air gap receiver & Optimized the air gap file offset
logic & Fixed the bug that not connected socket may die forever in "send"
(#14384)
add 8b220c9219c modify encrypt type and related tests (#14273)
add 77f350e66a6 fix TODO check
add 12e1fb2fe55 Fix UDF missing redo raft log after restart
add 35542a17f10 Implement SELECT DISTINCT in TableModel
add b53e1ba569b Bump jackson-databind to 2.16.2
add ac18bbf5ca4 Print current trusted_uri_pattern is error msg
add dbdd736ab34 When the device is missing from the resource, this part of
the data may be lost during file repair (#14411)
add edc318540ff Pipe: Add login logic to receiver handshake (#14401)
add f68726f8b81 Pipe: Fix "waitHandshakeFinished" may wait forever when
asyncClientManager is closed (#14373)
add e80b9927c9e Subscription: fix ConcurrentModificationException for
`ConsumerGroupMeta` & fix the logic of `isTopicSubscribedByConsumerGroup` &
avoid consumer from outputting too much content in string form (#14425)
add 2165bf49beb Add Create Trigger without using uri IT
add 992abd67952 Add stream mode to iotv2 region migration it (#14417)
add f62d058a796 [IOTDB-6353] replace cglib to byte-buddy (#14426)
add 325b8d8fd01 Fix error in MergeSortJoin when some columns exist null
values & Support cross join with filters
add 69fb8dc479b Pipe: fix the reference count leak of events in async
connector during restart (#14324)
add 0d22f2b3f35 Load: flush metadata of generated files to avoid OOM
(#14419)
add eb3f554d654 Load: when table exists in IoTDB, make sure the
existing/incoming ID columns are the prefix of the incoming/existing ID columns
(#14341)
add 78ec1c9f825 Load: Fix Memory Allocation and Release Mismatch in
LoadTsFileDataCacheMemoryBlock (#14375)
add 65f3ad46274 [To dev/1.3]Support auto mkdirs in ExportData (#14378)
(#14400)
add 0c444734d50 Load: fix that empty measurement in aligned devices may
cause warnings (#14444)
add fbd17931ebc Pipe: Fixed the bug that the handling logic of return
status is not of use in convert execution visitor (#14443)
add 0d69f7149b8 Pipe: Fix the null pointer exception when the receiver
closes the Session (#14446)
add f6b16ed0aec Pipe: Added permission check for config receiver (#14418)
add 6a28a0792c3 Pipe: Introduce a minimum restart interval to optimize the
restart strategy to avoid frequent restarts & Stay tsfile extraction mode if
the task is currently restarted (#14374)
add d3f63920531 Bump h2-mvstore to 2.3.232 (#14450)
add 5f7b570aa5d Fix ratis byte limit configuration too small (#14449)
add aa8e21c664f Fix ThreadPool Metric NPE #14459
add 9df0030ebca Add TsfileSize column to 'show regions' (#14436)
add 6efe1125c8f Fix query scan will return duplicated timestamp or
unordered timestamp while TsFileResource degrading
add b5fe66ee754 Add eviction metrics in binary allocator (#14432)
add 7d6753a81c9 Bump ratis to 3.1.2-a862328-SNAPSHOT
add addbf964e4a Pipe: Do not stop runtime agent when removing datanode
(#14474)
add ef6a06a2def Subscription: allow generate subsequent events with the
same tablet batch to avoid large message & improve poll logic to avoid
unnecessary nack (#14452)
add 59dac3272a6 [TABLE MODEL] Support user-defined aggregate function
add 876d8469515 fix checkNonAlignedDeviceSeries (#14461)
add 91b672da649 Allow hot reloading compaction from disabled status
(#14470)
add 067b0b35f51 Initialize compaction schedule even when compaction is not
enabled (#14479)
add 55b37e0d14a Pipe: Fix infinite loop when thread is interrupted in
invoking PipeMemoryBlock#close & Avoid throwing new InterruptedException in
conditions that can be self-restoring (#14471)
add 72c803fa981 Table model insertion auto-cast & Fix TVList not removed
when all data are deleted. (#14391)
add 2076bf6b86c Fix setting illegal default_storage_group_level does not
report an error (#14477)
add 2a26c6eb52b Pipe: Fixed the bug that auth plan with system privileges
can not be transferred (#14489)
add 0a8ad9751c6 Add format function in table model
add c5547b09d6e Pipe & Subscription: support synonym database and table
parameters for table model (#14487)
add 640a0c7ac1b Isolate Show-Queries of TableModel and TreeModel
add 67cd48da3fb Modify the UDF Time Dimension
add 96f8c19a80b Subscription: fix NPE when building consumer with missing
id & add more checker for topic operations using session (#14493)
add 61fa8d6f004 Implement schema of 'information_schema' & Make
AddLocation plan immune readOnly state
add d34511a93f3 Fix error in template + sort + offset + limit + align by
device
add a877b82b819 Make the construction method of class
TableAggTableScanOperator tidy
add f013e975933 Remove redundant trim (#14502)
add a04c752bc24 fix compaction task comparator & fix the conflicts between
inner compaction selection conditions (#14495)
add f215c4225a1 Revert "[IOTDB-6353] replace cglib to byte-buddy (#14426)"
(#14497)
add 81db737e325 Add lock for insertSeparatorToWAL (#14478)
add 50241423ef8 Apply new configurations in memory before update file
(#14500)
add aee90fb8442 Separate table/tree model database & Added
SchemaRegionGroupNum / dataRegionGroupNum in table databases details &
Optimized the message for table flush operation with database
add 1bb5667a549 add Content-Type in prometheus reporter (#14507)
add 97046f9023c Encountering empty tablets during batch export of tsfile
does not affect subsequent export tasks (#14484)
add fa4f6da8da0 Added the missed separate mTree logic for tree/table
database plans (#14509)
add c21c509f1df Merge branch 'master' into table_deletion_plus
No new revisions were added by this update.
Summary of changes:
.github/workflows/pipe-it-2cluster.yml | 2 +-
.github/workflows/todos-check.yml | 40 +
.github/workflows/vulnerability-check.yml | 4 +-
.../src/AlignedTimeseriesSessionExample.cpp | 30 +-
example/client-cpp-example/src/SessionExample.cpp | 20 +-
.../src/TableModelSessionExample.cpp | 212 +
.../org/apache/iotdb/TableModelSessionExample.java | 29 +-
.../apache/iotdb/TableModelSessionPoolExample.java | 29 +-
.../apache/iotdb/udf/AggregateFunctionExample.java | 117 +
.../apache/iotdb/udf/ScalarFunctionExample.java | 70 +
.../db/query/udf/example/relational/AllSum.java | 106 +
.../query/udf/example/relational/ContainNull.java | 52 +
.../query/udf/example/relational/DatePlusOne.java | 57 +
.../query/udf/example/relational/FirstTwoSum.java | 168 +
.../db/query/udf/example/relational/MyAvg.java | 126 +
.../db/query/udf/example/relational/MyCount.java | 95 +
.../it/env/cluster/config/MppCommonConfig.java | 18 +
.../env/cluster/config/MppSharedCommonConfig.java | 21 +
.../iotdb/it/env/cluster/env/AbstractEnv.java | 15 +
.../it/env/remote/config/RemoteCommonConfig.java | 10 +
.../iotdb/it/env/remote/env/RemoteServerEnv.java | 9 +
.../apache/iotdb/itbase/constant/TestConstant.java | 2 +-
.../iotdb/itbase/constant/UDFTestConstant.java | 1 +
.../java/org/apache/iotdb/itbase/env/BaseEnv.java | 3 +
.../org/apache/iotdb/itbase/env/CommonConfig.java | 8 +
.../org/apache/iotdb/ainode/it/AINodeBasicIT.java | 1 +
.../confignode/it/IoTDBConfigNodeSnapshotIT.java | 3 +
.../it/cluster/IoTDBClusterNodeGetterIT.java | 6 +-
.../it/partition/IoTDBTimePartitionIT.java | 2 +-
...onMigrateDataNodeCrashITFrameworkForIoTV1.java} | 17 +-
...onMigrateDataNodeCrashITFrameworkForIoTV2.java} | 3 +-
.../IoTDBRegionMigrateReliabilityITFramework.java | 5 +-
.../IoTDBRegionMigrateNormalITForIoTV2Batch.java} | 5 +-
.../IoTDBRegionMigrateOtherITForIoTV2Batch.java} | 5 +-
.../IoTDBRegionMigrateNormalITForIoTV2Stream.java} | 19 +-
.../IoTDBRegionMigrateOtherITForIoTV2Stream.java} | 19 +-
...inatorCrashWhenRemoveRemotePeerForIoTV1IT.java} | 15 +-
...IoTDBRegionMigrateDataNodeCrashForIoTV1IT.java} | 18 +-
...riginalCrashWhenDeleteLocalPeerForIoTV1IT.java} | 8 +-
...iginalCrashWhenRemoveRemotePeerForIoTV1IT.java} | 8 +-
...torCrashWhenRemoveRemotePeerForIoTV2Batch.java} | 15 +-
...DBRegionMigrateDataNodeCrashForIoTV2Batch.java} | 17 +-
...inalCrashWhenDeleteLocalPeerForIoTV2Batch.java} | 8 +-
...nalCrashWhenRemoveRemotePeerForIoTV2Batch.java} | 8 +-
...orCrashWhenRemoveRemotePeerForIoTV2Stream.java} | 28 +-
...BRegionMigrateDataNodeCrashForIoTV2Stream.java} | 30 +-
...nalCrashWhenDeleteLocalPeerForIoTV2Stream.java} | 22 +-
...alCrashWhenRemoveRemotePeerForIoTV2Stream.java} | 22 +-
.../IoTDBRegionMigrateClusterCrashIoTV1IT.java} | 18 +-
.../IoTDBRegionMigrateConfigNodeCrashIoTV1IT.java} | 19 +-
.../IoTDBRegionMigrateClusterCrashIoTV2Batch.java} | 5 +-
...TDBRegionMigrateConfigNodeCrashIoTV2Batch.java} | 5 +-
...IoTDBRegionMigrateClusterCrashIoTV2Stream.java} | 18 +-
...DBRegionMigrateConfigNodeCrashIoTV2Stream.java} | 19 +-
.../IoTDBRemoveDataNodeITFramework.java | 2 +-
.../confignode/it/utils/ConfigNodeTestUtils.java | 4 +-
.../org/apache/iotdb/db/it/IoTDBExampleIT.java | 2 +-
.../apache/iotdb/db/it/IoTDBExecuteBatchIT.java | 2 +-
...astWithTTLIT.java => IoTDBFileTimeIndexIT.java} | 99 +-
.../apache/iotdb/db/it/IoTDBFilterBetweenIT.java | 2 +-
.../org/apache/iotdb/db/it/IoTDBFilterNullIT.java | 2 +-
.../org/apache/iotdb/db/it/IoTDBInsertNaNIT.java | 2 +-
.../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java | 2 +-
.../org/apache/iotdb/db/it/IoTDBNestedQueryIT.java | 3 +-
.../org/apache/iotdb/db/it/IoTDBRestServiceIT.java | 4 +-
.../org/apache/iotdb/db/it/IoTDBRestartIT.java | 1 +
.../iotdb/db/it/IoTDBSetConfigurationIT.java | 60 +
.../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java | 3 +-
.../db/it/IoTDBSyntaxConventionIdentifierIT.java | 3 +-
.../it/IoTDBSyntaxConventionStringLiteralIT.java | 3 +-
.../it/aggregation/IoTDBAggregationByLevelIT.java | 2 +-
.../IoTDBAlignByDeviceWithTemplateIT.java | 28 +-
.../aligned/IoTDBAggregationWithDeletion2IT.java | 1 +
.../db/it/aligned/IoTDBAlignedLastQueryIT.java | 2 +-
.../db/it/aligned/IoTDBAlignedSeriesQuery4IT.java | 1 +
.../db/it/aligned/IoTDBAlignedSeriesQueryIT.java | 2 +-
.../org/apache/iotdb/db/it/auth/IoTDBAuthIT.java | 2 +-
.../iotdb/db/it/auth/IoTDBClusterAuthorityIT.java | 2 +-
.../iotdb/db/it/auth/IoTDBSeriesPermissionIT.java | 22 +-
.../db/it/auth/IoTDBTemplatePermissionIT.java | 4 +-
.../scalar/IoTDBRoundFunctionIT.java | 1 +
.../db/it/groupby/IoTDBGroupByNaturalMonthIT.java | 28 +
.../it/last/IoTDBLastQueryWithLimitOffsetIT.java | 2 +-
.../iotdb/db/it/last/IoTDBLastWithTTLIT.java | 2 +-
.../apache/iotdb/db/it/path/IoTDBQuotedPathIT.java | 1 +
.../db/it/query/IoTDBEncryptionValueQueryIT.java | 4 +-
.../db/it/query/IoTDBLoadEncryptedTsFileIT.java | 55 +-
.../iotdb/db/it/query/IoTDBLoadPlainTsFileIT.java | 145 -
.../apache/iotdb/db/it/query/IoTDBResultSetIT.java | 2 +-
.../db/it/schema/IoTDBAutoCreateSchemaIT.java | 2 +-
.../it/schema/IoTDBCreateAlignedTimeseriesIT.java | 2 +-
.../db/it/schema/IoTDBCreateStorageGroupIT.java | 2 +-
.../db/it/schema/IoTDBCreateTimeseriesIT.java | 2 +-
.../it/schema/IoTDBDeleteAlignedTimeseriesIT.java | 2 +-
.../db/it/schema/IoTDBDeleteStorageGroupIT.java | 4 +-
.../iotdb/db/it/schema/IoTDBSchemaTemplateIT.java | 2 +-
.../db/it/schema/IoTDBSortedShowTimeseriesIT.java | 2 +-
.../apache/iotdb/db/it/schema/IoTDBTagAlterIT.java | 2 +-
.../org/apache/iotdb/db/it/schema/IoTDBTagIT.java | 2 +-
.../apache/iotdb/db/it/schema/IoTDBTagLimitIT.java | 2 +-
.../db/it/strangepath/IoTDBStrangePathIT.java | 2 +-
.../db/it/trigger/IoTDBTriggerManagementIT.java | 49 +-
.../iotdb/db/it/udaf/IoTDBUDAFGroupByLevelIT.java | 2 +-
.../iotdb/db/it/udf/IoTDBUDFBlockQueryIT.java | 12 +
.../iotdb/db/it/udf/IoTDBUDFManagementIT.java | 1 +
.../iotdb/db/it/udf/IoTDBUDFWindowQueryIT.java | 1 +
.../db/it/udf/IoTDBUDTFAlignByTimeQueryIT.java | 1 +
.../iotdb/db/it/udf/IoTDBUDTFHybridQueryIT.java | 3 +-
.../iotdb/db/it/udf/IoTDBUDTFNonAlignQueryIT.java | 1 +
.../org/apache/iotdb/db/it/utils/TestUtils.java | 212 +-
.../pipe/it/autocreate/IoTDBPipeAutoDropIT.java | 2 +-
.../pipe/it/autocreate/IoTDBPipeLifeCycleIT.java | 2 +-
.../iotdb/pipe/it/manual/IoTDBPipeInclusionIT.java | 12 +-
.../pipe/it/manual/IoTDBPipeMetaHistoricalIT.java | 14 +-
.../pipe/it/manual/IoTDBPipePermissionIT.java | 71 +-
.../manual/IoTDBPipeTypeConversionISessionIT.java | 3 +-
.../iotdb/pipe/it/single/IoTDBPipeOPCUAIT.java | 55 +
.../iotdb/pipe/it/tablemodel/IoTDBPipeAlterIT.java | 15 +-
.../it/tablemodel/IoTDBPipeAutoConflictIT.java | 23 +-
.../pipe/it/tablemodel/IoTDBPipeAutoDropIT.java | 88 +-
.../pipe/it/tablemodel/IoTDBPipeClusterIT.java | 71 +-
.../IoTDBPipeConnectorCompressionIT.java | 30 +-
.../tablemodel/IoTDBPipeConnectorParallelIT.java | 14 +-
.../pipe/it/tablemodel/IoTDBPipeDataSinkIT.java | 31 +-
.../pipe/it/tablemodel/IoTDBPipeExtractorIT.java | 105 +-
.../pipe/it/tablemodel/IoTDBPipeLifeCycleIT.java | 90 +-
.../pipe/it/tablemodel/IoTDBPipeNullValueIT.java | 11 +-
.../pipe/it/tablemodel/IoTDBPipeProtocolIT.java | 36 +-
.../it/tablemodel/IoTDBPipeSwitchStatusIT.java | 7 +-
.../pipe/it/tablemodel/IoTDBPipeWithLoadIT.java | 257 +-
.../it/tablemodel/IoTDBTablePatternFormatIT.java | 60 +-
.../iotdb/pipe/it/tablemodel/TableModelUtils.java | 32 +-
.../it/db/it/IoTDBCaseWhenThenTableIT.java | 23 +-
.../it/db/it/IoTDBFlushQueryTableIT.java | 8 +-
.../db/it/IoTDBMultiIDsWithAttributesTableIT.java | 286 +-
.../relational/it/db/it/IoTDBRestartTableIT.java | 1 +
.../it/db/it/IoTDBSetConfigurationTableIT.java | 39 +-
.../it/db/it/udf/IoTDBSQLFunctionManagementIT.java | 344 +
.../udf/IoTDBUserDefinedAggregateFunctionIT.java | 690 ++
.../it/udf/IoTDBUserDefinedScalarFunctionIT.java | 237 +
.../relational/it/db/it/udf/SQLFunctionUtils.java | 87 +
.../it/query/old/IoTDBSimpleQueryTableIT.java | 22 +-
.../aligned/IoTDBAlignedSeriesQueryTable4IT.java | 1 +
.../aligned/IoTDBAlignedSeriesQueryTableIT.java | 2 +-
.../scalar/IoTDBCastFunctionTableSpecialIT.java | 23 +-
.../scalar/IoTDBFormatFunctionTableIT.java | 190 +
.../it/query/old/query/IoTDBArithmeticTableIT.java | 23 +-
.../it/query/old/query/IoTDBResultSetTableIT.java | 2 +-
.../it/query/recent/IoTDBTableAggregationIT.java | 132 +-
.../IoTDBUncorrelatedScalarSubqueryIT.java | 384 +
.../recent/subquery/SubqueryDataSetUtils.java | 110 +
.../relational/it/schema/IoTDBDatabaseIT.java | 168 +-
.../iotdb/relational/it/schema/IoTDBDeviceIT.java | 51 +-
.../iotdb/relational/it/schema/IoTDBTableIT.java | 13 +-
.../it/session}/IoTDBSessionRelationalIT.java | 434 +-
.../it/session/IoTDBTableModelSessionIT.java | 2 +-
.../session/pool/IoTDBTableModelSessionPoolIT.java | 2 +-
.../it/local/IoTDBSubscriptionBasicIT.java | 69 +
.../param/IoTDBTestParamPullConsumerIT.java | 8 +-
.../param/IoTDBTestParamPushConsumerIT.java | 8 +-
.../regression/param/IoTDBTestParamTopicIT.java | 11 +-
.../apache/iotdb/tools/it/ExportTsFileTestIT.java | 4 +-
.../org/apache/iotdb/util/AbstractSchemaIT.java | 2 +-
.../api/exception/PipeConnectionException.java | 4 +-
.../iotdb/pipe/api/exception/PipeException.java | 6 +-
.../customizer/config/AggregateFunctionConfig.java | 53 +
.../customizer/config/ScalarFunctionConfig.java | 23 +-
.../customizer/parameter/FunctionParameters.java | 87 +
.../udf/api/relational/AggregateFunction.java | 101 +
.../iotdb/udf/api/relational/ScalarFunction.java | 49 +-
.../iotdb/udf/api/relational/access/Record.java | 47 +-
.../java/org/apache/iotdb/cli/AbstractCli.java | 14 +-
.../org/apache/iotdb/cli/utils/JlineUtils.java | 32 +-
.../apache/iotdb/tool/data/AbstractDataTool.java | 2 +-
.../org/apache/iotdb/tool/data/ExportData.java | 10 +
.../org/apache/iotdb/tool/data/ImportData.java | 22 +-
.../org/apache/iotdb/tool/tsfile/ExportTsFile.java | 31 +-
iotdb-client/client-cpp/pom.xml | 16 +
.../client-cpp/src/main/AbstractSessionBuilder.h | 24 +-
iotdb-client/client-cpp/src/main/Session.cpp | 110 +-
iotdb-client/client-cpp/src/main/Session.h | 173 +-
iotdb-client/client-cpp/src/main/TableSession.cpp | 44 +
.../client-cpp/src/main/TableSession.h | 41 +-
.../client-cpp/src/main/TableSessionBuilder.h | 76 +
iotdb-client/client-cpp/src/test/CMakeLists.txt | 9 +
iotdb-client/client-cpp/src/test/cpp/sessionIT.cpp | 2 +-
.../src/test/cpp/sessionRelationalIT.cpp | 117 +
.../client-cpp/src/test/main_Relational.cpp | 35 +-
iotdb-client/client-py/iotdb/Session.py | 12 +-
.../client-py/iotdb/sqlalchemy/IoTDBDialect.py | 15 +-
.../client-py/iotdb/utils/IoTDBRpcDataSet.py | 3 +
iotdb-client/client-py/requirements.txt | 2 +-
.../tests/integration/sqlalchemy/test_dialect.py | 41 +-
.../iotdb/rpc/subscription/config/TopicConfig.java | 79 +-
.../rpc/subscription/config/TopicConstant.java | 8 +
.../session/subscription/SubscriptionSession.java | 35 +-
.../consumer/SubscriptionConsumer.java | 36 +-
.../consumer/SubscriptionPullConsumer.java | 7 +-
.../consumer/SubscriptionPushConsumer.java | 3 +-
.../session/subscription/util/CollectionUtils.java | 14 +-
.../session/subscription/util/IdentifierUtils.java | 10 +-
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 11 +-
iotdb-core/confignode/pom.xml | 6 +
.../heartbeat/DataNodeHeartbeatHandler.java | 3 +
.../client/sync/SyncDataNodeClientPool.java | 2 +-
.../iotdb/confignode/conf/ConfigNodeConfig.java | 24 +-
.../confignode/conf/ConfigNodeDescriptor.java | 621 +-
.../confignode/conf/ConfigNodeStartupCheck.java | 2 +-
.../consensus/request/ConfigPhysicalPlan.java | 4 +
.../read/ainode/GetAINodeConfigurationPlan.java | 15 -
.../request/read/database/CountDatabasePlan.java | 15 +-
.../request/read/database/GetDatabasePlan.java | 7 +-
.../request/read/model/GetModelInfoPlan.java | 16 -
.../request/read/model/ShowModelPlan.java | 20 -
.../database/AdjustMaxRegionGroupNumPlan.java | 20 +-
.../request/write/quota/SetSpaceQuotaPlan.java | 2 +-
.../write/region/CreateRegionGroupsPlan.java | 39 +-
.../write/template/CreateSchemaTemplatePlan.java | 14 +-
.../consensus/response/ttl/ShowTTLResp.java | 1 +
.../statemachine/ConfigRegionStateMachine.java | 4 +-
.../exception/NoAvailableRegionGroupException.java | 2 +-
.../confignode/manager/ClusterQuotaManager.java | 8 +-
.../iotdb/confignode/manager/ConfigManager.java | 173 +-
.../apache/iotdb/confignode/manager/IManager.java | 6 +-
.../iotdb/confignode/manager/ProcedureManager.java | 652 +-
.../iotdb/confignode/manager/TTLManager.java | 1 +
.../iotdb/confignode/manager/UDFManager.java | 18 +-
.../iotdb/confignode/manager/load/LoadManager.java | 4 +-
.../manager/load/balancer/PartitionBalancer.java | 18 +-
.../manager/load/balancer/RegionBalancer.java | 28 +-
.../PartiteGraphPlacementRegionGroupAllocator.java | 7 +-
.../confignode/manager/load/cache/LoadCache.java | 13 +-
.../manager/partition/PartitionManager.java | 151 +-
.../manager/partition/PartitionMetrics.java | 3 +-
.../payload/PipeTransferConfigSnapshotSealReq.java | 2 +-
.../PipeConfigPhysicalPlanPatternParseVisitor.java | 12 +-
.../receiver/protocol/IoTDBConfigNodeReceiver.java | 149 +-
.../manager/schema/ClusterSchemaManager.java | 115 +-
.../iotdb/confignode/persistence/AuthorInfo.java | 2 +-
.../iotdb/confignode/persistence/TTLInfo.java | 1 +
.../persistence/executor/ConfigPlanExecutor.java | 14 +-
.../confignode/persistence/node/NodeInfo.java | 1 +
.../partition/DatabasePartitionTable.java | 5 +-
.../persistence/partition/PartitionInfo.java | 47 +-
.../persistence/schema/ClusterSchemaInfo.java | 331 +-
.../confignode/persistence/schema/ConfigMTree.java | 60 +-
.../persistence/schema/TemplateTable.java | 4 +-
.../confignode/procedure/ProcedureExecutor.java | 133 +-
.../procedure/env/ConfigNodeProcedureEnv.java | 15 +-
.../procedure/env/RegionMaintainHandler.java | 27 +-
.../procedure/impl/node/AbstractNodeProcedure.java | 5 +-
.../impl/pipe/AbstractOperatePipeProcedureV2.java | 9 +-
.../impl/region/AddRegionPeerProcedure.java | 5 +-
.../impl/region/CreateRegionGroupsProcedure.java | 51 +-
.../impl/schema/AlterLogicalViewProcedure.java | 110 +-
.../impl/schema/DeactivateTemplateProcedure.java | 2 +-
.../impl/schema/DeleteDatabaseProcedure.java | 49 +-
.../impl/schema/DeleteTimeSeriesProcedure.java | 2 +-
.../procedure/impl/schema/SchemaUtils.java | 6 +-
.../impl/schema/table/CreateTableProcedure.java | 123 +-
.../impl/schema/table/DeleteDevicesProcedure.java | 33 +-
.../schema/table/DropTableColumnProcedure.java | 23 +-
.../impl/schema/table/DropTableProcedure.java | 43 +-
.../procedure/state/schema/AlterDatabaseState.java | 9 +-
.../procedure/state/schema/CreateTableState.java | 1 -
.../procedure/store/ProcedureFactory.java | 2 +-
.../confignode/procedure/store/ProcedureType.java | 1 +
.../thrift/ConfigNodeRPCServiceProcessor.java | 77 +-
.../confignode/conf/ConfigNodePropertiesTest.java | 50 +
.../request/ConfigPhysicalPlanSerDeTest.java | 49 +-
.../response/ConvertToThriftRespTest.java | 32 +-
.../region/AllocatorScatterWidthManualTest.java | 4 +-
.../GreedyCopySetRegionGroupAllocatorTest.java | 4 +-
.../confignode/persistence/PartitionInfoTest.java | 16 +-
.../confignode/persistence/TriggerInfoTest.java | 1 +
.../iotdb/confignode/persistence/UDFInfoTest.java | 19 +-
.../persistence/schema/ClusterSchemaInfoTest.java | 2 +-
.../persistence/schema/ConfigMTreeTest.java | 15 +-
.../schema/table/AddTableColumnProcedureTest.java | 2 +-
.../schema/table/CreateTableProcedureTest.java | 3 +-
.../schema/table/DeleteDevicesProcedureTest.java | 2 +-
.../schema/table/DropTableColumnProcedureTest.java | 2 +-
.../impl/schema/table/DropTableProcedureTest.java | 2 +-
.../table/RenameTableColumnProcedureTest.java | 2 +-
.../table/SetTablePropertiesProcedureTest.java | 2 +-
.../apache/iotdb/consensus/iot/IoTConsensus.java | 157 +-
.../consensus/iot/IoTConsensusServerImpl.java | 20 +-
.../apache/iotdb/consensus/pipe/PipeConsensus.java | 53 +-
.../consensus/pipe/PipeConsensusServerImpl.java | 60 +-
.../pipe/consensuspipe/ConsensusPipeManager.java | 72 +-
.../service/PipeConsensusRPCServiceProcessor.java | 18 +-
.../apache/iotdb/consensus/ratis/utils/Utils.java | 3 +-
.../apache/iotdb/consensus/iot/StabilityTest.java | 36 -
.../assembly/resources/conf/logback-datanode.xml | 18 +
.../ArithmeticBinaryColumnTransformer.ftl | 1 -
.../templates/ArithmeticColumnTransformerApi.ftl | 23 +-
.../templates/ArithmeticUnaryColumnTransformer.ftl | 23 +-
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 6 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 47 +-
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 2627 ++----
.../org/apache/iotdb/db/conf/IoTDBStartCheck.java | 11 +-
.../db/conf/rest/IoTDBRestServiceDescriptor.java | 107 +-
.../dataregion/DataExecutionVisitor.java | 4 +
.../schemaregion/SchemaExecutionVisitor.java | 102 +-
.../exception/metadata/DatabaseModelException.java | 53 -
.../exception/sql/StatementAnalyzeException.java | 4 +
.../db/pipe/agent/task/PipeDataNodeTaskAgent.java | 61 +-
.../subtask/connector/PipeConnectorSubtask.java | 43 +-
.../client/IoTDBDataNodeAsyncClientManager.java | 45 +-
.../request/PipeTransferSchemaSnapshotSealReq.java | 2 +-
.../connector/protocol/opcua/OpcUaConnector.java | 27 +-
.../connector/protocol/opcua/OpcUaNameSpace.java | 199 +-
.../pipeconsensus/PipeConsensusAsyncConnector.java | 4 +-
.../pipeconsensus/PipeConsensusSyncConnector.java | 56 +-
.../async/IoTDBDataRegionAsyncConnector.java | 41 +-
.../PipeTransferTabletBatchEventHandler.java | 33 +-
.../PipeTransferTabletInsertNodeEventHandler.java | 14 +-
.../PipeTransferTabletInsertionEventHandler.java | 62 +-
.../handler/PipeTransferTabletRawEventHandler.java | 15 +-
.../handler/PipeTransferTrackableHandler.java | 98 +
.../async/handler/PipeTransferTsFileHandler.java | 39 +-
.../consensus/ConsensusPipeDataNodeDispatcher.java | 8 +-
.../deletion/persist/PageCacheDeletionBuffer.java | 4 +-
.../db/pipe/event/common/PipeInsertionEvent.java | 6 +-
.../common/tsfile/PipeTsFileInsertionEvent.java | 17 +-
.../dataregion/IoTDBDataRegionExtractor.java | 6 +-
...oricalDataRegionTsFileAndDeletionExtractor.java | 29 +-
.../realtime/PipeRealtimeDataRegionExtractor.java | 4 +-
.../PipeRealtimeDataRegionHybridExtractor.java | 11 +-
.../realtime/assigner/DisruptorQueue.java | 45 +-
.../realtime/assigner/PipeDataRegionAssigner.java | 67 +-
.../PipeDataNodeRemainingEventAndTimeOperator.java | 2 +-
.../protocol/airgap/IoTDBAirGapReceiver.java | 52 +-
.../protocol/airgap/IoTDBAirGapReceiverAgent.java | 7 +-
.../legacy/IoTDBLegacyPipeReceiverAgent.java | 3 +-
.../protocol/legacy/loader/DeletionLoader.java | 3 +-
.../protocol/legacy/loader/TsFileLoader.java | 3 +-
.../protocol/thrift/IoTDBDataNodeReceiver.java | 104 +-
.../statement/PipeConvertedInsertRowStatement.java | 6 +
.../PipeConvertedInsertTabletStatement.java | 7 +
...eStatementDataTypeConvertExecutionVisitor.java} | 107 +-
...eStatementDataTypeConvertExecutionVisitor.java} | 21 +-
.../resource/memory/InsertNodeMemoryEstimator.java | 3 +
.../db/pipe/resource/memory/PipeMemoryBlock.java | 14 +-
.../iotdb/db/protocol/client/ConfigNodeClient.java | 4 +-
.../iotdb/db/protocol/mqtt/MPPPublishHandler.java | 3 +-
.../rest/v1/impl/GrafanaApiServiceImpl.java | 9 +-
.../protocol/rest/v1/impl/RestApiServiceImpl.java | 9 +-
.../rest/v2/impl/GrafanaApiServiceImpl.java | 9 +-
.../protocol/rest/v2/impl/RestApiServiceImpl.java | 12 +-
.../iotdb/db/protocol/session/IClientSession.java | 2 +-
.../db/protocol/session/RestClientSession.java | 2 +-
.../iotdb/db/protocol/session/SessionManager.java | 4 +-
.../protocol/thrift/impl/ClientRPCServiceImpl.java | 62 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 28 +-
.../thrift/impl/DataNodeRegionManager.java | 18 +-
.../db/queryengine/common/MPPQueryContext.java | 14 +-
.../queryengine/common/header/DatasetHeader.java | 1 +
.../common/header/DatasetHeaderFactory.java | 2 +
.../queryengine/execution/FutureStateChange.java | 23 +-
.../db/queryengine/execution/StateMachine.java | 23 +-
.../timerangeiterator/AggrWindowIterator.java | 26 +-
.../PreAggrWindowWithNaturalMonthIterator.java | 8 +-
.../TimeRangeIteratorFactory.java | 9 +-
.../execution/executor/RegionWriteExecutor.java | 275 +-
.../execution/operator/AggregationUtil.java | 7 +-
.../operator/process/DeviceViewIntoOperator.java | 4 +-
.../operator/process/EnforceSingleRowOperator.java | 122 +
.../execution/operator/process/IntoOperator.java | 4 +-
.../process/SlidingWindowAggregationOperator.java | 7 +-
.../join/SimpleNestedLoopCrossJoinOperator.java | 257 +
.../comparator/AscBinaryTypeJoinKeyComparator.java | 97 +
.../AscBooleanTypeJoinKeyComparator.java | 95 +
.../comparator/AscDoubleTypeJoinKeyComparator.java | 92 +
.../comparator/AscFloatTypeJoinKeyComparator.java | 91 +
.../comparator/AscIntTypeJoinKeyComparator.java | 91 +
.../comparator/AscLongTypeJoinKeyComparator.java | 91 +
.../DescBinaryTypeJoinKeyComparator.java | 97 +
.../DescBooleanTypeJoinKeyComparator.java | 94 +
.../DescDoubleTypeJoinKeyComparator.java | 92 +
.../comparator/DescFloatTypeJoinKeyComparator.java | 92 +
.../comparator/DescIntTypeJoinKeyComparator.java | 91 +
.../comparator/DescLongTypeJoinKeyComparator.java | 91 +
.../join/merge/comparator/JoinKeyComparator.java | 63 +
.../merge/comparator/JoinKeyComparatorFactory.java | 74 +
.../schema/NodeManageMemoryMergeOperator.java | 4 +-
.../operator/schema/NodePathsConvertOperator.java | 4 +-
.../operator/schema/NodePathsCountOperator.java | 4 +-
.../schema/SchemaQueryOrderByHeatOperator.java | 4 +-
.../operator/schema/SchemaQueryScanOperator.java | 2 +-
.../schema/source/DeviceAttributeUpdater.java | 2 +-
.../schema/source/DeviceBlackListConstructor.java | 2 +-
.../schema/source/DevicePredicateFilter.java | 2 +-
.../schema/source/DevicePredicateHandler.java | 2 +-
.../operator/schema/source/DeviceSchemaSource.java | 4 +-
.../operator/schema/source/DeviceUpdater.java | 2 +-
.../operator/schema/source/ISchemaSource.java | 2 +-
.../schema/source/LogicalViewSchemaSource.java | 4 +-
.../operator/schema/source/NodeSchemaSource.java | 4 +-
.../schema/source/PathsUsingTemplateSource.java | 4 +-
.../schema/source/SchemaSourceFactory.java | 2 +-
.../schema/source/TableDeviceFetchSource.java | 2 +-
.../schema/source/TableDeviceQuerySource.java | 2 +-
.../schema/source/TimeSeriesSchemaSource.java | 4 +-
.../source/ActiveDeviceRegionScanOperator.java | 4 +-
.../source/ActiveTimeSeriesRegionScanOperator.java | 4 +-
.../execution/operator/source/SeriesScanUtil.java | 30 +-
.../operator/source/ShowQueriesOperator.java | 23 +-
.../relational/AbstractMergeSortJoinOperator.java | 593 ++
.../InformationSchemaContentSupplierFactory.java | 94 +
.../InformationSchemaTableScanOperator.java | 105 +
.../relational/MergeSortFullOuterJoinOperator.java | 256 +
.../relational/MergeSortInnerJoinOperator.java | 168 +
.../TableAggregationTableScanOperator.java | 159 +-
.../relational/TableFullOuterJoinOperator.java | 343 -
.../source/relational/TableInnerJoinOperator.java | 467 -
.../relational/aggregation/AccumulatorFactory.java | 42 +-
.../relational/aggregation/AvgAccumulator.java | 73 +
.../relational/aggregation/CountAccumulator.java | 20 +
.../relational/aggregation/SumAccumulator.java | 69 +
.../relational/aggregation/TableAccumulator.java | 32 +-
.../relational/aggregation/TableAggregator.java | 24 +-
.../aggregation/TableModeAccumulator.java | 102 +
.../aggregation/TableVarianceAccumulator.java | 86 +
.../UserDefinedAggregateFunctionAccumulator.java | 123 +
.../aggregation/grouped/GroupedAccumulator.java | 24 +-
.../aggregation/grouped/GroupedAggregator.java | 24 +-
.../GroupedUserDefinedAggregateAccumulator.java | 134 +
.../aggregation/grouped/UpdateMemory.java | 24 +-
.../aggregation/grouped/array/BigArrays.java | 24 +-
.../aggregation/grouped/array/BinaryBigArray.java | 24 +-
.../aggregation/grouped/array/BooleanBigArray.java | 24 +-
.../aggregation/grouped/array/ByteBigArray.java | 24 +-
.../aggregation/grouped/array/DoubleBigArray.java | 24 +-
.../aggregation/grouped/array/FloatBigArray.java | 24 +-
.../aggregation/grouped/array/IntBigArray.java | 24 +-
.../aggregation/grouped/array/IntBigArrays.java | 24 +-
.../aggregation/grouped/array/IntComparator.java | 24 +-
.../aggregation/grouped/array/LongBigArray.java | 24 +-
.../aggregation/grouped/array/MapBigArray.java | 24 +-
.../aggregation/grouped/array/ObjectBigArray.java | 24 +-
.../aggregation/grouped/array/ShortBigArray.java | 24 +-
.../grouped/builder/HashAggregationBuilder.java | 24 +-
.../builder/InMemoryHashAggregationBuilder.java | 24 +-
.../grouped/hash/CombineHashFunction.java | 24 +-
.../aggregation/grouped/hash/FlatGroupByHash.java | 24 +-
.../aggregation/grouped/hash/FlatHash.java | 24 +-
.../aggregation/grouped/hash/FlatHashStrategy.java | 24 +-
.../aggregation/grouped/hash/GroupByHash.java | 24 +-
.../grouped/hash/VariableWidthData.java | 24 +-
.../relational/ColumnTransformerBuilder.java | 43 +-
.../iotdb/db/queryengine/plan/Coordinator.java | 81 +-
.../db/queryengine/plan/analyze/Analysis.java | 27 +-
.../db/queryengine/plan/analyze/AnalyzeUtils.java | 82 +-
.../queryengine/plan/analyze/AnalyzeVisitor.java | 44 +-
.../plan/analyze/ClusterPartitionFetcher.java | 74 +-
.../plan/analyze/ExpressionAnalyzer.java | 2 +-
.../db/queryengine/plan/analyze/IAnalysis.java | 2 +-
.../plan/analyze/IPartitionFetcher.java | 16 +-
.../plan/analyze/TemplatedAggregationAnalyze.java | 12 +-
.../queryengine/plan/analyze/TemplatedAnalyze.java | 7 +-
.../analyze/cache/partition/PartitionCache.java | 103 +-
.../analyze/cache/schema/DataNodeTTLCache.java | 1 +
.../analyze/load/LoadTsFileTableSchemaCache.java | 2 +-
.../load/LoadTsFileToTableModelAnalyzer.java | 5 +-
.../load/TreeSchemaAutoCreatorAndVerifier.java | 17 +-
.../analyze/schema/AutoCreateSchemaExecutor.java | 3 +-
.../analyze/schema/ClusterSchemaFetchExecutor.java | 3 +-
.../plan/analyze/schema/SchemaValidator.java | 6 +-
.../plan/execution/ExecutionResult.java | 1 +
.../plan/execution/IQueryExecution.java | 5 +
.../queryengine/plan/execution/QueryExecution.java | 19 +-
.../plan/execution/config/ConfigExecution.java | 64 +-
.../execution/config/TableConfigTaskVisitor.java | 203 +-
.../execution/config/TreeConfigTaskVisitor.java | 64 +-
.../config/executor/ClusterConfigTaskExecutor.java | 638 +-
.../config/executor/IConfigTaskExecutor.java | 7 +-
.../config/metadata/CountDatabaseTask.java | 2 +-
.../config/metadata/CountTimeSlotListTask.java | 4 +-
.../execution/config/metadata/GetRegionIdTask.java | 4 +-
.../config/metadata/GetSeriesSlotListTask.java | 4 +-
.../config/metadata/GetTimeSlotListTask.java | 4 +-
.../execution/config/metadata/ShowAINodesTask.java | 4 +-
.../config/metadata/ShowClusterDetailsTask.java | 10 +-
.../config/metadata/ShowClusterIdTask.java | 4 +-
.../execution/config/metadata/ShowClusterTask.java | 10 +-
.../config/metadata/ShowConfigNodesTask.java | 4 +-
.../config/metadata/ShowContinuousQueriesTask.java | 4 +-
.../config/metadata/ShowDataNodesTask.java | 4 +-
.../config/metadata/ShowFunctionsTask.java | 99 +-
.../config/metadata/ShowPipePluginsTask.java | 4 +-
.../execution/config/metadata/ShowRegionTask.java | 22 +-
.../execution/config/metadata/ShowTTLTask.java | 4 +-
.../config/metadata/ShowTriggersTask.java | 4 +-
.../config/metadata/ShowVariablesTask.java | 4 +-
.../config/metadata/model/ShowModelsTask.java | 4 +-
.../relational/AbstractAlterOrDropTableTask.java | 4 +-
...CreateDBTask.java => AbstractDatabaseTask.java} | 22 +-
.../{CreateTableTask.java => AlterDBTask.java} | 22 +-
.../config/metadata/relational/CreateDBTask.java | 25 +-
.../metadata/relational/CreateTableTask.java | 4 +-
.../metadata/relational/DeleteDeviceTask.java | 2 +-
.../relational/DescribeTableDetailsTask.java | 4 +-
.../metadata/relational/DescribeTableTask.java | 4 +-
.../metadata/relational/ShowAINodesTask.java | 4 +-
.../metadata/relational/ShowConfigNodesTask.java | 4 +-
.../config/metadata/relational/ShowDBTask.java | 47 +-
.../metadata/relational/ShowDataNodesTask.java | 4 +-
.../metadata/relational/ShowTablesDetailsTask.java | 4 +-
.../config/metadata/relational/ShowTablesTask.java | 4 +-
.../template/ShowNodesInSchemaTemplateTask.java | 4 +-
.../metadata/template/ShowPathSetTemplateTask.java | 4 +-
.../metadata/template/ShowSchemaTemplateTask.java | 4 +-
.../config/session/ShowCurrentDatabaseTask.java | 4 +-
.../config/session/ShowCurrentSqlDialectTask.java | 4 +-
.../config/session/ShowCurrentUserTask.java | 4 +-
.../plan/execution/config/sys/FlushTask.java | 18 +-
.../plan/execution/config/sys/KillQueryTask.java | 5 +
.../execution/config/sys/TestConnectionTask.java | 4 +-
.../execution/config/sys/pipe/ShowPipeTask.java | 4 +-
.../config/sys/quota/ShowSpaceQuotaTask.java | 4 +-
.../config/sys/quota/ShowThrottleQuotaTask.java | 4 +-
.../config/sys/subscription/CreateTopicTask.java | 12 +-
.../config/sys/subscription/DropTopicTask.java | 11 +-
...riptionTask.java => ShowSubscriptionsTask.java} | 21 +-
.../config/sys/subscription/ShowTopicsTask.java | 16 +-
.../memory/StatementMemorySourceVisitor.java | 4 +-
.../TableModelStatementMemorySourceVisitor.java | 5 +-
.../BindTypeForTimeSeriesOperandVisitor.java | 2 +-
.../plan/optimization/AggregationPushDown.java | 2 +-
.../plan/optimization/LimitOffsetPushDown.java | 20 +-
.../db/queryengine/plan/parser/ASTVisitor.java | 18 +-
.../db/queryengine/plan/planner/IPlanner.java | 4 +-
.../plan/planner/LocalExecutionPlanner.java | 10 +
.../plan/planner/LogicalPlanBuilder.java | 6 +-
.../plan/planner/LogicalPlanVisitor.java | 4 +-
.../queryengine/plan/planner/LogicalPlanner.java | 1 +
.../plan/planner/OperatorTreeGenerator.java | 31 +-
.../plan/planner/TableOperatorGenerator.java | 424 +-
.../plan/planner/TemplatedLogicalPlan.java | 4 +-
.../plan/planner/TemplatedLogicalPlanBuilder.java | 2 +-
.../queryengine/plan/planner/TreeModelPlanner.java | 5 +-
.../planner/distribution/DistributionPlanner.java | 1 +
.../distribution/WriteFragmentParallelPlanner.java | 2 +-
.../plan/planner/plan/DistributedQueryPlan.java | 1 +
.../plan/planner/plan/LogicalQueryPlan.java | 1 +
.../plan/planner/plan/PlanFragment.java | 15 +
.../plan/planner/plan/node/ExplainAnalyzeNode.java | 2 +-
.../plan/planner/plan/node/PlanGraphPrinter.java | 36 +-
.../plan/planner/plan/node/PlanNodeId.java | 1 +
.../plan/planner/plan/node/PlanNodeType.java | 13 +-
.../plan/planner/plan/node/PlanVisitor.java | 29 +-
.../plan/node/metadata/read/DevicesCountNode.java | 4 +-
.../node/metadata/read/DevicesSchemaScanNode.java | 4 +-
.../metadata/read/LevelTimeSeriesCountNode.java | 4 +-
.../metadata/read/LogicalViewSchemaScanNode.java | 4 +-
.../metadata/read/NodePathsSchemaScanNode.java | 4 +-
.../metadata/read/PathsUsingTemplateScanNode.java | 4 +-
.../metadata/read/SchemaQueryOrderByHeatNode.java | 2 +-
.../node/metadata/read/TableDeviceSourceNode.java | 2 +-
.../node/metadata/read/TimeSeriesCountNode.java | 4 +-
.../metadata/read/TimeSeriesSchemaScanNode.java | 4 +-
.../metadata/write/view/AlterLogicalViewNode.java | 47 +-
.../node/process/ActiveRegionScanMergeNode.java | 4 +-
.../planner/plan/node/process/AggregationNode.java | 2 +-
.../plan/node/process/DeviceViewIntoNode.java | 4 +-
.../planner/plan/node/process/DeviceViewNode.java | 1 +
.../plan/planner/plan/node/process/FillNode.java | 1 +
.../plan/planner/plan/node/process/FilterNode.java | 1 +
.../plan/node/process/GroupByLevelNode.java | 1 +
.../plan/node/process/HorizontallyConcatNode.java | 1 +
.../plan/planner/plan/node/process/IntoNode.java | 4 +-
.../plan/planner/plan/node/process/LimitNode.java | 1 +
.../planner/plan/node/process/ProcessNode.java | 1 +
.../plan/node/process/RawDataAggregationNode.java | 2 +-
.../node/process/SlidingWindowAggregationNode.java | 2 +-
.../plan/planner/plan/node/process/SortNode.java | 1 +
.../node/process/join/FullOuterTimeJoinNode.java | 1 +
.../plan/node/source/DeviceRegionScanNode.java | 4 +-
.../plan/node/source/LastQueryScanNode.java | 2 +-
.../node/source/SeriesAggregationSourceNode.java | 2 +-
.../planner/plan/node/source/ShowQueriesNode.java | 2 +-
.../plan/node/source/TimeseriesRegionScanNode.java | 4 +-
.../plan/planner/plan/node/write/InsertNode.java | 10 +
.../plan/node/write/RelationalDeleteDataNode.java | 20 +-
.../node/write/RelationalInsertTabletNode.java | 14 +-
.../plan/relational/analyzer/Analysis.java | 101 +-
.../plan/relational/analyzer/Analyzer.java | 35 +-
.../relational/analyzer/ExpressionAnalyzer.java | 21 +
.../relational/analyzer/ExpressionTreeUtils.java | 9 +-
.../relational/analyzer/StatementAnalyzer.java | 134 +-
.../schema/CheckSchemaPredicateVisitor.java | 12 +-
.../querystats/PlanOptimizersStatsCollector.java | 24 +-
.../querystats/QueryPlanOptimizerStatistics.java | 24 +-
.../querystats/QueryPlanOptimizerStats.java | 24 +-
.../function/InterpretedFunctionInvoker.java | 2 +-
.../function/arithmetic/AdditionResolver.java | 23 +-
.../function/arithmetic/DivisionResolver.java | 23 +-
.../function/arithmetic/ModulusResolver.java | 23 +-
.../arithmetic/MultiplicationResolver.java | 23 +-
.../function/arithmetic/SubtractionResolver.java | 23 +-
.../plan/relational/metadata/Metadata.java | 6 +-
.../relational/metadata/TableMetadataImpl.java | 130 +-
.../plan/relational/metadata/TableSchema.java | 27 +-
.../metadata/fetcher/TableDeviceSchemaFetcher.java | 8 +-
.../fetcher/TableDeviceSchemaValidator.java | 3 +-
.../fetcher/TableHeaderSchemaValidator.java | 44 +-
.../fetcher/cache/TableDeviceSchemaCache.java | 63 +-
.../plan/relational/planner/Assignments.java | 24 +-
.../relational/planner/ExpressionExtractor.java | 58 +-
.../planner/ExpressionSymbolInliner.java | 24 +-
.../plan/relational/planner/NodeAndMappings.java | 24 +-
.../plan/relational/planner/OrderingScheme.java | 23 +-
.../relational/planner/OrderingTranslator.java | 24 +-
.../plan/relational/planner/PlanBuilder.java | 24 +-
.../plan/relational/planner/PlanNodeSearcher.java | 24 +-
.../plan/relational/planner/QueryPlanner.java | 65 +-
.../plan/relational/planner/RelationPlan.java | 24 +-
.../plan/relational/planner/RelationPlanner.java | 57 +-
.../plan/relational/planner/SortOrder.java | 24 +-
.../plan/relational/planner/SubqueryPlanner.java | 372 +-
.../plan/relational/planner/SymbolAllocator.java | 24 +-
.../plan/relational/planner/SymbolsExtractor.java | 24 +-
.../relational/planner/TableLogicalPlanner.java | 27 +-
.../plan/relational/planner/TableModelPlanner.java | 31 +-
.../plan/relational/planner/TranslationMap.java | 24 +-
.../planner/distribute/SubPlanGenerator.java | 23 +-
.../distribute/TableDistributedPlanGenerator.java | 248 +-
.../distribute/TableDistributedPlanner.java | 39 +-
.../distribute/TableModelQueryFragmentPlanner.java | 26 +-
.../TableModelTypeProviderExtractor.java | 23 +-
.../planner/ir/DefaultTraversalVisitor.java | 23 +-
.../planner/ir/DeterminismEvaluator.java | 23 +-
.../relational/planner/ir/ExpressionRewriter.java | 12 +
.../planner/ir/ExpressionTreeRewriter.java | 36 +
.../plan/relational/planner/ir/IrUtils.java | 23 +-
.../planner/ir/ReplaceSymbolInExpression.java | 24 +-
.../planner/iterative/GroupReference.java | 24 +-
.../planner/iterative/IterativeOptimizer.java | 24 +-
.../plan/relational/planner/iterative/Lookup.java | 24 +-
.../plan/relational/planner/iterative/Memo.java | 24 +-
.../plan/relational/planner/iterative/Plans.java | 24 +-
.../relational/planner/iterative/RuleIndex.java | 23 +-
.../relational/planner/iterative/RuleStats.java | 24 +-
.../planner/iterative/RuleStatsRecorder.java | 24 +-
.../rule/EliminateLimitProjectWithTableScan.java | 33 +-
.../rule/EliminateLimitWithTableScan.java | 33 +-
.../planner/iterative/rule/InlineProjections.java | 24 +-
.../planner/iterative/rule/MergeFilters.java | 23 +-
.../iterative/rule/MergeLimitWithMergeSort.java | 24 +-
.../planner/iterative/rule/MergeLimits.java | 24 +-
.../iterative/rule/ProjectOffPushDownRule.java | 24 +-
.../iterative/rule/PruneAggregationColumns.java | 24 +-
.../rule/PruneAggregationSourceColumns.java | 24 +-
.../iterative/rule/PruneCorrelatedJoinColumns.java | 122 +
.../rule/PruneCorrelatedJoinCorrelation.java | 66 +
.../iterative/rule/PruneDistinctAggregation.java | 139 +
.../rule/PruneEnforceSingleRowColumns.java | 42 +
.../planner/iterative/rule/PruneFilterColumns.java | 24 +-
.../planner/iterative/rule/PruneLimitColumns.java | 24 +-
.../planner/iterative/rule/PruneOffsetColumns.java | 24 +-
.../iterative/rule/PruneOutputSourceColumns.java | 24 +-
.../iterative/rule/PruneProjectColumns.java | 24 +-
.../planner/iterative/rule/PruneSortColumns.java | 24 +-
.../iterative/rule/PruneTableScanColumns.java | 85 +-
.../iterative/rule/PushLimitThroughOffset.java | 23 +-
.../rule/RemoveRedundantEnforceSingleRowNode.java | 45 +
.../rule/RemoveRedundantIdentityProjections.java | 24 +-
.../rule/TransformUncorrelatedSubqueryToJoin.java | 139 +
.../relational/planner/node/AggregationNode.java | 24 +-
.../planner/node/AggregationTableScanNode.java | 6 +-
.../plan/relational/planner/node/ApplyNode.java | 246 +
.../relational/planner/node/ChildReplacer.java | 24 +-
.../planner/node/CorrelatedJoinNode.java | 170 +
...TableScanNode.java => DeviceTableScanNode.java} | 245 +-
.../planner/node/EnforceSingleRowNode.java} | 63 +-
.../planner/node/ExplainAnalyzeNode.java | 23 +-
.../node/InformationSchemaTableScanNode.java | 212 +
.../plan/relational/planner/node/JoinNode.java | 1 +
.../plan/relational/planner/node/LimitNode.java | 23 +-
.../plan/relational/planner/node/OffsetNode.java | 23 +-
.../plan/relational/planner/node/OutputNode.java | 23 +-
.../plan/relational/planner/node/Patterns.java | 166 +-
.../plan/relational/planner/node/ProjectNode.java | 23 +-
.../plan/relational/planner/node/SortNode.java | 23 +-
.../relational/planner/node/TableScanNode.java | 321 +-
.../node/schema/AbstractTableDeviceQueryNode.java | 2 +-
.../node/schema/CreateOrUpdateTableDeviceNode.java | 5 +-
.../schema/TableDeviceAttributeUpdateNode.java | 11 +-
.../planner/node/schema/TableDeviceFetchNode.java | 2 +-
.../node/schema/TableDeviceQueryCountNode.java | 2 +-
.../node/schema/TableDeviceQueryScanNode.java | 2 +-
.../optimizations/AdaptivePlanOptimizer.java | 23 +-
.../planner/optimizations/Cardinality.java | 56 +
.../CheckSubqueryNodesAreRewritten.java | 65 +
.../DataNodeLocationSupplierFactory.java | 90 +
.../planner/optimizations/JoinUtils.java | 35 +-
.../optimizations/LogicalOptimizeFactory.java | 22 +-
.../planner/optimizations/PlanOptimizer.java | 24 +-
.../PushAggregationIntoTableScan.java | 45 +-
.../PushLimitOffsetIntoTableScan.java | 65 +-
.../optimizations/PushPredicateIntoTableScan.java | 206 +-
.../optimizations/QueryCardinalityUtil.java | 236 +
.../planner/optimizations/SortElimination.java | 8 +-
.../planner/optimizations/SymbolMapper.java | 54 +-
.../TransformAggregationToStreamable.java | 27 +-
.../optimizations/TransformSortToStreamSort.java | 24 +-
.../optimizations/UnaliasSymbolReferences.java | 192 +-
.../relational/planner/optimizations/Util.java | 4 +-
.../plan/relational/security/AccessControl.java | 113 +-
.../relational/security/AccessControlImpl.java | 91 +
.../relational/security/AllowAllAccessControl.java | 64 +-
.../relational/security/ITableAuthChecker.java | 76 +
...AccessControl.java => TableModelPrivilege.java} | 15 +-
.../sql/ast/AbstractQueryDeviceWithCache.java | 2 +-
.../relational/sql/ast/AbstractTraverseDevice.java | 3 +-
.../plan/relational/sql/ast/AlterDB.java | 56 +
.../plan/relational/sql/ast/AstVisitor.java | 28 +
.../plan/relational/sql/ast/CountDevice.java | 2 +-
.../plan/relational/sql/ast/CreateDB.java | 77 +-
.../plan/relational/sql/ast/CreateTopic.java | 87 +
.../ast/{CreateDB.java => DatabaseStatement.java} | 62 +-
.../sql/ast/DefaultTraversalVisitor.java | 9 +
.../plan/relational/sql/ast/DeleteDevice.java | 2 +-
.../plan/relational/sql/ast/DropTopic.java | 75 +
.../queryengine/plan/relational/sql/ast/Flush.java | 4 +-
.../plan/relational/sql/ast/InsertRows.java | 3 +-
.../plan/relational/sql/ast/KillQuery.java | 81 +
.../plan/relational/sql/ast/ShowDevice.java | 2 +-
.../plan/relational/sql/ast/ShowStatement.java | 116 +
.../plan/relational/sql/ast/ShowSubscriptions.java | 66 +
.../plan/relational/sql/ast/ShowTopics.java | 66 +
.../plan/relational/sql/ast/SingleColumn.java | 4 +
.../relational/sql/ast/SubscriptionStatement.java} | 17 +-
.../relational/sql/ast/WrappedInsertStatement.java | 25 +-
.../plan/relational/sql/parser/AstBuilder.java | 309 +-
.../plan/relational/sql/parser/SqlParser.java | 28 +-
.../plan/relational/sql/rewrite/ShowRewrite.java | 108 +
.../relational/sql/rewrite/StatementRewrite.java | 73 +
.../sql/rewrite/StatementRewriteFactory.java | 17 +-
.../relational/sql/util/ExpressionFormatter.java | 2 +-
.../plan/relational/sql/util/SqlFormatter.java | 92 +-
.../plan/relational/utils/DisjointSet.java | 1 +
.../plan/relational/utils/MoreLists.java | 24 +-
.../db/queryengine/plan/scheduler/IScheduler.java | 1 +
.../db/queryengine/plan/statement/Statement.java | 8 +-
.../queryengine/plan/statement/StatementType.java | 2 +-
.../plan/statement/crud/InsertBaseStatement.java | 6 +-
.../crud/InsertMultiTabletsStatement.java | 2 +-
.../plan/statement/crud/InsertRowStatement.java | 16 +-
.../crud/InsertRowsOfOneDeviceStatement.java | 2 +-
.../plan/statement/crud/InsertRowsStatement.java | 2 +-
.../plan/statement/crud/InsertTabletStatement.java | 17 +-
.../plan/statement/crud/LoadTsFileStatement.java | 2 +-
.../statement/metadata/ShowDatabaseStatement.java | 16 +-
.../metadata/subscription/DropTopicStatement.java | 1 +
.../plan/statement/pipe/PipeEnrichedStatement.java | 3 +-
.../plan/statement/sys/FlushStatement.java | 33 +-
.../AbstractCaseWhenThenColumnTransformer.java | 23 +-
.../column/TableCaseWhenThenColumnTransformer.java | 23 +-
.../column/TreeCaseWhenThenColumnTransformer.java | 23 +-
.../udf/UserDefineScalarFunctionTransformer.java | 108 +
.../AbstractCastFunctionColumnTransformer.java | 23 +-
.../scalar/DateBinFunctionColumnTransformer.java | 23 +-
.../unary/scalar/FormatColumnTransformer.java | 119 +
.../scalar/TryCastFunctionColumnTransformer.java | 23 +-
.../apache/iotdb/db/schemaengine/SchemaEngine.java | 60 +-
.../schemaregion/ISchemaRegionParams.java | 3 +-
.../schemaregion/SchemaRegionParams.java | 11 +-
.../GeneralRegionAttributeSecurityService.java | 6 +-
.../schemaregion/impl/SchemaRegionMemoryImpl.java | 47 +-
.../schemaregion/impl/SchemaRegionPBTreeImpl.java | 6 +-
.../mtree/impl/mem/MTreeBelowSGMemoryImpl.java | 2 +-
.../read/resp/info/impl/ShowSchemaResult.java | 1 +
.../read/resp/info/impl/ShowTimeSeriesResult.java | 1 +
.../schemaengine/schemaregion/utils/MetaUtils.java | 9 +-
.../schemaregion/utils/ResourceByPathUtils.java | 1 +
.../db/schemaengine/table/DataNodeTableCache.java | 55 +-
.../schemaengine/table/InformationSchemaUtils.java | 186 +
.../iotdb/db/service/RegionMigrateService.java | 49 +-
.../iotdb/db/service/metrics/FileMetrics.java | 5 +
.../iotdb/db/service/metrics/WritingMetrics.java | 32 +
.../db/service/metrics/file/TsFileMetrics.java | 51 +
.../iotdb/db/storageengine/StorageEngine.java | 33 +-
.../storageengine/buffer/CacheHitRatioMonitor.java | 4 +-
.../db/storageengine/dataregion/DataRegion.java | 45 +-
.../dataregion/DataRegionMetrics.java | 14 +-
.../impl/ReadPointCompactionPerformer.java | 6 +-
.../RepairUnsortedFileCompactionPerformer.java | 13 +
.../compaction/repair/RepairDataFileScanUtil.java | 2 +-
.../compaction/schedule/CompactionTaskManager.java | 11 +-
.../DefaultCompactionTaskComparatorImpl.java | 16 +-
.../compaction/selector/ICompactionSelector.java | 1 +
.../compaction/selector/ICrossSpaceSelector.java | 1 +
.../selector/IInnerSeqSpaceSelector.java | 1 +
.../impl/NewSizeTieredCompactionSelector.java | 2 +-
.../dataregion/memtable/AbstractMemTable.java | 5 +-
.../memtable/AlignedWritableMemChunk.java | 6 +-
.../memtable/AlignedWritableMemChunkGroup.java | 5 +
.../memtable/IWritableMemChunkGroup.java | 2 +
.../memtable/TsFileProcessorInfoMetrics.java | 8 +-
.../dataregion/memtable/WritableMemChunk.java | 1 +
.../dataregion/memtable/WritableMemChunkGroup.java | 5 +
.../dataregion/modification/ModEntry.java | 2 +-
.../dataregion/read/QueryDataSource.java | 14 +-
.../filescan/model/AlignedDeviceChunkMetaData.java | 1 +
.../dataregion/tsfile/TsFileResource.java | 12 +-
.../wal/allocation/FirstCreateStrategy.java | 1 +
.../dataregion/wal/buffer/WALBuffer.java | 6 +-
.../dataregion/wal/buffer/WALEntry.java | 2 +
.../dataregion/wal/buffer/WALInfoEntry.java | 34 +
.../dataregion/wal/buffer/WALSignalEntry.java | 5 +
.../storageengine/dataregion/wal/node/WALNode.java | 12 +-
.../wal/utils/MemoryControlledWALEntryQueue.java | 81 +
.../dataregion/wal/utils/WALEntryHandler.java | 5 +-
.../db/storageengine/load/LoadTsFileManager.java | 61 +-
.../load/active/ActiveLoadTsFileLoader.java | 3 +-
.../memory/LoadTsFileAnalyzeSchemaMemoryBlock.java | 4 +-
.../memory/LoadTsFileDataCacheMemoryBlock.java | 41 +-
.../load/memory/LoadTsFileMemoryManager.java | 15 +
.../rescon/memory/MemTableManager.java | 1 +
.../db/storageengine/rescon/memory/SystemInfo.java | 31 +-
.../rescon/memory/TsFileResourceManager.java | 18 +
.../db/subscription/broker/SubscriptionBroker.java | 104 +-
.../broker/SubscriptionPrefetchingQueue.java | 7 +-
.../db/subscription/broker/SubscriptionStates.java | 30 +-
.../event/SubscriptionCommitContextSupplier.java} | 15 +-
.../db/subscription/event/SubscriptionEvent.java | 14 +-
.../batch/SubscriptionPipeTabletEventBatch.java | 57 +-
.../SubscriptionEventExtendableResponse.java | 6 -
.../event/response/SubscriptionEventResponse.java | 7 +
.../response/SubscriptionEventTabletResponse.java | 60 +-
.../response/SubscriptionEventTsFileResponse.java | 2 +-
.../receiver/SubscriptionReceiverV1.java | 2 +-
.../task/subtask/SubscriptionConnectorSubtask.java | 9 -
.../db/tools/schema/SRStatementGenerator.java | 3 +-
.../org/apache/iotdb/db/utils/CommonUtils.java | 99 +-
.../org/apache/iotdb/db/utils/DateTimeUtils.java | 14 +-
.../apache/iotdb/db/utils/ErrorHandlingUtils.java | 2 +-
.../java/org/apache/iotdb/db/utils/MmapUtil.java | 1 +
.../iotdb/db/utils/annotations/TableModel.java | 33 -
.../SlidingTimeColumnGeneratorParameter.java | 2 +-
.../db/utils/datastructure/AlignedTVList.java | 26 +-
.../iotdb/db/{utils => conf}/PropertiesTest.java | 35 +-
.../apache/iotdb/db/metadata/MetaUtilsTest.java | 9 +-
.../schemaRegion/AbstractSchemaRegionTest.java | 4 +-
.../SchemaRegionSimpleRecoverTest.java | 7 +-
.../schemaRegion/SchemaRegionTableDeviceTest.java | 23 +-
.../schemaRegion/SchemaRegionTestUtil.java | 3 +-
.../schemaRegion/SchemaStatisticsTest.java | 2 +-
.../connector/PipeDataNodeThriftRequestTest.java | 22 +-
.../queryengine/execution/ConfigExecutionTest.java | 2 +-
.../aggregation/TimeRangeIteratorTest.java | 53 +-
.../operator/AggregationOperatorTest.java | 7 +-
.../AlignedSeriesAggregationScanOperatorTest.java | 3 +-
.../operator/HorizontallyConcatOperatorTest.java | 5 +-
.../execution/operator/LastQueryOperatorTest.java | 9 +-
.../operator/LastQueryTreeSortOperatorTest.java | 9 +-
.../operator/MergeTreeSortOperatorTest.java | 11 +
.../execution/operator/OperatorMemoryTest.java | 16 +-
.../operator/RawDataAggregationOperatorTest.java | 3 +-
.../SeriesAggregationScanOperatorTest.java | 3 +-
.../SlidingWindowAggregationOperatorTest.java | 8 +-
.../operator/UpdateLastCacheOperatorTest.java | 3 +-
.../schema/SchemaQueryScanOperatorTest.java | 4 +-
.../db/queryengine/plan/analyze/AnalyzeTest.java | 4 +-
.../plan/analyze/FakePartitionFetcherImpl.java | 5 -
.../plan/analyze/cache/PartitionCacheTest.java | 8 +-
.../plan/optimization/LimitOffsetPushDownTest.java | 11 +-
.../plan/optimization/TestPlanBuilder.java | 2 +-
.../plan/planner/distribution/Util.java | 5 -
.../plan/planner/distribution/Util2.java | 5 -
.../logical/DataQueryLogicalPlannerTest.java | 2 +-
.../plan/relational/analyzer/AnalyzerTest.java | 435 +-
.../plan/relational/analyzer/AuthTest.java | 260 +
.../plan/relational/analyzer/DistinctTest.java | 119 +
.../plan/relational/analyzer/JoinTest.java | 376 +-
.../analyzer/LimitOffsetPushDownTest.java | 212 +-
.../analyzer/MockTableModelDataPartition.java | 17 +-
.../plan/relational/analyzer/ShowQueriesTest.java | 121 +
.../plan/relational/analyzer/SortTest.java | 215 +-
.../plan/relational/analyzer/SubQueryTest.java | 143 +-
.../plan/relational/analyzer/TSBSMetadata.java | 34 +-
.../plan/relational/analyzer/TSBSTest.java | 2 +-
.../plan/relational/analyzer/TestMatadata.java | 110 +-
.../plan/relational/analyzer/TestPlanBuilder.java | 7 +-
.../plan/relational/analyzer/TestUtils.java | 33 +-
.../fetcher/cache/TableDeviceSchemaCacheTest.java | 2 +-
.../plan/relational/planner/PlanTester.java | 36 +-
.../plan/relational/planner/SubqueryTest.java | 227 +
...java => AggregationDeviceTableScanMatcher.java} | 28 +-
.../planner/assertions/AggregationFunction.java | 24 +-
.../assertions/AggregationFunctionMatcher.java | 24 +-
.../assertions/AggregationFunctionProvider.java | 24 +-
.../planner/assertions/AggregationMatcher.java | 24 +-
.../planner/assertions/AggregationStepMatcher.java | 24 +-
.../planner/assertions/AliasMatcher.java | 24 +-
.../planner/assertions/AliasPresent.java | 24 +-
.../assertions/BaseStrictSymbolsMatcher.java | 24 +-
.../planner/assertions/ColumnReference.java | 34 +-
.../planner/assertions/DeviceTableScanMatcher.java | 56 +
.../assertions/EquiJoinClauseProvider.java} | 33 +-
.../planner/assertions/ExchangeNodeMatcher.java | 24 +-
.../planner/assertions/ExpectedValueProvider.java | 24 +-
.../planner/assertions/ExpressionMatcher.java | 24 +-
.../planner/assertions/ExpressionVerifier.java | 24 +-
.../planner/assertions/FilterMatcher.java | 24 +-
.../assertions/IdentityProjectionMatcher.java | 24 +-
.../InformationSchemaTableScanMatcher.java | 88 +
.../relational/planner/assertions/JoinMatcher.java | 191 +
.../planner/assertions/LimitMatcher.java | 24 +-
.../relational/planner/assertions/MatchResult.java | 24 +-
.../relational/planner/assertions/Matcher.java | 24 +-
.../planner/assertions/NotPlanNodeMatcher.java | 24 +-
.../planner/assertions/OffsetMatcher.java | 24 +-
.../planner/assertions/OutputMatcher.java | 24 +-
.../relational/planner/assertions/PlanAssert.java | 24 +-
.../planner/assertions/PlanMatchPattern.java | 91 +-
.../planner/assertions/PlanMatchingState.java | 24 +-
.../planner/assertions/PlanMatchingVisitor.java | 24 +-
.../planner/assertions/PlanNodeMatcher.java | 24 +-
.../planner/assertions/PlanTestSymbol.java | 24 +-
.../planner/assertions/PredicateMatcher.java | 24 +-
.../planner/assertions/RvalueMatcher.java | 24 +-
.../relational/planner/assertions/SortMatcher.java | 24 +-
.../assertions/StrictAssignedSymbolsMatcher.java | 24 +-
.../planner/assertions/StrictSymbolsMatcher.java | 24 +-
.../relational/planner/assertions/SymbolAlias.java | 28 +-
.../planner/assertions/SymbolAliases.java | 26 +-
.../planner/assertions/TableScanMatcher.java | 43 +-
.../plan/relational/planner/assertions/Util.java | 24 +-
.../plan/statement/InsertStatementTest.java | 5 +-
.../column/unary/scalar/DateBinFunctionTest.java | 23 +-
.../DataNodeInternalRPCServiceImplTest.java | 3 +-
.../buffer/CacheHitRatioMonitorTest.java | 4 +-
.../compaction/AbstractCompactionTest.java | 1 +
.../compaction/CompactionTaskComparatorTest.java | 3 +-
.../compaction/CompactionTaskManagerTest.java | 1 +
.../ReadPointCompactionPerformerTest.java | 1 +
.../inner/InnerCompactionSchedulerTest.java | 1 +
.../inner/InnerSpaceCompactionExceptionTest.java | 1 +
.../NewSizeTieredCompactionSelectorTest.java | 30 +
.../recover/SizeTieredCompactionRecoverTest.java | 1 +
.../repair/RepairUnsortedFileCompactionTest.java | 44 +
.../utils/MultiTsFileDeviceIteratorTest.java | 1 +
.../dataregion/memtable/MemTableFlushTaskTest.java | 1 +
.../dataregion/tsfile/FakedTsFileResource.java | 1 +
.../rescon/memory/ResourceManagerTest.java | 40 +
.../org/apache/iotdb/db/tools/MLogParserTest.java | 5 +-
.../db/utils/SchemaRegionSnapshotParserTest.java | 89 +-
.../iotdb/metrics/core/IoTDBMetricManager.java | 2 +-
.../iotdb/metrics/AbstractMetricManager.java | 12 +-
.../iotdb/metrics/AbstractMetricService.java | 40 +-
.../metrics/config/MetricConfigDescriptor.java | 6 +-
.../iotdb/metrics/impl/DoNothingMetricManager.java | 2 +-
.../reporter/prometheus/PrometheusReporter.java | 5 +-
.../conf/iotdb-system.properties.template | 105 +-
.../commons/binaryallocator/BinaryAllocator.java | 266 +
.../binaryallocator/BinaryAllocatorState.java | 71 +
.../iotdb/commons/binaryallocator/arena/Arena.java | 244 +
.../binaryallocator/arena/ArenaStrategy.java | 27 +-
.../binaryallocator/config/AllocatorConfig.java | 53 +
.../ema/AdaptiveWeightedAverage.java | 100 +
.../commons/binaryallocator/evictor/Evictor.java | 96 +
.../metric/BinaryAllocatorMetrics.java | 138 +
.../commons/binaryallocator/utils/SizeClasses.java | 146 +
.../async/AsyncPipeDataTransferServiceClient.java | 28 +-
.../client/property/ClientPoolProperty.java | 4 +-
.../iotdb/commons/concurrent/ThreadName.java | 5 +
.../commons/concurrent/ThreadPoolMetrics.java | 223 +-
.../WrappedScheduledExecutorService.java | 2 +
.../WrappedSingleThreadExecutorService.java | 2 +
.../WrappedSingleThreadScheduledExecutor.java | 2 +
.../threadpool/WrappedThreadPoolExecutor.java | 2 +
.../apache/iotdb/commons/conf/CommonConfig.java | 109 +
.../iotdb/commons/conf/CommonDescriptor.java | 39 +-
.../iotdb/commons/conf/ConfigurationFileUtils.java | 47 +-
.../apache/iotdb/commons/conf/IoTDBConstant.java | 13 +
.../apache/iotdb/commons/conf/TrimProperties.java} | 33 +-
.../iotdb/commons/exception/ShutdownException.java | 1 +
.../exception/auth/AccessDeniedException.java} | 15 +-
.../PipeRuntimeConnectorCriticalException.java | 14 +-
...meConnectorRetryTimesConfigurableException.java | 3 +-
.../pipe/PipeRuntimeCriticalException.java | 14 +-
.../exception/pipe/PipeRuntimeException.java | 10 +-
.../commons/executable/ExecutableManager.java | 11 +
.../iotdb/commons/partition/DataPartition.java | 56 +-
.../commons/partition/DataPartitionQueryParam.java | 1 +
.../apache/iotdb/commons/partition/Partition.java | 1 +
.../iotdb/commons/partition/SchemaPartition.java | 10 +-
.../apache/iotdb/commons/path/MeasurementPath.java | 1 +
.../org/apache/iotdb/commons/path/PartialPath.java | 12 +-
.../iotdb/commons/path/PathDeserializeUtil.java | 1 +
.../iotdb/commons/pipe/config/PipeConfig.java | 5 +
.../config/constant/PipeConnectorConstant.java | 4 +
.../config/constant/PipeExtractorConstant.java | 6 +-
.../configuraion/PipeTaskRuntimeConfiguration.java | 2 +-
.../connector/protocol/IoTDBAirGapConnector.java | 6 +-
.../pipe/datastructure/pattern/TablePattern.java | 18 +-
.../commons/pipe/receiver/IoTDBFileReceiver.java | 84 +-
.../commons/pipe/receiver/IoTDBReceiverAgent.java | 6 +-
.../resource/ref/PipePhantomReferenceManager.java | 2 +-
.../iotdb/commons/schema/column}/ColumnHeader.java | 2 +-
.../schema/column}/ColumnHeaderConstant.java | 28 +-
.../filter/impl/StringValueFilterVisitor.java | 5 +-
.../schema/filter/impl/values/LikeFilter.java | 2 +-
.../commons/schema/table/InformationSchema.java | 126 +
.../apache/iotdb/commons/schema/table/TsTable.java | 23 +
.../schema/table/TsTableInternalRPCType.java | 16 +-
.../schema/table/column/IdColumnSchema.java | 9 +-
.../table/column/MeasurementColumnSchema.java | 48 +-
.../apache/iotdb/commons/schema/ttl/TTLCache.java | 1 +
.../service/metric/JvmGcMonitorMetrics.java | 6 +
.../iotdb/commons/service/metric/enums/Metric.java | 2 +
.../meta/consumer/ConsumerGroupMeta.java | 34 +-
.../meta/consumer/ConsumerGroupMetaKeeper.java | 7 +-
.../commons/subscription/meta/topic/TopicMeta.java | 19 +-
.../iotdb/commons/trigger/TriggerInformation.java | 1 +
.../apache/iotdb/commons/trigger/TriggerTable.java | 1 +
.../apache/iotdb/commons/udf/UDFInformation.java | 19 +-
.../java/org/apache/iotdb/commons/udf/UDFType.java | 128 +-
.../iotdb/commons/udf/access/RecordIterator.java | 123 +
.../TableBuiltinAggregationFunction.java | 14 +-
.../relational}/TableBuiltinScalarFunction.java | 18 +-
.../commons/udf/service/UDFManagementService.java | 24 +-
.../iotdb/commons/udf/utils/TableUDFUtils.java | 66 +
.../commons/udf/utils/UDFBinaryTransformer.java | 1 +
.../commons/udf/utils/UDFDataTypeTransformer.java | 71 +
.../org/apache/iotdb/commons/utils/PathUtils.java | 8 +-
.../binaryallocator/BinaryAllocatorTest.java | 139 +
.../org/apache/iotdb/commons/udf/UDFTypeTest.java | 81 +
.../db/relational/grammar/sql/RelationalSql.g4 | 43 +-
.../thrift-commons/src/main/thrift/common.thrift | 11 +-
.../src/main/thrift/confignode.thrift | 10 +-
.../src/main/thrift/pipeconsensus.thrift | 3 +-
library-udf/src/assembly/tools/register-UDF.bat | 3 +
library-udf/src/assembly/tools/register-UDF.sh | 3 +
.../iotdb/library/dprofile/UDAFIntegral.java | 41 +-
.../iotdb/library/dprofile/UDTFResample.java | 6 +-
.../iotdb/library/dquality/UDTFCompleteness.java | 3 +-
.../iotdb/library/dquality/UDTFConsistency.java | 2 +-
.../iotdb/library/dquality/UDTFTimeliness.java | 3 +-
.../iotdb/library/dquality/UDTFValidity.java | 3 +-
.../iotdb/library/drepair/UDTFTimestampRepair.java | 47 +-
.../library/drepair/util/TimestampInterval.java | 22 +-
.../library/drepair/util/TimestampRepair.java | 2 +-
.../apache/iotdb/library/frequency/UDTFIFFT.java | 7 +-
.../iotdb/library/match/PatternExecutor.java | 798 ++
.../iotdb/library/match/PatternMatchConfig.java | 69 +
.../apache/iotdb/library/match/UDAFDTWMatch.java | 201 +
.../iotdb/library/match/UDAFPatternMatch.java | 164 +
.../apache/iotdb/library/match/model/Bounds.java | 43 +-
.../iotdb/library/match/model/DTWMatchResult.java | 55 +
.../apache/iotdb/library/match/model/DTWState.java | 161 +
.../match/model/PatternCalculationResult.java | 25 +-
.../iotdb/library/match/model/PatternContext.java | 41 +-
.../iotdb/library/match/model/PatternResult.java | 113 +
.../iotdb/library/match/model/PatternState.java | 92 +
.../apache/iotdb/library/match/model/Point.java | 91 +
.../apache/iotdb/library/match/model/Section.java | 132 +
.../library/match/model/SectionCalculation.java | 43 +-
.../iotdb/library/match/model/SectionNext.java | 37 +-
.../iotdb/library/match/utils/LinearScale.java | 46 +
.../iotdb/library/match/utils/TimeScale.java | 13 +-
.../library/series/UDTFConsecutiveSequences.java | 5 +-
.../library/series/UDTFConsecutiveWindows.java | 11 +-
.../java/org/apache/iotdb/library/util/Util.java | 90 +-
.../org/apache/iotdb/library/UDAFPatternTest.java | 88 +
library-udf/src/test/resources/patternData | 8989 ++++++++++++++++++++
library-udf/src/test/resources/patternPart | 737 ++
pom.xml | 14 +-
1071 files changed, 42398 insertions(+), 12430 deletions(-)
create mode 100644 .github/workflows/todos-check.yml
create mode 100644 example/client-cpp-example/src/TableModelSessionExample.cpp
create mode 100644
example/udf/src/main/java/org/apache/iotdb/udf/AggregateFunctionExample.java
create mode 100644
example/udf/src/main/java/org/apache/iotdb/udf/ScalarFunctionExample.java
create mode 100644
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/AllSum.java
create mode 100644
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/ContainNull.java
create mode 100644
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/DatePlusOne.java
create mode 100644
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/FirstTwoSum.java
create mode 100644
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/MyAvg.java
create mode 100644
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/MyCount.java
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/{IoTDBRegionMigrateDataNodeCrashITFramework.java
=> IoTDBRegionMigrateDataNodeCrashITFrameworkForIoTV1.java} (73%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/{IoTDBRegionMigrateDataNodeCrashITFramework.java
=> IoTDBRegionMigrateDataNodeCrashITFrameworkForIoTV2.java} (94%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateNormalIT.java
=> commit/batch/IoTDBRegionMigrateNormalITForIoTV2Batch.java} (89%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateOtherIT.java
=> commit/batch/IoTDBRegionMigrateOtherITForIoTV2Batch.java} (90%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateNormalIT.java
=> commit/stream/IoTDBRegionMigrateNormalITForIoTV2Stream.java} (73%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateOtherIT.java
=> commit/stream/IoTDBRegionMigrateOtherITForIoTV2Stream.java} (76%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerIT.java
=>
daily/datanodecrash/iotv1/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV1IT.java}
(84%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateDataNodeCrashIT.java
=> daily/datanodecrash/iotv1/IoTDBRegionMigrateDataNodeCrashForIoTV1IT.java}
(86%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerIT.java
=>
daily/datanodecrash/iotv1/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV1IT.java}
(84%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerIT.java
=>
daily/datanodecrash/iotv1/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV1IT.java}
(88%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerIT.java
=>
daily/datanodecrash/iotv2/batch/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2Batch.java}
(84%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateDataNodeCrashIT.java
=>
daily/datanodecrash/iotv2/batch/IoTDBRegionMigrateDataNodeCrashForIoTV2Batch.java}
(87%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerIT.java
=>
daily/datanodecrash/iotv2/batch/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2Batch.java}
(84%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerIT.java
=>
daily/datanodecrash/iotv2/batch/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2Batch.java}
(88%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerIT.java
=>
daily/datanodecrash/iotv2/stream/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2Stream.java}
(72%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateDataNodeCrashIT.java
=>
daily/datanodecrash/iotv2/stream/IoTDBRegionMigrateDataNodeCrashForIoTV2Stream.java}
(84%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerIT.java
=>
daily/datanodecrash/iotv2/stream/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2Stream.java}
(70%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{datanodecrash/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerIT.java
=>
daily/datanodecrash/iotv2/stream/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2Stream.java}
(73%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateClusterCrashIT.java
=> daily/iotv1/IoTDBRegionMigrateClusterCrashIoTV1IT.java} (81%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateConfigNodeCrashIT.java
=> daily/iotv1/IoTDBRegionMigrateConfigNodeCrashIoTV1IT.java} (88%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateClusterCrashIT.java
=> daily/iotv2/batch/IoTDBRegionMigrateClusterCrashIoTV2Batch.java} (92%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateConfigNodeCrashIT.java
=> daily/iotv2/batch/IoTDBRegionMigrateConfigNodeCrashIoTV2Batch.java} (95%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateClusterCrashIT.java
=> daily/iotv2/stream/IoTDBRegionMigrateClusterCrashIoTV2Stream.java} (81%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/{IoTDBRegionMigrateConfigNodeCrashIT.java
=> daily/iotv2/stream/IoTDBRegionMigrateConfigNodeCrashIoTV2Stream.java} (88%)
copy
integration-test/src/test/java/org/apache/iotdb/db/it/{last/IoTDBLastWithTTLIT.java
=> IoTDBFileTimeIndexIT.java} (50%)
delete mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBLoadPlainTsFileIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/udf/IoTDBSQLFunctionManagementIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/udf/IoTDBUserDefinedAggregateFunctionIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/udf/IoTDBUserDefinedScalarFunctionIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/udf/SQLFunctionUtils.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/query/old/builtinfunction/scalar/IoTDBFormatFunctionTableIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/subquery/IoTDBUncorrelatedScalarSubqueryIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/subquery/SubqueryDataSetUtils.java
rename integration-test/src/test/java/org/apache/iotdb/{session/it =>
relational/it/session}/IoTDBSessionRelationalIT.java (70%)
create mode 100644
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/customizer/config/AggregateFunctionConfig.java
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/pipe/PipeRuntimeConnectorRetryTimesConfigurableException.java
=>
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/customizer/config/ScalarFunctionConfig.java
(64%)
create mode 100644
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/customizer/parameter/FunctionParameters.java
create mode 100644
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/AggregateFunction.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/exception/sql/StatementAnalyzeException.java
=> iotdb-client/client-cpp/src/main/AbstractSessionBuilder.h (65%)
create mode 100644 iotdb-client/client-cpp/src/main/TableSession.cpp
copy
iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/exception/PipeException.java
=> iotdb-client/client-cpp/src/main/TableSession.h (52%)
create mode 100644 iotdb-client/client-cpp/src/main/TableSessionBuilder.h
create mode 100644 iotdb-client/client-cpp/src/test/cpp/sessionRelationalIT.cpp
rename
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/annotations/TreeModel.java
=> iotdb-client/client-cpp/src/test/main_Relational.cpp (54%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/exception/sql/StatementAnalyzeException.java
=>
iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/util/CollectionUtils.java
(66%)
rename
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/AggregationFunction.java
=>
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/schema/AlterDatabaseState.java
(82%)
create mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/conf/ConfigNodePropertiesTest.java
delete mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/exception/metadata/DatabaseModelException.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/thrift/async/handler/PipeTransferTrackableHandler.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/receiver/visitor/{PipeStatementDataTypeConvertExecutionVisitor.java
=> PipeTableStatementDataTypeConvertExecutionVisitor.java} (65%)
rename
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/receiver/visitor/{PipeStatementDataTypeConvertExecutionVisitor.java
=> PipeTreeStatementDataTypeConvertExecutionVisitor.java} (92%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/EnforceSingleRowOperator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/SimpleNestedLoopCrossJoinOperator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/AscBinaryTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/AscBooleanTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/AscDoubleTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/AscFloatTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/AscIntTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/AscLongTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/DescBinaryTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/DescBooleanTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/DescDoubleTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/DescFloatTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/DescIntTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/DescLongTypeJoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/JoinKeyComparator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/JoinKeyComparatorFactory.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/AbstractMergeSortJoinOperator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InformationSchemaContentSupplierFactory.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InformationSchemaTableScanOperator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/MergeSortFullOuterJoinOperator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/MergeSortInnerJoinOperator.java
delete mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/TableFullOuterJoinOperator.java
delete mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/TableInnerJoinOperator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/UserDefinedAggregateFunctionAccumulator.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/grouped/GroupedUserDefinedAggregateAccumulator.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/{CreateDBTask.java
=> AbstractDatabaseTask.java} (71%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/{CreateTableTask.java
=> AlterDBTask.java} (66%)
rename
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/sys/subscription/{ShowSubscriptionTask.java
=> ShowSubscriptionsTask.java} (77%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneCorrelatedJoinColumns.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneCorrelatedJoinCorrelation.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneDistinctAggregation.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneEnforceSingleRowColumns.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/RemoveRedundantEnforceSingleRowNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformUncorrelatedSubqueryToJoin.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/ApplyNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/CorrelatedJoinNode.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/{TableScanNode.java
=> DeviceTableScanNode.java} (60%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/{planner/plan/node/metadata/read/SchemaQueryOrderByHeatNode.java
=> relational/planner/node/EnforceSingleRowNode.java} (54%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/InformationSchemaTableScanNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/Cardinality.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/CheckSubqueryNodesAreRewritten.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/DataNodeLocationSupplierFactory.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/QueryCardinalityUtil.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/AccessControlImpl.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/ITableAuthChecker.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/{AllowAllAccessControl.java
=> TableModelPrivilege.java} (83%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/AlterDB.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/CreateTopic.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{CreateDB.java
=> DatabaseStatement.java} (53%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/DropTopic.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/KillQuery.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/ShowStatement.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/ShowSubscriptions.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/ShowTopics.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{exception/sql/StatementAnalyzeException.java
=> queryengine/plan/relational/sql/ast/SubscriptionStatement.java} (70%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/rewrite/ShowRewrite.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/rewrite/StatementRewrite.java
copy
iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/exception/PipeConnectionException.java
=>
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/rewrite/StatementRewriteFactory.java
(61%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/udf/UserDefineScalarFunctionTransformer.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/FormatColumnTransformer.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/table/InformationSchemaUtils.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/utils/MemoryControlledWALEntryQueue.java
copy
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/schema/CreateTableState.java
=>
datanode/src/main/java/org/apache/iotdb/db/subscription/event/SubscriptionCommitContextSupplier.java}
(77%)
delete mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/annotations/TableModel.java
rename iotdb-core/datanode/src/test/java/org/apache/iotdb/db/{utils =>
conf}/PropertiesTest.java (77%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AuthTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/DistinctTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/ShowQueriesTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/SubqueryTest.java
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/{AggregationTableScanMatcher.java
=> AggregationDeviceTableScanMatcher.java} (86%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/DeviceTableScanMatcher.java
copy
iotdb-core/datanode/src/{main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/DistributedQueryPlan.java
=>
test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/EquiJoinClauseProvider.java}
(51%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/InformationSchemaTableScanMatcher.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/JoinMatcher.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/BinaryAllocator.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/BinaryAllocatorState.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/arena/Arena.java
copy
iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/exception/PipeConnectionException.java
=>
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/arena/ArenaStrategy.java
(59%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/config/AllocatorConfig.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/ema/AdaptiveWeightedAverage.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/evictor/Evictor.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/metric/BinaryAllocatorMetrics.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/utils/SizeClasses.java
copy
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/Flush.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/conf/TrimProperties.java}
(51%)
copy
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/exception/sql/StatementAnalyzeException.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/exception/auth/AccessDeniedException.java}
(67%)
rename
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/common/header
=>
node-commons/src/main/java/org/apache/iotdb/commons/schema/column}/ColumnHeader.java
(98%)
rename
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/common/header
=>
node-commons/src/main/java/org/apache/iotdb/commons/schema/column}/ColumnHeaderConstant.java
(95%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/access/RecordIterator.java
rename
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata
=>
node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational}/TableBuiltinAggregationFunction.java
(88%)
rename
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar
=>
node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational}/TableBuiltinScalarFunction.java
(76%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/utils/TableUDFUtils.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/binaryallocator/BinaryAllocatorTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/udf/UDFTypeTest.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/PatternExecutor.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/PatternMatchConfig.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/UDAFDTWMatch.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/UDAFPatternMatch.java
copy
iotdb-api/pipe-api/src/main/java/org/apache/iotdb/pipe/api/exception/PipeException.java
=> library-udf/src/main/java/org/apache/iotdb/library/match/model/Bounds.java
(54%)
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/model/DTWMatchResult.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/model/DTWState.java
copy
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/read/database/GetDatabasePlan.java
=>
library-udf/src/main/java/org/apache/iotdb/library/match/model/PatternCalculationResult.java
(65%)
copy
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/read/database/GetDatabasePlan.java
=>
library-udf/src/main/java/org/apache/iotdb/library/match/model/PatternContext.java
(51%)
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/model/PatternResult.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/model/PatternState.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/model/Point.java
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/model/Section.java
copy
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/read/database/GetDatabasePlan.java
=>
library-udf/src/main/java/org/apache/iotdb/library/match/model/SectionCalculation.java
(54%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/Flush.java
=>
library-udf/src/main/java/org/apache/iotdb/library/match/model/SectionNext.java
(61%)
create mode 100644
library-udf/src/main/java/org/apache/iotdb/library/match/utils/LinearScale.java
copy
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/schema/CreateTableState.java
=>
library-udf/src/main/java/org/apache/iotdb/library/match/utils/TimeScale.java
(76%)
create mode 100644
library-udf/src/test/java/org/apache/iotdb/library/UDAFPatternTest.java
create mode 100644 library-udf/src/test/resources/patternData
create mode 100644 library-udf/src/test/resources/patternPart