You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ha...@apache.org on 2025/11/28 03:22:11 UTC

(iotdb) branch opt_aligned_tvlist updated (c532311b14b -> 901f804aa3e)

This is an automated email from the ASF dual-hosted git repository.

haonan pushed a change to branch opt_aligned_tvlist
in repository https://gitbox.apache.org/repos/asf/iotdb.git


    from c532311b14b deving mem_control
     new cdac597412b deving
     add 63df0f1c9ff Make ErrMsg more readable when the predicate has too many conjunctions because of too many devices
     add 8784b31fc8b Support print fast last query request in sample query log
     add 9356150090d Pipe: Replace fixed aligned series limit with memory-based estimation to avoid OOM in TsFileParser (#16201)
     add c85d1ed21b1 IoTV2: Fix file corrupt due to RandomAccessFile is lost. (#16171)
     add 6349dfed1e4 Pipe: Fixed the bug that output.measurements must be filled when constructing aggregate-processor (#16238)
     add 6924ab0be4a Modified implementation of exporting table schema to sql file using show create table (#16226)
     add 1b377c049d8 Change Query Data Source init way from lock to tryLock & Add more log and remove useless synchronize
     add 63284330d28 Pipe: fix MQTT Source Session logic & Enhanced error reporting for MQTT port and data path conflicts (#16229)
     add cc66a38b223 [AINode] Reconstruct inference structure (#16237)
     add 72a11f37168 Log corresponding database when the RegionGroups are not available (#16244)
     add 3bb45633057 Fix region migration daily IT (#16241)
     add 2a46823cd90 Load: Flush ChunkGroup to a temporary file and cache TableSchema in advance to reduce memory allocation (#16225)
     add 054fcc702e9 Directly throw exception when constructing information schema supplier error (#16242)
     add 5fd2b818386 Pipe: Switched some unnecessary log to debug level
     add 4937c453e43 Pipe: Fixed the bug that compaction may cause progressIndex lost (#16258)
     add ddddbae8ffa Fix NPE in Procedure's log (#16255)
     add e626e8bd7e5 make with-grant-option optinal (#15854)
     add 67c450be53f Load: Add IT test about Load file across multiple time partitions (#16253)
     add ef0e45e3e19 Fix error of non-mappable udtf query in align by device while existing any devices' data cross region
     add eae753f25f8 Fix IntoOperator order bug
     add 1d5c8e298b6 Pipe CI: always flush for `IoTDBPipeSinkCompressionIT` with batch mode (#16247)
     add 3446a313388 Pipe: Optimized the path construction efficiency in pattern match (#16265)
     add d03bcffa517 implement new session constructor (#16256)
     add 922330eea8d Add APPROX_PERCENTILE aggregation function
     add 54ca8252a1a Pipe: Fixed the table deletion transfer logic & pipe meta IT & interval manager in general model (#16268)
     add 4862e7a94d4 Shuffle data partition allocation strategy (#16260)
     add 6a11cbe4825 Fix potential NPE in tryGetFLushLock (#16274)
     add 6a037a24e9f Fix DN does not exit due to exception handling failure (#16254)
     add 51fe585dfcd perf: Optimize the mark bitmap operation of AlignedTVList InsertTablet (#16199)
     new 504e5b3532a Merge branch 'master' of github.com:apache/iotdb into opt_aligned_tvlist
     new ead01cd0a4c dev
     add 67a9fa13d30 with_clause feature
     add 935b9a8f00e Pipe: Fixed the config meta transfer problem (#16280)
     add 8e9c43479c8 Pipe: Modify epoch status metric changes (#16272)
     add b1ab9b3eb97 encrypt key generate and destroy (#16176)
     new 51edae5795b Merge branch 'master' of github.com:apache/iotdb into opt_aligned_tvlist
     new c186fd4300a dev
     add 24bf08ae1a9 Load: Switched the logger level to debug when cache memory temporarily exceeds the max size (#16289)
     add d60431d9d68 fix cpp client exception (#16284)
     add cd1507743fb Modified parameter timeout and mfs in data export (#16252)
     add 0ecaf374436 Revert "Revert Pipe: Added rate limiter for tsFile sending" (#16288)
     add 484bc09df86 Fix DateTimeUtils init order bug
     add ea195168a95 Feature/cppclient asan (#16293)
     add 71bb8cc8ef9 only check magic string when encrypt function is open (#16292)
     add e09bdbe2c9c Modified db parameter in data import (#16294)
     add 0a2166fab5b UDFT pattern_match: A similarity matching algorithm based on sketch and example
     add 8417f2b8ce7 Fix improper retries in dispatcher & measurements not set to null when inserting row out-of-ttl (#16297)
     add 1c539697c7e Pipe: Setup PipeLogger to reduce the selected pipe logs & Switched some useless logger for pipe in configNode to debug level (#16296)
     add 6a7665a0b2c Pipe: split full-sync pipe into history and realtime pipes (#16250)
     add 8e8c1a6ca52 Supports streaming load mem chunk & Push down filter, limit and offset to MemPointIterator
     add e1cbccf65bd [Bug Fix] Download config.json for Large TimeSeries Model (#16295)
     add dae4a2e8490 Pipe IT: enlarge timeout in testLoadWhenIncomingIdColumnsArePrefixOfExisting (#16301)
     add 9854f01be7a fix: MeasurementSchema not initialized after automatic metadata creation failed (#16300)
     add 4e4a215f57a Add sql to show configurations
     add f8875c01213 Fix NodeSupplier connection leaky while encountering exception
     add aaf5139029e refine tsfileWriter reset logic (#16309)
     add 5339c4a0990 fixup! Pipe: split full-sync pipe into history and realtime pipes (#16250) (#16316)
     add 64c69006964 reduce log (#16298)
     add 182a78ae2df [AINode] Refactor thrift integration (#16323)
     add 01d88b7d120 Fix some bugs in AlignedTVListIterator
     add ded266441d8 Pipe: Further reduce the pipe logs & Added configurations for tsFile segment lock (#16315)
     add 7dee0574ad4 Fix occasional failure of DistinctTagIT caused by read of old attribute #16326
     add f76e96d103c Fix the issue where string filtering cannot be used in the DEFINE clause
     add 23105765868 Fix deleting wrong compression ratio file after flush & delete compression ratio file after region removal (#16335)
     add a5d33b20c21 fix deletion file handler leak (#16332)
     add b2a3caeba9e Enhanced device cross region it
     add 41cbcfeda67 fix: avoid return null ListenableFuture when checking if operator is blocked (#16337)
     add 68da097d2fb Use global sink executor pool for IoTV2 (#16163)
     add 1504f9c6a7d Page time range set in TVListIterator is not processed (#16338)
     add 0e0b1545ad3 Try to make CI more stable (#16340)
     add f26f13d2da5 Support SSL in cluster internal connections (#15994)
     add d29e45cad29 Pipe: Fix unnecessary client shutdown logic and reduce handshake waiting time (#16341)
     add 6fb776cae12 Pipe: Restore RPC thread name after Pipe receiver exit (#16344)
     add cfb244b877d Add comments in docker-compose for startup hang (#16342)
     add a1cf26093e1 Fix show regions compressionRatio issue (#16343)
     add 164b58140a2 Pipe IT: Moved rate-limiter in zstd-test to non-tested pipe to avoid blocking potential failure (#16347)
     add 7466e2ce1f0 Concurrently querying and writing to the memtable may cause the query results out of order (#16328)
     add 0b74d2b923b Pipe: Checked the enable_auto_create_schema in database auto creation (#16354)
     add 62f65d1c655 [AINode] Fix log file compressing name (#16358)
     add d9075a6b1be Fix potential NPE in Unseq List (#16359)
     add f5c0e8af466 Try to make IoTDBTableAggregationNonStream2IT more stable (#16361)
     add 31fa71e2e02 Upgrade netty and reactor (#16362)
     add 5b0800920e2 Changed the default MQTT handler size to 1/2 number of processors & Fixed some default parameters when core number is 1 (#16363)
     add a2bbb5104b8 Fix that compression ratio is not transferred during region migration (#16352)
     add 51da71f73bd Pipe: Fix epoch status metric (#16355)
     add 2ff8310ca2e Avoided "table not exist" related NPEs  (#16357)
     add 47e02c889e7 Pipe: Fix lost transfer time metric & Support transfer time tracking for RawTablet events converted from InsertNode/TsFile events (#16364)
     add b918b3b7caf Update RetryUtils.java (#16368)
     add 333986442bc [AINode] Refactor the dependencies to IoTDB (#16369)
     add 7377aaa4360 [AINode] Fix maven verify bug (#16373)
     add 9765ec84892 Pipe: Show "CONFIG_REGION" string instead of MIN_VALUE in PipeTableResp (#16372)
     add dd18e71678c Optimize ttl deletion in fast compaction performer (#16367)
     add db0c69a8715 Fixed the potential NPE in clear all cache on local (#16378)
     add 2bec9c70eca Disable the last cache for some last-related tests temporarily
     add b422e9a5c59 Fix CN pipe procedures restore dead lock (#16324)
     add 8106d97db49 Revert "Fix CN pipe procedures restore dead lock (#16324)" (#16384)
     add ff20bbf315d Metric connection security enhanced (#16379)
     add 71603e5fd4d Fix read lock not release when unexpected exception occurred. (#16385)
     add 32bb39ae308 [AINode] Renew python dependencies (#16380)
     add 699c90eff9d Load: add the function of transferring too many time partitions of files to tablets and fixed the problem that the data written to tablets is more than expected. (#16320)
     add 87bd830fc28 Pipe: Set placeholder for required pipeMetaList & Prevented the empty progress report when shutdown (#16388)
     add e9994aa6511 Update LICENSE and remove useless code (#16389)
     add 3d8522a0cb2 Add dropwizard related modification to LICENSE
     add ba2c3a853aa Add some classes modified from trino to LICENSE file (#16393)
     add 1d7e82dfff8 Fixed the potential problem in DataNodeDevicePathCache & Pipe: Reduced the logs in "PipeReceiverStatusHandler" (#16397)
     add a1fe2418260 Pipe: Avoided the OOM risks by replacing the progressive cheating factor with policy change (#16398)
     add 44291877b93 [AINode] Revert transformer and tokenizer dependencies update (#16394)
     add a63a23ee1e8 [AINode] Fix pom.xml of ainode (#16375)
     add 1bc2c7f0f61 Pipe: Avoid throwing null pointer during Close process (#16391)
     add 7b9ec7ea83d [AINode] Implement concurrent inference framework (#16311)
     add 08708d1c5fc Avoid create region group NPE when concurrent use and delete database (#16407)
     add 40b2b33964e [AINode] Fix bugs for SHOW LOADED MODELS (#16410)
     add 03e8e51b5a0 Pipe: Removed the MQTT source (#16405)
     add a36cf151cfc Pipe: Avoided timeIndexes' memory occupation for deleted tsFiles && Removed useless stale logic && Improved the memory calculation of tsFileResource && Avoided the potential failure for permission check when the source file is deleted (#16399)
     add d12a9b33940 Pipe: Implemented better permission check for showing pipe (#16403)
     add 048a108ec17 Pipe: Further reduced the repeating exception log & Changed the default log reducer size to 16M & Did some minor fixes in Device Schema Cache (#16417)
     add 77ff8f91730 Fix that oldPassword is not recorded during user creation & delete password history after user removal (#16416)
     add 33f1e360787 Using Visitor design pattern to refactor the access control logical
     add 773433176dc [AINode] Add a batcher for inference (#16411)
     add 14ade2b8778 Avoid using tree model device cache to cache table names (#16413)
     add e60408ce67c Fix last cache bugs because init the time last cache but not updated in later process
     add ff98e834bcd Pipe: Add Thrift callback processing logic for ClosedChannelException (#16421)
     add 9f699e15762 Implement DataNode cache TableSchema function to prevent OOM (#16412)
     add 89ef1337744 Revert: cannot reuse time and column array in InsertTabletStatementGenerator (#16424)
     add eb0d3cb9ce0 some tools use getColumnDisplaySize, No exceptions should be thrown. (#16429)
     add 84ac94d1d0c Fix ConfigNodeClient thread leak at DataRegion.java (#16427)
     add c7b459c43d0 move TabletDecoder to org.apache.iotdb.db.utils (#16433)
     add 9e0316fe21e Fix concurrent last cache query bug because of one device in multi regions
     add dd6f958ee98 Optimize FetchSchema requests (#16434)
     add 9cbb7738ce6 fix cpp session mem leak (#16443)
     add 5e7a8c763a9 Avoid NPE for show variables task (#16444)
     add c49c06878e1 Subscription: Prevent IllegalArgumentException in SubscriptionLogStatus by validating bounds for nextLong (#16447)
     add d39e9a354e9 Pipe IT: always throw exception with failure when executing non-queries & Fixed some semantic errors of IT (#16331)
     add 993ec2f07ac AuditLogger Implementation (#16428)
     add 0e2f911b22f Auth refactor
     add 4ebfe9eab86 Append user index field for User (#16432)
     add 21c1893db08 Append some interfaces for Nodes startup (#16452)
     add 205e373a013 Refactored the schema cache (#16446)
     add 25427da164a Insert SQL authentication audit logs for table model (#16450)
     add 05072035af8 Fix vulnerability check (#16455)
     add 13afc0348e1 Add IAuthorPlanExecutor
     add 5d6609c6e17 Add auth check for show related
     add 7cd568c5ded remove org.reflections:reflections, only test use it
     add f431f050d7d Add UserId in IClientSession (#16459)
     add 7972dd8a884 Fix authentication related CI
     add 2b641fdc952 Fix CreateTraining IT
     add db819be0db6 Fix some metric bugs
     add 19834e45cd8 Pipe: Fixed the concurrency bug of stop / start (#16461)
     add 33be57566cf Implement IAuditEntity interface for TreeAccessCheckContext (#16469)
     add 4da1c88a415 Connection limit function. (#16462)
     add c9b441a212c Refactor TreeAccessCheckVisitor
     add f2fb4a8ff1a Feature/client hide password (#16468)
     add 877c1c0d857 Fix compatibility issues for userid (#16473)
     add 19de5b10f38 Fix some sonar smell
     add 5be7be25d14 Unify access control to AccessControl
     add c7515420f12 fix jdbc-srouce.jar include an abs path on feature.xml (#16484)
     add 6de15db3b37 fix client win-cmd exec issue (#16480)
     add 078301bec02 Fix jdbc feature.xml error (#16487)
     add 4b65b8de02f Added some common interfaces for compatibility
     add 7ad8778ea5f Load: Re-enabled the is aligned exception check
     add c73e0c0de3b Fix more sonar
     add 5ea679f3af3 Implement audit log for tree model (#16475)
     add 4b2913050c7 Move password history under __audit (#16496)
     add 2ed021362c7 Audit log patch for both tree and table models (#16497)
     add 326850435b6 Revert recent updates about audit log (#16498)
     add 4bdba5c953d Pipe: Reduced the conversion logger & Fixed the illegal formats of PipeLogger (#16503)
     add 8160a18727a reformat procedure
     add 49e857287a6 spotless procedure
     add 2d9afef27d2 Throw exception when client with ssl try to connect with server without ssl (#16504)
     add 26a0534b0fa Fix the issue of incorrect %IOTDB_HOME% setting when running start-cli.bat with parameters in other directories (#16508)
     add 755cf0149b4 Audit log big patch (#16501)
     add 254f016b75c Fix that TableSchema written in TsFile can be stale after drop/alter table (#16495)
     add a6c5650d2d0 set executedByUserID for AuthorRelationalPlan (#16506)
     add 2d44ef034e9 Support user rename (#16512)
     add e03560fa653 Fix ratis TLS not working (#16510)
     add b4dde12d4cf [AINode][Bug fix] Concurrent inference (#16518)
     add e7fb8c38fe5 No need to retry when meets SSL Handshake error between DN and CN (#16513)
     add 5c39de0ccd4 Improve string array class name constant implementation​ (#16514)
     add 8ec5aace9c8 Ignore device alignment in timeSeries auto-creation (#16516)
     add 91c51321f3b [To dev/1.3] Load: Optimized the exception error message of convertion to tablet (#16499)
     add 5e00ed5e815 update readme links (#16523)
     add 677f9b8e164 Load: Added "skipFailedTableSchemaCheck" parameter (#16522)
     add b2175ffa672 Added some common interfaces for compatibility
     add dbdc4b43cd2 fix confignode start (#16527)
     add 764cedcbfed Pipe: Fixed the potentially missing database auto-create in receiver (#16529)
     add 781a3c98dce Feature/login lock manager (#16494)
     add d583362ab98 Optimized the value type check for update device (#16448)
     add b86ea430b69 Create Multi Time Series: Modify logger level & Pipe: Adjusted the show pipe privilege (#16439)
     add 7235ec91305 Adjust encrypt config file. (#16528)
     add c2696b33ae4 Add audit logic for login and logout event (#16520)
     add 6d610816259 Revert "Adjust encrypt config file. (#16528)" (#16534)
     add 32c80280eba Patch for rename user and audit log (#16535)
     add e4081b90a2c [AINode] Fix: reduce package size  (#16511)
     add 451024279b8 [AINode] Fix compile bug (#16536)
     add 080a810b4e8 Modify script to use local environment variable changes and avoid pol… (#16541)
     add c4fc2e9c7bf Use userId to record password history (#16542)
     add f39cf38d570 Ignore data of deprecated table in compaction (#16543)
     add 73a0cd8d399 No filtering audit DBs in some procdure & update idle time after logging in
     add 72c3e915f70 Fixed the failure of IoTDBDistinctTagIT
     add e188287645f fix: Handle NaN results in approx_percentile evaluation
     add 9a25d725313 fix login locked error message (#16550)
     add 76852612417 User userId to check whether the user is admin in ConfigNode (#16554)
     add db28f95e901 Add method to convert author type
     add 26aa85378f5 Fix NPE for audit func. (#16556)
     add a7e042fae03 fix: count device operation
     add a3116f46591 Fix initial old password not encrypted & bump TsFile Version (#16557)
     add d6c2719f95a Fix that quotes cannot be passed to start-cli-table.bat (#16558)
     add 36f98a99910 encrypt audit log (#16551)
     add 4256d38070d Add keystore truststore expire check and avoid unnecessary error log printed (#16552)
     add 38793052091 Fix UserLockInfo concurrency (#16559)
     add 7110f166d64 Update keystore truststore for tests (#16561)
     add 558839f3d59 Fix audit log for list user, role and privilege (#16562)
     add 18964f41cda Patch for AUDIT privilege authentication on table model (#16563)
     add 2df8710feef Pipe: Cleaned some questionable parameters & Fixed unstable testPipeAfterDataRegionLeaderStop (#16555)
     add ea7e2a68b92 Fix cast of TimeColumn after deserialize
     add d65fa92f563 Fix author type conversion (#16560)
     add 5621279d5e2 Audit SQL 'COUNT DATABASE' (#16569)
     add 629860ade15 fix: Updated TSFile version to fix Load failure in creating aligned time series (#16502)
     add e22a54f44b2 Pipe: Fixed the potential memory shortage may lead to forever blocking (#16570)
     add 006b6fc57d4 enable_grant_option first start take effect (#16572)
     add c983221c6a7 Hide keystore truststore file name in logs (#16573)
     add 41fd7b8cf4f [AINode] Modify timer_xl and sundial for transformersv4.56.2 (#16568)
     add be172fb23ea add encrypt param when constructing CompactionTsFileReader (#16578)
     add 32f287a400a Fix compatibility issues when loading snapshot in pipe. (#16580)
     add d289944750f Fixed lock error messages and default values in LoginLockManager. Corrected table model unlock syntax. Resolved errors in security administrator unlock functionality. (#16579)
     add 2c6e5b83120 Fix rename user ConfigNode physical plan serialize/deserialize NPE (#16582)
     add 4c037e7df03 Pipe: Fixed the bug that mark-as-pipe-request may not be of use in configNode events (#16581)
     add a29bf52950e Pipe: Fixed the NPE bug in historical user parsing (#16584)
     add b098e34d9c6 Pipe: Fixed the bug that the schema may be sent twice when split-enabled & database may be null for non-first schema pipes (#16586)
     add 867a457d8be Pipe: Stablized the table model IoTDBPipeSyntaxIT (#16585)
     add d719d4651d8 Fix some data types are not supported in Mode AggregationFunction
     add a1c34887c3b [AINode] Code format
     add 1d852bf406e [AINode] Reformat codebase
     add 2a120776bce Don't print warn msg while meeting 400 (#16597)
     add 2a591bd267b Pipe: Added parameter check to handshake of legacy receiver (#16596)
     add c72f67e80bf Pipe: Banned the audit / system DB from configNode sync (#16592)
     add 7db498025f0 Fix that ConcurrentLinkedDeque.removeIf is not actually thread-safe (#16598)
     add d49baf77096 Fix IoTDBClusterNodeShutdownHookIT (#16601)
     add 8d933843dec Delete unused and vulnerable rpc interface (#16603)
     add 46a0c6ac0b1 [AINode] Concurrent inference bug fix (#16595)
     add 0d0b7d1e926 Fix aggregation query when device cross region in TreeModel
     add fe96a5573dd Perfect implicit time process in first, last, first_by, last_by of TableModel
     add 2ae06e811bd Optimize memtable scan
     add b20558f3158 Avoid NPE in the Procedure framework #16607
     add 4e2b3b935a3 Set ExternalRPCService server connection with ssl no timeout (#16617)
     add dd4a21c76b2 Fix Cannot invoke jdk.internal.platform.CgroupInfo.getMountPoint() issue in CI (#16621)
     add 332ba5b56ed Pipe: support multiple path patterns under tree model (#16575)
     add 01ae4dcc481 Load: Deleted the unnecessary auto-creation (#16624)
     add 09da138a93f Resolve the problem that it will execute endFile() twice and generate an invalid wal file that… (#16627)
     add 1ba2bb79c92 Resolve the situation where the field value contains commas in line formatter. (#16609)
     add aa560e7ddc5 No need to include http client in distribution (#16634)
     add 07d457e36df Fix union when cross region or need mapping from child input
     add 9daaaa8687d fix/loginlockmgr-constructor (#16636)
     add fd98737405c Delete concurrent-206 and checker-qual directly dependency
     add 2c9064ff67c [AINode] Adjust the maximum inference input length (#16640)
     add dbf55834d67 Refactored some dependencies
     add 656b4fc1a85 Pipe: Fixed the semantics for new regions & realtime / history only pipes (#16622)
     add 9b0e48f2f42 Pipe: Fixed the shouldMarkAsPipeRequest for CreateTable and AlterLogicalView Sync (#16619)
     add a429dfcb3b6 Pipe: Implementing DisruptorQueue (#16639)
     add bbe7882f297 Made the schemaRegionMap nonnull for SchemaEngine (#15775)
     add ca85e803ecd Pipe: Add TsFile parsing with Mods function (#16540)
     add e15fb6aa227 Refactored IoTDB codes (#16644)
     add 8867ab60185 Revert "Refactored IoTDB codes (#16644)" (#16645)
     add a527b929822 Set the parameter names from default_storage_group_level to default_database_level (#16626)
     add 70b964386f9 Push the aggregation node down the union node
     add 25c86c26a69 reject grant/revoke author statement on audit database
     add 7131dab25fd feat: Add 36 new built-in scalar functions about BLOB type
     add 18cd382b186 Pipe: Fixed the potential NPE in receiver tablet construction (#16648)
     add c1580924bca Support built-in forecast function through UDTF for tree model (#15682)
     add 1e4238f6e32 Pipe: Deleted the reflection code of AtomicUpdater (#16663)
     add 23b1313bad3 Fix group by time in tree model bug
     add aa899ccf8f5 Pipe: Added log control for pipe receiver auth exception (#16659)
     add 74fe8e69c06 Fix some dependencies version fallback (#16664)
     add 57fe5734dd3 Optimize the efficiency of DualKeyCacheImpl's mayEvict (#16445)
     add 37388a1d494 implement MergeUnion rule to flatten nested UnionNode (#16657)
     add 0cbe3e16abd Pipe: Add metrics for TsFile parsing to tablets (#16668)
     add 51b112340bd Clarify the non-ssl client connects the ssl server error log information (#16665)
     add 2738e7afe91 Pipe: Fix HistoricalDataRegionTsFileAndDeletionSource `double-living` parameter failure (#16667)
     add 6f07e859d89 Fixed the bug that the user deletion may delete audit TimeSeries (#16670)
     add fe37a4b5779 Hide password related parameters in show configuration result (#16675)
     add f8ad340df55 Avoid throwing AuthException to the state machine (#16677)
     add acaf594ab46 If the client input uses "-usessl", then force interactive input of trustStore and trustStorePwd. (#16676)
     add 993a7839133 Fix process logic of empty TsBlock in InputLayer of TransformOperator (#16678)
     add 26ca344925e Bump logback version to 1.3.16 (#16671)
     add 274fc9ed443 Use the correct value in showConfiguration to override the value read from the configuration file (#16681)
     add 685141a6405 Fixed the bug that the attribute update container may add extra calculated memory to schema engine (#16682)
     add 69cda2da662 Add more optimizers for union (#16689)
     add 2488001e808 SeriesScanUtil throws exception when using filters that could not match any time range (#16691)
     add 8420beaaf54 Fix wrong push limit down to AggTableScanNode (#16696)
     add b6c6c7a1138 More robust IoTDBRegionReconstructForIoTV1IT (#16697)
     add f096b8210ff Implemented the alter encoding compression function for tree model (#16672)
     add ababbf337e2 Support SSL-related parameters and interactive password input in export/import tools (#16698)
     add 4ebb89b91e8 implement the intersect (distinct | all ) for table model (#16700)
     add c406a81f53c Fix the error message of ConfigExecution (#16680)
     add 9ae8233091f Fixed the null error message of fetch schema failed when the regions is removing (#16713)
     add a9ba7243ba9 Pipe: Fixed the NPE of commit interval (#16714)
     add 3ec8979e42a Follow fix for encoding & compressor (#16712)
     add 9d4c41092a8 Avoid unnecessary ssl error log caused by jdk bug (#16709)
     add 2de3bb6f534 Active Load: Ignore java.io.UncheckedIOException exceptions thrown during the file scanning process. (#16705)
     add f67526420d0 Delete the tsfile and related attachments When only one table and dat… (#16687)
     add 639de5255ce Fixed the potential non-consistency caused by initialize of DataNodeTableCache & Cleared the storageGroups in compatible codes (#16693)
     add ffa9c562c4e Optimize the configuration logic of dn_thrift_max_frame_size (#16724)
     add b4d5b4235e1 Changed the SQL of AlterEncodingCompressor statement & banned the "root" timeSeries & handled the empty intersection path & refactored the IT (#16725)
     add 8dbf2003cfd chore!: Bind real config address for Thrift and Raft services (#16717)
     add 93b2d1fe999 Make ErrMsg more readable when the predicate has too many conjunctions because of too many devices #16715
     add 93c55577e6f Pipe: Fix unhandled timeout exceptions in Thrift Client (#16727)
     add 468a91a4d2e Fixed the procedure has_more_state bug & Fixed the IT for encoding & compressor (#16729)
     add a6e8493bfc0 Optimized the lock for encoding & compressor's invalidate cache (#16733)
     add d48347cdc8d Pipe: support path exclusion under tree model (#16632)
     add 43b89b9a480 Change the privilege of showVersionStatement #16736
     add 49c625bb83e [AINode] Package AINode via PyInstaller (#16707)
     add 96e8681dd51 Support the JDBC client to prevent SQL injection (#16734)
     add b7f9f8d49af Fix that a deletion test may fail due to inconsistency caused by leader redistribution (#16744)
     add 7515568c8e4 Fixed the NPE caused by concurrent "check for createTimeSeries" and deleteTimeSeries (#16742)
     add 6e8748e0256 Pipe: Optimized the default behavior in meta sync for retries to wait for other regions (#16740)
     add f608a2d2e6a Adjust the exception message cause by the WHERE clause, which uses a range comparison on the same field, specifically when the left value of the range is greater than the right value of the range. (#16741)
     add e53d27c0ad0 Pipe: Trimmed some of the pipe logs (#16747)
     add db7c801d846 Active Load: Fixes errors caused by Load copying resource files. (#16753)
     add a6191d916b2 Pipe: Modify the Pipe configuration item log name to be consistent with the Properties name. (#16732)
     add 91e48f07f63 feat: encode load attributes in active load directories (#16722)
     add 1ebb9515767 [AINode] Enable AINode start as background (-d) (#16762)
     add 3a6322028cd fix (#16702)
     add a7f1527d04c reduce error log when compaction service is stopped & fix bugs (#16756)
     add d49d7dd7711 [AINode] Update AINodeClient for DataNode to borrow (#16647)
     add cd443ba9996 [AINode] Fix bug that AINode cannot compile in Windows (#16767)
     add bd97844bb7f fix (#16773)
     add 2c381feda25 Load: Fixed the bug that mods is not deleted in load tsFile when there are exceptions & Fixed the potential NPE in air gap agent close() method (#16775)
     add 2b47be756ad [AINode] Fix bug of sundial and forecast udf (#16768)
     add 9fd9d7e818a Fixed the bugs related to device auto-create alignment ignorance (#16780)
     add f708b966238 Load: Active Load supports ModV2 (#16769)
     add 0f2483fbe2e Load: Fixed the issue of TSFile parent directory being null and TSFile resource being updated during the Load process. (#16751)
     add b3509d6d6bf Load: Fixed parameter passing error in MoveFile function (#16748)
     add 0e209e73c21 Refine CN consensus layer API for procedure robustness (#16303)
     add 0ebdb878e57 Pipe: improved the memory calculation for tablets (#16739)
     add c76c5fe3d5a Fixed the bug related to "Fixed the bugs related to device auto-create alignment ignorance" (#16781)
     add 9121208304c Load: Remove the getParentFile and exists checks from Load New File (#16787)
     add 36154e50300 Optimized the error message when the column is not tag/attribute in device related SQLs (#16750)
     add fbcb8a2c6ed Avoid connection reset error log printed (#16797)
     add 0c23da2551f Fix that settle compaction may lgnore some newly incoming deletions (#16799)
     add 03b60d1390c Fix slowQueryThreshold & optimize encodeBatch (#16765)
     add 4525d075867 Pipe: Adjusted the waiting time of temporary unavailable exceptions (#16798)
     add 50f92e48cf6 [AINode] Delete poetry.lock for easier maintain different operating systems (#16793)
     add 1c6a2b02ab9 Bump ratis to apache 3.2.1 (#16801)
     add 448592e3c8d Pipe: Fixed the check for no permission 2 (#16804)
     add 0431d5abd45 Update ratis-thirdparty-misc version to 1.0.10 (#16807)
     add 100c5a3c5c6 Fix window partiton across two TsBlock bugs (#16809)
     add d99740860c2 may_fix (#16814)
     add fb899b16b92 Fixed the bug of 305 error for unsupported table opreations #16816
     add ddcc64618b5 Fixed the calculation error of schema cache (#16818)
     add 03bc2606563 Fixed the concurrency issue of region migrate and load (#16796)
     add c4114b95d94 Add 'show available urls' (#16441)
     add 19ebbe31099 Added back the mis-deleted "()" in last cache (#16824)
     add 8cb4b9be877 Reduced the auth log when paths are too many (#16825)
     add 23be2201b81 perf: Optimize wide table write performance (#16699)
     new 901f804aa3e merge master

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/workflows/cluster-it-1c1d.yml              |   31 +-
 .github/workflows/cluster-it-1c1d1a.yml            |    6 +-
 .github/workflows/cluster-it-1c3d.yml              |   28 +-
 .github/workflows/compile-check.yml                |   24 +-
 .github/workflows/daily-it.yml                     |  208 +-
 .github/workflows/daily-ut.yml                     |   14 +-
 .github/workflows/dependency-check.yml             |   20 +-
 .github/workflows/pipe-it.yml                      |  214 +-
 .github/workflows/sonar-codecov.yml                |   10 +-
 .github/workflows/table-cluster-it-1c1d.yml        |   33 +-
 .github/workflows/table-cluster-it-1c3d.yml        |   28 +-
 .github/workflows/unit-test.yml                    |   22 +-
 .github/workflows/vulnerability-check.yml          |   12 +-
 .gitignore                                         |    1 +
 CONTRIBUTING.md                                    |    2 +-
 LICENSE                                            |   57 +-
 LICENSE-binary                                     |   26 +-
 README.md                                          |   18 +-
 README_ZH.md                                       |   17 +-
 dependencies.json                                  |  335 +--
 docker/ReadMe.md                                   |    2 +-
 .../main/DockerCompose/docker-compose-ainode.yml   |    9 +-
 .../docker-compose-cluster-1c1d1a.yml              |   15 +-
 .../DockerCompose/docker-compose-cluster-1c2d.yml  |   21 +
 .../DockerCompose/docker-compose-host-3c3d.yml     |   14 +
 .../DockerCompose/docker-compose-standalone.yml    |    9 +-
 example/client-cpp-example/pom.xml                 |    4 +
 example/client-cpp-example/src/CMakeLists.txt      |    5 +-
 .../client-cpp-example/src/MultiSvrNodeClient.cpp  |  147 ++
 .../src/TableModelSessionExample.cpp               |    4 +-
 example/jdbc/pom.xml                               |    8 +
 .../server/CustomizedJsonPayloadFormatter.java     |    2 +-
 .../java/org/apache/iotdb/mqtt/MQTTClient.java     |   13 +-
 .../iotdb/AlignedTimeseriesSessionExample.java     |   87 +-
 integration-test/import-control.xml                |    2 +-
 integration-test/pom.xml                           |   23 +-
 integration-test/src/assembly/mpp-test.xml         |    2 +-
 .../java/org/apache/iotdb/it/env/EnvFactory.java   |    2 +-
 .../iotdb/it/env/cluster/ClusterConstant.java      |    2 +-
 .../org/apache/iotdb/it/env/cluster/EnvUtils.java  |    2 +-
 .../it/env/cluster/config/MppCommonConfig.java     |   74 +-
 .../env/cluster/config/MppSharedCommonConfig.java  |   89 +-
 .../iotdb/it/env/cluster/env/AbstractEnv.java      |   39 +-
 .../iotdb/it/env/cluster/node/AINodeWrapper.java   |   29 +-
 .../it/env/cluster/node/AbstractNodeWrapper.java   |    8 +-
 .../iotdb/it/env/cluster/node/DataNodeWrapper.java |   10 +-
 .../it/env/remote/config/RemoteCommonConfig.java   |   57 +-
 .../iotdb/it/env/remote/env/RemoteServerEnv.java   |    6 +
 .../constant/BuiltinAggregationFunctionEnum.java   |    7 +-
 .../BuiltinTimeSeriesGeneratingFunctionEnum.java   |    1 +
 .../apache/iotdb/itbase/constant/TestConstant.java |   14 +-
 .../java/org/apache/iotdb/itbase/env/BaseEnv.java  |   13 +
 .../org/apache/iotdb/itbase/env/CommonConfig.java  |   26 +-
 .../itbase/runtime/ClusterTestConnection.java      |   12 +-
 .../iotdb/itbase/runtime/ClusterTestStatement.java |    4 +-
 .../iotdb/itbase/runtime/NodeConnection.java       |   12 +-
 .../ainode/it/AINodeConcurrentInferenceIT.java     |  187 ++
 .../iotdb/ainode/it/AINodeInferenceSQLIT.java      |  118 +-
 .../ainode/it/AINodeInstanceManagementIT.java      |  212 ++
 .../apache/iotdb/ainode/utils/AINodeTestUtils.java |   35 +
 .../iotdb/auth/it/IoTDBLoginLockManagerIT.java     |  181 ++
 .../confignode/it/IoTDBConfigNodeSnapshotIT.java   |   33 +-
 .../it/cluster/IoTDBClusterNodeShutdownHookIT.java |    2 +-
 .../it/database/IoTDBDatabaseSetAndDeleteIT.java   |   66 +-
 .../it/load/IoTDBConfigNodeSwitchLeaderIT.java     |    2 +-
 ...oTDBMultiDBRegionGroupLeaderDistributionIT.java |    3 +-
 .../load/IoTDBRegionGroupLeaderDistributionIT.java |   15 +
 .../IoTDBAutoRegionGroupExtension2IT.java          |    2 +
 .../partition/IoTDBAutoRegionGroupExtensionIT.java |   13 +-
 .../IoTDBCustomRegionGroupExtensionIT.java         |    2 +-
 .../it/partition/IoTDBPartitionCreationIT.java     |   10 +-
 .../it/partition/IoTDBPartitionDurableIT.java      |   16 +-
 .../it/partition/IoTDBPartitionGetterIT.java       |   43 +-
 ...T.java => IoTDBPartitionInheritStrategyIT.java} |    4 +-
 .../partition/IoTDBPartitionShuffleStrategyIT.java |  140 ++
 ...IoTDBRegionOperationReliabilityITFramework.java |   15 +-
 .../IoTDBRegionGroupExpandAndShrinkForIoTV1IT.java |    4 +-
 .../commit/IoTDBRegionReconstructForIoTV1IT.java   |    3 +-
 .../IoTDBRegionMigrateDataNodeCrashForIoTV1IT.java |   15 +-
 ...BRegionMigrateDataNodeCrashForIoTV2BatchIT.java |   13 +-
 ...RegionMigrateDataNodeCrashForIoTV2StreamIT.java |   13 +-
 .../IoTDBRegionMigrateClusterCrashIoTV1IT.java     |    3 +-
 .../IoTDBRegionMigrateWithCompressionRatioIT.java  |  130 ++
 ...IoTDBRegionMigrateClusterCrashIoTV2BatchIT.java |    6 +-
 ...DBRegionMigrateConfigNodeCrashIoTV2BatchIT.java |    9 +-
 ...oTDBRegionMigrateClusterCrashIoTV2StreamIT.java |    9 +-
 ...BRegionMigrateConfigNodeCrashIoTV2StreamIT.java |    9 +-
 .../confignode/it/utils/ConfigNodeTestUtils.java   |   16 +-
 .../iotdb/db/it/IoTDBCustomizedClusterIT.java      |   22 +-
 .../org/apache/iotdb/db/it/IoTDBDeletionIT.java    |   21 +
 .../org/apache/iotdb/db/it/IoTDBExampleIT.java     |    4 +-
 .../java/org/apache/iotdb/db/it/IoTDBFilterIT.java |   14 +
 .../org/apache/iotdb/db/it/IoTDBFlushQueryIT.java  |    5 +-
 .../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java  |  235 +-
 .../iotdb/db/it/IoTDBLoadTsFileWithModIT.java      |   60 +-
 .../java/org/apache/iotdb/db/it/IoTDBMiscIT.java   |  116 +
 .../org/apache/iotdb/db/it/IoTDBRestServiceIT.java |   14 +-
 .../org/apache/iotdb/db/it/IoTDBRestartIT.java     |    2 +-
 .../iotdb/db/it/IoTDBSetConfigurationIT.java       |   12 +-
 .../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java |    2 +-
 .../db/it/IoTDBSyntaxConventionIdentifierIT.java   |    2 +-
 .../iotdb/db/it/aggregation/IoTDBModeIT.java       |   24 +-
 .../db/it/alignbydevice/IoTDBAlignByDevice2IT.java |    8 +-
 .../db/it/alignbydevice/IoTDBAlignByDevice3IT.java |    8 +-
 ...ByDevice3IT.java => IoTDBAlignByDevice4IT.java} |   20 +-
 .../db/it/alignbydevice/IoTDBAlignByDeviceIT.java  |   34 +-
 .../IoTDBAlignByDeviceWithTemplate2IT.java         |    8 +-
 ...java => IoTDBAlignByDeviceWithTemplate3IT.java} |   21 +-
 ...DBAlignByDeviceWithTemplateAggregation2IT.java} |   23 +-
 ...oTDBAlignByDeviceWithTemplateAggregationIT.java |    4 +-
 .../IoTDBAlignByDeviceWithTemplateIT.java          |   11 +-
 .../IoTDBOrderByLimitOffsetAlignByDevice2IT.java   |    8 +-
 ...> IoTDBOrderByLimitOffsetAlignByDevice3IT.java} |   17 +-
 .../IoTDBOrderByLimitOffsetAlignByDeviceIT.java    |    4 +-
 .../IoTDBOrderByWithAlignByDevice2IT.java          |    8 +-
 .../IoTDBOrderByWithAlignByDevice3IT.java          |    8 +-
 ....java => IoTDBOrderByWithAlignByDevice4IT.java} |   19 +-
 .../IoTDBOrderByWithAlignByDeviceIT.java           |    4 +-
 .../db/it/alignbydevice/IoTDBShuffleSink1IT.java   |    8 +-
 .../IoTDBShuffleSink1_2IT.java}                    |   46 +-
 .../db/it/alignbydevice/IoTDBShuffleSink2IT.java   |   10 +-
 .../IoTDBShuffleSink2_2IT.java}                    |   46 +-
 .../db/it/aligned/IoTDBAlignedMemQueryIT.java      |   97 +
 .../org/apache/iotdb/db/it/audit/AuditLogSet.java  |   87 +
 .../iotdb/db/it/audit/IoTDBAuditLogBasicIT.java    | 2427 +++++++++++++++++++
 .../org/apache/iotdb/db/it/auth/IoTDBAuthIT.java   |  426 ++--
 .../iotdb/db/it/auth/IoTDBClusterAuthorityIT.java  |   98 +-
 .../it/auth/IoTDBClusterAuthorityRelationalIT.java |   61 +-
 .../iotdb/db/it/auth/IoTDBGrantOptionIT.java       |   81 +
 .../iotdb/db/it/auth/IoTDBRelationalAuthIT.java    |  191 +-
 .../iotdb/db/it/auth/IoTDBSeriesPermissionIT.java  |   64 +-
 .../iotdb/db/it/auth/IoTDBSystemPermissionIT.java  |  196 +-
 .../it/auth/IoTDBSystemPermissionRelationalIT.java |  143 ++
 .../iotdb/db/it/auth/IoTDBTemplateAuthIT.java      |  568 +++++
 .../db/it/auth/IoTDBTemplatePermissionIT.java      |   36 +-
 .../apache/iotdb/db/it/auth/IoTDBUserRenameIT.java |  132 ++
 .../apache/iotdb/db/it/path/IoTDBQuotedPathIT.java |    4 +-
 .../it/schema/IoTDBAlterEncodingCompressorIT.java  |  209 ++
 .../db/it/schema/IoTDBAutoCreateSchemaIT.java      |   14 +-
 .../iotdb/db/it/schema/IoTDBCountDeviceIT.java     |  268 +++
 .../it/schema/IoTDBCreateAlignedTimeseriesIT.java  |   22 +
 .../db/it/schema/IoTDBCreateTimeseriesIT.java      |   20 +
 .../db/it/schema/IoTDBDeactivateTemplateIT.java    |    2 +-
 .../iotdb/db/it/schema/IoTDBDeleteDatabaseIT.java  |    3 +-
 .../db/it/schema/IoTDBDeleteTimeSeriesIT.java      |    2 +-
 .../iotdb/db/it/schema/IoTDBMetadataFetchIT.java   |    2 +-
 .../org/apache/iotdb/db/it/schema/IoTDBTagIT.java  |    2 +-
 .../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java  |   13 +-
 .../IoTDBUDFIntermediateBlockSerdeIT.java}         |   51 +-
 .../iotdb/db/it/utils/TSDataTypeTestUtils.java     |  113 +
 .../org/apache/iotdb/db/it/utils/TestUtils.java    |  213 +-
 .../iotdb/it/framework/IoTDBTestListener.java      |    2 +-
 .../apache/iotdb/it/framework/IoTDBTestRunner.java |    3 +
 .../pipe/it/dual/tablemodel/TableModelUtils.java   |   64 +-
 .../manual/AbstractPipeTableModelDualManualIT.java |    7 +-
 .../tablemodel/manual/basic/IoTDBPipeAlterIT.java  |   59 +-
 .../manual/basic/IoTDBPipeDataSinkIT.java          |  217 +-
 .../manual/basic/IoTDBPipeLifeCycleIT.java         |  220 +-
 .../manual/basic/IoTDBPipePermissionIT.java        |  131 +-
 .../manual/basic/IoTDBPipeProtocolIT.java          |   59 +-
 .../tablemodel/manual/basic/IoTDBPipeSourceIT.java |  271 +--
 .../manual/basic/IoTDBPipeSwitchStatusIT.java      |   62 +-
 .../tablemodel/manual/basic/IoTDBPipeSyntaxIT.java |   48 +-
 .../IoTDBPipeTsFileDecompositionWithModsIT.java    |  192 ++
 .../manual/basic/IoTDBPipeWithLoadIT.java          |    9 +-
 .../manual/basic/IoTDBTablePatternFormatIT.java    |  287 +--
 .../manual/enhanced/IoTDBPipeAutoConflictIT.java   |    1 -
 .../manual/enhanced/IoTDBPipeAutoDropIT.java       |   13 +-
 .../manual/enhanced/IoTDBPipeClusterIT.java        |  494 ++--
 .../manual/enhanced/IoTDBPipeDoubleLivingIT.java   |   88 +-
 .../manual/enhanced/IoTDBPipeIdempotentIT.java     |   32 +-
 .../manual/enhanced/IoTDBPipeMetaIT.java           |   97 +-
 .../enhanced/IoTDBPipeSinkCompressionIT.java       |   34 +-
 .../manual/enhanced/IoTDBPipeSinkParallelIT.java   |    6 +-
 .../IoTDBPipeTypeConversionISessionIT.java         |  118 +-
 .../manual/enhanced/IoTDBPipeTypeConversionIT.java |   14 +-
 .../auto/AbstractPipeDualTreeModelAutoIT.java      |   11 +-
 .../treemodel/auto/basic/IoTDBPipeAlterIT.java     |   57 +-
 .../treemodel/auto/basic/IoTDBPipeAutoSplitIT.java |  108 +
 .../treemodel/auto/basic/IoTDBPipeDataSinkIT.java  |   79 +-
 .../treemodel/auto/basic/IoTDBPipeLifeCycleIT.java |  218 +-
 .../treemodel/auto/basic/IoTDBPipeProcessorIT.java |   13 +-
 .../treemodel/auto/basic/IoTDBPipeProtocolIT.java  |   53 +-
 .../auto/basic/IoTDBPipeSinkParallelIT.java        |    6 +-
 .../treemodel/auto/basic/IoTDBPipeSourceIT.java    |  105 +-
 .../auto/basic/IoTDBPipeSwitchStatusIT.java        |   64 +-
 .../treemodel/auto/basic/IoTDBPipeSyntaxIT.java    |   25 +-
 .../auto/basic/IoTDBTreePatternFormatIT.java       |  420 +++-
 .../auto/enhanced/IoTDBPipeAutoConflictIT.java     |  105 +-
 .../auto/enhanced/IoTDBPipeAutoDropIT.java         |   12 +-
 .../auto/enhanced/IoTDBPipeClusterIT.java          |  143 +-
 .../enhanced/IoTDBPipeConditionalOperationsIT.java |   16 +-
 .../auto/enhanced/IoTDBPipeIdempotentIT.java       |   16 +-
 .../auto/enhanced/IoTDBPipeNullValueIT.java        |   28 +-
 .../auto/enhanced/IoTDBPipeSinkCompressionIT.java  |   50 +-
 .../auto/enhanced/IoTDBPipeWithLoadIT.java         |   13 +-
 .../treemodel/auto/enhanced/PipeNowFunctionIT.java |   13 +-
 .../manual/AbstractPipeDualTreeModelManualIT.java  |   11 +-
 .../treemodel/manual/IoTDBPipeInclusionIT.java     |  238 +-
 .../manual/IoTDBPipeManualConflictIT.java          |   24 +-
 .../manual/IoTDBPipeMetaHistoricalIT.java          |   44 +-
 .../manual/IoTDBPipeMetaLeaderChangeIT.java        |   28 +-
 .../treemodel/manual/IoTDBPipeMetaRestartIT.java   |   23 +-
 .../manual/IoTDBPipeMultiSchemaRegionIT.java       |   12 +-
 .../treemodel/manual/IoTDBPipePermissionIT.java    |   98 +-
 .../treemodel/manual/IoTDBPipeReqAutoSliceIT.java  |    4 +-
 .../IoTDBPipeTsFileDecompositionWithModsIT.java    |  660 ++++++
 .../manual/IoTDBPipeTypeConversionISessionIT.java  |  107 +-
 .../manual/IoTDBPipeTypeConversionIT.java          |   15 +-
 .../iotdb/pipe/it/single/AbstractPipeSingleIT.java |    3 +-
 .../iotdb/pipe/it/single/IoTDBPipeAggregateIT.java |   18 +-
 .../iotdb/pipe/it/single/IoTDBPipeOPCUAIT.java     |   15 +-
 .../pipe/it/single/IoTDBPipePermissionIT.java      |   86 +-
 .../AbstractPipeTripleManualIT.java}               |   63 +-
 .../iotdb/pipe/it/triple/IoTDBPipeForwardIT.java   |  117 +
 .../it/db/it/IoTDBAuthenticationTableIT.java       |    8 +
 .../relational/it/db/it/IoTDBDeletionTableIT.java  |  386 ++-
 .../relational/it/db/it/IoTDBInsertTableIT.java    |   62 +
 .../db/it/IoTDBMultiTAGsWithAttributesTableIT.java |   39 +-
 .../it/IoTDBPatternAggregation2IT.java}            |   26 +-
 .../it/db/it/IoTDBPatternAggregationIT.java        |   96 +-
 .../it/IoTDBPatternRecognition2IT.java}            |   27 +-
 .../it/db/it/IoTDBPatternRecognitionIT.java        |   17 +-
 .../it/db/it/IoTDBSetConfigurationTableIT.java     |   78 +-
 .../it/db/it/IoTDBWindowFunction2IT.java}          |   24 +-
 .../relational/it/db/it/IoTDBWindowFunctionIT.java |   14 +-
 .../it/db/it/IoTDBWindowTVF2IT.java}               |   25 +-
 .../relational/it/db/it/IoTDBWindowTVFIT.java      |  305 ++-
 .../it/insertquery/IoTDBInsertQueryIT.java         |   37 +-
 .../IoTDBInsertQueryWithInternalSSLIT.java         |   90 +
 .../relational/it/mqtt/IoTDBMQTTServiceIT.java     |   85 +-
 .../it/query/old/IoTDBSimpleQueryTableIT.java      |    2 +-
 .../scalar/IoTDBBitwiseFunctionTableIT.java        |   36 +-
 .../scalar/IoTDBCastFunctionTableIT.java           |    1 +
 .../scalar/IoTDBFormatFunctionTableIT.java         |    1 +
 .../it/query/old/orderBy/IoTDBOrderByTableIT.java  |    2 +-
 .../it/query/old/query/IoTDBArithmeticTableIT.java |    1 +
 .../relational/it/query/recent/IoTDBCteIT.java     |  332 +++
 .../it/query/recent/IoTDBDistinctTagIT.java        |   11 +
 ...tionNonStreamIT.java => IoTDBFillTable2IT.java} |   21 +-
 .../it/query/recent/IoTDBFillTableIT.java          |    6 +-
 ...nNonStreamIT.java => IoTDBGapFillTable2IT.java} |   20 +-
 .../it/query/recent/IoTDBGapFillTableIT.java       |    6 +-
 ...nionTableIT.java => IoTDBIntersectTableIT.java} |   78 +-
 .../it/query/recent/IoTDBMaintainAuthIT.java       |   32 +-
 ...StreamIT.java => IoTDBTableAggregation2IT.java} |   18 +-
 .../it/query/recent/IoTDBTableAggregationIT.java   |  116 +-
 ...java => IoTDBTableAggregationNonStream2IT.java} |   12 +-
 .../recent/IoTDBTableAggregationNonStreamIT.java   |    7 +-
 ...ionNonStreamIT.java => IoTDBUnionTable2IT.java} |   19 +-
 .../it/query/recent/IoTDBUnionTableIT.java         |   18 +
 .../query/recent/scalar/IoTDBCRC32FunctionIT.java  |  149 ++
 .../scalar/IoTDBFromBase32ColumnFunctionIT.java    |  197 ++
 .../scalar/IoTDBFromBase64ColumnFunctionIT.java    |  117 +
 .../scalar/IoTDBFromBase64UrlColumnFunctionIT.java |  186 ++
 .../scalar/IoTDBFromBigEndian32FunctionIT.java     |  170 ++
 .../scalar/IoTDBFromBigEndian64FunctionIT.java     |  169 ++
 .../scalar/IoTDBFromHexColumnFunctionIT.java       |  133 ++
 .../scalar/IoTDBFromIEEE754_32FunctionIT.java      |  154 ++
 .../scalar/IoTDBFromIEEE754_64FunctionIT.java      |  154 ++
 .../scalar/IoTDBFromLittleEndian32FunctionIT.java  |  173 ++
 .../scalar/IoTDBFromLittleEndian64FunctionIT.java  |  173 ++
 .../recent/scalar/IoTDBHmacMd5FunctionIT.java      |  211 ++
 .../recent/scalar/IoTDBHmacSha1FunctionIT.java     |  211 ++
 .../recent/scalar/IoTDBHmacSha256FunctionIT.java   |  217 ++
 .../recent/scalar/IoTDBHmacSha512FunctionIT.java   |  221 ++
 .../query/recent/scalar/IoTDBLpadFunctionIT.java   |  230 ++
 .../recent/scalar/IoTDBMd5ColumnFunctionIT.java    |  132 ++
 .../scalar/IoTDBMurmur3ColumnFunctionIT.java       |  132 ++
 .../recent/scalar/IoTDBReverseFunctionIT.java      |  136 ++
 .../query/recent/scalar/IoTDBRpadFunctionIT.java   |  230 ++
 .../recent/scalar/IoTDBSha1ColumnFunctionIT.java   |  132 ++
 .../recent/scalar/IoTDBSha256ColumnFunctionIT.java |  134 ++
 .../recent/scalar/IoTDBSha512ColumnFunctionIT.java |  132 ++
 .../scalar/IoTDBSpookyHashV2_32FunctionIT.java     |  156 ++
 .../scalar/IoTDBSpookyHashV2_64FunctionIT.java     |  156 ++
 .../scalar/IoTDBToBase32ColumnFunctionIT.java      |  141 ++
 .../scalar/IoTDBToBase64ColumnFunctionIT.java      |  149 ++
 .../scalar/IoTDBToBase64UrlColumnFunctionIT.java   |  126 +
 .../scalar/IoTDBToBigEndian32FunctionIT.java       |  143 ++
 .../scalar/IoTDBToBigEndian64FunctionIT.java       |  139 ++
 .../recent/scalar/IoTDBToHexColumnFunctionIT.java  |  149 ++
 .../recent/scalar/IoTDBToIEEE754_32FunctionIT.java |  118 +
 .../recent/scalar/IoTDBToIEEE754_64FunctionIT.java |  119 +
 .../scalar/IoTDBToLittleEndian32FunctionIT.java    |  140 ++
 .../scalar/IoTDBToLittleEndian64FunctionIT.java    |  140 ++
 .../scalar/IoTDBXXHash64ColumnFunctionIT.java      |  132 ++
 .../view/old/orderby/IoTDBOrderByTableViewIT.java  |    2 +-
 .../view/old/query/IoTDBArithmeticTableViewIT.java |    1 +
 .../relational/it/schema/IoTDBDatabaseIT.java      |   31 +-
 .../iotdb/relational/it/schema/IoTDBDeviceIT.java  |   48 +-
 .../iotdb/relational/it/schema/IoTDBTableIT.java   |   16 +
 .../it/session/IoTDBSessionRelationalIT.java       |  176 +-
 .../iotdb/session/it/IoTDBSessionComplexIT.java    |   64 +-
 .../iotdb/session/it/IoTDBSessionCompressedIT.java |   10 +-
 .../session/it/IoTDBSessionSchemaTemplateIT.java   |    4 -
 .../iotdb/session/it/IoTDBSessionSimpleIT.java     |   24 +-
 .../session/it/IoTDBSessionSyntaxConventionIT.java |    6 +-
 .../it/SkipOnSetUpAndTearDownFailure.java          |    3 +-
 .../IoTDBSubscriptionConsumerGroupIT.java          |   58 +-
 .../tablemodel/IoTDBSubscriptionPermissionIT.java  |   20 +-
 .../org/apache/iotdb/util/AbstractSchemaIT.java    |    2 +-
 integration-test/src/test/resources/test-keystore  |  Bin 0 -> 2710 bytes
 .../src/test/resources/test-truststore             |  Bin 0 -> 1238 bytes
 .../relational/table/argument/ScalarArgument.java  |   22 +-
 iotdb-client/cli/pom.xml                           |    8 -
 .../java/org/apache/iotdb/cli/AbstractCli.java     |   31 +-
 .../src/main/java/org/apache/iotdb/cli/Cli.java    |   12 +-
 .../apache/iotdb/cli/IoTDBSyntaxHighlighter.java   |   80 -
 .../org/apache/iotdb/cli/utils/IoTPrinter.java     |    2 +-
 .../iotdb/tool/backup/IoTDBDataBackTool.java       |    4 +-
 .../org/apache/iotdb/tool/common/Constants.java    |   26 +-
 .../org/apache/iotdb/tool/common/OptionsUtil.java  |   89 +-
 .../apache/iotdb/tool/data/AbstractDataTool.java   |   49 +-
 .../org/apache/iotdb/tool/data/ExportData.java     |   12 +-
 .../apache/iotdb/tool/data/ExportDataTable.java    |  138 +-
 .../org/apache/iotdb/tool/data/ExportDataTree.java |  180 +-
 .../org/apache/iotdb/tool/data/ImportData.java     |   24 +-
 .../apache/iotdb/tool/data/ImportDataTable.java    |  112 +-
 .../org/apache/iotdb/tool/data/ImportDataTree.java |   10 +-
 .../iotdb/tool/schema/AbstractSchemaTool.java      |   45 +-
 .../org/apache/iotdb/tool/schema/ExportSchema.java |    2 +-
 .../iotdb/tool/schema/ExportSchemaTable.java       |   60 +-
 .../apache/iotdb/tool/schema/ExportSchemaTree.java |   14 +-
 .../org/apache/iotdb/tool/schema/ImportSchema.java |    2 +-
 .../iotdb/tool/schema/ImportSchemaTable.java       |   14 +-
 .../apache/iotdb/tool/schema/ImportSchemaTree.java |   21 +-
 .../org/apache/iotdb/tool/tsfile/ExportTsFile.java |    2 +-
 .../org/apache/iotdb/tool/tsfile/ImportTsFile.java |    2 +
 .../iotdb/tool/tsfile/ImportTsFileRemotely.java    |   12 +
 .../subscription/SubscriptionTableTsFile.java      |    2 +-
 .../subscription/SubscriptionTreeTsFile.java       |    2 +-
 iotdb-client/client-cpp/README.md                  |    2 +-
 .../client-cpp/src/main/AbstractSessionBuilder.h   |    4 +
 iotdb-client/client-cpp/src/main/CMakeLists.txt    |    5 +
 iotdb-client/client-cpp/src/main/Common.cpp        |   44 +
 iotdb-client/client-cpp/src/main/Common.h          |   18 +
 iotdb-client/client-cpp/src/main/NodesSupplier.cpp |  104 +-
 iotdb-client/client-cpp/src/main/NodesSupplier.h   |    1 +
 iotdb-client/client-cpp/src/main/Session.cpp       |   88 +-
 iotdb-client/client-cpp/src/main/Session.h         |   14 +-
 .../{TableSessionBuilder.h => SessionBuilder.h}    |   72 +-
 .../client-cpp/src/main/SessionConnection.cpp      |    2 +
 .../client-cpp/src/main/SessionConnection.h        |    3 +-
 iotdb-client/client-cpp/src/main/TableSession.h    |   12 +-
 .../client-cpp/src/main/TableSessionBuilder.h      |   10 +-
 iotdb-client/client-cpp/src/test/CMakeLists.txt    |    5 +
 iotdb-client/client-cpp/src/test/cpp/sessionIT.cpp |  125 +-
 .../src/test/cpp/sessionRelationalIT.cpp           |   24 +
 iotdb-client/client-py/pom.xml                     |    3 +
 .../tests/integration/sqlalchemy/test_dialect.py   |    2 +-
 iotdb-client/jdbc/pom.xml                          |    8 +-
 .../iotdb/jdbc/IoTDBAbstractDatabaseMetadata.java  | 1763 +++++++-------
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |   16 +-
 .../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java   |  574 +++--
 .../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java  |    2 +-
 .../apache/iotdb/jdbc/IoTDBPreparedStatement.java  |   19 +-
 .../org/apache/iotdb/jdbc/IoTDBResultMetadata.java |    4 +-
 .../java/org/apache/iotdb/jdbc/IoTDBStatement.java |    2 +-
 .../iotdb/jdbc/IoTDBPreparedStatementTest.java     |  154 +-
 iotdb-client/service-rpc/pom.xml                   |   16 +
 .../apache/iotdb/rpc/BaseRpcTransportFactory.java  |   25 +
 .../iotdb/rpc/NettyTNonblockingTransport.java      |  624 +++++
 .../rpc/TCompressedElasticFramedTransport.java     |    8 +-
 .../apache/iotdb/rpc/TElasticFramedTransport.java  |  137 +-
 ...pper.java => TNonblockingTransportWrapper.java} |   28 +-
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |    3 +
 .../iotdb/rpc/TElasticFramedTransportTest.java     |   37 +
 .../org/apache/iotdb/session/NodesSupplier.java    |   49 +-
 .../java/org/apache/iotdb/session/Session.java     |   10 +-
 .../apache/iotdb/session/TableSessionBuilder.java  |   12 +-
 .../org/apache/iotdb/session/ThriftConnection.java |    1 +
 .../org/apache/iotdb/session/pool/SessionPool.java |    8 +-
 .../session/pool/TableSessionPoolBuilder.java      |   12 +-
 iotdb-core/ainode/.gitignore                       |   25 +-
 iotdb-core/ainode/ainode.spec                      |  199 ++
 iotdb-core/ainode/ainode.xml                       |   17 +-
 .../core/inference/inference_request_pool.py       |  204 --
 .../core/inference/inference_request_pool_group.py |   63 -
 .../ainode/core/inference/pool_controller.py       |  129 -
 .../ainode/ainode/core/inference/pool_scheduler.py |  125 -
 .../ainode/core/inference/request_controller.py    |   89 -
 iotdb-core/ainode/ainode/core/rpc/handler.py       |   76 -
 iotdb-core/ainode/ainode/core/script.py            |  110 -
 iotdb-core/ainode/build_binary.py                  |  602 +++++
 iotdb-core/ainode/{ainode => iotdb}/__init__.py    |    0
 .../{ainode/core => iotdb/ainode}/__init__.py      |    0
 .../inference => iotdb/ainode/core}/__init__.py    |    0
 .../ainode/{ => iotdb}/ainode/core/ai_node.py      |   28 +-
 .../ainode/{ => iotdb}/ainode/core/config.py       |   85 +-
 .../ainode/{ => iotdb}/ainode/core/constant.py     |   27 +-
 .../ainode/{ => iotdb}/ainode/core/exception.py    |    9 +-
 .../ainode/core/inference}/__init__.py             |    0
 .../ainode/core/inference/batcher}/__init__.py     |    0
 .../core/inference/batcher/abstract_batcher.py}    |   35 +-
 .../ainode/core/inference/batcher/basic_batcher.py |   63 +
 .../ainode/core/inference/dispatcher}/__init__.py  |    0
 .../inference/dispatcher/abstract_dispatcher.py}   |   32 +-
 .../core/inference/dispatcher/basic_dispatcher.py  |   60 +
 .../ainode/core/inference/inference_request.py     |   16 +-
 .../core/inference/inference_request_pool.py       |  223 ++
 .../iotdb/ainode/core/inference/pool_controller.py |  519 ++++
 .../iotdb/ainode/core/inference/pool_group.py      |  121 +
 .../core/inference/pool_scheduler}/__init__.py     |    0
 .../pool_scheduler/abstract_pool_scheduler.py      |   86 +
 .../pool_scheduler/basic_pool_scheduler.py         |  193 ++
 .../core/inference/request_scheduler}/__init__.py  |    0
 .../abstract_request_scheduler.py}                 |    2 +-
 .../request_scheduler/basic_request_scheduler.py}  |   11 +-
 .../ainode/core/inference/strategy}/__init__.py    |    0
 .../strategy/abstract_inference_pipeline.py        |    0
 .../strategy/timer_sundial_inference_pipeline.py   |    6 +-
 .../strategy/timerxl_inference_pipeline.py         |   12 +-
 .../{ => iotdb}/ainode/core/inference/utils.py     |    0
 .../ainode/core/ingress}/__init__.py               |    0
 .../{ => iotdb}/ainode/core/ingress/dataset.py     |    0
 .../{ => iotdb}/ainode/core/ingress/iotdb.py       |   22 +-
 iotdb-core/ainode/{ => iotdb}/ainode/core/log.py   |    9 +-
 .../rpc => iotdb/ainode/core/manager}/__init__.py  |    0
 .../ainode/core/manager/cluster_manager.py         |    4 +-
 .../ainode/core/manager/inference_manager.py       |  199 +-
 .../ainode/core/manager/model_manager.py           |   38 +-
 .../{ => iotdb}/ainode/core/manager/utils.py       |   35 +-
 .../util => iotdb/ainode/core/model}/__init__.py   |    0
 .../ainode/core/model/built_in_model_factory.py    |   54 +-
 .../{ => iotdb}/ainode/core/model/model_enums.py   |    0
 .../{ => iotdb}/ainode/core/model/model_factory.py |   14 +-
 .../{ => iotdb}/ainode/core/model/model_info.py    |    4 +-
 .../{ => iotdb}/ainode/core/model/model_storage.py |   37 +-
 .../iotdb/ainode/core/model/sundial}/__init__.py   |    0
 .../core/model/sundial/configuration_sundial.py    |    0
 .../ainode/core/model/sundial/flow_loss.py         |    0
 .../ainode/core/model/sundial/modeling_sundial.py  |   89 +-
 .../core/model/sundial/ts_generation_mixin.py      |   14 +-
 .../iotdb/ainode/core/model/timerxl}/__init__.py   |    0
 .../core/model/timerxl/configuration_timer.py      |    0
 .../ainode/core/model/timerxl/modeling_timer.py    |   89 +-
 .../core/model/timerxl/ts_generation_mixin.py      |   12 +-
 .../{ => iotdb}/ainode/core/model/uri_utils.py     |   10 +-
 .../ainode/iotdb/ainode/core/rpc}/__init__.py      |    0
 .../ainode/{ => iotdb}/ainode/core/rpc/client.py   |   46 +-
 iotdb-core/ainode/iotdb/ainode/core/rpc/handler.py |  135 ++
 .../ainode/{ => iotdb}/ainode/core/rpc/service.py  |   42 +-
 .../ainode/{ => iotdb}/ainode/core/rpc/status.py   |    6 +-
 iotdb-core/ainode/iotdb/ainode/core/script.py      |   69 +
 .../ainode/iotdb/ainode/core/util}/__init__.py     |    0
 .../{ => iotdb}/ainode/core/util/activation.py     |    0
 .../ainode/iotdb/ainode/core/util/atmoic_int.py    |   66 +
 .../iotdb/ainode/core/util/batch_executor.py       |  133 ++
 .../ainode/{ => iotdb}/ainode/core/util/cache.py   |    4 +-
 .../{ => iotdb}/ainode/core/util/decorator.py      |    0
 .../ainode/iotdb/ainode/core/util/gpu_mapping.py   |   93 +
 .../ainode/core/util/huggingface_cache.py          |    0
 .../ainode/{ => iotdb}/ainode/core/util/lock.py    |    0
 .../ainode/{ => iotdb}/ainode/core/util/masking.py |    0
 .../ainode/{ => iotdb}/ainode/core/util/serde.py   |    2 +-
 .../ainode/core/util/thread_name.py}               |    5 +
 iotdb-core/ainode/poetry.lock                      | 2469 --------------------
 iotdb-core/ainode/pom.xml                          |  136 +-
 iotdb-core/ainode/pyproject.toml                   |  103 +-
 .../ainode/resources/conf/iotdb-ainode.properties  |   20 +-
 .../ainode/resources/syncPythonVersion.groovy      |   33 -
 .../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 |    7 +-
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |   62 +-
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4  |   41 +
 iotdb-core/confignode/pom.xml                      |   29 +-
 .../iotdb/confignode/audit/CNAuditLogger.java      |   94 +
 .../confignode/client/CnToCnNodeRequestType.java   |    1 +
 .../async/AsyncAINodeHeartbeatClientPool.java      |    7 +-
 .../async/AsyncDataNodeHeartbeatClientPool.java    |   11 +
 .../client/async/CnToDnAsyncRequestType.java       |    5 +-
 .../CnToDnInternalServiceAsyncRequestManager.java  |   14 +-
 .../audit/DataNodeWriteAuditLogHandler.java}       |   29 +-
 .../rpc/DataNodeAsyncRequestRPCHandler.java        |    1 +
 .../handlers/rpc/PipeHeartbeatRPCHandler.java      |    2 +-
 .../async/handlers/rpc/PipePushMetaRPCHandler.java |    2 +-
 .../client/sync/CnToDnSyncRequestType.java         |    1 +
 .../client/sync/SyncConfigNodeClientPool.java      |    2 +
 .../client/sync/SyncDataNodeClientPool.java        |    6 +-
 .../iotdb/confignode/conf/ConfigNodeConfig.java    |   19 +-
 .../confignode/conf/ConfigNodeDescriptor.java      |    7 +
 .../confignode/conf/ConfigNodeRemoveCheck.java     |  155 --
 .../conf/ConfigNodeSystemPropertiesHandler.java    |   23 +-
 .../confignode/conf/SystemPropertiesUtils.java     |   14 +-
 .../consensus/request/ConfigPhysicalPlan.java      |   10 +
 .../consensus/request/ConfigPhysicalPlanType.java  |   21 +
 .../request/ConfigPhysicalPlanVisitor.java         |   12 +
 .../request/read/database/CountDatabasePlan.java   |   13 +-
 .../request/read/database/GetDatabasePlan.java     |   10 +-
 .../request/read/model/ShowModelPlan.java          |    4 +-
 .../read/partition/GetNodePathsPartitionPlan.java  |    9 +
 .../consensus/request/write/auth/AuthorPlan.java   |   48 +-
 .../request/write/auth/AuthorRelationalPlan.java   |   85 +-
 .../request/write/auth/AuthorTreePlan.java         |   92 +-
 .../consensus/request/write/cq/ActiveCQPlan.java   |    2 +-
 .../consensus/request/write/cq/AddCQPlan.java      |    2 +-
 .../consensus/request/write/cq/DropCQPlan.java     |    2 +-
 .../request/write/cq/UpdateCQLastExecTimePlan.java |    2 +-
 .../write/database/PreDeleteDatabasePlan.java      |   22 +-
 .../payload/PipeAlterEncodingCompressorPlan.java   |  130 ++
 .../response/auth/PermissionInfoResp.java          |   11 +
 .../consensus/response/model/GetModelInfoResp.java |    8 -
 .../response/pipe/task/PipeTableResp.java          |  102 +-
 .../exception/NoAvailableAINodeException.java}     |   15 +-
 .../exception/NoAvailableRegionGroupException.java |   14 +-
 .../iotdb/confignode/manager/ConfigManager.java    |  221 +-
 .../apache/iotdb/confignode/manager/IManager.java  |   64 +-
 .../iotdb/confignode/manager/ModelManager.java     |  149 +-
 .../confignode/manager/PermissionManager.java      |   21 +-
 .../iotdb/confignode/manager/ProcedureManager.java |   78 +-
 .../manager/consensus/ConsensusManager.java        |    5 +
 .../iotdb/confignode/manager/load/LoadManager.java |    2 +-
 .../manager/load/balancer/PartitionBalancer.java   |  194 +-
 .../manager/load/balancer/RegionBalancer.java      |    2 +-
 .../region/GreedyCopySetRegionGroupAllocator.java  |    4 +-
 .../region/GreedyRegionGroupAllocator.java         |    4 +-
 .../load/cache/detector/PhiAccrualDetector.java    |   14 +-
 .../manager/load/service/HeartbeatService.java     |    4 +-
 .../iotdb/confignode/manager/node/NodeManager.java |   82 +-
 .../manager/partition/PartitionManager.java        |   10 +-
 .../agent/runtime/PipeConfigNodeRuntimeAgent.java  |   11 +-
 .../pipe/agent/task/PipeConfigNodeSubtask.java     |   57 +-
 .../pipe/agent/task/PipeConfigNodeTaskAgent.java   |   11 +-
 .../pipe/agent/task/PipeConfigNodeTaskBuilder.java |    6 +-
 .../runtime/PipeLeaderChangeHandler.java           |    4 +-
 .../runtime/PipeRuntimeCoordinator.java            |    2 +-
 .../runtime/heartbeat/PipeHeartbeat.java           |    4 +-
 .../runtime/heartbeat/PipeHeartbeatParser.java     |    2 +-
 .../runtime/heartbeat/PipeHeartbeatScheduler.java  |    5 +-
 .../pipe/coordinator/task/PipeTaskCoordinator.java |    2 +-
 .../coordinator/task/PipeTaskCoordinatorLock.java  |   10 +-
 .../pipe/event/PipeConfigRegionSnapshotEvent.java  |   45 +-
 .../pipe/event/PipeConfigRegionWritePlanEvent.java |   10 +-
 .../receiver/protocol/IoTDBConfigNodeReceiver.java |  177 +-
 .../PipeConfigPhysicalPlanTSStatusVisitor.java     |   12 +
 .../client/IoTDBConfigNodeSyncClientManager.java   |   11 +-
 .../payload/PipeTransferConfigSnapshotSealReq.java |    8 +-
 .../sink/protocol/IoTDBConfigRegionAirGapSink.java |   18 +-
 .../pipe/sink/protocol/IoTDBConfigRegionSink.java  |   25 +-
 .../pipe/source/ConfigRegionListeningFilter.java   |   34 +-
 .../pipe/source/ConfigRegionListeningQueue.java    |   31 +-
 .../pipe/source/IoTDBConfigRegionSource.java       |   11 +-
 ...eConfigPhysicalPlanTreePatternParseVisitor.java |   85 +-
 .../manager/schema/ClusterSchemaManager.java       |   40 +-
 .../iotdb/confignode/persistence/ModelInfo.java    |    2 -
 .../confignode/persistence/auth/AuthorInfo.java    |  269 +++
 .../AuthorPlanExecutor.java}                       |  295 +--
 .../persistence/auth/IAuthorPlanExecutor.java      |   62 +
 .../persistence/executor/ConfigPlanExecutor.java   |   18 +-
 .../persistence/partition/PartitionInfo.java       |   15 +-
 .../confignode/persistence/pipe/PipeInfo.java      |   10 +-
 .../confignode/persistence/pipe/PipeTaskInfo.java  |   34 +-
 .../schema/CNPhysicalPlanGenerator.java            |   53 +-
 .../persistence/schema/ClusterSchemaInfo.java      |   20 +-
 .../confignode/persistence/schema/ConfigMTree.java |   15 +-
 .../schema/ConfigNodeSnapshotParser.java           |    5 +-
 .../persistence/schema/TemplateTable.java          |   10 +-
 .../procedure/CompletedProcedureRecycler.java      |   21 +-
 .../iotdb/confignode/procedure/Procedure.java      |   27 +-
 .../confignode/procedure/ProcedureExecutor.java    |   95 +-
 .../procedure/TimeoutExecutorThread.java           |   12 +-
 .../procedure/impl/cq/CreateCQProcedure.java       |    2 +-
 .../procedure/impl/model/CreateModelProcedure.java |    4 +-
 .../procedure/impl/model/DropModelProcedure.java   |    7 +-
 .../procedure/impl/node/RemoveAINodeProcedure.java |    4 +-
 .../impl/pipe/AbstractOperatePipeProcedureV2.java  |   35 +-
 .../impl/pipe/runtime/PipeMetaSyncProcedure.java   |   22 +-
 .../impl/pipe/task/AlterPipeProcedureV2.java       |   47 +-
 .../impl/pipe/task/CreatePipeProcedureV2.java      |   50 +-
 .../pipe/util/PipeExternalSourceLoadBalancer.java  |    2 +-
 .../schema/AlterEncodingCompressorProcedure.java   |  337 +++
 .../impl/schema/AlterLogicalViewProcedure.java     |    2 +-
 .../impl/schema/DataNodeTSStatusTaskExecutor.java  |   74 +
 .../impl/schema/DeactivateTemplateProcedure.java   |   26 +-
 .../impl/schema/DeleteDatabaseProcedure.java       |   28 +-
 .../impl/schema/DeleteLogicalViewProcedure.java    |   26 +-
 .../impl/schema/DeleteTimeSeriesProcedure.java     |   66 +-
 .../table/AbstractAlterOrDropTableProcedure.java   |   29 +-
 .../scheduler/AbstractProcedureScheduler.java      |    2 +-
 .../state/AlterEncodingCompressorState.java}       |   13 +-
 ...ageGroupState.java => DeleteDatabaseState.java} |    2 +-
 .../procedure/store/ConfigProcedureStore.java      |   26 +-
 .../procedure/store/IProcedureStore.java           |   10 +-
 .../procedure/store/ProcedureFactory.java          |    9 +
 .../confignode/procedure/store/ProcedureType.java  |    4 +
 .../iotdb/confignode/service/ConfigNode.java       |   27 +
 .../service/thrift/ConfigNodeRPCService.java       |   38 +-
 .../thrift/ConfigNodeRPCServiceProcessor.java      |  115 +-
 .../request/ConfigPhysicalPlanSerDeTest.java       |   35 +-
 .../pipe/sink/PipeConfigNodeThriftRequestTest.java |    3 +-
 ...figPhysicalPlanTreePatternParseVisitorTest.java |   80 +-
 .../confignode/persistence/AuthorInfoTest.java     |    7 +-
 .../persistence/CNPhysicalPlanGeneratorTest.java   |   43 +-
 .../iotdb/confignode/persistence/CQInfoTest.java   |    2 +-
 .../ConfigRegionListeningQueueTest.java            |    2 +-
 .../iotdb/confignode/persistence/NodeInfoTest.java |    2 +-
 .../confignode/persistence/PartitionInfoTest.java  |    2 +-
 .../iotdb/confignode/persistence/PipeInfoTest.java |    2 +-
 .../confignode/persistence/QuotaInfoTest.java      |    2 +-
 .../iotdb/confignode/persistence/TTLInfoTest.java  |    2 +-
 .../confignode/persistence/TriggerInfoTest.java    |    2 +-
 .../iotdb/confignode/persistence/UDFInfoTest.java  |    2 +-
 .../persistence/schema/ClusterSchemaInfoTest.java  |    3 +-
 .../persistence/schema/ConfigMTreeTest.java        |   22 +-
 .../schema/TemplatePreSetTableTest.java            |    2 +-
 .../persistence/schema/TemplateTableTest.java      |    2 +-
 .../pipe/annotation/PipePluginAnnotationTest.java  |   11 +-
 .../pipe/receiver/PipeEnrichedProcedureTest.java   |   30 +-
 ...a => AlterEncodingCompressorProcedureTest.java} |   33 +-
 .../impl/schema/DeleteTimeSeriesProcedureTest.java |    2 +-
 iotdb-core/consensus/pom.xml                       |   23 +-
 .../apache/iotdb/consensus/ConsensusFactory.java   |    2 +-
 .../iotdb/consensus/config/IoTConsensusConfig.java |   76 +-
 .../consensus/config/PipeConsensusConfig.java      |   76 +-
 .../apache/iotdb/consensus/config/RatisConfig.java |   74 +-
 .../consensus/iot/IoTConsensusServerImpl.java      |    2 +-
 .../iot/client/AsyncIoTConsensusServiceClient.java |   20 +-
 .../consensus/iot/client/DispatchLogHandler.java   |    6 +-
 .../iot/client/SyncIoTConsensusServiceClient.java  |   24 +-
 .../iot/logdispatcher/IndexController.java         |    2 +-
 .../iot/service/IoTConsensusRPCService.java        |   38 +-
 .../apache/iotdb/consensus/pipe/PipeConsensus.java |    2 +-
 .../pipe/consensuspipe/ConsensusPipeManager.java   |    7 +-
 .../pipe/service/PipeConsensusRPCService.java      |   38 +-
 .../apache/iotdb/consensus/ratis/RatisClient.java  |   13 +-
 .../iotdb/consensus/ratis/RatisConsensus.java      |   16 +-
 .../iotdb/consensus/ratis/SnapshotStorage.java     |    2 +-
 .../utils/NoHostnameVerificationTrustManager.java  |   88 +
 .../apache/iotdb/consensus/ratis/utils/Utils.java  |   62 +-
 iotdb-core/datanode/pom.xml                        |   41 +-
 .../assembly/resources/conf/logback-datanode.xml   |   15 -
 .../src/main/codegen/templates/ModeAccumulator.ftl |    2 +-
 .../org/apache/iotdb/db/audit/AuditLogger.java     |  271 ---
 .../org/apache/iotdb/db/audit/DNAuditLogger.java   |  461 ++++
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |  159 +-
 .../apache/iotdb/db/auth/BasicAuthorityCache.java  |    3 +
 .../iotdb/db/auth/ClusterAuthorityFetcher.java     |   97 +-
 .../apache/iotdb/db/auth/IAuthorityFetcher.java    |    6 +-
 .../org/apache/iotdb/db/auth/LoginLockManager.java |  405 ++++
 .../apache/iotdb/db/conf/DataNodeMemoryConfig.java |   10 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  285 ++-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  145 +-
 .../org/apache/iotdb/db/conf/IoTDBStartCheck.java  |   69 +-
 .../db/consensus/DataRegionConsensusImpl.java      |   24 +
 .../db/consensus/SchemaRegionConsensusImpl.java    |   11 +-
 .../dataregion/DataExecutionVisitor.java           |    4 +-
 .../dataregion/DataRegionStateMachine.java         |   15 +-
 .../schemaregion/SchemaExecutionVisitor.java       |   59 +-
 .../runtime/TableNotExistsRuntimeException.java    |   36 -
 .../PipeDataRegionSourceConstructor.java           |    4 -
 .../agent/runtime/PipeDataNodeRuntimeAgent.java    |   32 +-
 .../agent/runtime/SimpleProgressIndexAssigner.java |    2 +-
 .../db/pipe/agent/task/PipeDataNodeTaskAgent.java  |  105 +-
 .../agent/task/builder/PipeDataNodeBuilder.java    |    2 +-
 .../task/builder/PipeDataNodeTaskBuilder.java      |  160 +-
 .../agent/task/connection/PipeEventCollector.java  |   20 +-
 .../task/execution/PipeSubtaskExecutorManager.java |   15 +-
 .../pipe/agent/task/stage/PipeTaskSourceStage.java |    9 +-
 .../agent/task/subtask/sink/PipeSinkSubtask.java   |   71 +-
 .../task/subtask/sink/PipeSinkSubtaskManager.java  |    9 +-
 .../consensus/PipeConsensusSubtaskExecutor.java    |   39 +-
 .../deletion/persist/PageCacheDeletionBuffer.java  |   24 +-
 .../consensus/deletion/recover/DeletionReader.java |    2 +-
 .../db/pipe/event/UserDefinedEnrichedEvent.java    |    6 +
 .../db/pipe/event/common/PipeInsertionEvent.java   |   16 +-
 .../common/deletion/PipeDeleteDataNodeEvent.java   |   19 +-
 .../event/common/heartbeat/PipeHeartbeatEvent.java |   10 +-
 .../schema/PipeSchemaRegionSnapshotEvent.java      |   10 +
 .../schema/PipeSchemaRegionWritePlanEvent.java     |   10 +-
 .../statement/PipeStatementInsertionEvent.java     |    6 +
 .../tablet/PipeInsertNodeTabletInsertionEvent.java |   24 +-
 .../common/tablet/PipeRawTabletInsertionEvent.java |   43 +-
 .../tablet/parser/TabletInsertionEventParser.java  |   11 +-
 .../event/common/terminate/PipeTerminateEvent.java |    4 +
 .../tsfile/PipeCompactedTsFileInsertionEvent.java  |    8 +
 .../common/tsfile/PipeTsFileInsertionEvent.java    |   91 +-
 .../tsfile/parser/TsFileInsertionEventParser.java  |   84 +-
 .../parser/TsFileInsertionEventParserProvider.java |   26 +-
 .../query/TsFileInsertionEventQueryParser.java     |   93 +-
 ...ileInsertionEventQueryParserTabletIterator.java |   33 +-
 .../scan/TsFileInsertionEventScanParser.java       |  366 ++-
 .../table/TsFileInsertionEventTableParser.java     |   69 +-
 ...ileInsertionEventTableParserTabletIterator.java |  123 +-
 .../tsfile/parser/util/ModsOperationUtil.java      |  314 +++
 .../db/pipe/event/realtime/PipeRealtimeEvent.java  |   25 +-
 .../overview/PipeDataNodeSinglePipeMetrics.java    |   34 +
 .../pipe/metric/overview/PipeResourceMetrics.java  |   13 +
 .../overview/PipeTsFileToTabletsMetrics.java       |   67 +
 .../metric/processor/PipeProcessorMetrics.java     |    3 +-
 .../schema/PipeSchemaRegionListenerMetrics.java    |    4 +-
 .../metric/schema/PipeSchemaRegionSinkMetrics.java |    3 +-
 .../schema/PipeSchemaRegionSourceMetrics.java      |    3 +-
 .../metric/sink/PipeDataRegionSinkMetrics.java     |    3 +-
 .../db/pipe/metric/source/PipeAssignerMetrics.java |    3 +-
 .../metric/source/PipeDataRegionSourceMetrics.java |    3 +-
 .../processor/aggregate/AggregateProcessor.java    |    5 +-
 .../downsampling/PartialPathLastObjectCache.java   |   60 +-
 .../schemachange/RenameDatabaseProcessor.java      |    2 +-
 .../protocol/airgap/IoTDBAirGapReceiverAgent.java  |    5 +-
 .../legacy/IoTDBLegacyPipeReceiverAgent.java       |   20 +-
 .../protocol/legacy/loader/DeletionLoader.java     |    9 +-
 .../protocol/legacy/loader/TsFileLoader.java       |    9 +-
 .../pipeconsensus/PipeConsensusReceiver.java       |  356 ++-
 .../pipeconsensus/PipeConsensusReceiverAgent.java  |    2 +-
 .../protocol/thrift/IoTDBDataNodeReceiver.java     |  113 +-
 .../transform/converter/ValueConverter.java        |    2 +-
 .../statement/PipeConvertedInsertRowStatement.java |   13 +-
 .../visitor/PipePlanToStatementVisitor.java        |    6 +-
 .../visitor/PipeStatementExceptionVisitor.java     |    8 +-
 .../visitor/PipeStatementTSStatusVisitor.java      |   51 +-
 .../PipeStatementTreePatternParseVisitor.java      |   30 +-
 ...leStatementDataTypeConvertExecutionVisitor.java |    7 +-
 ...eeStatementDataTypeConvertExecutionVisitor.java |    6 +-
 ...aNodeHardlinkOrCopiedFileDirStartupCleaner.java |    2 +-
 .../resource/log/PipePeriodicalLogReducer.java     |   91 +
 .../resource/memory/InsertNodeMemoryEstimator.java |   53 +-
 .../db/pipe/resource/memory/PipeMemoryManager.java |   33 +-
 .../pipe/resource/memory/PipeMemoryWeightUtil.java |   62 +-
 .../tsfile/PipeTsFileResourceSegmentLock.java      |   63 +-
 .../client/IoTDBDataNodeAsyncClientManager.java    |   61 +-
 .../IoTDBDataNodeCacheLeaderClientManager.java     |   78 +-
 .../client/IoTDBDataNodeSyncClientManager.java     |   13 +-
 .../protocol/airgap/IoTDBDataNodeAirGapSink.java   |    4 +
 .../protocol/airgap/IoTDBDataRegionAirGapSink.java |   31 +
 .../airgap/IoTDBSchemaRegionAirGapSink.java        |   11 +-
 .../sink/protocol/legacy/IoTDBLegacyPipeSink.java  |    2 +-
 .../pipeconsensus/PipeConsensusAsyncSink.java      |    2 +-
 .../pipeconsensus/PipeConsensusSyncSink.java       |    2 +-
 .../handler/PipeConsensusDeleteEventHandler.java   |    2 +-
 .../thrift/async/IoTDBDataRegionAsyncSink.java     |   52 +-
 .../PipeTransferTabletBatchEventHandler.java       |   10 +-
 .../PipeTransferTabletInsertionEventHandler.java   |   10 +-
 .../handler/PipeTransferTrackableHandler.java      |    5 +
 .../async/handler/PipeTransferTsFileHandler.java   |   27 +-
 .../thrift/sync/IoTDBDataNodeSyncSink.java         |   11 +-
 .../thrift/sync/IoTDBDataRegionSyncSink.java       |   26 +-
 .../thrift/sync/IoTDBSchemaRegionSink.java         |   11 +-
 .../websocket/WebSocketConnectorServer.java        |    4 +-
 .../sink/protocol/writeback/WriteBackSink.java     |   30 +-
 .../util/builder/PipeTableModelTsFileBuilder.java  |    2 +-
 .../util/builder/PipeTreeModelTsFileBuilder.java   |    2 +-
 .../pipe/sink/util/builder/PipeTsFileBuilder.java  |    2 +-
 .../source/dataregion/IoTDBDataRegionSource.java   |  104 +-
 ...istoricalDataRegionTsFileAndDeletionSource.java |  167 +-
 .../PipeRealtimeDataRegionHybridSource.java        |    1 +
 .../realtime/PipeRealtimeDataRegionLogSource.java  |    1 +
 .../realtime/PipeRealtimeDataRegionSource.java     |   47 +-
 .../PipeRealtimeDataRegionTsFileSource.java        |    2 +
 .../realtime/assigner/DisruptorQueue.java          |   20 +-
 .../assigner/DisruptorQueueExceptionHandler.java   |    3 +-
 .../realtime/assigner/PipeDataRegionAssigner.java  |    4 +-
 .../realtime/disruptor/BatchEventProcessor.java    |  120 +
 .../dataregion/realtime/disruptor/Disruptor.java   |  135 ++
 .../realtime/disruptor/EventFactory.java}          |   31 +-
 .../realtime/disruptor/EventHandler.java}          |   25 +-
 .../realtime/disruptor/ExceptionHandler.java}      |   41 +-
 .../realtime/disruptor/MultiProducerSequencer.java |  270 +++
 .../dataregion/realtime/disruptor/RingBuffer.java  |  295 +++
 .../dataregion/realtime/disruptor/Sequence.java    |  122 +
 .../realtime/disruptor/SequenceBarrier.java        |   78 +
 .../realtime/disruptor/SequenceGroups.java         |   65 +
 .../dataregion/realtime/epoch/TsFileEpoch.java     |   41 +-
 .../realtime/epoch/TsFileEpochManager.java         |    3 -
 .../listener/PipeInsertionDataNodeListener.java    |    5 +-
 .../listener/PipeTimePartitionListener.java        |    3 +-
 .../matcher/CachedSchemaPatternMatcher.java        |  210 +-
 .../db/pipe/source/mqtt/MQTTPublishHandler.java    |  323 ---
 .../iotdb/db/pipe/source/mqtt/MQTTSource.java      |  180 --
 .../schemaregion/IoTDBSchemaRegionSource.java      |   16 +-
 .../PipePlanTablePrivilegeParseVisitor.java        |   36 +-
 .../PipePlanTreePatternParseVisitor.java           |   56 +-
 .../db/protocol/client/AINodeClientFactory.java    |  133 ++
 .../iotdb/db/protocol/client/ConfigNodeClient.java |   95 +-
 .../db/protocol/client/DataNodeInternalClient.java |   13 +-
 .../db/protocol}/client/ainode/AINodeClient.java   |  185 +-
 .../client/ainode/AINodeClientManager.java         |   75 +
 .../client/ainode/AsyncAINodeServiceClient.java    |   21 +-
 .../db/protocol/mqtt/BrokerAuthenticator.java      |    2 +-
 .../db/protocol/mqtt/JSONPayloadFormatter.java     |    2 +-
 .../db/protocol/mqtt/LinePayloadFormatter.java     |   15 +-
 .../iotdb/db/protocol/mqtt/MPPPublishHandler.java  |   49 +-
 .../db/protocol/mqtt/PayloadFormatManager.java     |    6 +-
 .../protocol/rest/filter/AuthorizationFilter.java  |    2 +
 .../apache/iotdb/db/protocol/rest/filter/User.java |    9 +
 .../rest/handler/AuthorizationHandler.java         |    5 +-
 .../table/v1/handler/ExecuteStatementHandler.java  |    4 +
 .../table/v1/handler/RequestValidationHandler.java |    2 +-
 .../v1/handler/StatementConstructionHandler.java   |    7 +-
 .../rest/v1/handler/ExecuteStatementHandler.java   |    4 +
 .../rest/v1/handler/QueryDataSetHandler.java       |    4 +
 .../rest/v1/handler/RequestValidationHandler.java  |    2 +-
 .../rest/v1/impl/GrafanaApiServiceImpl.java        |    2 +-
 .../rest/v2/handler/ExecuteStatementHandler.java   |    4 +
 .../rest/v2/handler/QueryDataSetHandler.java       |    4 +
 .../rest/v2/handler/RequestValidationHandler.java  |    2 +-
 .../rest/v2/impl/GrafanaApiServiceImpl.java        |    2 +-
 .../protocol/rest/v2/impl/RestApiServiceImpl.java  |   43 +-
 .../iotdb/db/protocol/session/IClientSession.java  |   10 +
 .../iotdb/db/protocol/session/SessionManager.java  |  212 +-
 .../iotdb/db/protocol/thrift/OperationType.java    |    3 +-
 .../protocol/thrift/impl/ClientRPCServiceImpl.java |  441 ++--
 .../impl/DataNodeInternalRPCServiceImpl.java       |  172 +-
 .../db/queryengine/common/MPPQueryContext.java     |  123 +-
 .../iotdb/db/queryengine/common/SessionInfo.java   |   75 +-
 .../common/header/DatasetHeaderFactory.java        |   12 +
 .../common/schematree/DeviceSchemaInfo.java        |   12 +-
 .../execution/aggregation/AccumulatorFactory.java  |    8 +-
 .../queryengine/execution/driver/DataDriver.java   |   44 +-
 .../execution/exchange/MPPDataExchangeManager.java |    2 +-
 .../execution/exchange/MPPDataExchangeService.java |   44 +-
 .../execution/exchange/SharedTsBlockQueue.java     |    2 +-
 .../execution/exchange/sink/LocalSinkChannel.java  |    2 +-
 .../execution/exchange/sink/ShuffleSinkHandle.java |    2 +-
 .../execution/exchange/sink/SinkChannel.java       |    2 +-
 .../exchange/source/LocalSourceHandle.java         |    2 +-
 .../execution/exchange/source/SourceHandle.java    |    2 +-
 .../execution/executor/RegionReadExecutor.java     |   10 +-
 .../execution/executor/RegionWriteExecutor.java    |   18 +-
 .../execution/fragment/DataNodeQueryContext.java   |   68 +-
 .../fragment/FakedFragmentInstanceContext.java     |    5 +-
 .../fragment/FragmentInstanceContext.java          |  271 ++-
 .../fragment/FragmentInstanceExecution.java        |    4 +-
 .../queryengine/execution/memory/MemoryPool.java   |    2 +-
 .../execution/operator/AggregationUtil.java        |    2 +-
 .../operator/process/AbstractIntoOperator.java     |    5 +-
 .../operator/process/CollectOperator.java          |    6 +-
 .../process/InsertTabletStatementGenerator.java    |   39 +-
 .../operator/process/MappingCollectOperator.java   |   79 +
 .../TableInsertTabletStatementGenerator.java       |    2 +-
 .../operator/process/TagAggregationOperator.java   |    2 +-
 .../TreeInsertTabletStatementGenerator.java        |    2 +-
 .../operator/process/ai/InferenceOperator.java     |    9 +-
 .../process/join/merge/MergeSortComparator.java    |    2 +-
 .../rowpattern/expression/CastComputation.java     |   82 +
 .../rowpattern/expression/ComparisonOperator.java  |   20 +
 .../process/rowpattern/expression/Computation.java |   29 +
 .../expression/PatternExpressionComputation.java   |   14 +-
 .../process/window/TableWindowOperator.java        |    2 +
 .../operator/schema/SchemaCountOperator.java       |   54 +-
 .../operator/schema/source/DeviceSchemaSource.java |    8 +
 .../operator/schema/source/ISchemaSource.java      |    4 +
 .../execution/operator/source/FileLoaderUtils.java |    6 +-
 .../execution/operator/source/SeriesScanUtil.java  |  405 +++-
 .../operator/source/ShowQueriesOperator.java       |   10 +-
 .../InformationSchemaContentSupplierFactory.java   |  289 +--
 .../relational/LastQueryAggTableScanOperator.java  |   99 +-
 .../AbstractApproxPercentileAccumulator.java       |  169 ++
 .../relational/aggregation/AccumulatorFactory.java |   54 +-
 .../aggregation/ApproxPercentileAccumulator.java   |  119 +
 .../ApproxPercentileWithWeightAccumulator.java     |  125 +
 .../relational/aggregation/FirstAccumulator.java   |   56 +-
 .../relational/aggregation/FirstByAccumulator.java |   70 +-
 .../aggregation/FirstByDescAccumulator.java        |    7 +-
 .../aggregation/FirstDescAccumulator.java          |    7 +-
 .../aggregation/LastByDescAccumulator.java         |   58 +-
 .../aggregation/LastDescAccumulator.java           |   12 +-
 .../aggregation/approximate/HyperLogLog.java       |   11 +-
 .../aggregation/approximate/TDigest.java           |  915 ++++++++
 ...AbstractGroupedApproxPercentileAccumulator.java |  154 ++
 .../GroupedApproxCountDistinctAccumulator.java     |   12 +-
 .../GroupedApproxPercentileAccumulator.java        |  144 ++
 ...oupedApproxPercentileWithWeightAccumulator.java |  149 ++
 .../aggregation/grouped/array/TDigestBigArray.java |   75 +
 .../execution/operator/window/SessionWindow.java   |   13 +-
 .../execution/operator/window/TimeWindow.java      |    9 +-
 .../relational/ColumnTransformerBuilder.java       |  328 +++
 .../queue/IndexedBlockingReserveQueue.java         |    3 +-
 .../metric/DriverSchedulerMetricSet.java           |   20 +-
 .../queryengine/metric/QueryResourceMetricSet.java |   26 +-
 .../iotdb/db/queryengine/plan/Coordinator.java     |   99 +-
 .../db/queryengine/plan/analyze/Analysis.java      |    3 +-
 .../db/queryengine/plan/analyze/AnalyzeUtils.java  |    3 -
 .../queryengine/plan/analyze/AnalyzeVisitor.java   |  172 +-
 .../plan/analyze/ClusterPartitionFetcher.java      |   76 +-
 .../plan/analyze/ExpressionAnalyzer.java           |    4 +-
 .../plan/analyze/IPartitionFetcher.java            |   13 +-
 .../db/queryengine/plan/analyze/ModelFetcher.java  |   23 +-
 .../queryengine/plan/analyze/PredicateUtils.java   |    7 +
 .../db/queryengine/plan/analyze/TemplatedInfo.java |    6 +-
 .../analyze/cache/partition/PartitionCache.java    |   53 +-
 .../cache/schema/DataNodeDevicePathCache.java      |    5 +-
 .../analyze/cache/schema/DataNodeTTLCache.java     |    2 +-
 .../schema/dualkeycache/IDualKeyCacheUpdating.java |   45 -
 .../schema/dualkeycache/impl/DualKeyCacheImpl.java |    8 +-
 .../plan/analyze/load/LoadTsFileAnalyzer.java      |   25 +-
 .../analyze/load/LoadTsFileTableSchemaCache.java   |  106 +-
 .../load/TreeSchemaAutoCreatorAndVerifier.java     |   55 +-
 .../analyze/schema/AutoCreateSchemaExecutor.java   |   87 +-
 .../analyze/schema/ClusterSchemaFetchExecutor.java |   27 +-
 .../plan/analyze/schema/ClusterSchemaFetcher.java  |   42 +-
 .../plan/analyze/schema/ISchemaFetcher.java        |   20 +-
 .../plan/analyze/schema/NormalSchemaFetcher.java   |   57 +-
 .../plan/analyze/schema/SchemaValidator.java       |    4 +-
 .../plan/execution/config/ConfigExecution.java     |   16 +-
 .../execution/config/TableConfigTaskVisitor.java   |  299 ++-
 .../execution/config/TreeConfigTaskVisitor.java    |  126 +-
 .../config/executor/ClusterConfigTaskExecutor.java |  441 +++-
 .../config/executor/IConfigTaskExecutor.java       |   24 +-
 .../AlterEncodingCompressorTask.java}              |   24 +-
 ...emplateTask.java => ShowAvailableUrlsTask.java} |   49 +-
 .../config/metadata/ShowFunctionsTask.java         |    6 +-
 .../execution/config/metadata/ShowRegionTask.java  |    6 +-
 .../ai/LoadModelTask.java}                         |   20 +-
 .../ShowAIDevicesTask.java}                        |   43 +-
 .../ShowLoadedModelsTask.java}                     |   49 +-
 .../config/metadata/ai/ShowModelsTask.java         |    4 +-
 .../ai/UnloadModelTask.java}                       |   20 +-
 .../template/ShowNodesInSchemaTemplateTask.java    |   47 +-
 .../metadata/template/ShowPathSetTemplateTask.java |   20 +-
 .../plan/execution/config/sys/KillQueryTask.java   |    3 +-
 .../config/sys/ShowConfigurationTask.java          |  107 +
 .../execution/config/sys/pipe/ShowPipeTask.java    |    6 +-
 .../plan/execution/memory/MemorySourceHandle.java  |    2 +-
 .../plan/expression/ExpressionFactory.java         |    2 +-
 .../plan/expression/multi/FunctionExpression.java  |    4 +-
 .../expression/other/CaseWhenThenExpression.java   |    2 +-
 .../plan/expression/unary/RegularExpression.java   |    2 +-
 .../expression/visitor/ConcatDeviceVisitor.java}   |   18 +-
 .../cartesian/BindSchemaForExpressionVisitor.java  |    2 +-
 .../cartesian/BindSchemaForPredicateVisitor.java   |    2 +-
 ...catDeviceAndBindSchemaForExpressionVisitor.java |    2 +-
 ...ncatDeviceAndBindSchemaForPredicateVisitor.java |    2 +-
 .../ConcatExpressionWithSuffixPathsVisitor.java    |    2 +-
 .../plan/optimization/AggregationPushDown.java     |    6 +-
 .../db/queryengine/plan/parser/ASTVisitor.java     |  240 +-
 .../plan/parser/StatementGenerator.java            |    6 +-
 .../plan/planner/LogicalPlanBuilder.java           |   15 +-
 .../plan/planner/LogicalPlanVisitor.java           |    3 +-
 .../plan/planner/OperatorTreeGenerator.java        |   60 +-
 .../plan/planner/TableOperatorGenerator.java       |  190 +-
 .../plan/planner/TemplatedLogicalPlan.java         |    2 +-
 .../distribution/DistributionPlanContext.java      |    2 +-
 .../planner/distribution/DistributionPlanner.java  |    2 +-
 .../plan/planner/distribution/SourceRewriter.java  |  122 +-
 .../plan/AbstractFragmentParallelPlanner.java      |    2 +-
 .../plan/planner/plan/node/PlanGraphPrinter.java   |   21 +-
 .../plan/planner/plan/node/PlanNodeType.java       |    8 +
 .../plan/planner/plan/node/PlanVisitor.java        |   10 +
 .../plan/node/load/LoadSingleTsFileNode.java       |    6 +-
 .../write/AlterEncodingCompressorNode.java         |  146 ++
 .../metadata/write/view/AlterLogicalViewNode.java  |   44 +-
 .../plan/node/pipe/PipeEnrichedDeleteDataNode.java |   14 +-
 .../planner/plan/node/process/AggregationNode.java |    2 +-
 .../planner/plan/node/process/GroupByTagNode.java  |    2 +-
 .../plan/node/process/RawDataAggregationNode.java  |    2 +-
 .../plan/node/source/LastQueryScanNode.java        |    2 +-
 .../node/source/SeriesAggregationSourceNode.java   |    4 +-
 .../planner/plan/node/source/ShowQueriesNode.java  |   18 +-
 .../planner/plan/node/write/InsertTabletNode.java  |    4 +-
 .../planner/plan/parameter/IntoPathDescriptor.java |    2 +-
 .../parameter/model/ModelInferenceDescriptor.java  |    5 +-
 .../relational/analyzer/StatementAnalyzer.java     |  124 +-
 .../function/TableBuiltinTableFunction.java        |    6 +-
 .../function/tvf/ForecastTableFunction.java        |   22 +-
 .../function/tvf/PatternMatchTableFunction.java    |  266 +++
 .../function/tvf/match/MatchConfig.java}           |   20 +-
 .../function/tvf/match/QetchAlgorithm.java         |  683 ++++++
 .../function/tvf/match/model/MatchState.java       |  233 ++
 .../function/tvf/match/model/PatternSegment.java   |  285 +++
 .../function/tvf/match/model/Point.java}           |   22 +-
 .../function/tvf/match/model/RegexMatchState.java  |  396 ++++
 .../function/tvf/match/model/Section.java          |  238 ++
 .../plan/relational/metadata/Metadata.java         |   10 +
 .../relational/metadata/TableMetadataImpl.java     |  529 ++++-
 .../plan/relational/metadata/TableSchema.java      |   12 +-
 .../metadata/cache/DeviceSchemaRequestCache.java   |   88 +
 .../metadata/fetcher/SchemaPredicateUtil.java      |   28 +-
 .../metadata/fetcher/TableDeviceSchemaFetcher.java |   23 +-
 .../fetcher/TableHeaderSchemaValidator.java        |  427 +++-
 .../fetcher/cache/TableDeviceLastCache.java        |    6 +-
 .../fetcher/cache/TableDeviceSchemaCache.java      |    6 +-
 .../cache/TableDeviceSchemaCacheMetrics.java       |    9 +-
 .../fetcher/cache/TreeDeviceNormalSchema.java      |   10 +-
 .../cache/TreeDeviceSchemaCacheManager.java        |  157 +-
 .../plan/relational/planner/LiteralEncoder.java    |    3 +-
 .../plan/relational/planner/RelationPlanner.java   |   47 +-
 .../relational/planner/TableLogicalPlanner.java    |   47 +-
 .../plan/relational/planner/TranslationMap.java    |    2 +-
 .../planner/distribute/SubPlanGenerator.java       |    2 +-
 .../distribute/TableDistributedPlanGenerator.java  |  140 +-
 .../distribute/TableModelQueryFragmentPlanner.java |   42 +
 .../iterative/rule/ImplementIntersectAll.java      |   95 +
 .../rule/ImplementIntersectDistinctAsUnion.java    |   88 +
 .../planner/iterative/rule/MergeUnion.java         |   48 +
 .../iterative/rule/PruneDistinctAggregation.java   |    9 +
 .../rule/PushDownOffsetIntoTableScan.java          |    4 +-
 .../iterative/rule/PushLimitThroughUnion.java      |  107 +
 .../iterative/rule/PushProjectionThroughUnion.java |  111 +
 .../iterative/rule/PushTopKThroughUnion.java       |  102 +
 .../iterative/rule/RemoveEmptyUnionBranches.java   |  113 +
 .../planner/iterative/rule/SetOperationMerge.java  |  144 ++
 .../iterative/rule/SetOperationNodeTranslator.java |  355 +++
 .../planner/node/AggregationTableScanNode.java     |   72 +
 .../node/{UnionNode.java => IntersectNode.java}    |   65 +-
 .../plan/relational/planner/node/IntoNode.java     |   40 +-
 .../plan/relational/planner/node/Patterns.java     |   22 +-
 .../relational/planner/node/SetOperationNode.java  |    4 +-
 .../plan/relational/planner/node/UnionNode.java    |   31 +-
 .../optimizations/LogicalOptimizeFactory.java      |   52 +-
 .../PushLimitOffsetIntoTableScan.java              |    2 +-
 .../planner/optimizations/SortElimination.java     |   13 +-
 .../optimizations/UnaliasSymbolReferences.java     |   42 +-
 .../plan/relational/security/AccessControl.java    |  106 +-
 .../relational/security/AccessControlImpl.java     |  471 ++--
 .../relational/security/AllowAllAccessControl.java |  120 +-
 .../relational/security/ITableAuthChecker.java     |   51 +-
 .../relational/security/ITableAuthCheckerImpl.java |  376 ++-
 .../relational/security/TableModelPrivilege.java   |   41 +
 .../security/TreeAccessCheckContext.java           |  140 ++
 .../security/TreeAccessCheckVisitor.java           | 1987 ++++++++++++++++
 .../sql/ast/AbstractQueryDeviceWithCache.java      |    3 +-
 .../relational/sql/ast/AbstractTraverseDevice.java |    2 +-
 .../plan/relational/sql/ast/AstVisitor.java        |   24 +
 .../plan/relational/sql/ast/Delete.java            |    3 +-
 .../plan/relational/sql/ast/DeleteDevice.java      |    5 +-
 .../plan/relational/sql/ast/InsertRows.java        |   19 +-
 .../sql/ast/{ShowTopics.java => LoadModel.java}    |   49 +-
 .../plan/relational/sql/ast/LoadTsFile.java        |    2 +-
 .../sql/ast/RelationalAuthorStatement.java         |  169 +-
 .../plan/relational/sql/ast/RenameColumn.java      |    5 +-
 .../plan/relational/sql/ast/RenameTable.java       |    5 +-
 .../relational/sql/ast/SearchedCaseExpression.java |    2 +-
 .../ast/{ShowTopics.java => ShowAIDevices.java}    |   33 +-
 .../{ShowTopics.java => ShowAvailableUrls.java}    |   33 +-
 .../relational/sql/ast/ShowConfiguration.java}     |   17 +-
 .../ast/{ShowTopics.java => ShowLoadedModels.java} |   44 +-
 .../plan/relational/sql/ast/ShowSubscriptions.java |    4 +-
 .../plan/relational/sql/ast/ShowTopics.java        |    4 +-
 .../relational/sql/ast/SimpleCaseExpression.java   |    2 +-
 .../{ShowSubscriptions.java => UnloadModel.java}   |   48 +-
 .../relational/sql/ast/WrappedInsertStatement.java |  414 +++-
 .../plan/relational/sql/parser/AstBuilder.java     |  212 +-
 .../plan/relational/type/AuthorRType.java          |   10 +-
 .../plan/relational/type/CompatibleResolver.java   |    5 +
 .../plan/scheduler/AsyncSendPlanNodeHandler.java   |    2 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  |   14 +-
 .../scheduler/load/LoadTsFileDispatcherImpl.java   |   14 +-
 .../plan/scheduler/load/LoadTsFileScheduler.java   |    6 +-
 .../db/queryengine/plan/statement/AuthorType.java  |  100 +-
 .../statement/AuthorityInformationStatement.java   |   30 +-
 .../db/queryengine/plan/statement/Statement.java   |   12 +-
 .../queryengine/plan/statement/StatementType.java  |    6 +-
 .../plan/statement/StatementVisitor.java           |   63 +-
 .../statement/component/GroupByTagComponent.java   |    2 +-
 .../plan/statement/component/IntoItem.java         |    2 +-
 .../plan/statement/crud/DeleteDataStatement.java   |   17 -
 .../plan/statement/crud/InsertBaseStatement.java   |  168 +-
 .../crud/InsertMultiTabletsStatement.java          |   15 +
 .../plan/statement/crud/InsertRowStatement.java    |   66 +
 .../crud/InsertRowsOfOneDeviceStatement.java       |    6 +
 .../plan/statement/crud/InsertRowsStatement.java   |   12 +
 .../plan/statement/crud/InsertStatement.java       |   17 -
 .../plan/statement/crud/InsertTabletStatement.java |  136 +-
 .../plan/statement/crud/LoadTsFileStatement.java   |   30 +-
 .../plan/statement/crud/QueryStatement.java        |   18 -
 .../internal/DeviceSchemaFetchStatement.java       |    9 +-
 .../InternalBatchActivateTemplateStatement.java    |   17 -
 .../InternalCreateMultiTimeSeriesStatement.java    |   17 -
 .../InternalCreateTimeSeriesStatement.java         |   17 -
 .../internal/SeriesSchemaFetchStatement.java       |    9 +-
 .../metadata/AlterEncodingCompressorStatement.java |  126 +
 .../metadata/AlterTimeSeriesStatement.java         |   15 -
 .../statement/metadata/CountDatabaseStatement.java |    2 +-
 .../statement/metadata/CountDevicesStatement.java  |   25 -
 .../metadata/CountTimeSeriesStatement.java         |   25 -
 .../metadata/CountTimeSlotListStatement.java       |    7 -
 .../metadata/CreateAlignedTimeSeriesStatement.java |   17 -
 .../metadata/CreateContinuousQueryStatement.java   |   14 -
 .../metadata/CreateFunctionStatement.java          |   14 -
 .../metadata/CreateMultiTimeSeriesStatement.java   |   17 -
 .../metadata/CreateTimeSeriesStatement.java        |   15 -
 .../statement/metadata/CreateTriggerStatement.java |   14 -
 .../metadata/DatabaseSchemaStatement.java          |   14 -
 .../metadata/DeleteDatabaseStatement.java          |   16 +-
 .../metadata/DeleteTimeSeriesStatement.java        |   26 +-
 .../metadata/DropContinuousQueryStatement.java     |   14 -
 .../statement/metadata/DropFunctionStatement.java  |   14 -
 .../statement/metadata/DropTriggerStatement.java   |   14 -
 .../statement/metadata/GetRegionIdStatement.java   |    7 -
 .../metadata/GetSeriesSlotListStatement.java       |    7 -
 .../metadata/GetTimeSlotListStatement.java         |    7 -
 .../statement/metadata/RemoveAINodeStatement.java  |    7 -
 .../metadata/RemoveConfigNodeStatement.java        |    7 -
 .../metadata/RemoveDataNodeStatement.java          |    7 -
 .../plan/statement/metadata/SetTTLStatement.java   |   17 -
 ...tement.java => ShowAvailableUrlsStatement.java} |   17 +-
 .../statement/metadata/ShowClusterIdStatement.java |    7 -
 .../statement/metadata/ShowClusterStatement.java   |    7 -
 .../metadata/ShowConfigNodesStatement.java         |    7 -
 .../metadata/ShowContinuousQueriesStatement.java   |   14 -
 .../statement/metadata/ShowDataNodesStatement.java |    7 -
 .../statement/metadata/ShowDatabaseStatement.java  |    2 +-
 .../statement/metadata/ShowDevicesStatement.java   |   25 -
 .../statement/metadata/ShowFunctionsStatement.java |   14 -
 .../statement/metadata/ShowRegionStatement.java    |    7 -
 .../plan/statement/metadata/ShowTTLStatement.java  |    9 +
 .../metadata/ShowTimeSeriesStatement.java          |   25 -
 .../statement/metadata/ShowTriggersStatement.java  |   14 -
 .../statement/metadata/ShowVariablesStatement.java |    7 -
 .../metadata/model/CreateModelStatement.java       |   14 -
 .../metadata/model/DropModelStatement.java         |   14 -
 ...ModelStatement.java => LoadModelStatement.java} |   52 +-
 .../ShowAIDevicesStatement.java}                   |   22 +-
 .../metadata/model/ShowAINodesStatement.java       |    7 -
 .../model/ShowLoadedModelsStatement.java}          |   45 +-
 .../metadata/model/ShowModelsStatement.java        |   14 -
 ...delStatement.java => UnloadModelStatement.java} |   62 +-
 .../metadata/pipe/AlterPipeStatement.java          |   14 -
 .../metadata/pipe/CreatePipePluginStatement.java   |   14 -
 .../metadata/pipe/CreatePipeStatement.java         |   14 -
 .../metadata/pipe/DropPipePluginStatement.java     |   14 -
 .../statement/metadata/pipe/DropPipeStatement.java |   14 -
 .../metadata/pipe/ShowPipePluginsStatement.java    |   14 -
 .../metadata/pipe/ShowPipesStatement.java          |   14 -
 .../metadata/pipe/StartPipeStatement.java          |   14 -
 .../statement/metadata/pipe/StopPipeStatement.java |   14 -
 .../metadata/region/ExtendRegionStatement.java     |    7 -
 .../metadata/region/MigrateRegionStatement.java    |    7 -
 .../region/ReconstructRegionStatement.java         |    7 -
 .../metadata/region/RemoveRegionStatement.java     |    7 -
 .../subscription/CreateTopicStatement.java         |   14 -
 .../subscription/DropSubscriptionStatement.java    |   14 -
 .../metadata/subscription/DropTopicStatement.java  |   14 -
 .../subscription/ShowSubscriptionsStatement.java   |   14 -
 .../metadata/subscription/ShowTopicsStatement.java |   14 -
 .../template/AbstractShowExactTemplate.java}       |   23 +-
 .../template/ActivateTemplateStatement.java        |   17 -
 .../template/BatchActivateTemplateStatement.java   |   17 -
 .../template/DeactivateTemplateStatement.java      |   24 +-
 .../ShowNodesInSchemaTemplateStatement.java        |   33 +-
 .../template/ShowPathSetTemplateStatement.java     |   33 +-
 .../template/ShowSchemaTemplateStatement.java      |   20 +-
 .../metadata/view/AlterLogicalViewStatement.java   |   48 +-
 .../metadata/view/CreateLogicalViewStatement.java  |   61 +-
 .../metadata/view/DeleteLogicalViewStatement.java  |   17 -
 .../metadata/view/RenameLogicalViewStatement.java  |   19 -
 .../plan/statement/sys/AuthorStatement.java        |  243 +-
 .../statement/sys/ExplainAnalyzeStatement.java     |    6 -
 .../plan/statement/sys/KillQueryStatement.java     |   17 +-
 .../statement/sys/SetConfigurationStatement.java   |   39 +
 .../plan/statement/sys/SetSqlDialectStatement.java |    8 -
 ...tement.java => ShowConfigurationStatement.java} |   41 +-
 .../sys/ShowCurrentSqlDialectStatement.java        |    8 -
 .../statement/sys/ShowCurrentUserStatement.java    |    8 -
 .../plan/statement/sys/ShowQueriesStatement.java   |   16 +-
 .../plan/statement/sys/ShowVersionStatement.java   |    8 -
 .../statement/sys/TestConnectionStatement.java     |    7 -
 .../plan/udf}/BuiltinAggregationFunction.java      |    2 +-
 .../plan/udf}/BuiltinScalarFunction.java           |    2 +-
 .../udf}/BuiltinTimeSeriesGeneratingFunction.java  |   51 +-
 .../queryengine/plan/udf/UDFManagementService.java |    3 -
 .../db/queryengine/plan/udf/UDTFForecast.java      |  270 +++
 .../FragmentInstanceStatisticsDrawer.java          |   11 +
 .../AbstractCaseWhenThenColumnTransformer.java     |    2 +-
 .../dag/column/binary/HmacColumnTransformer.java   |  108 +
 .../binary/factory/HmacStrategiesFactory.java      |   93 +
 .../column/binary/strategies/HmacStrategy.java}    |   15 +-
 .../dag/column/ternary/LpadColumnTransformer.java  |   92 +
 .../dag/column/ternary/RpadColumnTransformer.java  |   92 +
 .../column/ternary/TernaryColumnTransformer.java   |    2 +-
 .../dag/column/ternary/utils/BytePaddingUtils.java |   87 +
 .../scalar/BytesToDoubleColumnTransformer.java     |   78 +
 .../scalar/BytesToFloatColumnTransformer.java      |   79 +
 .../unary/scalar/BytesToIntColumnTransformer.java  |   81 +
 .../unary/scalar/BytesToLongColumnTransformer.java |   80 +
 .../dag/column/unary/scalar/CRC32Transformer.java  |   61 +
 .../scalar/DateBinFunctionColumnTransformer.java   |   21 +-
 .../scalar/DoubleToBytesColumnTransformer.java     |   61 +
 .../column/unary/scalar/ExtractTransformer.java    |   12 +-
 .../scalar/FloatToBytesColumnTransformer.java      |   61 +
 .../scalar/GenericCodecColumnTransformer.java      |   92 +
 .../scalar/HmacConstantKeyColumnTransformer.java   |   68 +
 .../unary/scalar/IntToBytesColumnTransformer.java  |   62 +
 .../unary/scalar/LongToBytesColumnTransformer.java |   60 +
 .../scalar/factory/CodecStrategiesFactory.java     |  133 ++
 .../factory/NumericCodecStrategiesFactory.java     |  169 ++
 .../unary/scalar/inteface/CodecStrategy.java}      |   15 +-
 .../dag/column/unary/scalar/util/HexUtils.java     |   86 +
 .../unary/scalar/util/SpookyHashV2Utils.java       |  603 +++++
 .../unary/scalar/util/TransformerDebugUtils.java   |   62 +
 .../dag/input/QueryDataSetInputLayer.java          |   10 +-
 .../dag/intermediate/MultiInputLayer.java          |   35 +-
 .../SingleInputMultiReferenceLayer.java            |   27 +-
 .../SingleInputSingleReferenceLayer.java           |   27 +-
 .../transformation/dag/udf/UDTFExecutor.java       |    2 +-
 .../transformation/dag/util/LayerCacheUtils.java   |    5 +-
 .../transformation/datastructure/TVColumns.java    |    7 +-
 .../tv/ElasticSerializableBinaryTVList.java        |    3 +-
 .../datastructure/tv/SerializableTVList.java       |    6 +-
 .../apache/iotdb/db/schemaengine/SchemaEngine.java |   27 +-
 .../rescon/MemSchemaEngineStatistics.java          |    3 +-
 .../schemaengine/schemaregion/ISchemaRegion.java   |    8 +-
 .../schemaregion/SchemaRegionLoader.java           |   18 +-
 .../schemaregion/SchemaRegionPlanType.java         |    2 +
 .../schemaregion/SchemaRegionPlanVisitor.java      |    6 +
 .../update/DeviceAttributeCacheUpdater.java        |    8 +-
 .../schemaregion/impl/SchemaRegionMemoryImpl.java  |   56 +-
 .../schemaregion/impl/SchemaRegionPBTreeImpl.java  |   29 +-
 .../visitor/SchemaRegionPlanDeserializer.java      |    7 +
 .../visitor/SchemaRegionPlanSerializer.java        |    8 +
 .../mtree/impl/mem/MTreeBelowSGMemoryImpl.java     |  146 +-
 .../impl/mem/snapshot/MemMTreeSnapshotUtil.java    |    6 +-
 .../mtree/impl/pbtree/MTreeBelowSGCachedImpl.java  |   38 +-
 .../mtree/loader/MNodeFactoryLoader.java           |   25 +-
 .../mtree/traverser/counter/DatabaseCounter.java   |   13 +-
 .../reader/impl/TimeseriesReaderWithViewFetch.java |    2 +-
 .../schemaengine/schemaregion/tag/TagLogFile.java  |    2 +-
 .../schemaengine/schemaregion/tag/TagManager.java  |    2 +-
 .../schemaregion/utils/MetaFormatUtils.java        |    2 +-
 .../schemaengine/schemaregion/utils/MetaUtils.java |    6 +-
 .../schemaregion/utils/ResourceByPathUtils.java    |  113 +-
 .../write/req/SchemaRegionWritePlanFactory.java    |    3 +
 .../req/impl/CreateAlignedTimeSeriesPlanImpl.java  |   10 +
 .../write/req/impl/CreateTimeSeriesPlanImpl.java   |   10 +
 .../db/schemaengine/table/DataNodeTableCache.java  |   49 +-
 .../template/ClusterTemplateManager.java           |   24 +-
 .../db/schemaengine/template/ITemplateManager.java |    2 +
 .../iotdb/db/schemaengine/template/Template.java   |    2 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |   79 +-
 .../db/service/DataNodeInternalRPCService.java     |   65 +-
 .../iotdb/db/service/DataNodeShutdownHook.java     |   23 +
 .../iotdb/db/service/ExternalRPCService.java       |   70 +-
 .../org/apache/iotdb/db/service/RestService.java   |    2 +-
 .../db/service/TemporaryQueryDataFileService.java  |    2 +-
 .../metrics/IoTDBInternalLocalReporter.java        |   15 +-
 .../iotdb/db/service/metrics/WritingMetrics.java   |    3 +-
 .../iotdb/db/storageengine/StorageEngine.java      |   19 +-
 .../db/storageengine/dataregion/DataRegion.java    |  880 +++++--
 .../dataregion/IDataRegionForQuery.java            |   29 +-
 .../dataregion/VirtualDataRegion.java              |   36 +-
 .../exception/CompactionExceptionHandler.java      |    2 +-
 .../constant/CrossCompactionPerformer.java         |   16 +
 .../constant/InnerSeqCompactionPerformer.java      |   16 +
 .../constant/InnerUnseqCompactionPerformer.java    |   16 +
 .../performer/impl/FastCompactionPerformer.java    |   60 +-
 .../impl/ReadChunkCompactionPerformer.java         |   53 +-
 .../impl/ReadPointCompactionPerformer.java         |   59 +-
 .../RepairUnsortedFileCompactionPerformer.java     |   14 +-
 .../execute/recover/CompactionRecoverTask.java     |    2 +-
 .../execute/task/AbstractCompactionTask.java       |    3 +-
 .../execute/task/InnerSpaceCompactionTask.java     |   14 +-
 .../task/RepairUnsortedFileCompactionTask.java     |    7 +-
 .../execute/task/SettleCompactionTask.java         |    5 +
 .../task/subtask/ReadPointPerformerSubTask.java    |    8 +-
 .../execute/utils/CompactionPathUtils.java         |   28 +-
 .../execute/utils/CompactionTableSchema.java       |   11 +-
 .../utils/CompactionTableSchemaCollector.java      |   33 +-
 .../compaction/execute/utils/CompactionUtils.java  |   16 +-
 .../execute/utils/MultiTsFileDeviceIterator.java   |   49 +-
 ...BatchedFastAlignedSeriesCompactionExecutor.java |    8 +-
 ...edReadChunkAlignedSeriesCompactionExecutor.java |    9 +-
 .../FirstBatchCompactionAlignedChunkWriter.java    |   51 +-
 ...FollowingBatchCompactionAlignedChunkWriter.java |   16 +-
 .../fast/FastAlignedSeriesCompactionExecutor.java  |    6 +-
 .../FastNonAlignedSeriesCompactionExecutor.java    |    8 +-
 .../executor/fast/SeriesCompactionExecutor.java    |    6 +-
 .../readchunk/AlignedSeriesCompactionExecutor.java |    5 +-
 .../ReadChunkAlignedSeriesCompactionExecutor.java  |    4 +-
 .../readchunk/SingleSeriesCompactionExecutor.java  |    9 +-
 .../utils/writer/AbstractCompactionWriter.java     |   16 +
 .../writer/AbstractCrossCompactionWriter.java      |   23 +-
 .../writer/AbstractInnerCompactionWriter.java      |   30 +-
 .../utils/writer/FastCrossCompactionWriter.java    |   16 +-
 .../utils/writer/FastInnerCompactionWriter.java    |   20 +-
 .../writer/ReadPointCrossCompactionWriter.java     |   14 +-
 .../writer/ReadPointInnerCompactionWriter.java     |   20 +-
 .../writer/RepairUnsortedFileCompactionWriter.java |   12 +-
 .../compaction/io/CompactionTsFileReader.java      |   17 +-
 .../compaction/io/CompactionTsFileWriter.java      |   19 +-
 .../compaction/repair/RepairDataFileScanUtil.java  |    4 +-
 .../compaction/repair/RepairTimePartition.java     |    2 +-
 .../schedule/CompactionScheduleContext.java        |   23 +-
 .../compaction/schedule/CompactionScheduler.java   |    7 +-
 .../estimator/AbstractCompactionEstimator.java     |    6 +-
 .../estimator/AbstractCrossSpaceEstimator.java     |    6 +-
 .../estimator/AbstractInnerSpaceEstimator.java     |   11 +-
 .../estimator/CompactionEstimateUtils.java         |    6 +-
 .../RepairUnsortedFileCompactionEstimator.java     |    5 +
 .../impl/NewSizeTieredCompactionSelector.java      |    2 +-
 .../selector/impl/SettleSelectorImpl.java          |    2 +-
 .../utils/CrossSpaceCompactionCandidate.java       |    1 +
 .../compaction/settle/SettleRequestHandler.java    |   13 +-
 .../compaction/tool/SingleSequenceFileTask.java    |   11 +-
 .../compaction/tool/TimePartitionProcessTask.java  |    9 +-
 .../compaction/tool/TsFileStatisticReader.java     |    6 +-
 .../dataregion/flush/CompressionRatio.java         |   47 +-
 .../dataregion/memtable/AbstractMemTable.java      |   11 +-
 .../memtable/AbstractWritableMemChunk.java         |   15 +
 .../memtable/AlignedReadOnlyMemChunk.java          |  149 +-
 .../memtable/AlignedWritableMemChunk.java          |   94 +-
 .../memtable/AlignedWritableMemChunkGroup.java     |    9 +
 .../dataregion/memtable/IWritableMemChunk.java     |    3 +
 .../memtable/IWritableMemChunkGroup.java           |    3 +
 .../dataregion/memtable/ReadOnlyMemChunk.java      |   90 +-
 .../dataregion/memtable/TsFileProcessor.java       |  148 +-
 .../dataregion/memtable/WritableMemChunk.java      |   25 +-
 .../dataregion/memtable/WritableMemChunkGroup.java |   19 +-
 .../dataregion/modification/ModificationFile.java  |    2 -
 .../dataregion/read/QueryDataSource.java           |    5 +
 .../dataregion/read/control/FileReaderManager.java |   13 +-
 .../read/reader/chunk/MemAlignedChunkLoader.java   |   27 +-
 .../read/reader/chunk/MemAlignedPageReader.java    |    3 +
 .../read/reader/chunk/MemChunkLoader.java          |   21 +-
 .../read/reader/chunk/MemPageReader.java           |    3 +
 .../read/reader/common/NoDataPointReader.java}     |   41 +-
 .../dataregion/snapshot/SnapshotLoader.java        |   44 +-
 .../dataregion/snapshot/SnapshotTaker.java         |   39 +-
 .../dataregion/tsfile/TsFileManager.java           |   43 +-
 .../dataregion/tsfile/TsFileResource.java          |   77 +-
 .../dataregion/utils/TsFileResourceUtils.java      |    6 +-
 .../dataregion/wal/io/CheckpointReader.java        |    6 +
 .../dataregion/wal/io/WALInputStream.java          |   14 +-
 .../storageengine/dataregion/wal/io/WALWriter.java |    4 +
 .../file/AbstractTsFileRecoverPerformer.java       |   21 +-
 .../file/UnsealedTsFileRecoverPerformer.java       |    6 +-
 .../db/storageengine/load/LoadTsFileManager.java   |   76 +-
 .../load/active/ActiveLoadDirScanner.java          |   48 +-
 .../load/active/ActiveLoadPathHelper.java          |  282 +++
 .../load/active/ActiveLoadPendingQueue.java        |   17 +-
 .../load/active/ActiveLoadTsFileLoader.java        |   44 +-
 .../load/config/LoadTsFileConfigurator.java        |   22 +-
 ...vertedInsertTabletStatementTSStatusVisitor.java |    3 +-
 ...rtedInsertTabletStatementExceptionVisitor.java} |   18 +-
 ...leStatementDataTypeConvertExecutionVisitor.java |   38 +-
 ...rtedInsertTabletStatementExceptionVisitor.java} |    2 +-
 ...eeStatementDataTypeConvertExecutionVisitor.java |   39 +-
 .../converter/LoadTsFileDataTypeConverter.java     |   19 +-
 .../db/storageengine/load/disk/MinIOSelector.java  |   10 +-
 .../load/limiter/LoadTsFileRateLimiter.java        |   64 +-
 .../memory/LoadTsFileDataCacheMemoryBlock.java     |    3 +-
 .../load/memory/LoadTsFileMemoryBlock.java         |    3 +-
 .../load/splitter/AlignedChunkData.java            |    7 +-
 .../load/splitter/NonAlignedChunkData.java         |    4 +
 .../load/splitter/TsFileSplitter.java              |   21 +
 .../ActiveLoadUtil.java => util/LoadUtil.java}     |   88 +-
 .../rescon/disk/DirectoryChecker.java              |    2 +-
 .../strategy/RandomOnDiskUsableSpaceStrategy.java  |    4 +-
 .../rescon/memory/PrimitiveArrayManager.java       |    1 +
 .../agent/SubscriptionAgentLauncher.java           |    4 +-
 .../broker/SubscriptionPrefetchingQueue.java       |    7 +-
 .../broker/SubscriptionPrefetchingTabletQueue.java |    3 +-
 .../broker/SubscriptionPrefetchingTsFileQueue.java |    3 +-
 .../event/batch/SubscriptionPipeEventBatch.java    |    4 +-
 .../event/batch/SubscriptionPipeEventBatches.java  |    4 +-
 .../event/cache/SubscriptionPollResponseCache.java |   54 +-
 .../response/SubscriptionEventTsFileResponse.java  |    3 +-
 .../SubscriptionPrefetchingQueueMetrics.java       |    3 +-
 .../resource/log/SubscriptionLogStatus.java        |    2 +-
 .../subtask/SubscriptionSinkSubtaskManager.java    |    4 +-
 .../apache/iotdb/db/tools/IoTDBDataDirViewer.java  |   25 +-
 .../apache/iotdb/db/tools/TsFileSketchTool.java    |   16 +-
 .../db/tools/schema/SRStatementGenerator.java      |    4 +-
 .../db/tools/settle/TsFileAndModSettleTool.java    |    5 +-
 .../iotdb/db/tools/utils/TsFileSequenceScan.java   |    7 +-
 .../iotdb/db/tools/utils/TsFileStatisticScan.java  |    6 +-
 .../db/trigger/executor/TriggerFireVisitor.java    |    6 +
 .../trigger/service/TriggerManagementService.java  |    2 +-
 .../org/apache/iotdb/db/utils/CommonUtils.java     |    2 +-
 .../apache/iotdb/db/utils/DataNodeAuthUtils.java   |  204 +-
 .../org/apache/iotdb/db/utils/DateTimeUtils.java   |   75 +-
 .../org/apache/iotdb/db/utils/EncryptDBUtils.java  |   86 +
 .../apache/iotdb/db/utils/ModificationUtils.java   |   32 +-
 .../iotdb/{util => db/utils}/TabletDecoder.java    |    2 +-
 .../apache/iotdb/db/utils/TypeInferenceUtils.java  |    2 +-
 .../iotdb/db/utils/constant/SqlConstant.java       |    1 +
 .../db/utils/datastructure/AlignedTVList.java      |  542 +++--
 .../iotdb/db/utils/datastructure/BackwardSort.java |    3 +
 .../iotdb/db/utils/datastructure/LazyBitMap.java   |   93 +
 .../db/utils/datastructure/MemPointIterator.java   |   76 +-
 .../datastructure/MemPointIteratorFactory.java     |  191 +-
 .../MergeSortMultiAlignedTVListIterator.java       |   89 +-
 .../MergeSortMultiTVListIterator.java              |   60 +-
 .../datastructure/MultiAlignedTVListIterator.java  |  137 +-
 .../utils/datastructure/MultiTVListIterator.java   |  212 +-
 .../OrderedMultiAlignedTVListIterator.java         |   42 +-
 .../datastructure/OrderedMultiTVListIterator.java  |   41 +-
 .../iotdb/db/utils/datastructure/TVList.java       |  486 +++-
 .../apache/iotdb/db/auth/AuthorityCheckerTest.java |   51 +
 .../apache/iotdb/db/auth/LoginLockManagerTest.java |  558 +++++
 .../auth/authorizer/LocalFileAuthorizerTest.java   |    6 +-
 .../org/apache/iotdb/db/auth/entity/RoleTest.java  |   16 +-
 .../org/apache/iotdb/db/auth/entity/UserTest.java  |    4 +-
 .../db/auth/role/LocalFileRoleAccessorTest.java    |    2 +-
 .../db/auth/role/LocalFileRoleManagerTest.java     |    2 +-
 .../db/auth/user/LocalFileUserAccessorTest.java    |   21 +-
 .../db/auth/user/LocalFileUserManagerTest.java     |    2 +-
 .../cache/TreeDeviceSchemaCacheManagerTest.java    |   19 +-
 .../db/metadata/path/MeasurementPathTest.java      |    4 +-
 .../schemaRegion/AbstractSchemaRegionTest.java     |    2 +-
 .../schemaRegion/SchemaRegionBasicTest.java        |    2 +-
 .../agent/plugin/PipeDataNodePluginAgentTest.java  |    4 +-
 .../db/pipe/consensus/DeletionResourceTest.java    |    6 +-
 .../pipe/event/TsFileInsertionEventParserTest.java |    5 +-
 .../tsfile/parser/util/ModsOperationUtilTest.java  |  408 ++++
 .../pattern/CachedSchemaPatternMatcherTest.java    |    9 +-
 .../db/pipe/pattern/TreePatternCoverageTest.java   |  133 ++
 .../annotation/PipePluginAnnotationTest.java       |   11 +-
 .../pipe/sink/PipeDataNodeThriftRequestTest.java   |   22 +-
 .../PipeStatementTreePatternParseVisitorTest.java  |  228 +-
 .../db/pipe/source/IoTDBDataRegionSourceTest.java  |    2 +
 .../PipePlanTreePatternParseVisitorTest.java       |  257 +-
 .../db/pipe/source/PipeRealtimeExtractTest.java    |   10 +-
 .../source/SchemaRegionListeningQueueTest.java     |    2 +-
 .../db/queryengine/execution/DataDriverTest.java   |   15 +-
 .../execution/exchange/SharedTsBlockQueueTest.java |    2 +-
 .../operator/MergeTreeSortOperatorTest.java        |    4 +-
 .../execution/operator/TransformOperatorTest.java  |  142 ++
 .../process/rowpattern/PatternExpressionTest.java  |    9 +
 .../process/window/TableWindowOperatorTest.java    |   51 +
 .../process/window/function/FunctionTestUtils.java |    3 +-
 .../plan/analyze/ExpressionAnalyzerTest.java       |    2 +-
 .../plan/analyze/FakePartitionFetcherImpl.java     |    7 +-
 .../plan/analyze/FakeSchemaFetcherImpl.java        |   22 +-
 .../load/TimeseriesMetadataIteratorTest.java       |  173 ++
 .../plan/parser/StatementGeneratorTest.java        |   13 +-
 .../plan/planner/distribution/Util.java            |   30 +-
 .../plan/planner/distribution/Util2.java           |   30 +-
 .../planner/node/process/IntoNodeSerdeTest.java    |    4 +
 .../planner/node/write/WritePlanNodeSplitTest.java |    3 +
 .../plan/relational/analyzer/AnalyzerTest.java     |   33 +-
 .../plan/relational/analyzer/AuthTest.java         |   36 +-
 .../relational/analyzer/ExtractExpressionTest.java |    7 +
 .../plan/relational/analyzer/IntersectTest.java    |  121 +
 .../analyzer/PushAggregationThroughUnionTest.java  |  148 ++
 .../plan/relational/analyzer/TSBSMetadata.java     |   25 +-
 .../relational/analyzer/TableFunctionTest.java     |    4 +-
 .../plan/relational/analyzer/TestMetadata.java     |   26 +-
 .../relational/analyzer/UnionOptimizeTest.java     |  158 ++
 .../relational/sql/parser/AuthorStatementTest.java |   27 +-
 .../plan/statement/InsertStatementTest.java        |   97 +-
 .../binary/hmac/HmacMd5ColumnTransformerTest.java  |  420 ++++
 .../binary/hmac/HmacSha1ColumnTransformerTest.java |  420 ++++
 .../hmac/HmacSha256ColumnTransformerTest.java      |  420 ++++
 .../hmac/HmacSha512ColumnTransformerTest.java      |  356 +++
 .../column/ternary/LpadColumnTransformerTest.java  |  303 +++
 .../column/ternary/RpadColumnTransformerTest.java  |  303 +++
 .../FromBigEndian32ColumnTransformerTest.java      |  220 ++
 .../FromBigEndian64ColumnTransformerTest.java      |  242 ++
 ...omIEEE754_32BigEndianColumnTransformerTest.java |  231 ++
 ...omIEEE754_64BigEndianColumnTransformerTest.java |  231 ++
 .../FromLittleEndian32ColumnTransformerTest.java   |  221 ++
 .../FromLittleEndian64ColumnTransformerTest.java   |  243 ++
 .../ToBigEndian32ColumnTransformerTest.java        |  188 ++
 .../ToBigEndian64ColumnTransformerTest.java        |  188 ++
 ...ToIEEE754_32BigEndianColumnTransformerTest.java |  179 ++
 ...ToIEEE754_64BigEndianColumnTransformerTest.java |  159 ++
 .../ToLittleEndian32ColumnTransformerTest.java     |  189 ++
 .../ToLittleEndian64ColumnTransformerTest.java     |  189 ++
 .../unary/scalar/ReverseColumnTransformerTest.java |  216 ++
 .../FromBase32ColumnTransformerTest.java           |  268 +++
 .../FromBase64ColumnTransformerTest.java           |  271 +++
 .../FromBase64UrlColumnTransformerTest.java        |  328 +++
 .../ToBase32ColumnTransformerTest.java             |  196 ++
 .../ToBase64ColumnTransformerTest.java             |  190 ++
 .../ToBase64UrlColumnTransformerTest.java          |  235 ++
 .../scalar/hashing/Crc32ColumnTransformerTest.java |  200 ++
 .../scalar/hashing/Md5ColumnTransformerTest.java   |  225 ++
 .../hashing/Murmur3ColumnTransformerTest.java      |  224 ++
 .../scalar/hashing/Sha1ColumnTransformerTest.java  |  225 ++
 .../hashing/Sha256ColumnTransformerTest.java       |  229 ++
 .../hashing/Sha512ColumnTransformerTest.java       |  224 ++
 .../SpookyHashV2_32ColumnTransformerTest.java      |  183 ++
 .../SpookyHashV2_64ColumnTransformerTest.java      |  183 ++
 .../hashing/XxHash64ColumnTransformerTest.java     |  238 ++
 .../hexEncoding/FromHexColumnTransformerTest.java  |  239 ++
 .../hexEncoding/ToHexColumnTransformerTest.java    |  222 ++
 .../security/encrypt/MessageDigestEncryptTest.java |    2 +-
 .../DataNodeInternalRPCServiceImplTest.java        |   59 +-
 .../iotdb/db/storageengine/StorageEngineTest.java  |    4 +-
 .../storageengine/buffer/BloomFilterCacheTest.java |    2 +-
 .../storageengine/dataregion/DataRegionTest.java   |    4 +-
 .../dataregion/TsFileManagerTest.java              |    2 +-
 .../TsFileResourceProgressIndexTest.java           |    2 +-
 .../compaction/AbstractCompactionTest.java         |    6 +-
 .../compaction/CompactionTaskManagerTest.java      |    2 +-
 .../compaction/CompactionValidationTest.java       |    2 +-
 .../TsFileValidationCorrectnessTests.java          |    2 +-
 .../inner/AbstractInnerSpaceCompactionTest.java    |    2 +-
 .../inner/FastCompactionPerformerAlignedTest.java  |    2 +-
 .../FastCompactionPerformerNoAlignedTest.java      |    2 +-
 .../inner/InnerCompactionEmptyTsFileTest.java      |    2 +-
 .../compaction/inner/InnerCompactionLogTest.java   |    2 +-
 .../inner/InnerCompactionMoreDataTest.java         |    2 +-
 .../ReadChunkCompactionPerformerAlignedTest.java   |    2 +-
 .../ReadChunkCompactionPerformerNoAlignedTest.java |    2 +-
 .../inner/ReadChunkCompactionPerformerOldTest.java |    2 +-
 .../recover/SizeTieredCompactionRecoverTest.java   |    2 +-
 .../repair/RepairUnsortedFileSchedulerTest.java    |   10 +-
 .../CompactionTableSchemaCollectorTest.java        |    8 +-
 .../TableModelFastCompactionPerformerTest.java     |  125 +-
 ...TableModelReadChunkCompactionPerformerTest.java |   94 +-
 .../compaction/utils/CompactionClearUtils.java     |    2 +-
 .../compaction/utils/CompactionTestFileWriter.java |    6 +-
 .../dataregion/flush/CompressionRatioTest.java     |    2 +-
 .../memtable/AlignedTVListIteratorTest.java        | 1012 ++++++++
 .../memtable/NonAlignedTVListIteratorTest.java     |  720 ++++++
 .../dataregion/memtable/TsFileProcessorTest.java   |    2 +-
 .../reader/chunk/MemAlignedChunkLoaderTest.java    |    1 +
 .../read/reader/chunk/MemChunkLoaderTest.java      |    6 +
 .../dataregion/snapshot/IoTDBSnapshotTest.java     |   10 +-
 .../dataregion/tsfile/TsFileResourceTest.java      |    2 +-
 .../wal/compression/WALCompressionTest.java        |    2 +-
 .../dataregion/wal/io/WALFileTest.java             |   22 +-
 .../iotdb/db/tools/TsFileSelfCheckToolTest.java    |    2 +-
 .../iotdb/db/tools/TsFileSketchToolTest.java       |    2 +-
 .../org/apache/iotdb/db/tools/WalCheckerTest.java  |    2 +-
 .../iotdb/db/utils/ConfigurationFileUtilsTest.java |   15 +
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    2 +-
 .../apache/iotdb/db/utils/OpenFileNumUtilTest.java |    2 +-
 .../db/utils/SchemaRegionSnapshotParserTest.java   |    2 +-
 .../apache/iotdb/db/utils/TSDataTypeTestUtils.java |  111 +
 .../db/utils/datastructure/AlignedTVListTest.java  |    2 +-
 .../db/utils/datastructure/BinaryTVListTest.java   |    2 +-
 .../db/utils/datastructure/BooleanTVListTest.java  |    2 +-
 .../db/utils/datastructure/DoubleTVListTest.java   |    2 +-
 .../db/utils/datastructure/FloatTVListTest.java    |    2 +-
 .../db/utils/datastructure/IntTVListTest.java      |    2 +-
 .../db/utils/datastructure/LongTVListTest.java     |    2 +-
 .../datastructure/PrimitiveArrayManagerTest.java   |   12 +-
 iotdb-core/metrics/ReadMe.md                       |    4 +-
 iotdb-core/metrics/interface/pom.xml               |    4 +
 .../apache/iotdb/metrics/config/MetricConfig.java  |   54 +-
 .../metrics/config/MetricConfigDescriptor.java     |   13 +
 .../reporter/iotdb/IoTDBSessionReporter.java       |   22 +-
 .../reporter/prometheus/PrometheusReporter.java    |   63 +-
 .../java/org/apache/iotdb/metrics/type/Timer.java  |   16 +-
 iotdb-core/node-commons/pom.xml                    |   25 +-
 .../conf/iotdb-system.properties.template          |   56 +-
 .../iotdb/commons/audit/AbstractAuditLogger.java   |  125 +
 .../iotdb/commons/audit/AuditEventType.java}       |   36 +-
 .../apache/iotdb/commons/audit/AuditLogFields.java |  182 ++
 .../iotdb/commons}/audit/AuditLogOperation.java    |    4 +-
 .../apache/iotdb/commons/audit/IAuditEntity.java}  |   41 +-
 .../iotdb/commons/audit/PrivilegeLevel.java}       |    8 +-
 .../org/apache/iotdb/commons/audit/UserEntity.java |  154 ++
 .../commons/auth/authorizer/BasicAuthorizer.java   |   50 +-
 .../iotdb/commons/auth/authorizer/IAuthorizer.java |   26 +
 .../auth/authorizer/LocalFileAuthorizer.java       |    5 -
 .../commons/auth/authorizer/OpenIdAuthorizer.java  |    6 +-
 .../iotdb/commons/auth/entity/IEntityAccessor.java |   15 +
 .../iotdb/commons/auth/entity/PrivilegeType.java   |  131 +-
 .../org/apache/iotdb/commons/auth/entity/Role.java |   21 +-
 .../org/apache/iotdb/commons/auth/entity/User.java |   43 +-
 .../iotdb/commons/auth/role/BasicRoleManager.java  |   22 +
 .../iotdb/commons/auth/role/IEntityManager.java    |    9 +
 .../commons/auth/role/LocalFileRoleAccessor.java   |   86 +-
 .../iotdb/commons/auth/user/BasicUserManager.java  |  163 +-
 .../commons/auth/user/LocalFileUserAccessor.java   |   61 +-
 .../commons/auth/user/LocalFileUserManager.java    |    1 +
 .../apache/iotdb/commons/auth/utils/AuthUtils.java |   49 +
 .../iotdb/commons/client/ClientPoolFactory.java    |   52 -
 .../apache/iotdb/commons/client/ThriftClient.java  |    7 +-
 .../commons/client/ainode/AINodeClientManager.java |   40 -
 .../AsyncConfigNodeInternalServiceClient.java      |   20 +-
 .../async/AsyncDataNodeExternalServiceClient.java  |   20 +-
 .../async/AsyncDataNodeInternalServiceClient.java  |   20 +-
 .../AsyncDataNodeMPPDataExchangeServiceClient.java |   20 +-
 .../async/AsyncPipeConsensusServiceClient.java     |   20 +-
 .../async/AsyncPipeDataTransferServiceClient.java  |    6 +-
 .../client/sync/SyncConfigNodeIServiceClient.java  |   24 +-
 .../sync/SyncDataNodeInternalServiceClient.java    |   24 +-
 .../SyncDataNodeMPPDataExchangeServiceClient.java  |   24 +-
 .../sync/SyncPipeConsensusServiceClient.java       |   24 +-
 .../apache/iotdb/commons/conf/CommonConfig.java    |  539 +++--
 .../iotdb/commons/conf/CommonDescriptor.java       |   56 +-
 .../iotdb/commons/conf/ConfigurationFileUtils.java |  330 ++-
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |    7 +-
 .../container/IoTV2GlobalComponentContainer.java   |   23 +-
 .../iotdb/commons/exception/MetadataException.java |    2 +-
 .../exception/pipe/PipeNonReportException.java}    |   13 +-
 .../pipe/PipeRuntimeSinkCriticalException.java     |    2 +-
 ...RuntimeSinkRetryTimesConfigurableException.java |    6 +
 .../commons/executable/ExecutableManager.java      |   17 +-
 .../commons/external/collections4/BidiMap.java     |  138 ++
 .../external/collections4/IterableSortedMap.java}  |   31 +-
 .../external/collections4/OrderedBidiMap.java      |   51 +
 .../collections4/ResettableListIterator.java}      |   34 +-
 .../external/collections4/SortedBidiMap.java       |   59 +
 .../collections4/bidimap/AbstractDualBidiMap.java  |  798 +++++++
 .../collections4/bidimap/DualTreeBidiMap.java      |  414 ++++
 .../collection/AbstractCollectionDecorator.java    |  182 ++
 .../iterators/AbstractIteratorDecorator.java}      |   39 +-
 .../AbstractUntypedIteratorDecorator.java          |   66 +
 .../iterators/ListIteratorWrapper.java             |  274 +++
 .../keyvalue/AbstractMapEntryDecorator.java        |   92 +
 .../collections4/map/AbstractIterableMap.java}     |   33 +-
 .../collections4/map/AbstractMapDecorator.java     |  153 ++
 .../map/AbstractSortedMapDecorator.java            |  166 ++
 .../map/EntrySetToMapIteratorAdapter.java          |  110 +
 .../iotdb/commons/file/SystemFileFactory.java      |    2 +-
 .../commons/file/SystemPropertiesHandler.java      |    2 +
 .../iotdb/commons/partition/SchemaPartition.java   |    6 +
 .../apache/iotdb/commons/path/MeasurementPath.java |   26 -
 .../org/apache/iotdb/commons/path/PartialPath.java |   32 +-
 .../apache/iotdb/commons/path/PathPatternNode.java |    7 +
 .../apache/iotdb/commons/path/PathPatternTree.java |   13 +-
 .../iotdb/commons/path/fa/dfa/graph/NFAGraph.java  |    2 +-
 .../fa/dfa/transition/DFAWildcardTransition.java   |    2 +-
 .../commons/pipe/agent/plugin/PipePluginAgent.java |    8 +-
 .../agent/plugin/builtin/BuiltinPipePlugin.java    |    3 -
 .../plugin/builtin/source/mqtt/MQTTSource.java     |   68 -
 .../service/PipePluginExecutableManager.java       |    2 +-
 .../commons/pipe/agent/task/PipeTaskAgent.java     |   87 +-
 .../pipe/agent/task/meta/PipeStaticMeta.java       |   58 +-
 .../commons/pipe/agent/task/meta/PipeTaskMeta.java |   39 +-
 .../task/progress/interval/PipeCommitInterval.java |   10 +-
 .../task/subtask/PipeAbstractSinkSubtask.java      |   29 +-
 .../iotdb/commons/pipe/config/PipeConfig.java      |  138 +-
 .../iotdb/commons/pipe/config/PipeDescriptor.java  |   88 +-
 .../pipe/config/constant/PipeSinkConstant.java     |   11 +
 .../pipe/config/constant/PipeSourceConstant.java   |   38 +-
 .../pipe/config/constant/SystemConstant.java       |   10 +-
 ....java => PipeTaskSourceRuntimeEnvironment.java} |    9 +-
 .../pipe/datastructure/interval/Interval.java      |    6 +-
 .../datastructure/interval/IntervalManager.java    |   13 +-
 .../datastructure/pattern/IoTDBTreePattern.java    |   85 +-
 .../pattern/IoTDBTreePatternOperations.java        |   52 +
 .../datastructure/pattern/PrefixTreePattern.java   |   70 +-
 .../pipe/datastructure/pattern/TreePattern.java    |  522 ++++-
 .../pattern/UnionIoTDBTreePattern.java             |  170 ++
 .../datastructure/pattern/UnionTreePattern.java    |  102 +
 .../pattern/WithExclusionIoTDBTreePattern.java     |  213 ++
 .../pattern/WithExclusionTreePattern.java          |  119 +
 .../listening/AbstractPipeListeningQueue.java      |   10 +-
 .../visibility/VisibilityTestUtils.java            |   10 +-
 .../iotdb/commons/pipe/event/EnrichedEvent.java    |   16 +
 .../commons/pipe/event/PipeSnapshotEvent.java      |    4 +
 .../commons/pipe/event/PipeWritePlanEvent.java     |    4 +
 .../commons/pipe/event/ProgressReportEvent.java    |    4 +
 .../commons/pipe/receiver/IoTDBFileReceiver.java   |  173 +-
 .../commons/pipe/receiver/IoTDBReceiverAgent.java  |    2 +-
 .../pipe/receiver/PipeReceiverStatusHandler.java   |  188 +-
 .../commons/pipe/resource/log/PipeLogger.java      |   58 +
 .../pipe/sink/client/IoTDBClientManager.java       |   12 +-
 .../pipe/sink/client/IoTDBSyncClientManager.java   |   47 +-
 .../pipe/sink/limiter/GlobalRPCRateLimiter.java}   |   18 +-
 .../pipe/sink/limiter/GlobalRateLimiter.java       |   14 +-
 .../pipe/sink/limiter/TsFileSendRateLimiter.java}  |   31 +-
 .../common/PipeTransferHandshakeConstant.java      |    3 +
 .../pipe/sink/protocol/IoTDBAirGapSink.java        |    3 +
 .../commons/pipe/sink/protocol/IoTDBSink.java      |   22 +-
 .../pipe/sink/protocol/IoTDBSslSyncSink.java       |   14 +-
 .../pipe/source/IoTDBNonDataRegionSource.java      |   27 +-
 .../iotdb/commons/pipe/source/IoTDBSource.java     |   21 +-
 .../iotdb/commons/schema/SchemaConstant.java       |    7 +-
 .../schema/column/ColumnHeaderConstant.java        |   41 +
 .../apache/iotdb/commons/schema/table/Audit.java   |   45 +
 .../schema/table/InsertNodeMeasurementInfo.java    |  244 ++
 .../schema/table/NonCommittableTsTable.java}       |   31 +-
 .../schema/table/TsFileTableSchemaUtil.java        |  207 ++
 .../apache/iotdb/commons/schema/table/TsTable.java |  250 +-
 .../schema/table/column/FieldColumnSchema.java     |    1 +
 .../schema/table/column/TsTableColumnSchema.java   |    6 +
 .../viewExpression/leaf/ConstantViewOperand.java   |    2 +-
 .../unary/RegularViewExpression.java               |    2 +-
 .../service/AbstractThriftServiceThread.java       |   68 +-
 .../iotdb/commons/service/ThriftServiceThread.java |   40 +-
 .../iotdb/commons/service/metric/enums/Metric.java |    4 +
 .../meta/consumer/ConsumerGroupMeta.java           |    3 +-
 .../builtin/UDTFEqualSizeBucketRandomSample.java   |    6 +-
 .../TableBuiltinAggregationFunction.java           |    4 +-
 .../relational/TableBuiltinScalarFunction.java     |   36 +
 .../commons/udf/service/UDFExecutableManager.java  |    2 +-
 .../org/apache/iotdb/commons/utils/AuthUtils.java  |   36 +-
 .../org/apache/iotdb/commons/utils/FileUtils.java  |  113 +-
 .../org/apache/iotdb/commons/utils/IOUtils.java    |   30 +
 .../org/apache/iotdb/commons/utils/RetryUtils.java |   64 +-
 .../apache/iotdb/commons/utils/SerializeUtils.java |   18 +
 .../apache/iotdb/commons/utils/StatusUtils.java    |   18 +-
 .../pipe/datastructure/PipeCommitQueueTest.java    |   10 +
 .../PipeReceiverStatusHandlerTest.java             |  302 +++
 .../annotation/PipePluginAnnotationTest.java       |   11 +-
 .../commons/pipe/task/PipeSleepIntervalTest.java   |   83 +
 .../schema/table/TsFileTableSchemaUtilTest.java    |  748 ++++++
 .../apache/iotdb/commons/utils/FileUtilsTest.java  |   79 +
 .../db/relational/grammar/sql/RelationalSql.g4     |   86 +-
 .../thrift-ainode/src/main/thrift/ainode.thrift    |   32 +
 .../thrift-commons/src/main/thrift/common.thrift   |    8 +-
 .../src/main/thrift/confignode.thrift              |   90 +-
 .../thrift-datanode/src/main/thrift/client.thrift  |   18 -
 .../src/main/thrift/datanode.thrift                |   55 +-
 library-udf/pom.xml                                |    2 +
 .../iotdb/library/match/PatternExecutor.java       |    9 +-
 pom.xml                                            |   83 +-
 scripts/conf/ainode-env.sh                         |  138 --
 scripts/conf/windows/ainode-env.bat                |  129 -
 scripts/sbin/start-ainode.sh                       |   56 +-
 scripts/sbin/start-cli.sh                          |    9 +-
 scripts/sbin/windows/start-ainode.bat              |   62 +-
 scripts/sbin/windows/start-cli-table.bat           |  116 +-
 scripts/sbin/windows/start-cli.bat                 |  234 +-
 1691 files changed, 84152 insertions(+), 22204 deletions(-)
 create mode 100644 example/client-cpp-example/src/MultiSvrNodeClient.cpp
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/ainode/it/AINodeConcurrentInferenceIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/ainode/it/AINodeInstanceManagementIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/auth/it/IoTDBLoginLockManagerIT.java
 rename integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/{IoTDBPartitionInheritPolicyIT.java => IoTDBPartitionInheritStrategyIT.java} (98%)
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/IoTDBPartitionShuffleStrategyIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/iotv1/IoTDBRegionMigrateWithCompressionRatioIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBMiscIT.java
 copy integration-test/src/test/java/org/apache/iotdb/db/it/alignbydevice/{IoTDBAlignByDevice3IT.java => IoTDBAlignByDevice4IT.java} (58%)
 copy integration-test/src/test/java/org/apache/iotdb/db/it/alignbydevice/{IoTDBAlignByDeviceWithTemplate2IT.java => IoTDBAlignByDeviceWithTemplate3IT.java} (59%)
 copy integration-test/src/test/java/org/apache/iotdb/db/it/alignbydevice/{IoTDBOrderByLimitOffsetAlignByDevice2IT.java => IoTDBAlignByDeviceWithTemplateAggregation2IT.java} (56%)
 copy integration-test/src/test/java/org/apache/iotdb/db/it/alignbydevice/{IoTDBOrderByLimitOffsetAlignByDevice2IT.java => IoTDBOrderByLimitOffsetAlignByDevice3IT.java} (64%)
 copy integration-test/src/test/java/org/apache/iotdb/db/it/alignbydevice/{IoTDBOrderByWithAlignByDevice2IT.java => IoTDBOrderByWithAlignByDevice4IT.java} (58%)
 copy integration-test/src/test/java/org/apache/iotdb/db/it/{IoTDBExampleIT.java => alignbydevice/IoTDBShuffleSink1_2IT.java} (53%)
 copy integration-test/src/test/java/org/apache/iotdb/db/it/{IoTDBExampleIT.java => alignbydevice/IoTDBShuffleSink2_2IT.java} (53%)
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/aligned/IoTDBAlignedMemQueryIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/audit/AuditLogSet.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/audit/IoTDBAuditLogBasicIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBGrantOptionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionRelationalIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBTemplateAuthIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBUserRenameIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBAlterEncodingCompressorIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCountDeviceIT.java
 copy integration-test/src/test/java/org/apache/iotdb/db/it/{IoTDBExampleIT.java => udf/IoTDBUDFIntermediateBlockSerdeIT.java} (52%)
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/utils/TSDataTypeTestUtils.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/tablemodel/manual/basic/IoTDBPipeTsFileDecompositionWithModsIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/treemodel/auto/basic/IoTDBPipeAutoSplitIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/treemodel/manual/IoTDBPipeTsFileDecompositionWithModsIT.java
 copy integration-test/src/test/java/org/apache/iotdb/pipe/it/{dual/tablemodel/manual/AbstractPipeTableModelDualManualIT.java => triple/AbstractPipeTripleManualIT.java} (52%)
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/pipe/it/triple/IoTDBPipeForwardIT.java
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/{query/recent/IoTDBTableAggregationNonStreamIT.java => db/it/IoTDBPatternAggregation2IT.java} (55%)
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/{query/recent/IoTDBTableAggregationNonStreamIT.java => db/it/IoTDBPatternRecognition2IT.java} (55%)
 copy integration-test/src/test/java/org/apache/iotdb/{db/it/alignbydevice/IoTDBOrderByLimitOffsetAlignByDevice2IT.java => relational/it/db/it/IoTDBWindowFunction2IT.java} (55%)
 copy integration-test/src/test/java/org/apache/iotdb/{db/it/alignbydevice/IoTDBOrderByLimitOffsetAlignByDevice2IT.java => relational/it/db/it/IoTDBWindowTVF2IT.java} (55%)
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/insertquery/IoTDBInsertQueryWithInternalSSLIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBCteIT.java
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{IoTDBTableAggregationNonStreamIT.java => IoTDBFillTable2IT.java} (58%)
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{IoTDBTableAggregationNonStreamIT.java => IoTDBGapFillTable2IT.java} (62%)
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{IoTDBUnionTableIT.java => IoTDBIntersectTableIT.java} (56%)
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{IoTDBTableAggregationNonStreamIT.java => IoTDBTableAggregation2IT.java} (66%)
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{IoTDBTableAggregationNonStreamIT.java => IoTDBTableAggregationNonStream2IT.java} (83%)
 copy integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/{IoTDBTableAggregationNonStreamIT.java => IoTDBUnionTable2IT.java} (61%)
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBCRC32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromBase32ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromBase64ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromBase64UrlColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromBigEndian32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromBigEndian64FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromHexColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromIEEE754_32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromIEEE754_64FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromLittleEndian32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBFromLittleEndian64FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBHmacMd5FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBHmacSha1FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBHmacSha256FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBHmacSha512FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBLpadFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBMd5ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBMurmur3ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBReverseFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBRpadFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBSha1ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBSha256ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBSha512ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBSpookyHashV2_32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBSpookyHashV2_64FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToBase32ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToBase64ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToBase64UrlColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToBigEndian32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToBigEndian64FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToHexColumnFunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToIEEE754_32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToIEEE754_64FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToLittleEndian32FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBToLittleEndian64FunctionIT.java
 create mode 100644 integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/scalar/IoTDBXXHash64ColumnFunctionIT.java
 create mode 100644 integration-test/src/test/resources/test-keystore
 create mode 100644 integration-test/src/test/resources/test-truststore
 delete mode 100644 iotdb-client/cli/src/main/java/org/apache/iotdb/cli/IoTDBSyntaxHighlighter.java
 copy iotdb-client/client-cpp/src/main/{TableSessionBuilder.h => SessionBuilder.h} (52%)
 create mode 100644 iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/NettyTNonblockingTransport.java
 rename iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/{TNonblockingSocketWrapper.java => TNonblockingTransportWrapper.java} (65%)
 create mode 100644 iotdb-core/ainode/ainode.spec
 delete mode 100644 iotdb-core/ainode/ainode/core/inference/inference_request_pool.py
 delete mode 100644 iotdb-core/ainode/ainode/core/inference/inference_request_pool_group.py
 delete mode 100644 iotdb-core/ainode/ainode/core/inference/pool_controller.py
 delete mode 100644 iotdb-core/ainode/ainode/core/inference/pool_scheduler.py
 delete mode 100644 iotdb-core/ainode/ainode/core/inference/request_controller.py
 delete mode 100644 iotdb-core/ainode/ainode/core/rpc/handler.py
 delete mode 100644 iotdb-core/ainode/ainode/core/script.py
 create mode 100644 iotdb-core/ainode/build_binary.py
 rename iotdb-core/ainode/{ainode => iotdb}/__init__.py (100%)
 rename iotdb-core/ainode/{ainode/core => iotdb/ainode}/__init__.py (100%)
 copy iotdb-core/ainode/{ainode/core/inference => iotdb/ainode/core}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/ai_node.py (88%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/config.py (84%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/constant.py (90%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/exception.py (96%)
 rename iotdb-core/ainode/{ainode/core/inference/scheduler => iotdb/ainode/core/inference}/__init__.py (100%)
 rename iotdb-core/ainode/{ainode/core/inference/strategy => iotdb/ainode/core/inference/batcher}/__init__.py (100%)
 copy iotdb-core/ainode/{ainode/core/util/decorator.py => iotdb/ainode/core/inference/batcher/abstract_batcher.py} (59%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/inference/batcher/basic_batcher.py
 rename iotdb-core/ainode/{ainode/core/ingress => iotdb/ainode/core/inference/dispatcher}/__init__.py (100%)
 copy iotdb-core/ainode/{ainode/core/rpc/status.py => iotdb/ainode/core/inference/dispatcher/abstract_dispatcher.py} (50%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/inference/dispatcher/basic_dispatcher.py
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/inference/inference_request.py (86%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/inference/inference_request_pool.py
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/inference/pool_controller.py
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/inference/pool_group.py
 rename iotdb-core/ainode/{ainode/core/manager => iotdb/ainode/core/inference/pool_scheduler}/__init__.py (100%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/inference/pool_scheduler/abstract_pool_scheduler.py
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/inference/pool_scheduler/basic_pool_scheduler.py
 rename iotdb-core/ainode/{ainode/core/model => iotdb/ainode/core/inference/request_scheduler}/__init__.py (100%)
 rename iotdb-core/ainode/{ainode/core/inference/scheduler/abstract_scheduler.py => iotdb/ainode/core/inference/request_scheduler/abstract_request_scheduler.py} (98%)
 rename iotdb-core/ainode/{ainode/core/inference/scheduler/basic_scheduler.py => iotdb/ainode/core/inference/request_scheduler/basic_request_scheduler.py} (89%)
 rename iotdb-core/ainode/{ainode/core/model/sundial => iotdb/ainode/core/inference/strategy}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/inference/strategy/abstract_inference_pipeline.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/inference/strategy/timer_sundial_inference_pipeline.py (88%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/inference/strategy/timerxl_inference_pipeline.py (71%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/inference/utils.py (100%)
 rename iotdb-core/ainode/{ainode/core/model/timerxl => iotdb/ainode/core/ingress}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/ingress/dataset.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/ingress/iotdb.py (95%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/log.py (95%)
 rename iotdb-core/ainode/{ainode/core/rpc => iotdb/ainode/core/manager}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/manager/cluster_manager.py (93%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/manager/inference_manager.py (54%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/manager/model_manager.py (82%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/manager/utils.py (77%)
 rename iotdb-core/ainode/{ainode/core/util => iotdb/ainode/core/model}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/built_in_model_factory.py (96%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/model_enums.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/model_factory.py (96%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/model_info.py (98%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/model_storage.py (93%)
 copy {iotdb-client/client-py/iotdb => iotdb-core/ainode/iotdb/ainode/core/model/sundial}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/sundial/configuration_sundial.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/sundial/flow_loss.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/sundial/modeling_sundial.py (90%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/sundial/ts_generation_mixin.py (97%)
 copy {iotdb-client/client-py/iotdb => iotdb-core/ainode/iotdb/ainode/core/model/timerxl}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/timerxl/configuration_timer.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/timerxl/modeling_timer.py (90%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/timerxl/ts_generation_mixin.py (97%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/model/uri_utils.py (94%)
 copy {iotdb-client/client-py/iotdb => iotdb-core/ainode/iotdb/ainode/core/rpc}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/rpc/client.py (86%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/rpc/handler.py
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/rpc/service.py (69%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/rpc/status.py (89%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/script.py
 copy {iotdb-client/client-py/iotdb => iotdb-core/ainode/iotdb/ainode/core/util}/__init__.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/util/activation.py (100%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/util/atmoic_int.py
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/util/batch_executor.py
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/util/cache.py (96%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/util/decorator.py (100%)
 create mode 100644 iotdb-core/ainode/iotdb/ainode/core/util/gpu_mapping.py
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/util/huggingface_cache.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/util/lock.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/util/masking.py (100%)
 rename iotdb-core/ainode/{ => iotdb}/ainode/core/util/serde.py (98%)
 rename iotdb-core/ainode/{ainode/core/inference/__init__.py => iotdb/ainode/core/util/thread_name.py} (87%)
 delete mode 100644 iotdb-core/ainode/poetry.lock
 create mode 100644 iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/audit/CNAuditLogger.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/ShowVariablesStatement.java => confignode/src/main/java/org/apache/iotdb/confignode/client/async/handlers/audit/DataNodeWriteAuditLogHandler.java} (54%)
 delete mode 100644 iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeRemoveCheck.java
 create mode 100644 iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/write/pipe/payload/PipeAlterEncodingCompressorPlan.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/audit/AuditLogOperation.java => confignode/src/main/java/org/apache/iotdb/confignode/exception/NoAvailableAINodeException.java} (74%)
 create mode 100644 iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/auth/AuthorInfo.java
 rename iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/{AuthorInfo.java => auth/AuthorPlanExecutor.java} (89%)
 create mode 100644 iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/auth/IAuthorPlanExecutor.java
 create mode 100644 iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/schema/AlterEncodingCompressorProcedure.java
 create mode 100644 iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/schema/DataNodeTSStatusTaskExecutor.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/audit/AuditLogStorage.java => confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/AlterEncodingCompressorState.java} (84%)
 copy iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/schema/{DeleteStorageGroupState.java => DeleteDatabaseState.java} (96%)
 copy iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/procedure/impl/schema/{DeleteTimeSeriesProcedureTest.java => AlterEncodingCompressorProcedureTest.java} (59%)
 create mode 100644 iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/ratis/utils/NoHostnameVerificationTrustManager.java
 delete mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/audit/AuditLogger.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/audit/DNAuditLogger.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/auth/LoginLockManager.java
 delete mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/exception/runtime/TableNotExistsRuntimeException.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/event/common/tsfile/parser/util/ModsOperationUtil.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/resource/log/PipePeriodicalLogReducer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/BatchEventProcessor.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/Disruptor.java
 copy iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/client/CnToCnNodeRequestType.java => datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/EventFactory.java} (64%)
 rename iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/schema/DeleteStorageGroupState.java => datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/EventHandler.java} (55%)
 copy iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/read/database/GetDatabasePlan.java => datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/ExceptionHandler.java} (52%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/MultiProducerSequencer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/RingBuffer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/Sequence.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/SequenceBarrier.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/realtime/disruptor/SequenceGroups.java
 delete mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/mqtt/MQTTPublishHandler.java
 delete mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/mqtt/MQTTSource.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/client/AINodeClientFactory.java
 rename iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons => datanode/src/main/java/org/apache/iotdb/db/protocol}/client/ainode/AINodeClient.java (61%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/client/ainode/AINodeClientManager.java
 rename iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons => datanode/src/main/java/org/apache/iotdb/db/protocol}/client/ainode/AsyncAINodeServiceClient.java (83%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/MappingCollectOperator.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/rowpattern/expression/CastComputation.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/AbstractApproxPercentileAccumulator.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/ApproxPercentileAccumulator.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/ApproxPercentileWithWeightAccumulator.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/approximate/TDigest.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/grouped/AbstractGroupedApproxPercentileAccumulator.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/grouped/GroupedApproxPercentileAccumulator.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/grouped/GroupedApproxPercentileWithWeightAccumulator.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/grouped/array/TDigestBigArray.java
 delete mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/dualkeycache/IDualKeyCacheUpdating.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/{sys/KillQueryTask.java => metadata/AlterEncodingCompressorTask.java} (59%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/{template/ShowPathSetTemplateTask.java => ShowAvailableUrlsTask.java} (62%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/{sys/KillQueryTask.java => metadata/ai/LoadModelTask.java} (66%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/{template/ShowPathSetTemplateTask.java => ai/ShowAIDevicesTask.java} (62%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/{template/ShowPathSetTemplateTask.java => ai/ShowLoadedModelsTask.java} (62%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/{sys/KillQueryTask.java => metadata/ai/UnloadModelTask.java} (66%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/sys/ShowConfigurationTask.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{audit/AuditLogOperation.java => queryengine/plan/expression/visitor/ConcatDeviceVisitor.java} (58%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/metadata/write/AlterEncodingCompressorNode.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/tvf/PatternMatchTableFunction.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{utils/datastructure/MemPointIterator.java => queryengine/plan/relational/function/tvf/match/MatchConfig.java} (58%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/tvf/match/QetchAlgorithm.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/tvf/match/model/MatchState.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/tvf/match/model/PatternSegment.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{audit/AuditLogStorage.java => queryengine/plan/relational/function/tvf/match/model/Point.java} (68%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/tvf/match/model/RegexMatchState.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/tvf/match/model/Section.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/cache/DeviceSchemaRequestCache.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/ImplementIntersectAll.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/ImplementIntersectDistinctAsUnion.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/MergeUnion.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PushLimitThroughUnion.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PushProjectionThroughUnion.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PushTopKThroughUnion.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/RemoveEmptyUnionBranches.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/SetOperationMerge.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/SetOperationNodeTranslator.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/{UnionNode.java => IntersectNode.java} (58%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/TreeAccessCheckContext.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/TreeAccessCheckVisitor.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{ShowTopics.java => LoadModel.java} (51%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{ShowTopics.java => ShowAIDevices.java} (58%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{ShowTopics.java => ShowAvailableUrls.java} (58%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{audit/AuditLogStorage.java => queryengine/plan/relational/sql/ast/ShowConfiguration.java} (62%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{ShowTopics.java => ShowLoadedModels.java} (55%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/{ShowSubscriptions.java => UnloadModel.java} (52%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/AlterEncodingCompressorStatement.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/{CountDatabaseStatement.java => ShowAvailableUrlsStatement.java} (79%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/model/{DropModelStatement.java => LoadModelStatement.java} (62%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/{ShowTTLStatement.java => model/ShowAIDevicesStatement.java} (74%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/{sys/SetSqlDialectStatement.java => metadata/model/ShowLoadedModelsStatement.java} (65%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/model/{CreateModelStatement.java => UnloadModelStatement.java} (62%)
 copy iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/pipe/config/plugin/env/PipeTaskExtractorRuntimeEnvironment.java => datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/template/AbstractShowExactTemplate.java} (58%)
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/sys/{SetConfigurationStatement.java => ShowConfigurationStatement.java} (58%)
 rename iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin => datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf}/BuiltinAggregationFunction.java (98%)
 rename iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin => datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf}/BuiltinScalarFunction.java (97%)
 rename iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin => datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf}/BuiltinTimeSeriesGeneratingFunction.java (65%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf/UDTFForecast.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/binary/HmacColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/binary/factory/HmacStrategiesFactory.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{audit/AuditLogOperation.java => queryengine/transformation/dag/column/binary/strategies/HmacStrategy.java} (81%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/ternary/LpadColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/ternary/RpadColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/ternary/utils/BytePaddingUtils.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/BytesToDoubleColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/BytesToFloatColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/BytesToIntColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/BytesToLongColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/CRC32Transformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/DoubleToBytesColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/FloatToBytesColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/GenericCodecColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/HmacConstantKeyColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntToBytesColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/LongToBytesColumnTransformer.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/factory/CodecStrategiesFactory.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/factory/NumericCodecStrategiesFactory.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{audit/AuditLogOperation.java => queryengine/transformation/dag/column/unary/scalar/inteface/CodecStrategy.java} (75%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/util/HexUtils.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/util/SpookyHashV2Utils.java
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/util/TransformerDebugUtils.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{utils/datastructure/MemPointIterator.java => storageengine/dataregion/read/reader/common/NoDataPointReader.java} (52%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/active/ActiveLoadPathHelper.java
 copy iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/converter/{LoadConvertedInsertTabletStatementExceptionVisitor.java => LoadTableConvertedInsertTabletStatementExceptionVisitor.java} (76%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/converter/{LoadConvertedInsertTabletStatementExceptionVisitor.java => LoadTreeConvertedInsertTabletStatementExceptionVisitor.java} (97%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/{active/ActiveLoadUtil.java => util/LoadUtil.java} (61%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/EncryptDBUtils.java
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/{util => db/utils}/TabletDecoder.java (99%)
 create mode 100644 iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/LazyBitMap.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/auth/AuthorityCheckerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/auth/LoginLockManagerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/event/common/tsfile/parser/util/ModsOperationUtilTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/pattern/TreePatternCoverageTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/TransformOperatorTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/analyze/load/TimeseriesMetadataIteratorTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/IntersectTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/PushAggregationThroughUnionTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/UnionOptimizeTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/binary/hmac/HmacMd5ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/binary/hmac/HmacSha1ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/binary/hmac/HmacSha256ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/binary/hmac/HmacSha512ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/ternary/LpadColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/ternary/RpadColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/FromBigEndian32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/FromBigEndian64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/FromIEEE754_32BigEndianColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/FromIEEE754_64BigEndianColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/FromLittleEndian32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/FromLittleEndian64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/ToBigEndian32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/ToBigEndian64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/ToIEEE754_32BigEndianColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/ToIEEE754_64BigEndianColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/ToLittleEndian32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/IntegerEncoding/ToLittleEndian64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/ReverseColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/base64Encoding/FromBase32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/base64Encoding/FromBase64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/base64Encoding/FromBase64UrlColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/base64Encoding/ToBase32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/base64Encoding/ToBase64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/base64Encoding/ToBase64UrlColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/Crc32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/Md5ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/Murmur3ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/Sha1ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/Sha256ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/Sha512ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/SpookyHashV2_32ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/SpookyHashV2_64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hashing/XxHash64ColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hexEncoding/FromHexColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/transformation/dag/column/unary/scalar/hexEncoding/ToHexColumnTransformerTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedTVListIteratorTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/memtable/NonAlignedTVListIteratorTest.java
 create mode 100644 iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/TSDataTypeTestUtils.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/audit/AbstractAuditLogger.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/audit/AuditLogOperation.java => node-commons/src/main/java/org/apache/iotdb/commons/audit/AuditEventType.java} (58%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/audit/AuditLogFields.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db => node-commons/src/main/java/org/apache/iotdb/commons}/audit/AuditLogOperation.java (94%)
 copy iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/procedure/store/IProcedureStore.java => node-commons/src/main/java/org/apache/iotdb/commons/audit/IAuditEntity.java} (50%)
 rename iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/audit/AuditLogStorage.java => node-commons/src/main/java/org/apache/iotdb/commons/audit/PrivilegeLevel.java} (90%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/audit/UserEntity.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/auth/utils/AuthUtils.java
 delete mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/client/ainode/AINodeClientManager.java
 rename iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/{client => consensus/iotv2}/container/IoTV2GlobalComponentContainer.java (86%)
 rename iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/audit/AuditLogOperation.java => node-commons/src/main/java/org/apache/iotdb/commons/exception/pipe/PipeNonReportException.java} (80%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/BidiMap.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/protocol/rest/filter/User.java => node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/IterableSortedMap.java} (66%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/OrderedBidiMap.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/protocol/rest/filter/User.java => node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/ResettableListIterator.java} (58%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/SortedBidiMap.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/bidimap/AbstractDualBidiMap.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/bidimap/DualTreeBidiMap.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/collection/AbstractCollectionDecorator.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/protocol/rest/filter/User.java => node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/iterators/AbstractIteratorDecorator.java} (50%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/iterators/AbstractUntypedIteratorDecorator.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/iterators/ListIteratorWrapper.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/keyvalue/AbstractMapEntryDecorator.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/protocol/rest/filter/User.java => node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/map/AbstractIterableMap.java} (58%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/map/AbstractMapDecorator.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/map/AbstractSortedMapDecorator.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/external/collections4/map/EntrySetToMapIteratorAdapter.java
 delete mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/plugin/builtin/source/mqtt/MQTTSource.java
 rename iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/config/plugin/env/{PipeTaskExtractorRuntimeEnvironment.java => PipeTaskSourceRuntimeEnvironment.java} (81%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/datastructure/pattern/IoTDBTreePatternOperations.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/datastructure/pattern/UnionIoTDBTreePattern.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/datastructure/pattern/UnionTreePattern.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/datastructure/pattern/WithExclusionIoTDBTreePattern.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/datastructure/pattern/WithExclusionTreePattern.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/resource/log/PipeLogger.java
 rename iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/exception/metadata/AlignedTimeseriesException.java => node-commons/src/main/java/org/apache/iotdb/commons/pipe/sink/limiter/GlobalRPCRateLimiter.java} (65%)
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/pipe/consensus/PipeConsensusSubtaskExecutor.java => node-commons/src/main/java/org/apache/iotdb/commons/pipe/sink/limiter/TsFileSendRateLimiter.java} (54%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/Audit.java
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InsertNodeMeasurementInfo.java
 copy iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/metadata/CountDatabaseStatement.java => node-commons/src/main/java/org/apache/iotdb/commons/schema/table/NonCommittableTsTable.java} (52%)
 create mode 100644 iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/TsFileTableSchemaUtil.java
 create mode 100644 iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/pipe/datastructure/PipeReceiverStatusHandlerTest.java
 create mode 100644 iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/pipe/task/PipeSleepIntervalTest.java
 create mode 100644 iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/schema/table/TsFileTableSchemaUtilTest.java
 create mode 100644 iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/utils/FileUtilsTest.java
 delete mode 100644 scripts/conf/ainode-env.sh
 delete mode 100644 scripts/conf/windows/ainode-env.bat


(iotdb) 06/06: merge master

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch opt_aligned_tvlist
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 901f804aa3e593306988d14240ffe506f214c452
Merge: c186fd4300a 23be2201b81
Author: HTHou <ha...@apache.org>
AuthorDate: Fri Nov 28 11:21:31 2025 +0800

    merge master

 .github/workflows/cluster-it-1c1d.yml              |   31 +-
 .github/workflows/cluster-it-1c1d1a.yml            |    6 +-
 .github/workflows/cluster-it-1c3d.yml              |   28 +-
 .github/workflows/compile-check.yml                |   24 +-
 .github/workflows/daily-it.yml                     |  208 +-
 .github/workflows/daily-ut.yml                     |   14 +-
 .github/workflows/dependency-check.yml             |   20 +-
 .github/workflows/pipe-it.yml                      |  214 +-
 .github/workflows/sonar-codecov.yml                |   10 +-
 .github/workflows/table-cluster-it-1c1d.yml        |   33 +-
 .github/workflows/table-cluster-it-1c3d.yml        |   28 +-
 .github/workflows/unit-test.yml                    |   22 +-
 .github/workflows/vulnerability-check.yml          |   12 +-
 .gitignore                                         |    1 +
 CONTRIBUTING.md                                    |    2 +-
 LICENSE                                            |   57 +-
 LICENSE-binary                                     |   26 +-
 README.md                                          |   18 +-
 README_ZH.md                                       |   17 +-
 dependencies.json                                  |  335 +--
 docker/ReadMe.md                                   |    2 +-
 .../main/DockerCompose/docker-compose-ainode.yml   |    9 +-
 .../docker-compose-cluster-1c1d1a.yml              |   15 +-
 .../DockerCompose/docker-compose-cluster-1c2d.yml  |   21 +
 .../DockerCompose/docker-compose-host-3c3d.yml     |   14 +
 .../DockerCompose/docker-compose-standalone.yml    |    9 +-
 example/client-cpp-example/pom.xml                 |    4 +
 example/client-cpp-example/src/CMakeLists.txt      |    5 +-
 .../client-cpp-example/src}/MultiSvrNodeClient.cpp |    0
 .../src/TableModelSessionExample.cpp               |    4 +-
 example/jdbc/pom.xml                               |    8 +
 .../server/CustomizedJsonPayloadFormatter.java     |    2 +-
 .../java/org/apache/iotdb/mqtt/MQTTClient.java     |   13 +-
 integration-test/import-control.xml                |    2 +-
 integration-test/pom.xml                           |   23 +-
 integration-test/src/assembly/mpp-test.xml         |    2 +-
 .../java/org/apache/iotdb/it/env/EnvFactory.java   |    2 +-
 .../iotdb/it/env/cluster/ClusterConstant.java      |    2 +-
 .../org/apache/iotdb/it/env/cluster/EnvUtils.java  |    2 +-
 .../it/env/cluster/config/MppCommonConfig.java     |   64 +-
 .../env/cluster/config/MppSharedCommonConfig.java  |   77 +-
 .../iotdb/it/env/cluster/env/AbstractEnv.java      |    2 +-
 .../iotdb/it/env/cluster/node/AINodeWrapper.java   |   29 +-
 .../it/env/cluster/node/AbstractNodeWrapper.java   |    8 +-
 .../iotdb/it/env/cluster/node/DataNodeWrapper.java |   10 +-
 .../it/env/remote/config/RemoteCommonConfig.java   |   50 +
 .../constant/BuiltinAggregationFunctionEnum.java   |    7 +-
 .../BuiltinTimeSeriesGeneratingFunctionEnum.java   |    1 +
 .../apache/iotdb/itbase/constant/TestConstant.java |   14 +-
 .../org/apache/iotdb/itbase/env/CommonConfig.java  |   22 +-
 .../itbase/runtime/ClusterTestConnection.java      |   12 +-
 .../iotdb/itbase/runtime/ClusterTestStatement.java |    4 +-
 .../iotdb/itbase/runtime/NodeConnection.java       |   12 +-
 .../ainode/it/AINodeConcurrentInferenceIT.java     |  187 ++
 .../iotdb/ainode/it/AINodeInferenceSQLIT.java      |  118 +-
 .../ainode/it/AINodeInstanceManagementIT.java      |  212 ++
 .../apache/iotdb/ainode/utils/AINodeTestUtils.java |   35 +
 .../iotdb/auth/it/IoTDBLoginLockManagerIT.java     |  181 ++
 .../confignode/it/IoTDBConfigNodeSnapshotIT.java   |   33 +-
 .../it/cluster/IoTDBClusterNodeShutdownHookIT.java |    2 +-
 .../it/database/IoTDBDatabaseSetAndDeleteIT.java   |   66 +-
 .../it/load/IoTDBConfigNodeSwitchLeaderIT.java     |    2 +-
 ...oTDBMultiDBRegionGroupLeaderDistributionIT.java |    3 +-
 .../load/IoTDBRegionGroupLeaderDistributionIT.java |   15 +
 .../IoTDBAutoRegionGroupExtension2IT.java          |    2 +
 .../partition/IoTDBAutoRegionGroupExtensionIT.java |   13 +-
 .../IoTDBCustomRegionGroupExtensionIT.java         |    2 +-
 .../it/partition/IoTDBPartitionCreationIT.java     |   10 +-
 .../it/partition/IoTDBPartitionDurableIT.java      |   16 +-
 .../it/partition/IoTDBPartitionGetterIT.java       |   43 +-
 .../partition/IoTDBPartitionShuffleStrategyIT.java |    4 +-
 ...IoTDBRegionOperationReliabilityITFramework.java |   10 +-
 .../IoTDBRegionGroupExpandAndShrinkForIoTV1IT.java |    4 +-
 .../commit/IoTDBRegionReconstructForIoTV1IT.java   |    3 +-
 .../IoTDBRegionMigrateWithCompressionRatioIT.java  |  130 ++
 .../confignode/it/utils/ConfigNodeTestUtils.java   |   16 +-
 .../org/apache/iotdb/db/it/IoTDBDeletionIT.java    |   21 +
 .../org/apache/iotdb/db/it/IoTDBExampleIT.java     |    4 +-
 .../java/org/apache/iotdb/db/it/IoTDBFilterIT.java |   14 +
 .../org/apache/iotdb/db/it/IoTDBFlushQueryIT.java  |    5 +-
 .../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java  |  154 +-
 .../iotdb/db/it/IoTDBLoadTsFileWithModIT.java      |   60 +-
 .../java/org/apache/iotdb/db/it/IoTDBMiscIT.java   |  116 +
 .../org/apache/iotdb/db/it/IoTDBRestServiceIT.java |   14 +-
 .../org/apache/iotdb/db/it/IoTDBRestartIT.java     |    2 +-
 .../iotdb/db/it/IoTDBSetConfigurationIT.java       |   12 +-
 .../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java |    2 +-
 .../db/it/IoTDBSyntaxConventionIdentifierIT.java   |    2 +-
 .../iotdb/db/it/aggregation/IoTDBModeIT.java       |   24 +-
 .../db/it/alignbydevice/IoTDBAlignByDevice2IT.java |    8 +-
 .../db/it/alignbydevice/IoTDBAlignByDevice3IT.java |    8 +-
 ...ByDevice2IT.java => IoTDBAlignByDevice4IT.java} |   17 +-
 .../db/it/alignbydevice/IoTDBAlignByDeviceIT.java  |   34 +-
 .../IoTDBAlignByDeviceWithTemplate2IT.java         |    8 +-
 ...java => IoTDBAlignByDeviceWithTemplate3IT.java} |   21 +-
 ...DBAlignByDeviceWithTemplateAggregation2IT.java} |   23 +-
 ...oTDBAlignByDeviceWithTemplateAggregationIT.java |    4 +-
 .../IoTDBAlignByDeviceWithTemplateIT.java          |   11 +-
 .../IoTDBOrderByLimitOffsetAlignByDevice2IT.java   |    8 +-
 ...> IoTDBOrderByLimitOffsetAlignByDevice3IT.java} |   17 +-
 .../IoTDBOrderByLimitOffsetAlignByDeviceIT.java    |    4 +-
 .../IoTDBOrderByWithAlignByDevice2IT.java          |    8 +-
 .../IoTDBOrderByWithAlignByDevice3IT.java          |    8 +-
 ....java => IoTDBOrderByWithAlignByDevice4IT.java} |   19 +-
 .../IoTDBOrderByWithAlignByDeviceIT.java           |    4 +-
 .../db/it/alignbydevice/IoTDBShuffleSink1IT.java   |    8 +-
 .../IoTDBShuffleSink1_2IT.java}                    |   46 +-
 .../db/it/alignbydevice/IoTDBShuffleSink2IT.java   |   10 +-
 .../IoTDBShuffleSink2_2IT.java}                    |   46 +-
 .../db/it/aligned/IoTDBAlignedMemQueryIT.java      |   97 +
 .../org/apache/iotdb/db/it/audit/AuditLogSet.java  |   87 +
 .../iotdb/db/it/audit/IoTDBAuditLogBasicIT.java    | 2427 +++++++++++++++++++
 .../org/apache/iotdb/db/it/auth/IoTDBAuthIT.java   |  426 ++--
 .../iotdb/db/it/auth/IoTDBClusterAuthorityIT.java  |   98 +-
 .../it/auth/IoTDBClusterAuthorityRelationalIT.java |   61 +-
 .../iotdb/db/it/auth/IoTDBRelationalAuthIT.java    |  191 +-
 .../iotdb/db/it/auth/IoTDBSeriesPermissionIT.java  |   64 +-
 .../iotdb/db/it/auth/IoTDBSystemPermissionIT.java  |  196 +-
 .../it/auth/IoTDBSystemPermissionRelationalIT.java |  143 ++
 .../iotdb/db/it/auth/IoTDBTemplateAuthIT.java      |  568 +++++
 .../db/it/auth/IoTDBTemplatePermissionIT.java      |   36 +-
 .../apache/iotdb/db/it/auth/IoTDBUserRenameIT.java |  132 ++
 .../apache/iotdb/db/it/path/IoTDBQuotedPathIT.java |    4 +-
 .../it/schema/IoTDBAlterEncodingCompressorIT.java  |  209 ++
 .../db/it/schema/IoTDBAutoCreateSchemaIT.java      |   14 +-
 .../iotdb/db/it/schema/IoTDBCountDeviceIT.java     |  268 +++
 .../it/schema/IoTDBCreateAlignedTimeseriesIT.java  |   22 +
 .../db/it/schema/IoTDBCreateTimeseriesIT.java      |   20 +
 .../db/it/schema/IoTDBDeactivateTemplateIT.java    |    2 +-
 .../iotdb/db/it/schema/IoTDBDeleteDatabaseIT.java  |    3 +-
 .../db/it/schema/IoTDBDeleteTimeSeriesIT.java      |    2 +-
 .../iotdb/db/it/schema/IoTDBMetadataFetchIT.java   |    2 +-
 .../org/apache/iotdb/db/it/schema/IoTDBTagIT.java  |    2 +-
 .../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java  |   13 +-
 .../IoTDBUDFIntermediateBlockSerdeIT.java}         |   51 +-
 .../iotdb/db/it/utils/TSDataTypeTestUtils.java     |  113 +
 .../org/apache/iotdb/db/it/utils/TestUtils.java    |  213 +-
 .../iotdb/it/framework/IoTDBTestListener.java      |    2 +-
 .../apache/iotdb/it/framework/IoTDBTestRunner.java |    3 +
 .../pipe/it/dual/tablemodel/TableModelUtils.java   |   64 +-
 .../manual/AbstractPipeTableModelDualManualIT.java |    7 +-
 .../tablemodel/manual/basic/IoTDBPipeAlterIT.java  |   59 +-
 .../manual/basic/IoTDBPipeDataSinkIT.java          |  217 +-
 .../manual/basic/IoTDBPipeLifeCycleIT.java         |  220 +-
 .../manual/basic/IoTDBPipePermissionIT.java        |  131 +-
 .../manual/basic/IoTDBPipeProtocolIT.java          |   59 +-
 .../tablemodel/manual/basic/IoTDBPipeSourceIT.java |  271 +--
 .../manual/basic/IoTDBPipeSwitchStatusIT.java      |   62 +-
 .../tablemodel/manual/basic/IoTDBPipeSyntaxIT.java |   48 +-
 .../IoTDBPipeTsFileDecompositionWithModsIT.java    |  192 ++
 .../manual/basic/IoTDBPipeWithLoadIT.java          |    9 +-
 .../manual/basic/IoTDBTablePatternFormatIT.java    |  287 +--
 .../manual/enhanced/IoTDBPipeAutoConflictIT.java   |    1 -
 .../manual/enhanced/IoTDBPipeAutoDropIT.java       |   13 +-
 .../manual/enhanced/IoTDBPipeClusterIT.java        |  494 ++--
 .../manual/enhanced/IoTDBPipeDoubleLivingIT.java   |   88 +-
 .../manual/enhanced/IoTDBPipeIdempotentIT.java     |   32 +-
 .../manual/enhanced/IoTDBPipeMetaIT.java           |   72 +-
 .../enhanced/IoTDBPipeSinkCompressionIT.java       |   34 +-
 .../manual/enhanced/IoTDBPipeSinkParallelIT.java   |    6 +-
 .../IoTDBPipeTypeConversionISessionIT.java         |  118 +-
 .../manual/enhanced/IoTDBPipeTypeConversionIT.java |   14 +-
 .../auto/AbstractPipeDualTreeModelAutoIT.java      |   11 +-
 .../treemodel/auto/basic/IoTDBPipeAlterIT.java     |   57 +-
 .../treemodel/auto/basic/IoTDBPipeAutoSplitIT.java |  108 +
 .../treemodel/auto/basic/IoTDBPipeDataSinkIT.java  |   79 +-
 .../treemodel/auto/basic/IoTDBPipeLifeCycleIT.java |  218 +-
 .../treemodel/auto/basic/IoTDBPipeProcessorIT.java |   13 +-
 .../treemodel/auto/basic/IoTDBPipeProtocolIT.java  |   53 +-
 .../auto/basic/IoTDBPipeSinkParallelIT.java        |    6 +-
 .../treemodel/auto/basic/IoTDBPipeSourceIT.java    |  105 +-
 .../auto/basic/IoTDBPipeSwitchStatusIT.java        |   64 +-
 .../treemodel/auto/basic/IoTDBPipeSyntaxIT.java    |   25 +-
 .../auto/basic/IoTDBTreePatternFormatIT.java       |  420 +++-
 .../auto/enhanced/IoTDBPipeAutoConflictIT.java     |  105 +-
 .../auto/enhanced/IoTDBPipeAutoDropIT.java         |   12 +-
 .../auto/enhanced/IoTDBPipeClusterIT.java          |  143 +-
 .../enhanced/IoTDBPipeConditionalOperationsIT.java |   16 +-
 .../auto/enhanced/IoTDBPipeIdempotentIT.java       |   16 +-
 .../auto/enhanced/IoTDBPipeNullValueIT.java        |   28 +-
 .../auto/enhanced/IoTDBPipeSinkCompressionIT.java  |   28 +-
 .../auto/enhanced/IoTDBPipeWithLoadIT.java         |   13 +-
 .../treemodel/auto/enhanced/PipeNowFunctionIT.java |   13 +-
 .../manual/AbstractPipeDualTreeModelManualIT.java  |   11 +-
 .../treemodel/manual/IoTDBPipeInclusionIT.java     |  238 +-
 .../manual/IoTDBPipeManualConflictIT.java          |   24 +-
 .../manual/IoTDBPipeMetaHistoricalIT.java          |   44 +-
 .../manual/IoTDBPipeMetaLeaderChangeIT.java        |   28 +-
 .../treemodel/manual/IoTDBPipeMetaRestartIT.java   |   23 +-
 .../manual/IoTDBPipeMultiSchemaRegionIT.java       |   12 +-
 .../treemodel/manual/IoTDBPipePermissionIT.java    |   98 +-
 .../treemodel/manual/IoTDBPipeReqAutoSliceIT.java  |    4 +-
 .../IoTDBPipeTsFileDecompositionWithModsIT.java    |  660 ++++++
 .../manual/IoTDBPipeTypeConversionISessionIT.java  |  107 +-
 .../manual/IoTDBPipeTypeConversionIT.java          |   15 +-
 .../iotdb/pipe/it/single/AbstractPipeSingleIT.java |    3 +-
 .../iotdb/pipe/it/single/IoTDBPipeAggregateIT.java |   18 +-
 .../iotdb/pipe/it/single/IoTDBPipeOPCUAIT.java     |   15 +-
 .../pipe/it/single/IoTDBPipePermissionIT.java      |   86 +-
 .../AbstractPipeTripleManualIT.java}               |   63 +-
 .../iotdb/pipe/it/triple/IoTDBPipeForwardIT.java   |  117 +
 .../it/db/it/IoTDBAuthenticationTableIT.java       |    8 +
 .../relational/it/db/it/IoTDBDeletionTableIT.java  |  386 ++-
 .../relational/it/db/it/IoTDBInsertTableIT.java    |   62 +
 .../db/it/IoTDBMultiTAGsWithAttributesTableIT.java |   39 +-
 .../it/IoTDBPatternAggregation2IT.java}            |   26 +-
 .../it/db/it/IoTDBPatternAggregationIT.java        |   96 +-
 .../it/IoTDBPatternRecognition2IT.java}            |   27 +-
 .../it/db/it/IoTDBPatternRecognitionIT.java        |   17 +-
 .../it/db/it/IoTDBSetConfigurationTableIT.java     |   78 +-
 .../it/db/it/IoTDBWindowFunction2IT.java}          |   24 +-
 .../relational/it/db/it/IoTDBWindowFunctionIT.java |   14 +-
 .../it/db/it/IoTDBWindowTVF2IT.java}               |   19 +-
 .../relational/it/db/it/IoTDBWindowTVFIT.java      |  305 ++-
 .../it/insertquery/IoTDBInsertQueryIT.java         |    4 +-
 .../IoTDBInsertQueryWithInternalSSLIT.java         |   90 +
 .../relational/it/mqtt/IoTDBMQTTServiceIT.java     |   85 +-
 .../it/query/old/IoTDBSimpleQueryTableIT.java      |    2 +-
 .../scalar/IoTDBBitwiseFunctionTableIT.java        |   36 +-
 .../scalar/IoTDBCastFunctionTableIT.java           |    1 +
 .../scalar/IoTDBFormatFunctionTableIT.java         |    1 +
 .../it/query/old/orderBy/IoTDBOrderByTableIT.java  |    2 +-
 .../it/query/old/query/IoTDBArithmeticTableIT.java |    1 +
 .../it/query/recent/IoTDBDistinctTagIT.java        |   11 +
 ...tionNonStreamIT.java => IoTDBFillTable2IT.java} |   21 +-
 .../it/query/recent/IoTDBFillTableIT.java          |    6 +-
 ...nNonStreamIT.java => IoTDBGapFillTable2IT.java} |   20 +-
 .../it/query/recent/IoTDBGapFillTableIT.java       |    6 +-
 ...nionTableIT.java => IoTDBIntersectTableIT.java} |   78 +-
 .../it/query/recent/IoTDBMaintainAuthIT.java       |   32 +-
 ...StreamIT.java => IoTDBTableAggregation2IT.java} |   18 +-
 .../it/query/recent/IoTDBTableAggregationIT.java   |  100 +-
 ...java => IoTDBTableAggregationNonStream2IT.java} |   12 +-
 .../recent/IoTDBTableAggregationNonStreamIT.java   |    7 +-
 ...ionNonStreamIT.java => IoTDBUnionTable2IT.java} |   19 +-
 .../it/query/recent/IoTDBUnionTableIT.java         |   18 +
 .../query/recent/scalar/IoTDBCRC32FunctionIT.java  |  149 ++
 .../scalar/IoTDBFromBase32ColumnFunctionIT.java    |  197 ++
 .../scalar/IoTDBFromBase64ColumnFunctionIT.java    |  117 +
 .../scalar/IoTDBFromBase64UrlColumnFunctionIT.java |  186 ++
 .../scalar/IoTDBFromBigEndian32FunctionIT.java     |  170 ++
 .../scalar/IoTDBFromBigEndian64FunctionIT.java     |  169 ++
 .../scalar/IoTDBFromHexColumnFunctionIT.java       |  133 ++
 .../scalar/IoTDBFromIEEE754_32FunctionIT.java      |  154 ++
 .../scalar/IoTDBFromIEEE754_64FunctionIT.java      |  154 ++
 .../scalar/IoTDBFromLittleEndian32FunctionIT.java  |  173 ++
 .../scalar/IoTDBFromLittleEndian64FunctionIT.java  |  173 ++
 .../recent/scalar/IoTDBHmacMd5FunctionIT.java      |  211 ++
 .../recent/scalar/IoTDBHmacSha1FunctionIT.java     |  211 ++
 .../recent/scalar/IoTDBHmacSha256FunctionIT.java   |  217 ++
 .../recent/scalar/IoTDBHmacSha512FunctionIT.java   |  221 ++
 .../query/recent/scalar/IoTDBLpadFunctionIT.java   |  230 ++
 .../recent/scalar/IoTDBMd5ColumnFunctionIT.java    |  132 ++
 .../scalar/IoTDBMurmur3ColumnFunctionIT.java       |  132 ++
 .../recent/scalar/IoTDBReverseFunctionIT.java      |  136 ++
 .../query/recent/scalar/IoTDBRpadFunctionIT.java   |  230 ++
 .../recent/scalar/IoTDBSha1ColumnFunctionIT.java   |  132 ++
 .../recent/scalar/IoTDBSha256ColumnFunctionIT.java |  134 ++
 .../recent/scalar/IoTDBSha512ColumnFunctionIT.java |  132 ++
 .../scalar/IoTDBSpookyHashV2_32FunctionIT.java     |  156 ++
 .../scalar/IoTDBSpookyHashV2_64FunctionIT.java     |  156 ++
 .../scalar/IoTDBToBase32ColumnFunctionIT.java      |  141 ++
 .../scalar/IoTDBToBase64ColumnFunctionIT.java      |  149 ++
 .../scalar/IoTDBToBase64UrlColumnFunctionIT.java   |  126 +
 .../scalar/IoTDBToBigEndian32FunctionIT.java       |  143 ++
 .../scalar/IoTDBToBigEndian64FunctionIT.java       |  139 ++
 .../recent/scalar/IoTDBToHexColumnFunctionIT.java  |  149 ++
 .../recent/scalar/IoTDBToIEEE754_32FunctionIT.java |  118 +
 .../recent/scalar/IoTDBToIEEE754_64FunctionIT.java |  119 +
 .../scalar/IoTDBToLittleEndian32FunctionIT.java    |  140 ++
 .../scalar/IoTDBToLittleEndian64FunctionIT.java    |  140 ++
 .../scalar/IoTDBXXHash64ColumnFunctionIT.java      |  132 ++
 .../view/old/orderby/IoTDBOrderByTableViewIT.java  |    2 +-
 .../view/old/query/IoTDBArithmeticTableViewIT.java |    1 +
 .../relational/it/schema/IoTDBDatabaseIT.java      |   31 +-
 .../iotdb/relational/it/schema/IoTDBDeviceIT.java  |   48 +-
 .../iotdb/relational/it/schema/IoTDBTableIT.java   |   16 +
 .../it/session/IoTDBSessionRelationalIT.java       |  176 +-
 .../iotdb/session/it/IoTDBSessionComplexIT.java    |   64 +-
 .../iotdb/session/it/IoTDBSessionCompressedIT.java |   10 +-
 .../session/it/IoTDBSessionSchemaTemplateIT.java   |    4 -
 .../iotdb/session/it/IoTDBSessionSimpleIT.java     |   24 +-
 .../session/it/IoTDBSessionSyntaxConventionIT.java |    6 +-
 .../it/SkipOnSetUpAndTearDownFailure.java          |    3 +-
 .../IoTDBSubscriptionConsumerGroupIT.java          |   58 +-
 .../tablemodel/IoTDBSubscriptionPermissionIT.java  |   20 +-
 .../org/apache/iotdb/util/AbstractSchemaIT.java    |    2 +-
 integration-test/src/test/resources/test-keystore  |  Bin 0 -> 2710 bytes
 .../src/test/resources/test-truststore             |  Bin 0 -> 1238 bytes
 .../relational/table/argument/ScalarArgument.java  |   22 +-
 iotdb-client/cli/pom.xml                           |    8 -
 .../java/org/apache/iotdb/cli/AbstractCli.java     |   31 +-
 .../src/main/java/org/apache/iotdb/cli/Cli.java    |   12 +-
 .../apache/iotdb/cli/IoTDBSyntaxHighlighter.java   |   80 -
 .../org/apache/iotdb/cli/utils/IoTPrinter.java     |    2 +-
 .../iotdb/tool/backup/IoTDBDataBackTool.java       |    4 +-
 .../org/apache/iotdb/tool/common/Constants.java    |   24 +-
 .../org/apache/iotdb/tool/common/OptionsUtil.java  |   89 +-
 .../apache/iotdb/tool/data/AbstractDataTool.java   |   49 +-
 .../org/apache/iotdb/tool/data/ExportData.java     |   12 +-
 .../apache/iotdb/tool/data/ExportDataTable.java    |  138 +-
 .../org/apache/iotdb/tool/data/ExportDataTree.java |  180 +-
 .../org/apache/iotdb/tool/data/ImportData.java     |   24 +-
 .../apache/iotdb/tool/data/ImportDataTable.java    |  112 +-
 .../org/apache/iotdb/tool/data/ImportDataTree.java |   10 +-
 .../iotdb/tool/schema/AbstractSchemaTool.java      |   45 +-
 .../org/apache/iotdb/tool/schema/ExportSchema.java |    2 +-
 .../iotdb/tool/schema/ExportSchemaTable.java       |   16 +-
 .../apache/iotdb/tool/schema/ExportSchemaTree.java |   14 +-
 .../org/apache/iotdb/tool/schema/ImportSchema.java |    2 +-
 .../iotdb/tool/schema/ImportSchemaTable.java       |   14 +-
 .../apache/iotdb/tool/schema/ImportSchemaTree.java |   21 +-
 .../org/apache/iotdb/tool/tsfile/ExportTsFile.java |    2 +-
 .../org/apache/iotdb/tool/tsfile/ImportTsFile.java |    2 +
 .../iotdb/tool/tsfile/ImportTsFileRemotely.java    |   12 +
 .../subscription/SubscriptionTableTsFile.java      |    2 +-
 .../subscription/SubscriptionTreeTsFile.java       |    2 +-
 iotdb-client/client-cpp/README.md                  |    2 +-
 iotdb-client/client-cpp/src/main/CMakeLists.txt    |    5 +
 iotdb-client/client-cpp/src/main/NodesSupplier.cpp |    4 +-
 iotdb-client/client-cpp/src/main/Session.cpp       |    6 +-
 iotdb-client/client-cpp/src/main/SessionBuilder.h  |    8 +-
 iotdb-client/client-cpp/src/main/TableSession.h    |   12 +-
 .../client-cpp/src/main/TableSessionBuilder.h      |    6 +-
 iotdb-client/client-cpp/src/test/CMakeLists.txt    |    5 +
 iotdb-client/client-cpp/src/test/cpp/sessionIT.cpp |   29 +-
 iotdb-client/client-py/pom.xml                     |    3 +
 .../tests/integration/sqlalchemy/test_dialect.py   |    2 +-
 iotdb-client/jdbc/pom.xml                          |    8 +-
 .../iotdb/jdbc/IoTDBAbstractDatabaseMetadata.java  | 1763 +++++++-------
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |   16 +-
 .../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java   |  574 +++--
 .../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java  |    2 +-
 .../apache/iotdb/jdbc/IoTDBPreparedStatement.java  |   19 +-
 .../org/apache/iotdb/jdbc/IoTDBResultMetadata.java |    4 +-
 .../java/org/apache/iotdb/jdbc/IoTDBStatement.java |    2 +-
 .../iotdb/jdbc/IoTDBPreparedStatementTest.java     |  154 +-
 iotdb-client/service-rpc/pom.xml                   |   16 +
 .../apache/iotdb/rpc/BaseRpcTransportFactory.java  |   25 +
 .../iotdb/rpc/NettyTNonblockingTransport.java      |  624 +++++
 .../rpc/TCompressedElasticFramedTransport.java     |    8 +-
 .../apache/iotdb/rpc/TElasticFramedTransport.java  |  137 +-
 ...pper.java => TNonblockingTransportWrapper.java} |   28 +-
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |    3 +
 .../iotdb/rpc/TElasticFramedTransportTest.java     |   37 +
 .../org/apache/iotdb/session/NodesSupplier.java    |   49 +-
 .../java/org/apache/iotdb/session/Session.java     |   10 +-
 .../apache/iotdb/session/TableSessionBuilder.java  |   12 +-
 .../org/apache/iotdb/session/ThriftConnection.java |    1 +
 .../org/apache/iotdb/session/pool/SessionPool.java |    8 +-
 .../session/pool/TableSessionPoolBuilder.java      |   12 +-
 iotdb-core/ainode/.gitignore                       |   25 +-
 iotdb-core/ainode/ainode.spec                      |  199 ++
 iotdb-core/ainode/ainode.xml                       |   17 +-
 .../core/inference/inference_request_pool.py       |  206 --
 .../ainode/core/inference/pool_controller.py       |  188 --
 .../pool_scheduler/basic_pool_scheduler.py         |   59 -
 iotdb-core/ainode/ainode/core/rpc/handler.py       |   76 -
 iotdb-core/ainode/ainode/core/script.py            |  110 -
 iotdb-core/ainode/build_binary.py                  |  602 +++++
 iotdb-core/ainode/{ainode => iotdb}/__init__.py    |    0
 .../{ainode/core => iotdb/ainode}/__init__.py      |    0
 .../inference => iotdb/ainode/core}/__init__.py    |    0
 .../ainode/{ => iotdb}/ainode/core/ai_node.py      |   28 +-
 .../ainode/{ => iotdb}/ainode/core/config.py       |   85 +-
 .../ainode/{ => iotdb}/ainode/core/constant.py     |   27 +-
 .../ainode/{ => iotdb}/ainode/core/exception.py    |    9 +-
 .../ainode/core/inference}/__init__.py             |    0
 .../ainode/core/inference/batcher}/__init__.py     |    0
 .../core/inference/batcher/abstract_batcher.py}    |   19 +-
 .../ainode/core/inference/batcher/basic_batcher.py |   63 +
 .../ainode/core/inference/dispatcher}/__init__.py  |    0
 .../inference/dispatcher/abstract_dispatcher.py    |    4 +-
 .../core/inference/dispatcher/basic_dispatcher.py  |   12 +-
 .../ainode/core/inference/inference_request.py     |   16 +-
 .../core/inference/inference_request_pool.py       |  223 ++
 .../iotdb/ainode/core/inference/pool_controller.py |  519 ++++
 .../ainode/core/inference/pool_group.py            |   62 +-
 .../core/inference/pool_scheduler}/__init__.py     |    0
 .../pool_scheduler/abstract_pool_scheduler.py      |   36 +-
 .../pool_scheduler/basic_pool_scheduler.py         |  193 ++
 .../core/inference/request_scheduler}/__init__.py  |    0
 .../abstract_request_scheduler.py                  |    0
 .../request_scheduler/basic_request_scheduler.py   |    4 +-
 .../ainode/core/inference/strategy}/__init__.py    |    0
 .../strategy/abstract_inference_pipeline.py        |    0
 .../strategy/timer_sundial_inference_pipeline.py   |    6 +-
 .../strategy/timerxl_inference_pipeline.py         |   12 +-
 .../{ => iotdb}/ainode/core/inference/utils.py     |    0
 .../ainode/core/ingress}/__init__.py               |    0
 .../{ => iotdb}/ainode/core/ingress/dataset.py     |    0
 .../{ => iotdb}/ainode/core/ingress/iotdb.py       |   22 +-
 iotdb-core/ainode/{ => iotdb}/ainode/core/log.py   |    9 +-
 .../ainode/core/manager}/__init__.py               |    0
 .../ainode/core/manager/cluster_manager.py         |    4 +-
 .../ainode/core/manager/inference_manager.py       |  169 +-
 .../ainode/core/manager/model_manager.py           |   38 +-
 .../{ => iotdb}/ainode/core/manager/utils.py       |   27 +-
 .../ainode/core/model}/__init__.py                 |    0
 .../ainode/core/model/built_in_model_factory.py    |   54 +-
 .../{ => iotdb}/ainode/core/model/model_enums.py   |    0
 .../{ => iotdb}/ainode/core/model/model_factory.py |   14 +-
 .../{ => iotdb}/ainode/core/model/model_info.py    |    4 +-
 .../{ => iotdb}/ainode/core/model/model_storage.py |   37 +-
 .../ainode/core/model/sundial}/__init__.py         |    0
 .../core/model/sundial/configuration_sundial.py    |    0
 .../ainode/core/model/sundial/flow_loss.py         |    0
 .../ainode/core/model/sundial/modeling_sundial.py  |   89 +-
 .../core/model/sundial/ts_generation_mixin.py      |   14 +-
 .../ainode/core/model/timerxl}/__init__.py         |    0
 .../core/model/timerxl/configuration_timer.py      |    0
 .../ainode/core/model/timerxl/modeling_timer.py    |   89 +-
 .../core/model/timerxl/ts_generation_mixin.py      |   12 +-
 .../{ => iotdb}/ainode/core/model/uri_utils.py     |   10 +-
 .../{ainode => iotdb/ainode/core/rpc}/__init__.py  |    0
 .../ainode/{ => iotdb}/ainode/core/rpc/client.py   |   46 +-
 iotdb-core/ainode/iotdb/ainode/core/rpc/handler.py |  135 ++
 .../ainode/{ => iotdb}/ainode/core/rpc/service.py  |   42 +-
 .../ainode/{ => iotdb}/ainode/core/rpc/status.py   |    6 +-
 iotdb-core/ainode/iotdb/ainode/core/script.py      |   69 +
 .../{ainode => iotdb/ainode/core/util}/__init__.py |    0
 .../{ => iotdb}/ainode/core/util/activation.py     |    0
 .../ainode/iotdb/ainode/core/util/atmoic_int.py    |   66 +
 .../iotdb/ainode/core/util/batch_executor.py       |  133 ++
 .../ainode/{ => iotdb}/ainode/core/util/cache.py   |    4 +-
 .../{ => iotdb}/ainode/core/util/decorator.py      |    0
 .../ainode/iotdb/ainode/core/util/gpu_mapping.py   |   93 +
 .../ainode/core/util/huggingface_cache.py          |    0
 .../ainode/{ => iotdb}/ainode/core/util/lock.py    |    0
 .../ainode/{ => iotdb}/ainode/core/util/masking.py |    0
 .../ainode/{ => iotdb}/ainode/core/util/serde.py   |    2 +-
 .../ainode/core/util/thread_name.py}               |    5 +
 iotdb-core/ainode/poetry.lock                      | 2469 --------------------
 iotdb-core/ainode/pom.xml                          |  136 +-
 iotdb-core/ainode/pyproject.toml                   |  103 +-
 .../ainode/resources/conf/iotdb-ainode.properties  |   20 +-
 .../ainode/resources/syncPythonVersion.groovy      |   33 -
 .../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 |    7 +-
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |   62 +-
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4  |   41 +
 iotdb-core/confignode/pom.xml                      |   29 +-
 .../iotdb/confignode/audit/CNAuditLogger.java      |   94 +
 .../confignode/client/CnToCnNodeRequestType.java   |    1 +
 .../async/AsyncAINodeHeartbeatClientPool.java      |    7 +-
 .../async/AsyncDataNodeHeartbeatClientPool.java    |   11 +
 .../client/async/CnToDnAsyncRequestType.java       |    5 +-
 .../CnToDnInternalServiceAsyncRequestManager.java  |   14 +-
 .../audit/DataNodeWriteAuditLogHandler.java}       |   29 +-
 .../rpc/DataNodeAsyncRequestRPCHandler.java        |    1 +
 .../handlers/rpc/PipeHeartbeatRPCHandler.java      |    2 +-
 .../client/sync/CnToDnSyncRequestType.java         |    1 +
 .../client/sync/SyncConfigNodeClientPool.java      |    2 +
 .../client/sync/SyncDataNodeClientPool.java        |    6 +-
 .../iotdb/confignode/conf/ConfigNodeConfig.java    |    9 +-
 .../confignode/conf/ConfigNodeDescriptor.java      |    3 +
 .../confignode/conf/ConfigNodeRemoveCheck.java     |  155 --
 .../conf/ConfigNodeSystemPropertiesHandler.java    |   23 +-
 .../confignode/conf/SystemPropertiesUtils.java     |    2 +
 .../consensus/request/ConfigPhysicalPlan.java      |   10 +
 .../consensus/request/ConfigPhysicalPlanType.java  |   21 +
 .../request/ConfigPhysicalPlanVisitor.java         |   12 +
 .../request/read/database/CountDatabasePlan.java   |   13 +-
 .../request/read/database/GetDatabasePlan.java     |   10 +-
 .../request/read/model/ShowModelPlan.java          |    4 +-
 .../read/partition/GetNodePathsPartitionPlan.java  |    9 +
 .../consensus/request/write/auth/AuthorPlan.java   |   48 +-
 .../request/write/auth/AuthorRelationalPlan.java   |   85 +-
 .../request/write/auth/AuthorTreePlan.java         |   92 +-
 .../consensus/request/write/cq/ActiveCQPlan.java   |    2 +-
 .../consensus/request/write/cq/AddCQPlan.java      |    2 +-
 .../consensus/request/write/cq/DropCQPlan.java     |    2 +-
 .../request/write/cq/UpdateCQLastExecTimePlan.java |    2 +-
 .../write/database/PreDeleteDatabasePlan.java      |   22 +-
 .../payload/PipeAlterEncodingCompressorPlan.java   |  130 ++
 .../response/auth/PermissionInfoResp.java          |   11 +
 .../consensus/response/model/GetModelInfoResp.java |    8 -
 .../response/pipe/task/PipeTableResp.java          |   91 +-
 .../exception/NoAvailableAINodeException.java}     |   15 +-
 .../iotdb/confignode/manager/ConfigManager.java    |  221 +-
 .../apache/iotdb/confignode/manager/IManager.java  |   64 +-
 .../iotdb/confignode/manager/ModelManager.java     |  149 +-
 .../confignode/manager/PermissionManager.java      |   21 +-
 .../iotdb/confignode/manager/ProcedureManager.java |   78 +-
 .../manager/consensus/ConsensusManager.java        |    5 +
 .../iotdb/confignode/manager/load/LoadManager.java |    2 +-
 .../manager/load/balancer/PartitionBalancer.java   |    4 +-
 .../manager/load/balancer/RegionBalancer.java      |    2 +-
 .../region/GreedyCopySetRegionGroupAllocator.java  |    4 +-
 .../region/GreedyRegionGroupAllocator.java         |    4 +-
 .../load/cache/detector/PhiAccrualDetector.java    |   14 +-
 .../manager/load/service/HeartbeatService.java     |    4 +-
 .../iotdb/confignode/manager/node/NodeManager.java |   82 +-
 .../manager/partition/PartitionManager.java        |    8 +-
 .../pipe/agent/task/PipeConfigNodeSubtask.java     |    6 +-
 .../runtime/PipeLeaderChangeHandler.java           |    4 +-
 .../runtime/PipeRuntimeCoordinator.java            |    2 +-
 .../runtime/heartbeat/PipeHeartbeat.java           |    4 +-
 .../runtime/heartbeat/PipeHeartbeatScheduler.java  |    5 +-
 .../pipe/coordinator/task/PipeTaskCoordinator.java |    2 +-
 .../coordinator/task/PipeTaskCoordinatorLock.java  |   10 +-
 .../pipe/event/PipeConfigRegionSnapshotEvent.java  |   45 +-
 .../pipe/event/PipeConfigRegionWritePlanEvent.java |   10 +-
 .../receiver/protocol/IoTDBConfigNodeReceiver.java |  177 +-
 .../PipeConfigPhysicalPlanTSStatusVisitor.java     |   11 +
 .../client/IoTDBConfigNodeSyncClientManager.java   |   11 +-
 .../payload/PipeTransferConfigSnapshotSealReq.java |    8 +-
 .../sink/protocol/IoTDBConfigRegionAirGapSink.java |   18 +-
 .../pipe/sink/protocol/IoTDBConfigRegionSink.java  |   25 +-
 .../pipe/source/ConfigRegionListeningFilter.java   |   34 +-
 .../pipe/source/ConfigRegionListeningQueue.java    |   31 +-
 .../pipe/source/IoTDBConfigRegionSource.java       |    9 +-
 ...eConfigPhysicalPlanTreePatternParseVisitor.java |   85 +-
 .../manager/schema/ClusterSchemaManager.java       |   40 +-
 .../iotdb/confignode/persistence/ModelInfo.java    |    2 -
 .../confignode/persistence/auth/AuthorInfo.java    |  269 +++
 .../AuthorPlanExecutor.java}                       |  295 +--
 .../persistence/auth/IAuthorPlanExecutor.java      |   62 +
 .../persistence/executor/ConfigPlanExecutor.java   |   18 +-
 .../persistence/partition/PartitionInfo.java       |   15 +-
 .../confignode/persistence/pipe/PipeTaskInfo.java  |   16 +-
 .../schema/CNPhysicalPlanGenerator.java            |   53 +-
 .../persistence/schema/ClusterSchemaInfo.java      |   20 +-
 .../confignode/persistence/schema/ConfigMTree.java |   15 +-
 .../schema/ConfigNodeSnapshotParser.java           |    5 +-
 .../persistence/schema/TemplateTable.java          |   10 +-
 .../procedure/CompletedProcedureRecycler.java      |   21 +-
 .../iotdb/confignode/procedure/Procedure.java      |   27 +-
 .../confignode/procedure/ProcedureExecutor.java    |   88 +-
 .../procedure/TimeoutExecutorThread.java           |   12 +-
 .../procedure/impl/cq/CreateCQProcedure.java       |    2 +-
 .../procedure/impl/model/CreateModelProcedure.java |    4 +-
 .../procedure/impl/model/DropModelProcedure.java   |    7 +-
 .../procedure/impl/node/RemoveAINodeProcedure.java |    4 +-
 .../impl/pipe/AbstractOperatePipeProcedureV2.java  |   31 +-
 .../impl/pipe/runtime/PipeMetaSyncProcedure.java   |   18 +-
 .../impl/pipe/task/AlterPipeProcedureV2.java       |   47 +-
 .../impl/pipe/task/CreatePipeProcedureV2.java      |   46 +-
 .../schema/AlterEncodingCompressorProcedure.java   |  337 +++
 .../impl/schema/AlterLogicalViewProcedure.java     |    2 +-
 .../impl/schema/DataNodeTSStatusTaskExecutor.java  |   74 +
 .../impl/schema/DeactivateTemplateProcedure.java   |   26 +-
 .../impl/schema/DeleteDatabaseProcedure.java       |   28 +-
 .../impl/schema/DeleteLogicalViewProcedure.java    |   26 +-
 .../impl/schema/DeleteTimeSeriesProcedure.java     |   66 +-
 .../table/AbstractAlterOrDropTableProcedure.java   |   29 +-
 .../scheduler/AbstractProcedureScheduler.java      |    2 +-
 .../state/AlterEncodingCompressorState.java}       |   13 +-
 ...ageGroupState.java => DeleteDatabaseState.java} |    2 +-
 .../procedure/store/ConfigProcedureStore.java      |   26 +-
 .../procedure/store/IProcedureStore.java           |   10 +-
 .../procedure/store/ProcedureFactory.java          |    9 +
 .../confignode/procedure/store/ProcedureType.java  |    4 +
 .../iotdb/confignode/service/ConfigNode.java       |   27 +
 .../service/thrift/ConfigNodeRPCService.java       |   38 +-
 .../thrift/ConfigNodeRPCServiceProcessor.java      |  115 +-
 .../request/ConfigPhysicalPlanSerDeTest.java       |   35 +-
 .../pipe/sink/PipeConfigNodeThriftRequestTest.java |    3 +-
 ...figPhysicalPlanTreePatternParseVisitorTest.java |   80 +-
 .../confignode/persistence/AuthorInfoTest.java     |    7 +-
 .../persistence/CNPhysicalPlanGeneratorTest.java   |   43 +-
 .../iotdb/confignode/persistence/CQInfoTest.java   |    2 +-
 .../ConfigRegionListeningQueueTest.java            |    2 +-
 .../iotdb/confignode/persistence/NodeInfoTest.java |    2 +-
 .../confignode/persistence/PartitionInfoTest.java  |    2 +-
 .../iotdb/confignode/persistence/PipeInfoTest.java |    2 +-
 .../confignode/persistence/QuotaInfoTest.java      |    2 +-
 .../iotdb/confignode/persistence/TTLInfoTest.java  |    2 +-
 .../confignode/persistence/TriggerInfoTest.java    |    2 +-
 .../iotdb/confignode/persistence/UDFInfoTest.java  |    2 +-
 .../persistence/schema/ClusterSchemaInfoTest.java  |    3 +-
 .../persistence/schema/ConfigMTreeTest.java        |   22 +-
 .../schema/TemplatePreSetTableTest.java            |    2 +-
 .../persistence/schema/TemplateTableTest.java      |    2 +-
 .../pipe/annotation/PipePluginAnnotationTest.java  |   11 +-
 .../pipe/receiver/PipeEnrichedProcedureTest.java   |   30 +-
 ...a => AlterEncodingCompressorProcedureTest.java} |   33 +-
 .../impl/schema/DeleteTimeSeriesProcedureTest.java |    2 +-
 iotdb-core/consensus/pom.xml                       |   23 +-
 .../apache/iotdb/consensus/ConsensusFactory.java   |    2 +-
 .../iotdb/consensus/config/IoTConsensusConfig.java |   76 +-
 .../consensus/config/PipeConsensusConfig.java      |   76 +-
 .../apache/iotdb/consensus/config/RatisConfig.java |   74 +-
 .../consensus/iot/IoTConsensusServerImpl.java      |    2 +-
 .../iot/client/AsyncIoTConsensusServiceClient.java |   20 +-
 .../consensus/iot/client/DispatchLogHandler.java   |    6 +-
 .../iot/client/SyncIoTConsensusServiceClient.java  |   24 +-
 .../iot/logdispatcher/IndexController.java         |    2 +-
 .../iot/service/IoTConsensusRPCService.java        |   38 +-
 .../apache/iotdb/consensus/pipe/PipeConsensus.java |    2 +-
 .../pipe/consensuspipe/ConsensusPipeManager.java   |    7 +-
 .../pipe/service/PipeConsensusRPCService.java      |   38 +-
 .../apache/iotdb/consensus/ratis/RatisClient.java  |   13 +-
 .../iotdb/consensus/ratis/RatisConsensus.java      |   16 +-
 .../iotdb/consensus/ratis/SnapshotStorage.java     |    2 +-
 .../utils/NoHostnameVerificationTrustManager.java  |   88 +
 .../apache/iotdb/consensus/ratis/utils/Utils.java  |   62 +-
 iotdb-core/datanode/pom.xml                        |   41 +-
 .../assembly/resources/conf/logback-datanode.xml   |   15 -
 .../src/main/codegen/templates/ModeAccumulator.ftl |    2 +-
 .../org/apache/iotdb/db/audit/AuditLogger.java     |  271 ---
 .../org/apache/iotdb/db/audit/DNAuditLogger.java   |  461 ++++
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |  159 +-
 .../apache/iotdb/db/auth/BasicAuthorityCache.java  |    3 +
 .../iotdb/db/auth/ClusterAuthorityFetcher.java     |   97 +-
 .../apache/iotdb/db/auth/IAuthorityFetcher.java    |    6 +-
 .../org/apache/iotdb/db/auth/LoginLockManager.java |  405 ++++
 .../apache/iotdb/db/conf/DataNodeMemoryConfig.java |   10 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  285 ++-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  144 +-
 .../org/apache/iotdb/db/conf/IoTDBStartCheck.java  |   46 +-
 .../db/consensus/DataRegionConsensusImpl.java      |   24 +
 .../db/consensus/SchemaRegionConsensusImpl.java    |   11 +-
 .../dataregion/DataExecutionVisitor.java           |    4 +-
 .../dataregion/DataRegionStateMachine.java         |   15 +-
 .../schemaregion/SchemaExecutionVisitor.java       |   59 +-
 .../runtime/TableNotExistsRuntimeException.java    |   36 -
 .../PipeDataRegionSourceConstructor.java           |    4 -
 .../agent/runtime/PipeDataNodeRuntimeAgent.java    |   31 +-
 .../agent/runtime/SimpleProgressIndexAssigner.java |    2 +-
 .../db/pipe/agent/task/PipeDataNodeTaskAgent.java  |   86 +-
 .../task/builder/PipeDataNodeTaskBuilder.java      |  152 +-
 .../agent/task/connection/PipeEventCollector.java  |   20 +-
 .../task/execution/PipeSubtaskExecutorManager.java |   15 +-
 .../agent/task/subtask/sink/PipeSinkSubtask.java   |    5 +
 .../task/subtask/sink/PipeSinkSubtaskManager.java  |    3 +-
 .../consensus/PipeConsensusSubtaskExecutor.java    |   39 +-
 .../deletion/persist/PageCacheDeletionBuffer.java  |   24 +-
 .../consensus/deletion/recover/DeletionReader.java |    2 +-
 .../db/pipe/event/UserDefinedEnrichedEvent.java    |    6 +
 .../db/pipe/event/common/PipeInsertionEvent.java   |   16 +-
 .../common/deletion/PipeDeleteDataNodeEvent.java   |   19 +-
 .../event/common/heartbeat/PipeHeartbeatEvent.java |   10 +-
 .../schema/PipeSchemaRegionSnapshotEvent.java      |   10 +
 .../schema/PipeSchemaRegionWritePlanEvent.java     |   10 +-
 .../statement/PipeStatementInsertionEvent.java     |    6 +
 .../tablet/PipeInsertNodeTabletInsertionEvent.java |   24 +-
 .../common/tablet/PipeRawTabletInsertionEvent.java |   43 +-
 .../tablet/parser/TabletInsertionEventParser.java  |   11 +-
 .../event/common/terminate/PipeTerminateEvent.java |    4 +
 .../tsfile/PipeCompactedTsFileInsertionEvent.java  |    8 +
 .../common/tsfile/PipeTsFileInsertionEvent.java    |   91 +-
 .../tsfile/parser/TsFileInsertionEventParser.java  |   84 +-
 .../parser/TsFileInsertionEventParserProvider.java |   26 +-
 .../query/TsFileInsertionEventQueryParser.java     |   93 +-
 ...ileInsertionEventQueryParserTabletIterator.java |   33 +-
 .../scan/TsFileInsertionEventScanParser.java       |  371 ++-
 .../table/TsFileInsertionEventTableParser.java     |   56 +-
 ...ileInsertionEventTableParserTabletIterator.java |   78 +-
 .../tsfile/parser/util/ModsOperationUtil.java      |  314 +++
 .../db/pipe/event/realtime/PipeRealtimeEvent.java  |   25 +-
 .../overview/PipeDataNodeSinglePipeMetrics.java    |   34 +
 .../pipe/metric/overview/PipeResourceMetrics.java  |   13 +
 .../overview/PipeTsFileToTabletsMetrics.java       |   67 +
 .../metric/processor/PipeProcessorMetrics.java     |    3 +-
 .../schema/PipeSchemaRegionListenerMetrics.java    |    4 +-
 .../metric/schema/PipeSchemaRegionSinkMetrics.java |    3 +-
 .../schema/PipeSchemaRegionSourceMetrics.java      |    3 +-
 .../metric/sink/PipeDataRegionSinkMetrics.java     |    3 +-
 .../db/pipe/metric/source/PipeAssignerMetrics.java |    3 +-
 .../metric/source/PipeDataRegionSourceMetrics.java |    3 +-
 .../downsampling/PartialPathLastObjectCache.java   |   60 +-
 .../schemachange/RenameDatabaseProcessor.java      |    2 +-
 .../protocol/airgap/IoTDBAirGapReceiverAgent.java  |    5 +-
 .../legacy/IoTDBLegacyPipeReceiverAgent.java       |   20 +-
 .../protocol/legacy/loader/DeletionLoader.java     |    9 +-
 .../protocol/legacy/loader/TsFileLoader.java       |    9 +-
 .../pipeconsensus/PipeConsensusReceiver.java       |  306 +--
 .../pipeconsensus/PipeConsensusReceiverAgent.java  |    2 +-
 .../protocol/thrift/IoTDBDataNodeReceiver.java     |  113 +-
 .../transform/converter/ValueConverter.java        |    2 +-
 .../statement/PipeConvertedInsertRowStatement.java |   13 +-
 .../visitor/PipeStatementExceptionVisitor.java     |    8 +-
 .../visitor/PipeStatementTSStatusVisitor.java      |   51 +-
 .../PipeStatementTreePatternParseVisitor.java      |   30 +-
 ...leStatementDataTypeConvertExecutionVisitor.java |    7 +-
 ...eeStatementDataTypeConvertExecutionVisitor.java |    6 +-
 ...aNodeHardlinkOrCopiedFileDirStartupCleaner.java |    2 +-
 .../resource/log/PipePeriodicalLogReducer.java     |   91 +
 .../resource/memory/InsertNodeMemoryEstimator.java |   55 +-
 .../db/pipe/resource/memory/PipeMemoryManager.java |   33 +-
 .../pipe/resource/memory/PipeMemoryWeightUtil.java |   62 +-
 .../tsfile/PipeTsFileResourceSegmentLock.java      |   63 +-
 .../client/IoTDBDataNodeAsyncClientManager.java    |   61 +-
 .../IoTDBDataNodeCacheLeaderClientManager.java     |   78 +-
 .../client/IoTDBDataNodeSyncClientManager.java     |   13 +-
 .../protocol/airgap/IoTDBDataNodeAirGapSink.java   |    4 +
 .../protocol/airgap/IoTDBDataRegionAirGapSink.java |   31 +
 .../airgap/IoTDBSchemaRegionAirGapSink.java        |   11 +-
 .../sink/protocol/legacy/IoTDBLegacyPipeSink.java  |    2 +-
 .../pipeconsensus/PipeConsensusAsyncSink.java      |    2 +-
 .../pipeconsensus/PipeConsensusSyncSink.java       |    2 +-
 .../handler/PipeConsensusDeleteEventHandler.java   |    2 +-
 .../thrift/async/IoTDBDataRegionAsyncSink.java     |   52 +-
 .../PipeTransferTabletBatchEventHandler.java       |   10 +-
 .../PipeTransferTabletInsertionEventHandler.java   |   10 +-
 .../handler/PipeTransferTrackableHandler.java      |    5 +
 .../async/handler/PipeTransferTsFileHandler.java   |   27 +-
 .../thrift/sync/IoTDBDataNodeSyncSink.java         |   11 +-
 .../thrift/sync/IoTDBDataRegionSyncSink.java       |   26 +-
 .../thrift/sync/IoTDBSchemaRegionSink.java         |   11 +-
 .../websocket/WebSocketConnectorServer.java        |    4 +-
 .../sink/protocol/writeback/WriteBackSink.java     |   30 +-
 .../util/builder/PipeTableModelTsFileBuilder.java  |    2 +-
 .../util/builder/PipeTreeModelTsFileBuilder.java   |    2 +-
 .../pipe/sink/util/builder/PipeTsFileBuilder.java  |    2 +-
 .../source/dataregion/IoTDBDataRegionSource.java   |   88 +-
 ...istoricalDataRegionTsFileAndDeletionSource.java |  161 +-
 .../realtime/PipeRealtimeDataRegionSource.java     |   26 +-
 .../realtime/assigner/DisruptorQueue.java          |   20 +-
 .../assigner/DisruptorQueueExceptionHandler.java   |    3 +-
 .../realtime/assigner/PipeDataRegionAssigner.java  |    4 +-
 .../realtime/disruptor/BatchEventProcessor.java    |  120 +
 .../dataregion/realtime/disruptor/Disruptor.java   |  135 ++
 .../realtime/disruptor/EventFactory.java}          |   28 +-
 .../realtime/disruptor/EventHandler.java}          |   38 +-
 .../realtime/disruptor/ExceptionHandler.java}      |   51 +-
 .../realtime/disruptor/MultiProducerSequencer.java |  270 +++
 .../dataregion/realtime/disruptor/RingBuffer.java  |  295 +++
 .../dataregion/realtime/disruptor/Sequence.java    |  122 +
 .../realtime/disruptor/SequenceBarrier.java        |   78 +
 .../realtime/disruptor/SequenceGroups.java         |   65 +
 .../dataregion/realtime/epoch/TsFileEpoch.java     |   13 +-
 .../listener/PipeTimePartitionListener.java        |    3 +-
 .../matcher/CachedSchemaPatternMatcher.java        |   32 +-
 .../db/pipe/source/mqtt/MQTTPublishHandler.java    |  320 ---
 .../iotdb/db/pipe/source/mqtt/MQTTSource.java      |  264 ---
 .../schemaregion/IoTDBSchemaRegionSource.java      |   16 +-
 .../PipePlanTablePrivilegeParseVisitor.java        |   36 +-
 .../PipePlanTreePatternParseVisitor.java           |   56 +-
 .../db/protocol/client/AINodeClientFactory.java    |  133 ++
 .../iotdb/db/protocol/client/ConfigNodeClient.java |   95 +-
 .../db/protocol/client/DataNodeInternalClient.java |   13 +-
 .../db/protocol}/client/ainode/AINodeClient.java   |  185 +-
 .../client/ainode/AINodeClientManager.java         |   75 +
 .../client/ainode/AsyncAINodeServiceClient.java    |   21 +-
 .../db/protocol/mqtt/BrokerAuthenticator.java      |    2 +-
 .../db/protocol/mqtt/JSONPayloadFormatter.java     |    2 +-
 .../db/protocol/mqtt/LinePayloadFormatter.java     |   15 +-
 .../iotdb/db/protocol/mqtt/MPPPublishHandler.java  |   49 +-
 .../db/protocol/mqtt/PayloadFormatManager.java     |    6 +-
 .../protocol/rest/filter/AuthorizationFilter.java  |    2 +
 .../apache/iotdb/db/protocol/rest/filter/User.java |    9 +
 .../rest/handler/AuthorizationHandler.java         |    5 +-
 .../table/v1/handler/ExecuteStatementHandler.java  |    4 +
 .../table/v1/handler/RequestValidationHandler.java |    2 +-
 .../v1/handler/StatementConstructionHandler.java   |    7 +-
 .../rest/v1/handler/ExecuteStatementHandler.java   |    4 +
 .../rest/v1/handler/QueryDataSetHandler.java       |    4 +
 .../rest/v1/handler/RequestValidationHandler.java  |    2 +-
 .../rest/v1/impl/GrafanaApiServiceImpl.java        |    2 +-
 .../rest/v2/handler/ExecuteStatementHandler.java   |    4 +
 .../rest/v2/handler/QueryDataSetHandler.java       |    4 +
 .../rest/v2/handler/RequestValidationHandler.java  |    2 +-
 .../rest/v2/impl/GrafanaApiServiceImpl.java        |    2 +-
 .../iotdb/db/protocol/session/IClientSession.java  |   10 +
 .../iotdb/db/protocol/session/SessionManager.java  |  212 +-
 .../iotdb/db/protocol/thrift/OperationType.java    |    3 +-
 .../protocol/thrift/impl/ClientRPCServiceImpl.java |  431 ++--
 .../impl/DataNodeInternalRPCServiceImpl.java       |  172 +-
 .../db/queryengine/common/MPPQueryContext.java     |  116 +-
 .../iotdb/db/queryengine/common/SessionInfo.java   |   75 +-
 .../common/header/DatasetHeaderFactory.java        |   12 +
 .../common/schematree/DeviceSchemaInfo.java        |   12 +-
 .../execution/aggregation/AccumulatorFactory.java  |    8 +-
 .../execution/exchange/MPPDataExchangeManager.java |    2 +-
 .../execution/exchange/MPPDataExchangeService.java |   44 +-
 .../execution/exchange/SharedTsBlockQueue.java     |    2 +-
 .../execution/exchange/sink/LocalSinkChannel.java  |    2 +-
 .../execution/exchange/sink/ShuffleSinkHandle.java |    2 +-
 .../execution/exchange/sink/SinkChannel.java       |    2 +-
 .../exchange/source/LocalSourceHandle.java         |    2 +-
 .../execution/exchange/source/SourceHandle.java    |    2 +-
 .../execution/executor/RegionReadExecutor.java     |   10 +-
 .../execution/executor/RegionWriteExecutor.java    |   18 +-
 .../execution/fragment/DataNodeQueryContext.java   |   68 +-
 .../fragment/FragmentInstanceContext.java          |   29 +-
 .../fragment/FragmentInstanceExecution.java        |    2 +-
 .../queryengine/execution/memory/MemoryPool.java   |    2 +-
 .../execution/operator/AggregationUtil.java        |    2 +-
 .../operator/process/AbstractIntoOperator.java     |    5 +-
 .../operator/process/CollectOperator.java          |    6 +-
 .../process/InsertTabletStatementGenerator.java    |   39 +-
 .../operator/process/MappingCollectOperator.java   |   79 +
 .../TableInsertTabletStatementGenerator.java       |    2 +-
 .../operator/process/TagAggregationOperator.java   |    2 +-
 .../TreeInsertTabletStatementGenerator.java        |    2 +-
 .../operator/process/ai/InferenceOperator.java     |    9 +-
 .../process/join/merge/MergeSortComparator.java    |    2 +-
 .../rowpattern/expression/CastComputation.java     |   82 +
 .../rowpattern/expression/ComparisonOperator.java  |   20 +
 .../process/rowpattern/expression/Computation.java |   29 +
 .../expression/PatternExpressionComputation.java   |   14 +-
 .../process/window/TableWindowOperator.java        |    2 +
 .../operator/schema/SchemaCountOperator.java       |   54 +-
 .../operator/schema/source/DeviceSchemaSource.java |    8 +
 .../operator/schema/source/ISchemaSource.java      |    4 +
 .../execution/operator/source/FileLoaderUtils.java |    6 +-
 .../execution/operator/source/SeriesScanUtil.java  |  405 +++-
 .../operator/source/ShowQueriesOperator.java       |   10 +-
 .../InformationSchemaContentSupplierFactory.java   |  144 +-
 .../relational/LastQueryAggTableScanOperator.java  |   99 +-
 .../AbstractApproxPercentileAccumulator.java       |   13 +-
 .../relational/aggregation/AccumulatorFactory.java |   40 +-
 .../relational/aggregation/FirstAccumulator.java   |   56 +-
 .../relational/aggregation/FirstByAccumulator.java |   70 +-
 .../aggregation/FirstByDescAccumulator.java        |    7 +-
 .../aggregation/FirstDescAccumulator.java          |    7 +-
 .../aggregation/LastByDescAccumulator.java         |   58 +-
 .../aggregation/LastDescAccumulator.java           |   12 +-
 .../aggregation/approximate/HyperLogLog.java       |   11 +-
 ...AbstractGroupedApproxPercentileAccumulator.java |   13 +-
 .../execution/operator/window/SessionWindow.java   |   13 +-
 .../execution/operator/window/TimeWindow.java      |    9 +-
 .../relational/ColumnTransformerBuilder.java       |  328 +++
 .../queue/IndexedBlockingReserveQueue.java         |    3 +-
 .../metric/DriverSchedulerMetricSet.java           |   20 +-
 .../iotdb/db/queryengine/plan/Coordinator.java     |   30 +-
 .../db/queryengine/plan/analyze/AnalyzeUtils.java  |    3 -
 .../queryengine/plan/analyze/AnalyzeVisitor.java   |  172 +-
 .../plan/analyze/ClusterPartitionFetcher.java      |   76 +-
 .../plan/analyze/ExpressionAnalyzer.java           |    4 +-
 .../plan/analyze/IPartitionFetcher.java            |   13 +-
 .../db/queryengine/plan/analyze/ModelFetcher.java  |   23 +-
 .../queryengine/plan/analyze/PredicateUtils.java   |   16 +-
 .../db/queryengine/plan/analyze/TemplatedInfo.java |    6 +-
 .../analyze/cache/partition/PartitionCache.java    |   53 +-
 .../cache/schema/DataNodeDevicePathCache.java      |    2 +-
 .../analyze/cache/schema/DataNodeTTLCache.java     |    2 +-
 .../schema/dualkeycache/IDualKeyCacheUpdating.java |   45 -
 .../schema/dualkeycache/impl/DualKeyCacheImpl.java |    8 +-
 .../plan/analyze/load/LoadTsFileAnalyzer.java      |   25 +-
 .../analyze/load/LoadTsFileTableSchemaCache.java   |  106 +-
 .../load/TreeSchemaAutoCreatorAndVerifier.java     |   55 +-
 .../analyze/schema/AutoCreateSchemaExecutor.java   |   87 +-
 .../analyze/schema/ClusterSchemaFetchExecutor.java |   27 +-
 .../plan/analyze/schema/ClusterSchemaFetcher.java  |   42 +-
 .../plan/analyze/schema/ISchemaFetcher.java        |   20 +-
 .../plan/analyze/schema/NormalSchemaFetcher.java   |   57 +-
 .../plan/analyze/schema/SchemaValidator.java       |    4 +-
 .../plan/execution/config/ConfigExecution.java     |   16 +-
 .../execution/config/TableConfigTaskVisitor.java   |  299 ++-
 .../execution/config/TreeConfigTaskVisitor.java    |  126 +-
 .../config/executor/ClusterConfigTaskExecutor.java |  427 +++-
 .../config/executor/IConfigTaskExecutor.java       |   24 +-
 .../AlterEncodingCompressorTask.java}              |   24 +-
 ...emplateTask.java => ShowAvailableUrlsTask.java} |   49 +-
 .../config/metadata/ShowFunctionsTask.java         |    6 +-
 .../execution/config/metadata/ShowRegionTask.java  |    6 +-
 .../ai/LoadModelTask.java}                         |   20 +-
 .../ShowAIDevicesTask.java}                        |   43 +-
 .../ShowLoadedModelsTask.java}                     |   49 +-
 .../config/metadata/ai/ShowModelsTask.java         |    4 +-
 .../ai/UnloadModelTask.java}                       |   20 +-
 .../template/ShowNodesInSchemaTemplateTask.java    |   47 +-
 .../metadata/template/ShowPathSetTemplateTask.java |   20 +-
 .../plan/execution/config/sys/KillQueryTask.java   |    3 +-
 .../config/sys/ShowConfigurationTask.java          |  107 +
 .../execution/config/sys/pipe/ShowPipeTask.java    |    6 +-
 .../plan/execution/memory/MemorySourceHandle.java  |    2 +-
 .../plan/expression/ExpressionFactory.java         |    2 +-
 .../plan/expression/multi/FunctionExpression.java  |    4 +-
 .../expression/other/CaseWhenThenExpression.java   |    2 +-
 .../plan/expression/unary/RegularExpression.java   |    2 +-
 .../expression/visitor/ConcatDeviceVisitor.java}   |   16 +-
 .../cartesian/BindSchemaForExpressionVisitor.java  |    2 +-
 .../cartesian/BindSchemaForPredicateVisitor.java   |    2 +-
 ...catDeviceAndBindSchemaForExpressionVisitor.java |    2 +-
 ...ncatDeviceAndBindSchemaForPredicateVisitor.java |    2 +-
 .../ConcatExpressionWithSuffixPathsVisitor.java    |    2 +-
 .../plan/optimization/AggregationPushDown.java     |    6 +-
 .../db/queryengine/plan/parser/ASTVisitor.java     |  229 +-
 .../plan/parser/StatementGenerator.java            |    6 +-
 .../plan/planner/LogicalPlanBuilder.java           |   15 +-
 .../plan/planner/LogicalPlanVisitor.java           |    3 +-
 .../plan/planner/OperatorTreeGenerator.java        |   60 +-
 .../plan/planner/TableOperatorGenerator.java       |  207 +-
 .../plan/planner/TemplatedLogicalPlan.java         |    2 +-
 .../distribution/DistributionPlanContext.java      |    2 +-
 .../planner/distribution/DistributionPlanner.java  |    2 +-
 .../plan/planner/distribution/SourceRewriter.java  |  107 +-
 .../plan/AbstractFragmentParallelPlanner.java      |    2 +-
 .../plan/planner/plan/node/PlanGraphPrinter.java   |   21 +-
 .../plan/planner/plan/node/PlanNodeType.java       |    8 +
 .../plan/planner/plan/node/PlanVisitor.java        |   10 +
 .../plan/node/load/LoadSingleTsFileNode.java       |    6 +-
 .../write/AlterEncodingCompressorNode.java         |  146 ++
 .../metadata/write/view/AlterLogicalViewNode.java  |   44 +-
 .../planner/plan/node/process/AggregationNode.java |    2 +-
 .../planner/plan/node/process/GroupByTagNode.java  |    2 +-
 .../plan/node/process/RawDataAggregationNode.java  |    2 +-
 .../plan/node/source/LastQueryScanNode.java        |    2 +-
 .../node/source/SeriesAggregationSourceNode.java   |    4 +-
 .../planner/plan/node/source/ShowQueriesNode.java  |   18 +-
 .../planner/plan/node/write/InsertTabletNode.java  |    4 +-
 .../planner/plan/parameter/IntoPathDescriptor.java |    2 +-
 .../parameter/model/ModelInferenceDescriptor.java  |    5 +-
 .../relational/analyzer/StatementAnalyzer.java     |  109 +-
 .../function/TableBuiltinTableFunction.java        |    6 +-
 .../function/tvf/ForecastTableFunction.java        |   22 +-
 .../function/tvf/PatternMatchTableFunction.java    |  266 +++
 .../function/tvf/match/MatchConfig.java}           |   20 +-
 .../function/tvf/match/QetchAlgorithm.java         |  683 ++++++
 .../function/tvf/match/model/MatchState.java       |  233 ++
 .../function/tvf/match/model/PatternSegment.java   |  285 +++
 .../function/tvf/match/model/Point.java}           |   22 +-
 .../function/tvf/match/model/RegexMatchState.java  |  396 ++++
 .../function/tvf/match/model/Section.java          |  238 ++
 .../plan/relational/metadata/Metadata.java         |   10 +
 .../relational/metadata/TableMetadataImpl.java     |  492 +++-
 .../plan/relational/metadata/TableSchema.java      |   12 +-
 .../metadata/cache/DeviceSchemaRequestCache.java   |   88 +
 .../metadata/fetcher/SchemaPredicateUtil.java      |   28 +-
 .../metadata/fetcher/TableDeviceSchemaFetcher.java |   23 +-
 .../fetcher/TableHeaderSchemaValidator.java        |  427 +++-
 .../fetcher/cache/TableDeviceLastCache.java        |    6 +-
 .../fetcher/cache/TableDeviceSchemaCache.java      |    6 +-
 .../cache/TableDeviceSchemaCacheMetrics.java       |    9 +-
 .../fetcher/cache/TreeDeviceNormalSchema.java      |   10 +-
 .../cache/TreeDeviceSchemaCacheManager.java        |  157 +-
 .../plan/relational/planner/LiteralEncoder.java    |    3 +-
 .../plan/relational/planner/RelationPlanner.java   |   24 +-
 .../plan/relational/planner/TranslationMap.java    |    2 +-
 .../planner/distribute/SubPlanGenerator.java       |    2 +-
 .../distribute/TableDistributedPlanGenerator.java  |  139 +-
 .../distribute/TableModelQueryFragmentPlanner.java |   42 +
 .../iterative/rule/ImplementIntersectAll.java      |   95 +
 .../rule/ImplementIntersectDistinctAsUnion.java    |   88 +
 .../planner/iterative/rule/MergeUnion.java         |   48 +
 .../iterative/rule/PruneDistinctAggregation.java   |    9 +
 .../rule/PushDownOffsetIntoTableScan.java          |    4 +-
 .../iterative/rule/PushLimitThroughUnion.java      |  107 +
 .../iterative/rule/PushProjectionThroughUnion.java |  111 +
 .../iterative/rule/PushTopKThroughUnion.java       |  102 +
 .../iterative/rule/RemoveEmptyUnionBranches.java   |  113 +
 .../planner/iterative/rule/SetOperationMerge.java  |  144 ++
 .../iterative/rule/SetOperationNodeTranslator.java |  355 +++
 .../planner/node/AggregationTableScanNode.java     |   72 +
 .../node/{UnionNode.java => IntersectNode.java}    |   65 +-
 .../plan/relational/planner/node/Patterns.java     |   22 +-
 .../relational/planner/node/SetOperationNode.java  |    4 +-
 .../plan/relational/planner/node/UnionNode.java    |   31 +-
 .../optimizations/LogicalOptimizeFactory.java      |   52 +-
 .../PushLimitOffsetIntoTableScan.java              |    2 +-
 .../planner/optimizations/SortElimination.java     |   13 +-
 .../optimizations/UnaliasSymbolReferences.java     |   31 +
 .../plan/relational/security/AccessControl.java    |  106 +-
 .../relational/security/AccessControlImpl.java     |  471 ++--
 .../relational/security/AllowAllAccessControl.java |  120 +-
 .../relational/security/ITableAuthChecker.java     |   51 +-
 .../relational/security/ITableAuthCheckerImpl.java |  376 ++-
 .../relational/security/TableModelPrivilege.java   |   41 +
 .../security/TreeAccessCheckContext.java           |  140 ++
 .../security/TreeAccessCheckVisitor.java           | 1987 ++++++++++++++++
 .../sql/ast/AbstractQueryDeviceWithCache.java      |    3 +-
 .../relational/sql/ast/AbstractTraverseDevice.java |    2 +-
 .../plan/relational/sql/ast/AstVisitor.java        |   24 +
 .../plan/relational/sql/ast/DeleteDevice.java      |    5 +-
 .../plan/relational/sql/ast/InsertRows.java        |   19 +-
 .../sql/ast/{ShowTopics.java => LoadModel.java}    |   49 +-
 .../plan/relational/sql/ast/LoadTsFile.java        |    2 +-
 .../sql/ast/RelationalAuthorStatement.java         |  169 +-
 .../plan/relational/sql/ast/RenameColumn.java      |    5 +-
 .../plan/relational/sql/ast/RenameTable.java       |    5 +-
 .../relational/sql/ast/SearchedCaseExpression.java |    2 +-
 .../ast/{ShowTopics.java => ShowAIDevices.java}    |   33 +-
 .../{ShowTopics.java => ShowAvailableUrls.java}    |   33 +-
 .../relational/sql/ast/ShowConfiguration.java}     |   19 +-
 .../ast/{ShowTopics.java => ShowLoadedModels.java} |   44 +-
 .../plan/relational/sql/ast/ShowSubscriptions.java |    4 +-
 .../plan/relational/sql/ast/ShowTopics.java        |    4 +-
 .../relational/sql/ast/SimpleCaseExpression.java   |    2 +-
 .../sql/ast/{ShowTopics.java => UnloadModel.java}  |   48 +-
 .../relational/sql/ast/WrappedInsertStatement.java |  414 +++-
 .../plan/relational/sql/parser/AstBuilder.java     |  197 +-
 .../plan/relational/type/AuthorRType.java          |   10 +-
 .../plan/relational/type/CompatibleResolver.java   |    5 +
 .../plan/scheduler/AsyncSendPlanNodeHandler.java   |    2 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  |   14 +-
 .../scheduler/load/LoadTsFileDispatcherImpl.java   |   14 +-
 .../plan/scheduler/load/LoadTsFileScheduler.java   |    6 +-
 .../db/queryengine/plan/statement/AuthorType.java  |  100 +-
 .../statement/AuthorityInformationStatement.java   |   30 +-
 .../db/queryengine/plan/statement/Statement.java   |   12 +-
 .../queryengine/plan/statement/StatementType.java  |    6 +-
 .../plan/statement/StatementVisitor.java           |   63 +-
 .../statement/component/GroupByTagComponent.java   |    2 +-
 .../plan/statement/component/IntoItem.java         |    2 +-
 .../plan/statement/crud/DeleteDataStatement.java   |   17 -
 .../plan/statement/crud/InsertBaseStatement.java   |  168 +-
 .../crud/InsertMultiTabletsStatement.java          |   15 +
 .../plan/statement/crud/InsertRowStatement.java    |   66 +
 .../crud/InsertRowsOfOneDeviceStatement.java       |    6 +
 .../plan/statement/crud/InsertRowsStatement.java   |   12 +
 .../plan/statement/crud/InsertStatement.java       |   17 -
 .../plan/statement/crud/InsertTabletStatement.java |  136 +-
 .../plan/statement/crud/LoadTsFileStatement.java   |   30 +-
 .../plan/statement/crud/QueryStatement.java        |   18 -
 .../internal/DeviceSchemaFetchStatement.java       |    9 +-
 .../InternalBatchActivateTemplateStatement.java    |   17 -
 .../InternalCreateMultiTimeSeriesStatement.java    |   17 -
 .../InternalCreateTimeSeriesStatement.java         |   17 -
 .../internal/SeriesSchemaFetchStatement.java       |    9 +-
 .../metadata/AlterEncodingCompressorStatement.java |  126 +
 .../metadata/AlterTimeSeriesStatement.java         |   15 -
 .../statement/metadata/CountDatabaseStatement.java |    2 +-
 .../statement/metadata/CountDevicesStatement.java  |   25 -
 .../metadata/CountTimeSeriesStatement.java         |   25 -
 .../metadata/CountTimeSlotListStatement.java       |    7 -
 .../metadata/CreateAlignedTimeSeriesStatement.java |   17 -
 .../metadata/CreateContinuousQueryStatement.java   |   14 -
 .../metadata/CreateFunctionStatement.java          |   14 -
 .../metadata/CreateMultiTimeSeriesStatement.java   |   17 -
 .../metadata/CreateTimeSeriesStatement.java        |   15 -
 .../statement/metadata/CreateTriggerStatement.java |   14 -
 .../metadata/DatabaseSchemaStatement.java          |   14 -
 .../metadata/DeleteDatabaseStatement.java          |   16 +-
 .../metadata/DeleteTimeSeriesStatement.java        |   26 +-
 .../metadata/DropContinuousQueryStatement.java     |   14 -
 .../statement/metadata/DropFunctionStatement.java  |   14 -
 .../statement/metadata/DropTriggerStatement.java   |   14 -
 .../statement/metadata/GetRegionIdStatement.java   |    7 -
 .../metadata/GetSeriesSlotListStatement.java       |    7 -
 .../metadata/GetTimeSlotListStatement.java         |    7 -
 .../statement/metadata/RemoveAINodeStatement.java  |    7 -
 .../metadata/RemoveConfigNodeStatement.java        |    7 -
 .../metadata/RemoveDataNodeStatement.java          |    7 -
 .../plan/statement/metadata/SetTTLStatement.java   |   17 -
 ...tement.java => ShowAvailableUrlsStatement.java} |   17 +-
 .../statement/metadata/ShowClusterIdStatement.java |    7 -
 .../statement/metadata/ShowClusterStatement.java   |    7 -
 .../metadata/ShowConfigNodesStatement.java         |    7 -
 .../metadata/ShowContinuousQueriesStatement.java   |   14 -
 .../statement/metadata/ShowDataNodesStatement.java |    7 -
 .../statement/metadata/ShowDatabaseStatement.java  |    2 +-
 .../statement/metadata/ShowDevicesStatement.java   |   25 -
 .../statement/metadata/ShowFunctionsStatement.java |   14 -
 .../statement/metadata/ShowRegionStatement.java    |    7 -
 .../plan/statement/metadata/ShowTTLStatement.java  |    9 +
 .../metadata/ShowTimeSeriesStatement.java          |   25 -
 .../statement/metadata/ShowTriggersStatement.java  |   14 -
 .../statement/metadata/ShowVariablesStatement.java |    7 -
 .../metadata/model/CreateModelStatement.java       |   14 -
 .../metadata/model/DropModelStatement.java         |   14 -
 ...ModelStatement.java => LoadModelStatement.java} |   52 +-
 .../ShowAIDevicesStatement.java}                   |   22 +-
 .../metadata/model/ShowAINodesStatement.java       |    7 -
 .../model/ShowLoadedModelsStatement.java}          |   45 +-
 .../metadata/model/ShowModelsStatement.java        |   14 -
 ...delStatement.java => UnloadModelStatement.java} |   62 +-
 .../metadata/pipe/AlterPipeStatement.java          |   14 -
 .../metadata/pipe/CreatePipePluginStatement.java   |   14 -
 .../metadata/pipe/CreatePipeStatement.java         |   14 -
 .../metadata/pipe/DropPipePluginStatement.java     |   14 -
 .../statement/metadata/pipe/DropPipeStatement.java |   14 -
 .../metadata/pipe/ShowPipePluginsStatement.java    |   14 -
 .../metadata/pipe/ShowPipesStatement.java          |   14 -
 .../metadata/pipe/StartPipeStatement.java          |   14 -
 .../statement/metadata/pipe/StopPipeStatement.java |   14 -
 .../metadata/region/ExtendRegionStatement.java     |    7 -
 .../metadata/region/MigrateRegionStatement.java    |    7 -
 .../region/ReconstructRegionStatement.java         |    7 -
 .../metadata/region/RemoveRegionStatement.java     |    7 -
 .../subscription/CreateTopicStatement.java         |   14 -
 .../subscription/DropSubscriptionStatement.java    |   14 -
 .../metadata/subscription/DropTopicStatement.java  |   14 -
 .../subscription/ShowSubscriptionsStatement.java   |   14 -
 .../metadata/subscription/ShowTopicsStatement.java |   14 -
 .../template/AbstractShowExactTemplate.java}       |   24 +-
 .../template/ActivateTemplateStatement.java        |   17 -
 .../template/BatchActivateTemplateStatement.java   |   17 -
 .../template/DeactivateTemplateStatement.java      |   24 +-
 .../ShowNodesInSchemaTemplateStatement.java        |   33 +-
 .../template/ShowPathSetTemplateStatement.java     |   33 +-
 .../template/ShowSchemaTemplateStatement.java      |   20 +-
 .../metadata/view/AlterLogicalViewStatement.java   |   48 +-
 .../metadata/view/CreateLogicalViewStatement.java  |   61 +-
 .../metadata/view/DeleteLogicalViewStatement.java  |   17 -
 .../metadata/view/RenameLogicalViewStatement.java  |   19 -
 .../plan/statement/sys/AuthorStatement.java        |  243 +-
 .../statement/sys/ExplainAnalyzeStatement.java     |    6 -
 .../plan/statement/sys/KillQueryStatement.java     |   17 +-
 .../statement/sys/SetConfigurationStatement.java   |   39 +
 .../plan/statement/sys/SetSqlDialectStatement.java |    8 -
 ...tement.java => ShowConfigurationStatement.java} |   41 +-
 .../sys/ShowCurrentSqlDialectStatement.java        |    8 -
 .../statement/sys/ShowCurrentUserStatement.java    |    8 -
 .../plan/statement/sys/ShowQueriesStatement.java   |   16 +-
 .../plan/statement/sys/ShowVersionStatement.java   |    8 -
 .../statement/sys/TestConnectionStatement.java     |    7 -
 .../plan/udf}/BuiltinAggregationFunction.java      |    2 +-
 .../plan/udf}/BuiltinScalarFunction.java           |    2 +-
 .../udf}/BuiltinTimeSeriesGeneratingFunction.java  |   51 +-
 .../queryengine/plan/udf/UDFManagementService.java |    3 -
 .../db/queryengine/plan/udf/UDTFForecast.java      |  270 +++
 .../AbstractCaseWhenThenColumnTransformer.java     |    2 +-
 .../dag/column/binary/HmacColumnTransformer.java   |  108 +
 .../binary/factory/HmacStrategiesFactory.java      |   93 +
 .../column/binary/strategies/HmacStrategy.java}    |   15 +-
 .../dag/column/ternary/LpadColumnTransformer.java  |   92 +
 .../dag/column/ternary/RpadColumnTransformer.java  |   92 +
 .../column/ternary/TernaryColumnTransformer.java   |    2 +-
 .../dag/column/ternary/utils/BytePaddingUtils.java |   87 +
 .../scalar/BytesToDoubleColumnTransformer.java     |   78 +
 .../scalar/BytesToFloatColumnTransformer.java      |   79 +
 .../unary/scalar/BytesToIntColumnTransformer.java  |   81 +
 .../unary/scalar/BytesToLongColumnTransformer.java |   80 +
 .../dag/column/unary/scalar/CRC32Transformer.java  |   61 +
 .../scalar/DateBinFunctionColumnTransformer.java   |   21 +-
 .../scalar/DoubleToBytesColumnTransformer.java     |   61 +
 .../column/unary/scalar/ExtractTransformer.java    |   12 +-
 .../scalar/FloatToBytesColumnTransformer.java      |   61 +
 .../scalar/GenericCodecColumnTransformer.java      |   92 +
 .../scalar/HmacConstantKeyColumnTransformer.java   |   68 +
 .../unary/scalar/IntToBytesColumnTransformer.java  |   62 +
 .../unary/scalar/LongToBytesColumnTransformer.java |   60 +
 .../scalar/factory/CodecStrategiesFactory.java     |  133 ++
 .../factory/NumericCodecStrategiesFactory.java     |  169 ++
 .../unary/scalar/inteface/CodecStrategy.java}      |   15 +-
 .../dag/column/unary/scalar/util/HexUtils.java     |   86 +
 .../unary/scalar/util/SpookyHashV2Utils.java       |  603 +++++
 .../unary/scalar/util/TransformerDebugUtils.java   |   62 +
 .../dag/input/QueryDataSetInputLayer.java          |   10 +-
 .../dag/intermediate/MultiInputLayer.java          |   35 +-
 .../SingleInputMultiReferenceLayer.java            |   27 +-
 .../SingleInputSingleReferenceLayer.java           |   27 +-
 .../transformation/dag/udf/UDTFExecutor.java       |    2 +-
 .../transformation/dag/util/LayerCacheUtils.java   |    5 +-
 .../transformation/datastructure/TVColumns.java    |    7 +-
 .../tv/ElasticSerializableBinaryTVList.java        |    3 +-
 .../datastructure/tv/SerializableTVList.java       |    6 +-
 .../apache/iotdb/db/schemaengine/SchemaEngine.java |   27 +-
 .../rescon/MemSchemaEngineStatistics.java          |    3 +-
 .../schemaengine/schemaregion/ISchemaRegion.java   |    8 +-
 .../schemaregion/SchemaRegionLoader.java           |   18 +-
 .../schemaregion/SchemaRegionPlanType.java         |    2 +
 .../schemaregion/SchemaRegionPlanVisitor.java      |    6 +
 .../update/DeviceAttributeCacheUpdater.java        |    8 +-
 .../schemaregion/impl/SchemaRegionMemoryImpl.java  |   56 +-
 .../schemaregion/impl/SchemaRegionPBTreeImpl.java  |   29 +-
 .../visitor/SchemaRegionPlanDeserializer.java      |    7 +
 .../visitor/SchemaRegionPlanSerializer.java        |    8 +
 .../mtree/impl/mem/MTreeBelowSGMemoryImpl.java     |  146 +-
 .../impl/mem/snapshot/MemMTreeSnapshotUtil.java    |    6 +-
 .../mtree/impl/pbtree/MTreeBelowSGCachedImpl.java  |   38 +-
 .../mtree/loader/MNodeFactoryLoader.java           |   25 +-
 .../mtree/traverser/counter/DatabaseCounter.java   |   13 +-
 .../reader/impl/TimeseriesReaderWithViewFetch.java |    2 +-
 .../schemaengine/schemaregion/tag/TagLogFile.java  |    2 +-
 .../schemaengine/schemaregion/tag/TagManager.java  |    2 +-
 .../schemaregion/utils/MetaFormatUtils.java        |    2 +-
 .../schemaengine/schemaregion/utils/MetaUtils.java |    6 +-
 .../schemaregion/utils/ResourceByPathUtils.java    |  113 +-
 .../write/req/SchemaRegionWritePlanFactory.java    |    3 +
 .../req/impl/CreateAlignedTimeSeriesPlanImpl.java  |   10 +
 .../write/req/impl/CreateTimeSeriesPlanImpl.java   |   10 +
 .../db/schemaengine/table/DataNodeTableCache.java  |   49 +-
 .../template/ClusterTemplateManager.java           |   24 +-
 .../db/schemaengine/template/ITemplateManager.java |    2 +
 .../iotdb/db/schemaengine/template/Template.java   |    2 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |   79 +-
 .../db/service/DataNodeInternalRPCService.java     |   65 +-
 .../iotdb/db/service/DataNodeShutdownHook.java     |   19 +
 .../iotdb/db/service/ExternalRPCService.java       |   70 +-
 .../org/apache/iotdb/db/service/RestService.java   |    2 +-
 .../db/service/TemporaryQueryDataFileService.java  |    2 +-
 .../metrics/IoTDBInternalLocalReporter.java        |   15 +-
 .../iotdb/db/service/metrics/WritingMetrics.java   |    3 +-
 .../iotdb/db/storageengine/StorageEngine.java      |   19 +-
 .../db/storageengine/dataregion/DataRegion.java    |  452 +++-
 .../dataregion/IDataRegionForQuery.java            |    2 +-
 .../dataregion/VirtualDataRegion.java              |    2 +-
 .../exception/CompactionExceptionHandler.java      |    2 +-
 .../constant/CrossCompactionPerformer.java         |   16 +
 .../constant/InnerSeqCompactionPerformer.java      |   16 +
 .../constant/InnerUnseqCompactionPerformer.java    |   16 +
 .../performer/impl/FastCompactionPerformer.java    |   60 +-
 .../impl/ReadChunkCompactionPerformer.java         |   53 +-
 .../impl/ReadPointCompactionPerformer.java         |   59 +-
 .../RepairUnsortedFileCompactionPerformer.java     |   14 +-
 .../execute/recover/CompactionRecoverTask.java     |    2 +-
 .../execute/task/AbstractCompactionTask.java       |    3 +-
 .../execute/task/InnerSpaceCompactionTask.java     |   14 +-
 .../task/RepairUnsortedFileCompactionTask.java     |    7 +-
 .../execute/task/SettleCompactionTask.java         |    5 +
 .../task/subtask/ReadPointPerformerSubTask.java    |    8 +-
 .../execute/utils/CompactionPathUtils.java         |    9 +-
 .../execute/utils/CompactionTableSchema.java       |   11 +-
 .../utils/CompactionTableSchemaCollector.java      |   33 +-
 .../compaction/execute/utils/CompactionUtils.java  |   16 +-
 .../execute/utils/MultiTsFileDeviceIterator.java   |   49 +-
 ...BatchedFastAlignedSeriesCompactionExecutor.java |    8 +-
 ...edReadChunkAlignedSeriesCompactionExecutor.java |    9 +-
 .../FirstBatchCompactionAlignedChunkWriter.java    |   51 +-
 ...FollowingBatchCompactionAlignedChunkWriter.java |   16 +-
 .../fast/FastAlignedSeriesCompactionExecutor.java  |    6 +-
 .../FastNonAlignedSeriesCompactionExecutor.java    |    8 +-
 .../executor/fast/SeriesCompactionExecutor.java    |    6 +-
 .../readchunk/AlignedSeriesCompactionExecutor.java |    5 +-
 .../ReadChunkAlignedSeriesCompactionExecutor.java  |    4 +-
 .../readchunk/SingleSeriesCompactionExecutor.java  |    9 +-
 .../utils/writer/AbstractCompactionWriter.java     |   16 +
 .../writer/AbstractCrossCompactionWriter.java      |   23 +-
 .../writer/AbstractInnerCompactionWriter.java      |   30 +-
 .../utils/writer/FastCrossCompactionWriter.java    |   16 +-
 .../utils/writer/FastInnerCompactionWriter.java    |   20 +-
 .../writer/ReadPointCrossCompactionWriter.java     |   14 +-
 .../writer/ReadPointInnerCompactionWriter.java     |   20 +-
 .../writer/RepairUnsortedFileCompactionWriter.java |   12 +-
 .../compaction/io/CompactionTsFileReader.java      |   17 +-
 .../compaction/io/CompactionTsFileWriter.java      |   19 +-
 .../compaction/repair/RepairDataFileScanUtil.java  |    4 +-
 .../compaction/repair/RepairTimePartition.java     |    2 +-
 .../schedule/CompactionScheduleContext.java        |   23 +-
 .../compaction/schedule/CompactionScheduler.java   |    7 +-
 .../estimator/AbstractCompactionEstimator.java     |    6 +-
 .../estimator/AbstractCrossSpaceEstimator.java     |    6 +-
 .../estimator/AbstractInnerSpaceEstimator.java     |   11 +-
 .../estimator/CompactionEstimateUtils.java         |    6 +-
 .../RepairUnsortedFileCompactionEstimator.java     |    5 +
 .../impl/NewSizeTieredCompactionSelector.java      |    2 +-
 .../selector/impl/SettleSelectorImpl.java          |    2 +-
 .../utils/CrossSpaceCompactionCandidate.java       |    1 +
 .../compaction/settle/SettleRequestHandler.java    |   13 +-
 .../compaction/tool/SingleSequenceFileTask.java    |   11 +-
 .../compaction/tool/TimePartitionProcessTask.java  |    9 +-
 .../compaction/tool/TsFileStatisticReader.java     |    6 +-
 .../dataregion/flush/CompressionRatio.java         |   47 +-
 .../dataregion/memtable/AbstractMemTable.java      |   10 +-
 .../memtable/AbstractWritableMemChunk.java         |    4 +
 .../memtable/AlignedReadOnlyMemChunk.java          |  149 +-
 .../memtable/AlignedWritableMemChunk.java          |   36 +-
 .../memtable/AlignedWritableMemChunkGroup.java     |    9 +
 .../dataregion/memtable/IWritableMemChunk.java     |    3 +
 .../memtable/IWritableMemChunkGroup.java           |    3 +
 .../dataregion/memtable/ReadOnlyMemChunk.java      |   90 +-
 .../dataregion/memtable/TsFileProcessor.java       |   34 +-
 .../dataregion/memtable/WritableMemChunk.java      |   25 +-
 .../dataregion/memtable/WritableMemChunkGroup.java |   19 +-
 .../dataregion/modification/ModificationFile.java  |    2 -
 .../dataregion/read/QueryDataSource.java           |    5 +
 .../dataregion/read/control/FileReaderManager.java |   13 +-
 .../read/reader/chunk/MemAlignedChunkLoader.java   |   27 +-
 .../read/reader/chunk/MemAlignedPageReader.java    |    3 +
 .../read/reader/chunk/MemChunkLoader.java          |   21 +-
 .../read/reader/chunk/MemPageReader.java           |    3 +
 .../read/reader/common/NoDataPointReader.java}     |   41 +-
 .../dataregion/snapshot/SnapshotLoader.java        |   44 +-
 .../dataregion/snapshot/SnapshotTaker.java         |   39 +-
 .../dataregion/tsfile/TsFileResource.java          |   74 +-
 .../dataregion/utils/TsFileResourceUtils.java      |    6 +-
 .../dataregion/wal/io/CheckpointReader.java        |    6 +
 .../dataregion/wal/io/WALInputStream.java          |   14 +-
 .../storageengine/dataregion/wal/io/WALWriter.java |    4 +
 .../file/AbstractTsFileRecoverPerformer.java       |   21 +-
 .../file/UnsealedTsFileRecoverPerformer.java       |    6 +-
 .../db/storageengine/load/LoadTsFileManager.java   |   42 +-
 .../load/active/ActiveLoadDirScanner.java          |   48 +-
 .../load/active/ActiveLoadPathHelper.java          |  282 +++
 .../load/active/ActiveLoadPendingQueue.java        |   17 +-
 .../load/active/ActiveLoadTsFileLoader.java        |   44 +-
 .../load/config/LoadTsFileConfigurator.java        |   22 +-
 ...vertedInsertTabletStatementTSStatusVisitor.java |    3 +-
 ...rtedInsertTabletStatementExceptionVisitor.java} |   18 +-
 ...leStatementDataTypeConvertExecutionVisitor.java |   38 +-
 ...rtedInsertTabletStatementExceptionVisitor.java} |    2 +-
 ...eeStatementDataTypeConvertExecutionVisitor.java |   39 +-
 .../converter/LoadTsFileDataTypeConverter.java     |   19 +-
 .../db/storageengine/load/disk/MinIOSelector.java  |   10 +-
 .../load/limiter/LoadTsFileRateLimiter.java        |   64 +-
 .../memory/LoadTsFileDataCacheMemoryBlock.java     |    3 +-
 .../load/memory/LoadTsFileMemoryBlock.java         |    3 +-
 .../load/splitter/TsFileSplitter.java              |   21 +
 .../ActiveLoadUtil.java => util/LoadUtil.java}     |   88 +-
 .../rescon/disk/DirectoryChecker.java              |    2 +-
 .../strategy/RandomOnDiskUsableSpaceStrategy.java  |    4 +-
 .../rescon/memory/PrimitiveArrayManager.java       |    1 +
 .../agent/SubscriptionAgentLauncher.java           |    4 +-
 .../broker/SubscriptionPrefetchingQueue.java       |    7 +-
 .../broker/SubscriptionPrefetchingTabletQueue.java |    3 +-
 .../broker/SubscriptionPrefetchingTsFileQueue.java |    3 +-
 .../event/batch/SubscriptionPipeEventBatch.java    |    4 +-
 .../event/batch/SubscriptionPipeEventBatches.java  |    4 +-
 .../event/cache/SubscriptionPollResponseCache.java |   54 +-
 .../response/SubscriptionEventTsFileResponse.java  |    3 +-
 .../SubscriptionPrefetchingQueueMetrics.java       |    3 +-
 .../resource/log/SubscriptionLogStatus.java        |    2 +-
 .../subtask/SubscriptionSinkSubtaskManager.java    |    2 +-
 .../apache/iotdb/db/tools/IoTDBDataDirViewer.java  |   25 +-
 .../apache/iotdb/db/tools/TsFileSketchTool.java    |   16 +-
 .../db/tools/schema/SRStatementGenerator.java      |    4 +-
 .../db/tools/settle/TsFileAndModSettleTool.java    |    5 +-
 .../iotdb/db/tools/utils/TsFileSequenceScan.java   |    7 +-
 .../iotdb/db/tools/utils/TsFileStatisticScan.java  |    6 +-
 .../db/trigger/executor/TriggerFireVisitor.java    |    6 +
 .../trigger/service/TriggerManagementService.java  |    2 +-
 .../org/apache/iotdb/db/utils/CommonUtils.java     |    2 +-
 .../apache/iotdb/db/utils/DataNodeAuthUtils.java   |  204 +-
 .../org/apache/iotdb/db/utils/DateTimeUtils.java   |   75 +-
 .../org/apache/iotdb/db/utils/EncryptDBUtils.java  |   86 +
 .../apache/iotdb/db/utils/ModificationUtils.java   |   32 +-
 .../iotdb/{util => db/utils}/TabletDecoder.java    |    2 +-
 .../apache/iotdb/db/utils/TypeInferenceUtils.java  |    2 +-
 .../db/utils/datastructure/AlignedTVList.java      |  353 ++-
 .../iotdb/db/utils/datastructure/BackwardSort.java |    3 +
 .../iotdb/db/utils/datastructure/LazyBitMap.java   |   93 +
 .../db/utils/datastructure/MemPointIterator.java   |   76 +-
 .../datastructure/MemPointIteratorFactory.java     |  191 +-
 .../MergeSortMultiAlignedTVListIterator.java       |   89 +-
 .../MergeSortMultiTVListIterator.java              |   60 +-
 .../datastructure/MultiAlignedTVListIterator.java  |  137 +-
 .../utils/datastructure/MultiTVListIterator.java   |  212 +-
 .../OrderedMultiAlignedTVListIterator.java         |   42 +-
 .../datastructure/OrderedMultiTVListIterator.java  |   41 +-
 .../iotdb/db/utils/datastructure/TVList.java       |  486 +++-
 .../apache/iotdb/db/auth/AuthorityCheckerTest.java |   51 +
 .../apache/iotdb/db/auth/LoginLockManagerTest.java |  558 +++++
 .../auth/authorizer/LocalFileAuthorizerTest.java   |    6 +-
 .../org/apache/iotdb/db/auth/entity/RoleTest.java  |   16 +-
 .../org/apache/iotdb/db/auth/entity/UserTest.java  |    4 +-
 .../db/auth/role/LocalFileRoleAccessorTest.java    |    2 +-
 .../db/auth/role/LocalFileRoleManagerTest.java     |    2 +-
 .../db/auth/user/LocalFileUserAccessorTest.java    |   21 +-
 .../db/auth/user/LocalFileUserManagerTest.java     |    2 +-
 .../cache/TreeDeviceSchemaCacheManagerTest.java    |   19 +-
 .../db/metadata/path/MeasurementPathTest.java      |    4 +-
 .../schemaRegion/AbstractSchemaRegionTest.java     |    2 +-
 .../schemaRegion/SchemaRegionBasicTest.java        |    2 +-
 .../db/pipe/consensus/DeletionResourceTest.java    |    2 +-
 .../pipe/event/TsFileInsertionEventParserTest.java |    5 +-
 .../tsfile/parser/util/ModsOperationUtilTest.java  |  408 ++++
 .../db/pipe/pattern/TreePatternCoverageTest.java   |  133 ++
 .../annotation/PipePluginAnnotationTest.java       |   11 +-
 .../pipe/sink/PipeDataNodeThriftRequestTest.java   |   22 +-
 .../PipeStatementTreePatternParseVisitorTest.java  |  228 +-
 .../db/pipe/source/IoTDBDataRegionSourceTest.java  |    2 +
 .../PipePlanTreePatternParseVisitorTest.java       |  257 +-
 .../source/SchemaRegionListeningQueueTest.java     |    2 +-
 .../execution/exchange/SharedTsBlockQueueTest.java |    2 +-
 .../operator/MergeTreeSortOperatorTest.java        |    4 +-
 .../execution/operator/TransformOperatorTest.java  |  142 ++
 .../process/rowpattern/PatternExpressionTest.java  |    9 +
 .../process/window/TableWindowOperatorTest.java    |   51 +
 .../process/window/function/FunctionTestUtils.java |    3 +-
 .../plan/analyze/ExpressionAnalyzerTest.java       |    2 +-
 .../plan/analyze/FakePartitionFetcherImpl.java     |    7 +-
 .../plan/analyze/FakeSchemaFetcherImpl.java        |   22 +-
 .../load/TimeseriesMetadataIteratorTest.java       |  173 ++
 .../plan/parser/StatementGeneratorTest.java        |   13 +-
 .../plan/planner/distribution/Util.java            |   30 +-
 .../plan/planner/distribution/Util2.java           |   30 +-
 .../planner/node/write/WritePlanNodeSplitTest.java |    3 +
 .../plan/relational/analyzer/AnalyzerTest.java     |   33 +-
 .../plan/relational/analyzer/AuthTest.java         |   36 +-
 .../relational/analyzer/ExtractExpressionTest.java |    7 +
 .../plan/relational/analyzer/IntersectTest.java    |  121 +
 .../analyzer/PushAggregationThroughUnionTest.java  |  148 ++
 .../plan/relational/analyzer/TSBSMetadata.java     |   25 +-
 .../relational/analyzer/TableFunctionTest.java     |    4 +-
 .../plan/relational/analyzer/TestMetadata.java     |   26 +-
 .../relational/analyzer/UnionOptimizeTest.java     |  158 ++
 .../relational/sql/parser/AuthorStatementTest.java |   27 +-
 .../plan/statement/InsertStatementTest.java        |   97 +-
 .../binary/hmac/HmacMd5ColumnTransformerTest.java  |  420 ++++
 .../binary/hmac/HmacSha1ColumnTransformerTest.java |  420 ++++
 .../hmac/HmacSha256ColumnTransformerTest.java      |  420 ++++
 .../hmac/HmacSha512ColumnTransformerTest.java      |  356 +++
 .../column/ternary/LpadColumnTransformerTest.java  |  303 +++
 .../column/ternary/RpadColumnTransformerTest.java  |  303 +++
 .../FromBigEndian32ColumnTransformerTest.java      |  220 ++
 .../FromBigEndian64ColumnTransformerTest.java      |  242 ++
 ...omIEEE754_32BigEndianColumnTransformerTest.java |  231 ++
 ...omIEEE754_64BigEndianColumnTransformerTest.java |  231 ++
 .../FromLittleEndian32ColumnTransformerTest.java   |  221 ++
 .../FromLittleEndian64ColumnTransformerTest.java   |  243 ++
 .../ToBigEndian32ColumnTransformerTest.java        |  188 ++
 .../ToBigEndian64ColumnTransformerTest.java        |  188 ++
 ...ToIEEE754_32BigEndianColumnTransformerTest.java |  179 ++
 ...ToIEEE754_64BigEndianColumnTransformerTest.java |  159 ++
 .../ToLittleEndian32ColumnTransformerTest.java     |  189 ++
 .../ToLittleEndian64ColumnTransformerTest.java     |  189 ++
 .../unary/scalar/ReverseColumnTransformerTest.java |  216 ++
 .../FromBase32ColumnTransformerTest.java           |  268 +++
 .../FromBase64ColumnTransformerTest.java           |  271 +++
 .../FromBase64UrlColumnTransformerTest.java        |  328 +++
 .../ToBase32ColumnTransformerTest.java             |  196 ++
 .../ToBase64ColumnTransformerTest.java             |  190 ++
 .../ToBase64UrlColumnTransformerTest.java          |  235 ++
 .../scalar/hashing/Crc32ColumnTransformerTest.java |  200 ++
 .../scalar/hashing/Md5ColumnTransformerTest.java   |  225 ++
 .../hashing/Murmur3ColumnTransformerTest.java      |  224 ++
 .../scalar/hashing/Sha1ColumnTransformerTest.java  |  225 ++
 .../hashing/Sha256ColumnTransformerTest.java       |  229 ++
 .../hashing/Sha512ColumnTransformerTest.java       |  224 ++
 .../SpookyHashV2_32ColumnTransformerTest.java      |  183 ++
 .../SpookyHashV2_64ColumnTransformerTest.java      |  183 ++
 .../hashing/XxHash64ColumnTransformerTest.java     |  238 ++
 .../hexEncoding/FromHexColumnTransformerTest.java  |  239 ++
 .../hexEncoding/ToHexColumnTransformerTest.java    |  222 ++
 .../security/encrypt/MessageDigestEncryptTest.java |    2 +-
 .../DataNodeInternalRPCServiceImplTest.java        |   59 +-
 .../iotdb/db/storageengine/StorageEngineTest.java  |    4 +-
 .../storageengine/buffer/BloomFilterCacheTest.java |    2 +-
 .../storageengine/dataregion/DataRegionTest.java   |    4 +-
 .../dataregion/TsFileManagerTest.java              |    2 +-
 .../TsFileResourceProgressIndexTest.java           |    2 +-
 .../compaction/AbstractCompactionTest.java         |    6 +-
 .../compaction/CompactionTaskManagerTest.java      |    2 +-
 .../compaction/CompactionValidationTest.java       |    2 +-
 .../TsFileValidationCorrectnessTests.java          |    2 +-
 .../inner/AbstractInnerSpaceCompactionTest.java    |    2 +-
 .../inner/FastCompactionPerformerAlignedTest.java  |    2 +-
 .../FastCompactionPerformerNoAlignedTest.java      |    2 +-
 .../inner/InnerCompactionEmptyTsFileTest.java      |    2 +-
 .../compaction/inner/InnerCompactionLogTest.java   |    2 +-
 .../inner/InnerCompactionMoreDataTest.java         |    2 +-
 .../ReadChunkCompactionPerformerAlignedTest.java   |    2 +-
 .../ReadChunkCompactionPerformerNoAlignedTest.java |    2 +-
 .../inner/ReadChunkCompactionPerformerOldTest.java |    2 +-
 .../recover/SizeTieredCompactionRecoverTest.java   |    2 +-
 .../repair/RepairUnsortedFileSchedulerTest.java    |   10 +-
 .../CompactionTableSchemaCollectorTest.java        |    8 +-
 .../TableModelFastCompactionPerformerTest.java     |  125 +-
 ...TableModelReadChunkCompactionPerformerTest.java |   94 +-
 .../compaction/utils/CompactionClearUtils.java     |    2 +-
 .../compaction/utils/CompactionTestFileWriter.java |    6 +-
 .../dataregion/flush/CompressionRatioTest.java     |    2 +-
 .../memtable/AlignedTVListIteratorTest.java        | 1012 ++++++++
 .../memtable/NonAlignedTVListIteratorTest.java     |  720 ++++++
 .../dataregion/memtable/TsFileProcessorTest.java   |    2 +-
 .../reader/chunk/MemAlignedChunkLoaderTest.java    |    1 +
 .../read/reader/chunk/MemChunkLoaderTest.java      |    6 +
 .../dataregion/snapshot/IoTDBSnapshotTest.java     |   10 +-
 .../dataregion/tsfile/TsFileResourceTest.java      |    2 +-
 .../wal/compression/WALCompressionTest.java        |    2 +-
 .../dataregion/wal/io/WALFileTest.java             |   22 +-
 .../iotdb/db/tools/TsFileSelfCheckToolTest.java    |    2 +-
 .../iotdb/db/tools/TsFileSketchToolTest.java       |    2 +-
 .../org/apache/iotdb/db/tools/WalCheckerTest.java  |    2 +-
 .../iotdb/db/utils/ConfigurationFileUtilsTest.java |   15 +
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    2 +-
 .../apache/iotdb/db/utils/OpenFileNumUtilTest.java |    2 +-
 .../db/utils/SchemaRegionSnapshotParserTest.java   |    2 +-
 .../apache/iotdb/db/utils/TSDataTypeTestUtils.java |  111 +
 .../db/utils/datastructure/AlignedTVListTest.java  |    2 +-
 .../db/utils/datastructure/BinaryTVListTest.java   |    2 +-
 .../db/utils/datastructure/BooleanTVListTest.java  |    2 +-
 .../db/utils/datastructure/DoubleTVListTest.java   |    2 +-
 .../db/utils/datastructure/FloatTVListTest.java    |    2 +-
 .../db/utils/datastructure/IntTVListTest.java      |    2 +-
 .../db/utils/datastructure/LongTVListTest.java     |    2 +-
 .../datastructure/PrimitiveArrayManagerTest.java   |   12 +-
 iotdb-core/metrics/ReadMe.md                       |    4 +-
 iotdb-core/metrics/interface/pom.xml               |    4 +
 .../apache/iotdb/metrics/config/MetricConfig.java  |   54 +-
 .../metrics/config/MetricConfigDescriptor.java     |   13 +
 .../reporter/iotdb/IoTDBSessionReporter.java       |   22 +-
 .../reporter/prometheus/PrometheusReporter.java    |   63 +-
 .../java/org/apache/iotdb/metrics/type/Timer.java  |   16 +-
 iotdb-core/node-commons/pom.xml                    |   25 +-
 .../conf/iotdb-system.properties.template          |   56 +-
 .../iotdb/commons/audit/AbstractAuditLogger.java   |  125 +
 .../iotdb/commons/audit/AuditEventType.java}       |   34 +-
 .../apache/iotdb/commons/audit/AuditLogFields.java |  182 ++
 .../iotdb/commons}/audit/AuditLogOperation.java    |    4 +-
 .../apache/iotdb/commons/audit/IAuditEntity.java}  |   41 +-
 .../iotdb/commons/audit/PrivilegeLevel.java}       |    8 +-
 .../org/apache/iotdb/commons/audit/UserEntity.java |  154 ++
 .../commons/auth/authorizer/BasicAuthorizer.java   |   50 +-
 .../iotdb/commons/auth/authorizer/IAuthorizer.java |   26 +
 .../auth/authorizer/LocalFileAuthorizer.java       |    5 -
 .../commons/auth/authorizer/OpenIdAuthorizer.java  |    6 +-
 .../iotdb/commons/auth/entity/IEntityAccessor.java |   15 +
 .../iotdb/commons/auth/entity/PrivilegeType.java   |  131 +-
 .../org/apache/iotdb/commons/auth/entity/Role.java |   21 +-
 .../org/apache/iotdb/commons/auth/entity/User.java |   43 +-
 .../iotdb/commons/auth/role/BasicRoleManager.java  |   22 +
 .../iotdb/commons/auth/role/IEntityManager.java    |    9 +
 .../commons/auth/role/LocalFileRoleAccessor.java   |   86 +-
 .../iotdb/commons/auth/user/BasicUserManager.java  |  163 +-
 .../commons/auth/user/LocalFileUserAccessor.java   |   61 +-
 .../commons/auth/user/LocalFileUserManager.java    |    1 +
 .../apache/iotdb/commons/auth/utils/AuthUtils.java |   49 +
 .../iotdb/commons/client/ClientPoolFactory.java    |   52 -
 .../apache/iotdb/commons/client/ThriftClient.java  |    7 +-
 .../commons/client/ainode/AINodeClientManager.java |   40 -
 .../AsyncConfigNodeInternalServiceClient.java      |   20 +-
 .../async/AsyncDataNodeExternalServiceClient.java  |   20 +-
 .../async/AsyncDataNodeInternalServiceClient.java  |   20 +-
 .../AsyncDataNodeMPPDataExchangeServiceClient.java |   20 +-
 .../async/AsyncPipeConsensusServiceClient.java     |   20 +-
 .../async/AsyncPipeDataTransferServiceClient.java  |    6 +-
 .../client/sync/SyncConfigNodeIServiceClient.java  |   24 +-
 .../sync/SyncDataNodeInternalServiceClient.java    |   24 +-
 .../SyncDataNodeMPPDataExchangeServiceClient.java  |   24 +-
 .../sync/SyncPipeConsensusServiceClient.java       |   24 +-
 .../apache/iotdb/commons/conf/CommonConfig.java    |  505 ++--
 .../iotdb/commons/conf/CommonDescriptor.java       |   50 +-
 .../iotdb/commons/conf/ConfigurationFileUtils.java |  330 ++-
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |    7 +-
 .../container/IoTV2GlobalComponentContainer.java   |   23 +-
 .../iotdb/commons/exception/MetadataException.java |    2 +-
 .../exception/pipe/PipeNonReportException.java}    |   13 +-
 .../pipe/PipeRuntimeSinkCriticalException.java     |    2 +-
 ...RuntimeSinkRetryTimesConfigurableException.java |    6 +
 .../commons/executable/ExecutableManager.java      |   17 +-
 .../commons/external/collections4/BidiMap.java     |  138 ++
 .../external/collections4/IterableSortedMap.java}  |   31 +-
 .../external/collections4/OrderedBidiMap.java      |   51 +
 .../collections4/ResettableListIterator.java}      |   34 +-
 .../external/collections4/SortedBidiMap.java       |   59 +
 .../collections4/bidimap/AbstractDualBidiMap.java  |  798 +++++++
 .../collections4/bidimap/DualTreeBidiMap.java      |  414 ++++
 .../collection/AbstractCollectionDecorator.java    |  182 ++
 .../iterators/AbstractIteratorDecorator.java}      |   39 +-
 .../AbstractUntypedIteratorDecorator.java          |   66 +
 .../iterators/ListIteratorWrapper.java             |  274 +++
 .../keyvalue/AbstractMapEntryDecorator.java        |   92 +
 .../collections4/map/AbstractIterableMap.java}     |   33 +-
 .../collections4/map/AbstractMapDecorator.java     |  153 ++
 .../map/AbstractSortedMapDecorator.java            |  166 ++
 .../map/EntrySetToMapIteratorAdapter.java          |  110 +
 .../iotdb/commons/file/SystemFileFactory.java      |    2 +-
 .../commons/file/SystemPropertiesHandler.java      |    2 +
 .../iotdb/commons/partition/SchemaPartition.java   |    6 +
 .../apache/iotdb/commons/path/MeasurementPath.java |   26 -
 .../org/apache/iotdb/commons/path/PartialPath.java |   32 +-
 .../apache/iotdb/commons/path/PathPatternNode.java |    7 +
 .../apache/iotdb/commons/path/PathPatternTree.java |   13 +-
 .../iotdb/commons/path/fa/dfa/graph/NFAGraph.java  |    2 +-
 .../fa/dfa/transition/DFAWildcardTransition.java   |    2 +-
 .../agent/plugin/builtin/BuiltinPipePlugin.java    |    3 -
 .../plugin/builtin/source/mqtt/MQTTSource.java     |   68 -
 .../service/PipePluginExecutableManager.java       |    2 +-
 .../commons/pipe/agent/task/PipeTaskAgent.java     |   73 +-
 .../commons/pipe/agent/task/meta/PipeTaskMeta.java |   39 +-
 .../task/progress/interval/PipeCommitInterval.java |    4 +-
 .../task/subtask/PipeAbstractSinkSubtask.java      |   13 +
 .../iotdb/commons/pipe/config/PipeConfig.java      |  136 +-
 .../iotdb/commons/pipe/config/PipeDescriptor.java  |   80 +-
 .../pipe/config/constant/PipeSinkConstant.java     |   11 +
 .../pipe/config/constant/PipeSourceConstant.java   |   39 +-
 .../pipe/config/constant/SystemConstant.java       |   10 +-
 .../datastructure/pattern/IoTDBTreePattern.java    |   72 +-
 .../pattern/IoTDBTreePatternOperations.java        |   52 +
 .../datastructure/pattern/PrefixTreePattern.java   |   70 +-
 .../pipe/datastructure/pattern/TreePattern.java    |  522 ++++-
 .../pattern/UnionIoTDBTreePattern.java             |  170 ++
 .../datastructure/pattern/UnionTreePattern.java    |  102 +
 .../pattern/WithExclusionIoTDBTreePattern.java     |  213 ++
 .../pattern/WithExclusionTreePattern.java          |  119 +
 .../listening/AbstractPipeListeningQueue.java      |   10 +-
 .../visibility/VisibilityTestUtils.java            |   10 +-
 .../iotdb/commons/pipe/event/EnrichedEvent.java    |   16 +
 .../commons/pipe/event/PipeSnapshotEvent.java      |    4 +
 .../commons/pipe/event/PipeWritePlanEvent.java     |    4 +
 .../commons/pipe/event/ProgressReportEvent.java    |    4 +
 .../commons/pipe/receiver/IoTDBFileReceiver.java   |  173 +-
 .../commons/pipe/receiver/IoTDBReceiverAgent.java  |    2 +-
 .../pipe/receiver/PipeReceiverStatusHandler.java   |  188 +-
 .../commons/pipe/resource/log/PipeLogger.java      |   58 +
 .../pipe/sink/client/IoTDBClientManager.java       |   12 +-
 .../pipe/sink/client/IoTDBSyncClientManager.java   |   47 +-
 .../pipe/sink/limiter/GlobalRPCRateLimiter.java}   |   18 +-
 .../pipe/sink/limiter/GlobalRateLimiter.java       |   14 +-
 .../pipe/sink/limiter/TsFileSendRateLimiter.java}  |   31 +-
 .../common/PipeTransferHandshakeConstant.java      |    3 +
 .../pipe/sink/protocol/IoTDBAirGapSink.java        |    3 +
 .../commons/pipe/sink/protocol/IoTDBSink.java      |   22 +-
 .../pipe/sink/protocol/IoTDBSslSyncSink.java       |   14 +-
 .../pipe/source/IoTDBNonDataRegionSource.java      |   27 +-
 .../iotdb/commons/pipe/source/IoTDBSource.java     |   15 +
 .../iotdb/commons/schema/SchemaConstant.java       |    7 +-
 .../schema/column/ColumnHeaderConstant.java        |   41 +
 .../apache/iotdb/commons/schema/table/Audit.java   |   45 +
 .../schema/table/InsertNodeMeasurementInfo.java    |  244 ++
 .../schema/table/NonCommittableTsTable.java}       |   31 +-
 .../schema/table/TsFileTableSchemaUtil.java        |  207 ++
 .../apache/iotdb/commons/schema/table/TsTable.java |  250 +-
 .../schema/table/column/FieldColumnSchema.java     |    1 +
 .../schema/table/column/TsTableColumnSchema.java   |    6 +
 .../viewExpression/leaf/ConstantViewOperand.java   |    2 +-
 .../unary/RegularViewExpression.java               |    2 +-
 .../service/AbstractThriftServiceThread.java       |   68 +-
 .../iotdb/commons/service/ThriftServiceThread.java |   40 +-
 .../iotdb/commons/service/metric/enums/Metric.java |    4 +
 .../meta/consumer/ConsumerGroupMeta.java           |    3 +-
 .../builtin/UDTFEqualSizeBucketRandomSample.java   |    6 +-
 .../relational/TableBuiltinScalarFunction.java     |   36 +
 .../commons/udf/service/UDFExecutableManager.java  |    2 +-
 .../org/apache/iotdb/commons/utils/AuthUtils.java  |   36 +-
 .../org/apache/iotdb/commons/utils/FileUtils.java  |  113 +-
 .../org/apache/iotdb/commons/utils/IOUtils.java    |   30 +
 .../org/apache/iotdb/commons/utils/RetryUtils.java |   64 +-
 .../apache/iotdb/commons/utils/SerializeUtils.java |   18 +
 .../pipe/datastructure/PipeCommitQueueTest.java    |   10 +
 .../PipeReceiverStatusHandlerTest.java             |  302 +++
 .../annotation/PipePluginAnnotationTest.java       |   11 +-
 .../commons/pipe/task/PipeSleepIntervalTest.java   |   83 +
 .../schema/table/TsFileTableSchemaUtilTest.java    |  748 ++++++
 .../apache/iotdb/commons/utils/FileUtilsTest.java  |   79 +
 .../db/relational/grammar/sql/RelationalSql.g4     |   86 +-
 .../thrift-ainode/src/main/thrift/ainode.thrift    |   32 +
 .../thrift-commons/src/main/thrift/common.thrift   |    5 +
 .../src/main/thrift/confignode.thrift              |   90 +-
 .../thrift-datanode/src/main/thrift/client.thrift  |   18 -
 .../src/main/thrift/datanode.thrift                |   54 +-
 library-udf/pom.xml                                |    2 +
 .../iotdb/library/match/PatternExecutor.java       |    9 +-
 pom.xml                                            |   83 +-
 scripts/conf/ainode-env.sh                         |  138 --
 scripts/conf/windows/ainode-env.bat                |  129 -
 scripts/sbin/start-ainode.sh                       |   56 +-
 scripts/sbin/start-cli.sh                          |    9 +-
 scripts/sbin/windows/start-ainode.bat              |   62 +-
 scripts/sbin/windows/start-cli-table.bat           |  116 +-
 scripts/sbin/windows/start-cli.bat                 |  234 +-
 1616 files changed, 78515 insertions(+), 21053 deletions(-)

diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
index a48692ba737,f81238bef71..17606e21a42
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
@@@ -864,58 -884,8 +887,63 @@@ public class AlignedWritableMemChunk ex
      return avgPointSizeOfLargestColumn;
    }
  
 +  public long getTvListArrayMemCostIncrement1(
 +      List<String> insertingMeasurements, List<TSDataType> insertingTypes) {
 +    long size = 0;
 +    List<List<BitMap>> bitMaps = list.getBitMaps();
 +    // value & bitmap array mem size
 +    for (int column = 0; column < dataTypes.size(); column++) {
 +      if (bitMaps != null && bitMaps.get(column) != null) {
 +        size += (long) PrimitiveArrayManager.ARRAY_SIZE / 8 + 1;
 +      }
 +    }
 +    int newMeasurementCount = 0;
 +    for (int i = 0; i < insertingMeasurements.size(); i++) {
 +      String measurementName = insertingMeasurements.get(i);
 +      TSDataType type = insertingTypes.get(i);
 +      size += (long) PrimitiveArrayManager.ARRAY_SIZE * (long) type.getDataTypeSize();
 +      if (!measurementIndexMap.containsKey(measurementName)) {
 +        newMeasurementCount++;
 +      }
 +    }
 +    // size is 0 when all types are null
 +    if (size == 0) {
 +      return size;
 +    }
 +    // time array mem size
 +    size += PrimitiveArrayManager.ARRAY_SIZE * 8L;
 +    // index array mem size
 +    size += (list.getIndices() != null) ? PrimitiveArrayManager.ARRAY_SIZE * 4L : 0;
 +    // array headers mem size
 +    size += (long) NUM_BYTES_ARRAY_HEADER * (2 + insertingTypes.size());
 +    // Object references size in ArrayList
 +    size += (long) NUM_BYTES_OBJECT_REF * (2 + dataTypes.size() + newMeasurementCount);
 +    return size;
 +  }
 +
 +  public long getTvListArrayMemCostIncrement(
 +      List<String> insertingMeasurements, List<TSDataType> insertingTypes) {
 +    long memCostIncrement = 0;
 +    for (int i = 0; i < insertingMeasurements.size(); i++) {
 +      String measurementName = insertingMeasurements.get(i);
 +      TSDataType dataType = insertingTypes.get(i);
 +      Integer columIndex = measurementIndexMap.get(measurementName);
 +      if (columIndex == null) {
 +        memCostIncrement +=
 +            (long) PrimitiveArrayManager.ARRAY_SIZE * (long) dataType.getDataTypeSize();
 +      } else {
 +        List<Object> columnArries = list.getValues().get(columIndex);
 +        if (columnArries.get(columnArries.size() - 1) == null) {
 +          memCostIncrement +=
 +              (long) PrimitiveArrayManager.ARRAY_SIZE * (long) dataType.getDataTypeSize();
 +        }
 +      }
 +    }
 +    return memCostIncrement;
 +  }
++
+   @Override
+   public void setEncryptParameter(EncryptParameter encryptParameter) {
+     this.encryptParameter = encryptParameter;
+   }
  }
diff --cc iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
index 67ae375b15a,68776c92c0b..2122212fb84
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
@@@ -1090,9 -1088,10 +1095,7 @@@ public class TsFileProcessor 
  
          if (!alignedMemChunk.containsMeasurement(measurementIds[i])) {
            // add a new column in the TVList, the new column should be as long as existing ones
--          memIncrements[0] +=
-               newArrayCnt
-                   * AlignedTVList.emptyValueListArrayMemCost();
 -              (currentPointNum / PrimitiveArrayManager.ARRAY_SIZE + 1)
 -                  * AlignedTVList.valueListArrayMemCost(dataType);
 -          dataTypesInTVList.add(dataType);
++          memIncrements[0] += newArrayCnt * AlignedTVList.emptyValueListArrayMemCost();
          }
        }
  


(iotdb) 03/06: dev

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch opt_aligned_tvlist
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit ead01cd0a4c4751402a88094b5393e4d7c2de438
Author: HTHou <ha...@apache.org>
AuthorDate: Wed Aug 27 17:16:26 2025 +0800

    dev
---
 .../memtable/AlignedWritableMemChunk.java          | 61 ++++++++++++++++++++++
 .../dataregion/memtable/TsFileProcessor.java       | 29 +++++-----
 .../db/utils/datastructure/AlignedTVList.java      | 18 +++++--
 3 files changed, 93 insertions(+), 15 deletions(-)

diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
index d41ef855d36..d7b7b4b027c 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
@@ -24,6 +24,7 @@ import org.apache.iotdb.db.conf.IoTDBConfig;
 import org.apache.iotdb.db.conf.IoTDBDescriptor;
 import org.apache.iotdb.db.storageengine.dataregion.wal.buffer.IWALByteBufferView;
 import org.apache.iotdb.db.storageengine.dataregion.wal.utils.WALWriteUtils;
+import org.apache.iotdb.db.storageengine.rescon.memory.PrimitiveArrayManager;
 import org.apache.iotdb.db.utils.datastructure.AlignedTVList;
 import org.apache.iotdb.db.utils.datastructure.BatchEncodeInfo;
 import org.apache.iotdb.db.utils.datastructure.MemPointIterator;
@@ -55,6 +56,8 @@ import java.util.TreeMap;
 import java.util.concurrent.BlockingQueue;
 
 import static org.apache.iotdb.db.utils.ModificationUtils.isPointDeleted;
+import static org.apache.tsfile.utils.RamUsageEstimator.NUM_BYTES_ARRAY_HEADER;
+import static org.apache.tsfile.utils.RamUsageEstimator.NUM_BYTES_OBJECT_REF;
 
 public class AlignedWritableMemChunk extends AbstractWritableMemChunk {
 
@@ -860,4 +863,62 @@ public class AlignedWritableMemChunk extends AbstractWritableMemChunk {
     }
     return avgPointSizeOfLargestColumn;
   }
+
+  public long getTvListArrayMemCostIncrement1(
+      List<String> insertingMeasurements, List<TSDataType> insertingTypes) {
+    long size = 0;
+    List<BitMap> bitMaps = list.getBitMap();
+    // value & bitmap array mem size
+    for (int column = 0; column < dataTypes.size(); column++) {
+      TSDataType type = dataTypes.get(column);
+      if (type != null) {
+        if (bitMaps != null && bitMaps.get(column) != null) {
+          size += (long) PrimitiveArrayManager.ARRAY_SIZE / 8 + 1;
+        }
+      }
+    }
+    int newMeasurementCount = 0;
+    for (int i = 0; i < insertingMeasurements.size(); i++) {
+      String measurementName = insertingMeasurements.get(i);
+      TSDataType type = insertingTypes.get(i);
+      size += (long) PrimitiveArrayManager.ARRAY_SIZE * (long) type.getDataTypeSize();
+      if (!measurementIndexMap.containsKey(measurementName)) {
+        newMeasurementCount++;
+      }
+    }
+    // size is 0 when all types are null
+    if (size == 0) {
+      return size;
+    }
+    // time array mem size
+    size += PrimitiveArrayManager.ARRAY_SIZE * 8L;
+    // index array mem size
+    size += (list.getIndices() != null) ? PrimitiveArrayManager.ARRAY_SIZE * 4L : 0;
+    // array headers mem size
+    size += (long) NUM_BYTES_ARRAY_HEADER * (2 + insertingTypes.size());
+    // Object references size in ArrayList
+    size += (long) NUM_BYTES_OBJECT_REF * (2 + dataTypes.size() + newMeasurementCount);
+    return size;
+  }
+
+  public long getTvListArrayMemCostIncrement(
+      List<String> insertingMeasurements, List<TSDataType> insertingTypes) {
+    long memCostIncrement = 0;
+    for (int i = 0; i < insertingMeasurements.size(); i++) {
+      String measurementName = insertingMeasurements.get(i);
+      TSDataType dataType = insertingTypes.get(i);
+      Integer columIndex = measurementIndexMap.get(measurementName);
+      if (columIndex == null) {
+        memCostIncrement +=
+            (long) PrimitiveArrayManager.ARRAY_SIZE * (long) dataType.getDataTypeSize();
+      } else {
+        List<Object> columnArries = list.getValues().get(columIndex);
+        if (columnArries.get(columnArries.size() - 1) == null) {
+          memCostIncrement +=
+              (long) PrimitiveArrayManager.ARRAY_SIZE * (long) dataType.getDataTypeSize();
+        }
+      }
+    }
+    return memCostIncrement;
+  }
 }
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
index 6602a3b07bb..d28880fd4cf 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
@@ -792,9 +792,9 @@ public class TsFileProcessor {
         }
       }
       // this insertion will result in a new array
-      if ((alignedMemChunk.alignedListSize() % PrimitiveArrayManager.ARRAY_SIZE) == 0) {
-        memTableIncrement += alignedMemChunk.getWorkingTVList().alignedTvListArrayMemCost();
-      }
+      //      if ((alignedMemChunk.alignedListSize() % PrimitiveArrayManager.ARRAY_SIZE) == 0) {
+      //        memTableIncrement += alignedMemChunk.getWorkingTVList().alignedTvListArrayMemCost();
+      //      }
     }
 
     for (int i = 0; i < dataTypes.length; i++) {
@@ -874,8 +874,7 @@ public class TsFileProcessor {
                             > 0
                         ? 1
                         : 0);
-            memTableIncrement +=
-                currentArrayNum * AlignedTVList.emptyValueListArrayMemCost();
+            memTableIncrement += currentArrayNum * AlignedTVList.emptyValueListArrayMemCost();
           }
         }
         int addingPointNum = addingPointNumInfo.right;
@@ -885,11 +884,11 @@ public class TsFileProcessor {
             dataTypesInTVList.addAll(alignedMemChunk.getWorkingTVList().getTsDataTypes());
           }
           dataTypesInTVList.addAll(addingPointNumInfo.left.values());
-          memTableIncrement +=
-              alignedMemChunk != null
-                  ? alignedMemChunk.getWorkingTVList().alignedTvListArrayMemCost()
-                  : AlignedTVList.alignedTvListArrayMemCost(
-                      dataTypesInTVList.toArray(new TSDataType[0]), null);
+          //          memTableIncrement +=
+          //              alignedMemChunk != null
+          //                  ? alignedMemChunk.getWorkingTVList().alignedTvListArrayMemCost()
+          //                  : AlignedTVList.alignedTvListArrayMemCost(
+          //                      dataTypesInTVList.toArray(new TSDataType[0]), null);
         }
         addingPointNumInfo.setRight(addingPointNum + 1);
       }
@@ -1066,6 +1065,7 @@ public class TsFileProcessor {
       AlignedWritableMemChunk alignedMemChunk = (AlignedWritableMemChunk) memChunk;
       int currentPointNum = alignedMemChunk.alignedListSize();
       int newPointNum = currentPointNum + incomingPointNum;
+      List<String> insertingMeasurements = new ArrayList<>();
       List<TSDataType> insertingTypes = new ArrayList<>();
       for (int i = 0; i < dataTypes.length; i++) {
         TSDataType dataType = dataTypes[i];
@@ -1077,6 +1077,7 @@ public class TsFileProcessor {
             || (columnCategories != null && columnCategories[i] != TsTableColumnCategory.FIELD)) {
           continue;
         }
+        insertingMeasurements.add(measurement);
         insertingTypes.add(dataType);
 
         if (!alignedMemChunk.containsMeasurement(measurementIds[i])) {
@@ -1098,9 +1099,13 @@ public class TsFileProcessor {
 
       if (acquireArray != 0) {
         // memory of extending the TVList
-        memIncrements[0] += acquireArray * alignedMemChunk.getWorkingTVList().alignedTvListArrayMemCost(insertingTypes);
+        memIncrements[0] +=
+            acquireArray
+                * alignedMemChunk.getTvListArrayMemCostIncrement1(
+                    insertingMeasurements, insertingTypes);
       } else {
-
+        memIncrements[0] +=
+            alignedMemChunk.getTvListArrayMemCostIncrement(insertingMeasurements, insertingTypes);
       }
     }
 
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java
index 996eb1282a8..2f346de64a2 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java
@@ -528,10 +528,18 @@ public abstract class AlignedTVList extends TVList {
     return columnBitMaps.get(arrayIndex).isMarked(elementIndex);
   }
 
+  public List<List<Object>> getValues() {
+    return values;
+  }
+
   public List<TSDataType> getTsDataTypes() {
     return dataTypes;
   }
 
+  public List<int[]> getIndices() {
+    return indices;
+  }
+
   @Override
   public int delete(long lowerBound, long upperBound) {
     int deletedNumber = 0;
@@ -983,7 +991,9 @@ public abstract class AlignedTVList extends TVList {
 
   @Override
   public long calculateRamSize() {
-    return timestamps.size() * alignedTvListArrayMemCost();
+    //    return timestamps.size() * alignedTvListArrayMemCost();
+    // FIXME:(Haonan)
+    return 0;
   }
 
   /**
@@ -1030,12 +1040,14 @@ public abstract class AlignedTVList extends TVList {
     for (int column = 0; column < dataTypes.size(); column++) {
       TSDataType type = dataTypes.get(column);
       if (type != null) {
-        size += (long) PrimitiveArrayManager.ARRAY_SIZE * (long) type.getDataTypeSize();
         if (bitMaps != null && bitMaps.get(column) != null) {
           size += (long) PrimitiveArrayManager.ARRAY_SIZE / 8 + 1;
         }
       }
     }
+    for (TSDataType type : insertingTypes) {
+      size += (long) PrimitiveArrayManager.ARRAY_SIZE * (long) type.getDataTypeSize();
+    }
     // size is 0 when all types are null
     if (size == 0) {
       return size;
@@ -1045,7 +1057,7 @@ public abstract class AlignedTVList extends TVList {
     // index array mem size
     size += (indices != null) ? PrimitiveArrayManager.ARRAY_SIZE * 4L : 0;
     // array headers mem size
-    size += (long) NUM_BYTES_ARRAY_HEADER * (2 + dataTypes.size());
+    size += (long) NUM_BYTES_ARRAY_HEADER * (2 + insertingTypes.size());
     // Object references size in ArrayList
     size += (long) NUM_BYTES_OBJECT_REF * (2 + dataTypes.size());
     return size;


(iotdb) 05/06: dev

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch opt_aligned_tvlist
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit c186fd4300a1494b9a8fea72f150be6ec5ae39a0
Author: HTHou <ha...@apache.org>
AuthorDate: Mon Sep 1 19:03:28 2025 +0800

    dev
---
 .../iotdb/AlignedTimeseriesSessionExample.java     | 87 ++++++++++++++--------
 .../dataregion/memtable/AbstractMemTable.java      |  1 +
 .../memtable/AlignedWritableMemChunk.java          |  9 +--
 .../dataregion/memtable/TsFileProcessor.java       | 19 +++--
 4 files changed, 67 insertions(+), 49 deletions(-)

diff --git a/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java b/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java
index 288bd65ddcb..84e570bef23 100644
--- a/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/AlignedTimeseriesSessionExample.java
@@ -63,45 +63,45 @@ public class AlignedTimeseriesSessionExample {
     // set session fetchSize
     session.setFetchSize(10000);
 
-    //    createTemplate();
-    createAlignedTimeseries();
-    createAlignedTimeseriesWithNullPartical();
-
-    insertAlignedRecord();
+    //    //    createTemplate();
+    //    createAlignedTimeseries();
+    //    createAlignedTimeseriesWithNullPartical();
+    //
+    //    insertAlignedRecord();
     //    insertAlignedRecords();
     //    insertAlignedRecordsOfOneDevice();
 
     //    insertAlignedStringRecord();
     //    insertAlignedStringRecords();
 
-    //    insertTabletWithAlignedTimeseriesMethod1();
+    insertTabletWithAlignedTimeseriesMethod1();
     //    insertTabletWithAlignedTimeseriesMethod2();
     //    insertNullableTabletWithAlignedTimeseries();
     //    insertTabletsWithAlignedTimeseries();
-    session.executeNonQueryStatement(FLUSH);
-    selectTest();
-    selectWithValueFilterTest();
-    selectWithLastTest();
-    selectWithLastTestWithoutValueFilter();
-    session.executeNonQueryStatement("delete from root.sg_1.d1.s1 where time <= 5");
-    System.out.println("execute sql delete from root.sg_1.d1.s1 where time <= 5");
-    selectTest();
-    selectWithValueFilterTest();
-    selectWithLastTest();
-    selectWithLastTestWithoutValueFilter();
-    session.executeNonQueryStatement("delete from root.sg_1.d1.s2 where time <= 3");
-    System.out.println("execute sql delete from root.sg_1.d1.s2 where time <= 3");
-
-    selectTest();
-    selectWithValueFilterTest();
-    selectWithLastTest();
-    selectWithLastTestWithoutValueFilter();
-    session.executeNonQueryStatement("delete from root.sg_1.d1.s1 where time <= 10");
-    System.out.println("execute sql delete from root.sg_1.d1.s1 where time <= 10");
-    selectTest();
-    selectWithValueFilterTest();
-    selectWithLastTest();
-    selectWithLastTestWithoutValueFilter();
+    //    session.executeNonQueryStatement(FLUSH);
+    //    selectTest();
+    //    selectWithValueFilterTest();
+    //    selectWithLastTest();
+    //    selectWithLastTestWithoutValueFilter();
+    //    session.executeNonQueryStatement("delete from root.sg_1.d1.s1 where time <= 5");
+    //    System.out.println("execute sql delete from root.sg_1.d1.s1 where time <= 5");
+    //    selectTest();
+    //    selectWithValueFilterTest();
+    //    selectWithLastTest();
+    //    selectWithLastTestWithoutValueFilter();
+    //    session.executeNonQueryStatement("delete from root.sg_1.d1.s2 where time <= 3");
+    //    System.out.println("execute sql delete from root.sg_1.d1.s2 where time <= 3");
+    //
+    //    selectTest();
+    //    selectWithValueFilterTest();
+    //    selectWithLastTest();
+    //    selectWithLastTestWithoutValueFilter();
+    //    session.executeNonQueryStatement("delete from root.sg_1.d1.s1 where time <= 10");
+    //    System.out.println("execute sql delete from root.sg_1.d1.s1 where time <= 10");
+    //    selectTest();
+    //    selectWithValueFilterTest();
+    //    selectWithLastTest();
+    //    selectWithLastTestWithoutValueFilter();
 
     //    selectWithValueFilterTest();
     //    selectWithGroupByTest();
@@ -347,7 +347,6 @@ public class AlignedTimeseriesSessionExample {
     // only measurementId and data type in MeasurementSchema take effects in Tablet
     List<IMeasurementSchema> schemaList = new ArrayList<>();
     schemaList.add(new MeasurementSchema("s1", TSDataType.INT64));
-    schemaList.add(new MeasurementSchema("s2", TSDataType.INT32));
 
     Tablet tablet = new Tablet(ROOT_SG1_D1, schemaList);
     long timestamp = 1;
@@ -357,8 +356,30 @@ public class AlignedTimeseriesSessionExample {
       tablet.addTimestamp(rowIndex, timestamp);
       tablet.addValue(
           schemaList.get(0).getMeasurementName(), rowIndex, new SecureRandom().nextLong());
+
+      if (tablet.getRowSize() == tablet.getMaxRowNumber()) {
+        session.insertAlignedTablet(tablet, true);
+        tablet.reset();
+      }
+      timestamp++;
+    }
+
+    if (tablet.getRowSize() != 0) {
+      session.insertAlignedTablet(tablet);
+      tablet.reset();
+    }
+
+    schemaList = new ArrayList<>();
+    schemaList.add(new MeasurementSchema("s2", TSDataType.INT32));
+
+    tablet = new Tablet(ROOT_SG1_D1, schemaList);
+    timestamp = 1;
+
+    for (long row = 1; row < 100; row++) {
+      int rowIndex = tablet.getRowSize();
+      tablet.addTimestamp(rowIndex, timestamp);
       tablet.addValue(
-          schemaList.get(1).getMeasurementName(), rowIndex, new SecureRandom().nextInt());
+          schemaList.get(0).getMeasurementName(), rowIndex, new SecureRandom().nextInt());
 
       if (tablet.getRowSize() == tablet.getMaxRowNumber()) {
         session.insertAlignedTablet(tablet, true);
@@ -372,7 +393,7 @@ public class AlignedTimeseriesSessionExample {
       tablet.reset();
     }
 
-    session.executeNonQueryStatement(FLUSH);
+    //    session.executeNonQueryStatement(FLUSH);
   }
 
   /** Method 2 for insert tablet with aligned timeseries */
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AbstractMemTable.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AbstractMemTable.java
index f2f4d5e2943..72c673831bc 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AbstractMemTable.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AbstractMemTable.java
@@ -787,6 +787,7 @@ public abstract class AbstractMemTable implements IMemTable {
   @Override
   public void addTVListRamCost(long cost) {
     this.tvListRamCost += cost;
+    System.out.println(tvListRamCost);
   }
 
   @Override
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
index d7b7b4b027c..a48692ba737 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/AlignedWritableMemChunk.java
@@ -867,14 +867,11 @@ public class AlignedWritableMemChunk extends AbstractWritableMemChunk {
   public long getTvListArrayMemCostIncrement1(
       List<String> insertingMeasurements, List<TSDataType> insertingTypes) {
     long size = 0;
-    List<BitMap> bitMaps = list.getBitMap();
+    List<List<BitMap>> bitMaps = list.getBitMaps();
     // value & bitmap array mem size
     for (int column = 0; column < dataTypes.size(); column++) {
-      TSDataType type = dataTypes.get(column);
-      if (type != null) {
-        if (bitMaps != null && bitMaps.get(column) != null) {
-          size += (long) PrimitiveArrayManager.ARRAY_SIZE / 8 + 1;
-        }
+      if (bitMaps != null && bitMaps.get(column) != null) {
+        size += (long) PrimitiveArrayManager.ARRAY_SIZE / 8 + 1;
       }
     }
     int newMeasurementCount = 0;
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
index d28880fd4cf..67ae375b15a 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
@@ -1065,6 +1065,14 @@ public class TsFileProcessor {
       AlignedWritableMemChunk alignedMemChunk = (AlignedWritableMemChunk) memChunk;
       int currentPointNum = alignedMemChunk.alignedListSize();
       int newPointNum = currentPointNum + incomingPointNum;
+      // calculate how many new arrays will be added after this insertion
+      int currentArrayCnt =
+          currentPointNum / PrimitiveArrayManager.ARRAY_SIZE
+              + (currentPointNum % PrimitiveArrayManager.ARRAY_SIZE > 0 ? 1 : 0);
+      int newArrayCnt =
+          newPointNum / PrimitiveArrayManager.ARRAY_SIZE
+              + (newPointNum % PrimitiveArrayManager.ARRAY_SIZE > 0 ? 1 : 0);
+      long acquireArray = newArrayCnt - currentArrayCnt;
       List<String> insertingMeasurements = new ArrayList<>();
       List<TSDataType> insertingTypes = new ArrayList<>();
       for (int i = 0; i < dataTypes.length; i++) {
@@ -1083,20 +1091,11 @@ public class TsFileProcessor {
         if (!alignedMemChunk.containsMeasurement(measurementIds[i])) {
           // add a new column in the TVList, the new column should be as long as existing ones
           memIncrements[0] +=
-              (currentPointNum / PrimitiveArrayManager.ARRAY_SIZE + 1)
+              newArrayCnt
                   * AlignedTVList.emptyValueListArrayMemCost();
         }
       }
 
-      // calculate how many new arrays will be added after this insertion
-      int currentArrayCnt =
-          currentPointNum / PrimitiveArrayManager.ARRAY_SIZE
-              + (currentPointNum % PrimitiveArrayManager.ARRAY_SIZE > 0 ? 1 : 0);
-      int newArrayCnt =
-          newPointNum / PrimitiveArrayManager.ARRAY_SIZE
-              + (newPointNum % PrimitiveArrayManager.ARRAY_SIZE > 0 ? 1 : 0);
-      long acquireArray = newArrayCnt - currentArrayCnt;
-
       if (acquireArray != 0) {
         // memory of extending the TVList
         memIncrements[0] +=


(iotdb) 02/06: Merge branch 'master' of github.com:apache/iotdb into opt_aligned_tvlist

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch opt_aligned_tvlist
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 504e5b3532a8ffaadf20fc523056d83a24a7a718
Merge: cdac597412b 51fe585dfcd
Author: HTHou <ha...@apache.org>
AuthorDate: Wed Aug 27 10:58:38 2025 +0800

    Merge branch 'master' of github.com:apache/iotdb into opt_aligned_tvlist

 .../it/env/cluster/config/MppCommonConfig.java     |  12 +
 .../env/cluster/config/MppSharedCommonConfig.java  |  13 +
 .../iotdb/it/env/cluster/env/AbstractEnv.java      |  37 +-
 .../it/env/remote/config/RemoteCommonConfig.java   |  10 +
 .../iotdb/it/env/remote/env/RemoteServerEnv.java   |   6 +
 .../java/org/apache/iotdb/itbase/env/BaseEnv.java  |  13 +
 .../org/apache/iotdb/itbase/env/CommonConfig.java  |   4 +
 ...T.java => IoTDBPartitionInheritStrategyIT.java} |   4 +-
 .../partition/IoTDBPartitionShuffleStrategyIT.java | 140 ++++
 ...IoTDBRegionOperationReliabilityITFramework.java |   5 +-
 .../IoTDBRegionMigrateDataNodeCrashForIoTV1IT.java |  15 +-
 ...BRegionMigrateDataNodeCrashForIoTV2BatchIT.java |  13 +-
 ...RegionMigrateDataNodeCrashForIoTV2StreamIT.java |  13 +-
 .../IoTDBRegionMigrateClusterCrashIoTV1IT.java     |   3 +-
 ...IoTDBRegionMigrateClusterCrashIoTV2BatchIT.java |   6 +-
 ...DBRegionMigrateConfigNodeCrashIoTV2BatchIT.java |   9 +-
 ...oTDBRegionMigrateClusterCrashIoTV2StreamIT.java |   9 +-
 ...BRegionMigrateConfigNodeCrashIoTV2StreamIT.java |   9 +-
 .../iotdb/db/it/IoTDBCustomizedClusterIT.java      |  22 +-
 .../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java  |  83 ++
 .../iotdb/db/it/auth/IoTDBGrantOptionIT.java       |  81 ++
 .../manual/enhanced/IoTDBPipeMetaIT.java           |  25 +-
 .../auto/enhanced/IoTDBPipeSinkCompressionIT.java  |  22 +-
 .../it/insertquery/IoTDBInsertQueryIT.java         |  33 +
 .../it/query/recent/IoTDBTableAggregationIT.java   |  52 ++
 .../org/apache/iotdb/tool/common/Constants.java    |   2 +
 .../iotdb/tool/schema/ExportSchemaTable.java       |  44 +-
 .../client-cpp/src/example/MultiSvrNodeClient.cpp  | 147 ++++
 .../client-cpp/src/main/AbstractSessionBuilder.h   |   4 +
 iotdb-client/client-cpp/src/main/Common.cpp        |  44 +
 iotdb-client/client-cpp/src/main/Common.h          |  18 +
 iotdb-client/client-cpp/src/main/NodesSupplier.cpp | 100 +--
 iotdb-client/client-cpp/src/main/NodesSupplier.h   |   1 +
 iotdb-client/client-cpp/src/main/Session.cpp       |  86 +-
 iotdb-client/client-cpp/src/main/Session.h         |  14 +-
 .../{TableSessionBuilder.h => SessionBuilder.h}    |  68 +-
 .../client-cpp/src/main/SessionConnection.cpp      |   2 +
 .../client-cpp/src/main/SessionConnection.h        |   3 +-
 .../client-cpp/src/main/TableSessionBuilder.h      |   4 +
 iotdb-client/client-cpp/src/test/cpp/sessionIT.cpp |  96 +++
 .../src/test/cpp/sessionRelationalIT.cpp           |  24 +
 .../{scheduler => dispatcher}/__init__.py          |   0
 .../abstract_dispatcher.py}                        |  26 +
 .../core/inference/dispatcher/basic_dispatcher.py  |  60 ++
 .../core/inference/inference_request_pool.py       |  12 +-
 .../ainode/core/inference/pool_controller.py       | 155 ++--
 ...ference_request_pool_group.py => pool_group.py} |  32 +-
 .../ainode/ainode/core/inference/pool_scheduler.py | 125 ---
 .../{scheduler => pool_scheduler}/__init__.py      |   0
 .../pool_scheduler/abstract_pool_scheduler.py      |  56 ++
 .../pool_scheduler/basic_pool_scheduler.py         |  59 ++
 .../ainode/core/inference/request_controller.py    |  89 --
 .../{scheduler => request_scheduler}/__init__.py   |   0
 .../abstract_request_scheduler.py}                 |   2 +-
 .../basic_request_scheduler.py}                    |   9 +-
 .../ainode/core/manager/inference_manager.py       |  56 +-
 iotdb-core/ainode/ainode/core/manager/utils.py     |   8 +-
 .../async/handlers/rpc/PipePushMetaRPCHandler.java |   2 +-
 .../iotdb/confignode/conf/ConfigNodeConfig.java    |  10 +
 .../confignode/conf/ConfigNodeDescriptor.java      |   4 +
 .../confignode/conf/SystemPropertiesUtils.java     |  12 +-
 .../exception/NoAvailableRegionGroupException.java |  14 +-
 .../manager/load/balancer/PartitionBalancer.java   | 194 +++--
 .../manager/partition/PartitionManager.java        |   2 +-
 .../runtime/heartbeat/PipeHeartbeatParser.java     |   2 +-
 .../confignode/persistence/pipe/PipeTaskInfo.java  |   2 +-
 .../confignode/procedure/ProcedureExecutor.java    |   7 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  20 +
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  13 +
 .../agent/runtime/PipeDataNodeRuntimeAgent.java    |   7 +-
 .../scan/TsFileInsertionEventScanParser.java       |  45 +-
 .../table/TsFileInsertionEventTableParser.java     |  15 +-
 ...ileInsertionEventTableParserTabletIterator.java |  45 +-
 .../processor/aggregate/AggregateProcessor.java    |   5 +-
 .../pipeconsensus/PipeConsensusReceiver.java       | 114 ++-
 .../visitor/PipePlanToStatementVisitor.java        |   6 +-
 .../resource/memory/InsertNodeMemoryEstimator.java |  10 +-
 .../source/dataregion/IoTDBDataRegionSource.java   |  16 +-
 .../listener/PipeInsertionDataNodeListener.java    |   5 +-
 .../matcher/CachedSchemaPatternMatcher.java        | 180 ++--
 .../db/pipe/source/mqtt/MQTTPublishHandler.java    |  21 +-
 .../iotdb/db/pipe/source/mqtt/MQTTSource.java      | 102 ++-
 .../protocol/rest/v2/impl/RestApiServiceImpl.java  |  43 +-
 .../protocol/thrift/impl/ClientRPCServiceImpl.java |  10 +
 .../db/queryengine/common/MPPQueryContext.java     |   7 +-
 .../queryengine/execution/driver/DataDriver.java   |  44 +-
 .../fragment/FakedFragmentInstanceContext.java     |   5 +-
 .../fragment/FragmentInstanceContext.java          | 244 ++++--
 .../fragment/FragmentInstanceExecution.java        |   4 +-
 .../InformationSchemaContentSupplierFactory.java   | 193 ++---
 .../AbstractApproxPercentileAccumulator.java       | 164 ++++
 .../relational/aggregation/AccumulatorFactory.java |  14 +
 .../aggregation/ApproxPercentileAccumulator.java   | 119 +++
 .../ApproxPercentileWithWeightAccumulator.java     | 125 +++
 .../aggregation/approximate/TDigest.java           | 915 +++++++++++++++++++++
 ...AbstractGroupedApproxPercentileAccumulator.java | 149 ++++
 .../GroupedApproxCountDistinctAccumulator.java     |  12 +-
 .../GroupedApproxPercentileAccumulator.java        | 144 ++++
 ...oupedApproxPercentileWithWeightAccumulator.java | 149 ++++
 .../aggregation/grouped/array/TDigestBigArray.java |  75 ++
 .../queryengine/metric/QueryResourceMetricSet.java |  26 +-
 .../iotdb/db/queryengine/plan/Coordinator.java     |  69 +-
 .../db/queryengine/plan/analyze/Analysis.java      |   3 +-
 .../queryengine/plan/analyze/PredicateUtils.java   |  11 +-
 .../cache/schema/DataNodeDevicePathCache.java      |   3 -
 .../db/queryengine/plan/parser/ASTVisitor.java     |  11 +
 .../plan/planner/TableOperatorGenerator.java       |  17 +-
 .../plan/planner/distribution/SourceRewriter.java  |  15 +-
 .../plan/node/pipe/PipeEnrichedDeleteDataNode.java |  14 +-
 .../relational/metadata/TableMetadataImpl.java     |  37 +
 .../relational/planner/TableLogicalPlanner.java    |  47 +-
 .../distribute/TableDistributedPlanGenerator.java  |   1 +
 .../plan/relational/planner/node/IntoNode.java     |  40 +-
 .../optimizations/UnaliasSymbolReferences.java     |  11 +-
 .../plan/relational/sql/ast/Delete.java            |   3 +-
 .../plan/relational/sql/parser/AstBuilder.java     |  15 +
 .../FragmentInstanceStatisticsDrawer.java          |  11 +
 .../db/storageengine/dataregion/DataRegion.java    | 428 +++++++---
 .../dataregion/IDataRegionForQuery.java            |  29 +-
 .../dataregion/VirtualDataRegion.java              |  36 +-
 .../execute/utils/CompactionPathUtils.java         |  23 +-
 .../memtable/AbstractWritableMemChunk.java         |  11 +
 .../dataregion/memtable/TsFileProcessor.java       |  65 +-
 .../dataregion/tsfile/TsFileManager.java           |  43 +-
 .../dataregion/tsfile/TsFileResource.java          |   3 +-
 .../db/storageengine/load/LoadTsFileManager.java   |  60 +-
 .../load/splitter/AlignedChunkData.java            |   7 +-
 .../load/splitter/NonAlignedChunkData.java         |   4 +
 .../iotdb/db/utils/constant/SqlConstant.java       |   1 +
 .../db/utils/datastructure/AlignedTVList.java      | 156 +++-
 .../db/queryengine/execution/DataDriverTest.java   |  15 +-
 .../planner/node/process/IntoNodeSerdeTest.java    |   4 +
 .../apache/iotdb/commons/conf/CommonConfig.java    |  40 +-
 .../iotdb/commons/conf/CommonDescriptor.java       |   4 +
 .../task/progress/interval/PipeCommitInterval.java |   6 +-
 .../iotdb/commons/pipe/config/PipeConfig.java      |  14 +-
 .../iotdb/commons/pipe/config/PipeDescriptor.java  |  14 +-
 .../pipe/config/constant/PipeSourceConstant.java   |   3 +-
 .../pipe/datastructure/interval/Interval.java      |   6 +-
 .../datastructure/interval/IntervalManager.java    |  13 +-
 .../datastructure/pattern/IoTDBTreePattern.java    |  23 +-
 .../TableBuiltinAggregationFunction.java           |   4 +-
 .../apache/iotdb/commons/utils/StatusUtils.java    |  18 +-
 .../thrift-commons/src/main/thrift/common.thrift   |   3 +-
 .../src/main/thrift/datanode.thrift                |   1 +
 pom.xml                                            |   2 +-
 146 files changed, 5307 insertions(+), 1317 deletions(-)



(iotdb) 01/06: deving

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch opt_aligned_tvlist
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit cdac597412baef19e75c35100cd73dc716563c61
Author: HTHou <ha...@apache.org>
AuthorDate: Fri Aug 22 17:32:45 2025 +0800

    deving
---
 .../dataregion/memtable/TsFileProcessor.java              | 13 ++++++++-----
 .../iotdb/db/utils/datastructure/AlignedTVList.java       | 15 +++++----------
 2 files changed, 13 insertions(+), 15 deletions(-)

diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
index 35651499b91..c66a0f7091e 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
@@ -788,7 +788,7 @@ public class TsFileProcessor {
                   + (alignedMemChunk.alignedListSize() % PrimitiveArrayManager.ARRAY_SIZE > 0
                       ? 1
                       : 0);
-          memTableIncrement += currentArrayNum * AlignedTVList.valueListArrayMemCost(dataTypes[i]);
+          memTableIncrement += currentArrayNum * AlignedTVList.emptyValueListArrayMemCost();
         }
       }
       // this insertion will result in a new array
@@ -875,7 +875,7 @@ public class TsFileProcessor {
                         ? 1
                         : 0);
             memTableIncrement +=
-                currentArrayNum * AlignedTVList.valueListArrayMemCost(dataTypes[i]);
+                currentArrayNum * AlignedTVList.emptyValueListArrayMemCost();
           }
         }
         int addingPointNum = addingPointNumInfo.right;
@@ -1066,6 +1066,7 @@ public class TsFileProcessor {
       AlignedWritableMemChunk alignedMemChunk = (AlignedWritableMemChunk) memChunk;
       int currentPointNum = alignedMemChunk.alignedListSize();
       int newPointNum = currentPointNum + incomingPointNum;
+      List<TSDataType> insertingTypes = new ArrayList<>();
       for (int i = 0; i < dataTypes.length; i++) {
         TSDataType dataType = dataTypes[i];
         String measurement = measurementIds[i];
@@ -1076,12 +1077,13 @@ public class TsFileProcessor {
             || (columnCategories != null && columnCategories[i] != TsTableColumnCategory.FIELD)) {
           continue;
         }
+        insertingTypes.add(dataType);
 
         if (!alignedMemChunk.containsMeasurement(measurementIds[i])) {
           // add a new column in the TVList, the new column should be as long as existing ones
           memIncrements[0] +=
               (currentPointNum / PrimitiveArrayManager.ARRAY_SIZE + 1)
-                  * AlignedTVList.valueListArrayMemCost(dataType);
+                  * AlignedTVList.emptyValueListArrayMemCost();
         }
       }
 
@@ -1096,8 +1098,9 @@ public class TsFileProcessor {
 
       if (acquireArray != 0) {
         // memory of extending the TVList
-        memIncrements[0] +=
-            acquireArray * alignedMemChunk.getWorkingTVList().alignedTvListArrayMemCost();
+        memIncrements[0] += acquireArray * alignedMemChunk.getWorkingTVList().alignedTvListArrayMemCost(insertingTypes);
+      } else {
+
       }
     }
 
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java
index a4d967d1f93..00c171f136e 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/AlignedTVList.java
@@ -975,7 +975,7 @@ public abstract class AlignedTVList extends TVList {
    *
    * @return AlignedTvListArrayMemSize
    */
-  public long alignedTvListArrayMemCost() {
+  public long alignedTvListArrayMemCost(List<TSDataType> insertingTypes) {
     long size = 0;
     // value & bitmap array mem size
     for (int column = 0; column < dataTypes.size(); column++) {
@@ -1003,19 +1003,14 @@ public abstract class AlignedTVList extends TVList {
   }
 
   /**
-   * Get the single column array mem cost by give type.
+   * Get the single empty column array mem cost.
    *
-   * @param type the type of the value column
-   * @return valueListArrayMemCost
+   * @return emptyValueListArrayMemCost
    */
-  public static long valueListArrayMemCost(TSDataType type) {
+  public static long emptyValueListArrayMemCost() {
     long size = 0;
-    // value array mem size
-    size += (long) PrimitiveArrayManager.ARRAY_SIZE * (long) type.getDataTypeSize();
     // bitmap array mem size
-    size += (long) PrimitiveArrayManager.ARRAY_SIZE / 8 + 1;
-    // array headers mem size
-    size += NUM_BYTES_ARRAY_HEADER;
+    size += PrimitiveArrayManager.ARRAY_SIZE / 8 + 1;
     // Object references size in ArrayList
     size += NUM_BYTES_OBJECT_REF;
     return size;


(iotdb) 04/06: Merge branch 'master' of github.com:apache/iotdb into opt_aligned_tvlist

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch opt_aligned_tvlist
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 51edae5795b6b46c55c3084732f7a7e71c2d7e3a
Merge: ead01cd0a4c b1ab9b3eb97
Author: HTHou <ha...@apache.org>
AuthorDate: Wed Aug 27 17:20:40 2025 +0800

    Merge branch 'master' of github.com:apache/iotdb into opt_aligned_tvlist

 .../it/env/cluster/config/MppCommonConfig.java     |   6 -
 .../env/cluster/config/MppSharedCommonConfig.java  |   7 -
 .../it/env/remote/config/RemoteCommonConfig.java   |   5 -
 .../org/apache/iotdb/itbase/env/CommonConfig.java  |   2 -
 .../relational/it/query/recent/IoTDBCteIT.java     | 332 +++++++++++++++++++++
 .../response/pipe/task/PipeTableResp.java          |  11 +-
 .../agent/runtime/PipeConfigNodeRuntimeAgent.java  |  11 +-
 .../pipe/agent/task/PipeConfigNodeSubtask.java     |  51 ++--
 .../pipe/agent/task/PipeConfigNodeTaskAgent.java   |  11 +-
 .../pipe/agent/task/PipeConfigNodeTaskBuilder.java |   6 +-
 .../PipeConfigPhysicalPlanTSStatusVisitor.java     |   1 +
 .../pipe/source/IoTDBConfigRegionSource.java       |   2 +-
 .../confignode/persistence/pipe/PipeInfo.java      |  10 +-
 .../confignode/persistence/pipe/PipeTaskInfo.java  |  16 +-
 .../impl/pipe/AbstractOperatePipeProcedureV2.java  |   4 +-
 .../impl/pipe/runtime/PipeMetaSyncProcedure.java   |   4 +-
 .../impl/pipe/task/CreatePipeProcedureV2.java      |   4 +-
 .../pipe/util/PipeExternalSourceLoadBalancer.java  |   2 +-
 .../org/apache/iotdb/db/conf/IoTDBStartCheck.java  |  61 +++-
 .../db/pipe/agent/task/PipeDataNodeTaskAgent.java  |  19 +-
 .../agent/task/builder/PipeDataNodeBuilder.java    |   2 +-
 .../task/builder/PipeDataNodeTaskBuilder.java      |   6 +-
 .../pipe/agent/task/stage/PipeTaskSourceStage.java |   9 +-
 .../agent/task/subtask/sink/PipeSinkSubtask.java   |  66 ++--
 .../task/subtask/sink/PipeSinkSubtaskManager.java  |   6 +-
 ...istoricalDataRegionTsFileAndDeletionSource.java |   6 +-
 .../PipeRealtimeDataRegionHybridSource.java        |   1 +
 .../realtime/PipeRealtimeDataRegionLogSource.java  |   1 +
 .../realtime/PipeRealtimeDataRegionSource.java     |  21 +-
 .../PipeRealtimeDataRegionTsFileSource.java        |   2 +
 .../dataregion/realtime/epoch/TsFileEpoch.java     |  28 +-
 .../realtime/epoch/TsFileEpochManager.java         |   3 -
 .../db/pipe/source/mqtt/MQTTPublishHandler.java    |   4 +-
 .../iotdb/db/pipe/source/mqtt/MQTTSource.java      |   6 +-
 .../config/executor/ClusterConfigTaskExecutor.java |  14 +-
 .../relational/analyzer/StatementAnalyzer.java     |  15 +-
 .../plan/relational/planner/RelationPlanner.java   |  23 ++
 .../iotdb/db/service/DataNodeShutdownHook.java     |   4 +
 .../subtask/SubscriptionSinkSubtaskManager.java    |   2 +-
 .../agent/plugin/PipeDataNodePluginAgentTest.java  |   4 +-
 .../db/pipe/consensus/DeletionResourceTest.java    |   4 +-
 .../pattern/CachedSchemaPatternMatcherTest.java    |   9 +-
 .../db/pipe/source/PipeRealtimeExtractTest.java    |  10 +-
 .../apache/iotdb/commons/conf/CommonConfig.java    |  12 +
 .../iotdb/commons/conf/CommonDescriptor.java       |   2 +
 .../commons/pipe/agent/plugin/PipePluginAgent.java |   8 +-
 .../commons/pipe/agent/task/PipeTaskAgent.java     |  14 +-
 .../pipe/agent/task/meta/PipeStaticMeta.java       |  58 ++--
 .../task/subtask/PipeAbstractSinkSubtask.java      |  16 +-
 ....java => PipeTaskSourceRuntimeEnvironment.java} |   9 +-
 .../iotdb/commons/pipe/source/IoTDBSource.java     |   6 +-
 51 files changed, 672 insertions(+), 264 deletions(-)