TDengine 3.4.0.0 Release Notes
Features
- feat: adapter add connector info attribute in ws connection
- feat: C websocket support ssl/tls connection params
- feat: support taosAdapter instances register and query
- feat: parse and write any JSON data to database
- feat: add rust connector benchmark tool
- feat: support taosX high-availability and Kafka task load balancing
- feat: TDgpt supports row correlation analysis functions such as dtw, dtw_path and tlcc
- feat: data transmission supports SASL mechanism and resource control [Enterprise Edition]
- feat: data storage supports full transparent encryption [Enterprise Edition]
- feat: support multi-factor authentication (MFA) and multiple login security policies [Enterprise Edition]
- feat: support RBAC-based permission architecture [Enterprise Edition]
- feat: support hierarchical auditing and permission control [Enterprise Edition]
- feat: Support SM4_ENCRYPT, SM4_DECRYPT, AES_ENCRYPT, AES_DECRYPT, MD5, SHA, SHA1, SHA2, MASK_FULL, MASK_PARTIAL, MASK_NONE, FROM_BASE64 and TO_BASE64 functions
- feat: event window triggering of stream supports sub-event windows
- feat: Explorer add support for OAuth 2.0 and OIDC SSO
- feat: taosAdapter support customized SQL rejection rules
- feat: add identity authentication functions
Enhancements
- enh: increase the maximum number of columns supported by virtual tables to 32767
- enh: prohibit sorting by aggregate functions in non-aggregate queries
- enh: state windows now support specifying a "zero state" via zeroth_state, skipping computation and output for windows in this state.
- enh: optimize the error message when taosc initialization fails due to insufficient write permissions for the log file directory
- enh: stream now supports interp and percentile functions
- enh: reduce resource consumption of trigger data and computation data reading in stream computing
- enh: prohibit the use of duplicate timestamps in state_window, count_window and event_window on super tables
- enh: improved the exit handling logic of taosmqtt to achieve a more graceful shutdown and resource release
- enh: set the global timezone to reduce lock contention related to time conversion during concurrent queries and writes
- enh: window query do not require mandatory aggregate functions, support including only pseudo-columns like _wstart and tbname
- enh: Linux tar package supports non-root installation of TDengine TSDB with custom install path
- enh: after modifying tag columns, support data subscription to take effect without reconstruction by executing the RELOAD TOPIC command
- enh: support recording operations such as query and deletion in audit logs
- enh: add the client version number field to the show connections command
- enh: add status and note fields to the ins_anodes_full table for real-time feedback on model and algorithm status
- enh: add two Hints parameters (WIN_OPTIMIZE_BATCH and WIN_OPTIMIZE_SINGLE) to improve the state window query performance of virtual tables
- enh: support encryption algorithm management [Enterprise Edition]
- enh: add clock check mechanism for communication between clusters
- enh: add support for virtual table queries in stmt2
- enh: compact command now support the force option
- enh: improve the query performance of aggregate and selection functions for virtual super tables
- enh: support for user login failure policies
- enh: optimize OPC-DA collection and auto-reconnection
- enh: execution plan supports displaying tag indexes
- enh: add the 'is_ready' column to the show vgroups command
- enh: add bool type validation during stmt2 writing
- enh: adjust the logs of stmt2 to facilitate problem troubleshooting
- enh: event window of stream generates window opening notifications only when the true_for condition is met
- enh: optimize the usage logic of read-write locks in RPC communication
- enh: return immediately when updating sub-table tags if the tag value remains unchanged, avoiding frequent updates to the sub-table set of data subscriptions
Fixes
- fix: the latest WAL version number was not used when stream triggered data recalculation, resulting in incorrect calculation results
- fix: query error when col in order by abs(col) exists in result set instead of table
- fix: the results of show create table and SELECT distinct tbname, json_tag_name are not as expected when the TAG column is of JSON type
- fix: when parsing the output table tag name in the stream creation statement, the backtick (`) was mistakenly taken as part of the column name, which did not match the column name of the table created manually via SQL, resulting in the "Out table tag type mismatch" error
- fix: resolve incorrect query results when subqueries in nested queries use descending sorting, no sorting, or sorting by non-time primary key
- fix: concurrency issue caused by modifying tdb while data subscription is in progress
- fix: OPCUA download data points not work when edit
- fix: support import alert dashboard for Grafana 12.x
- fix: the cache_load field of ins_vgroups is displayed as a negative value when it exceeds the maximum value of int32
- fix: potential crash risks during query memory control
- fix: stream fails to calculate historical data when using FILL_HISTORY
- fix: stream errors when reading data cause subsequent computing tasks to wait
- fix: no longer require sorting when the time primary key of sub-tables in JOIN syntax is a constant
- fix: Kafka extract/split with depth error
- fix: schema and tag synchronization issue when the stream result table already exists
- fix: resolve the issue of failed rawdata data subscription
- fix: Explorer upload monitor to taoskeeper by default
- fix: crash caused by excessively long table names during STMT2 automatic table creation on write
- fix: "Invalid value in client" error is triggered when querying virtual super tables
- fix: KingHistorian subscription not work
- fix: incorrect tbname processing logic when writing data via the insert into stable syntax
- fix: the issue of probabilistic failure when stream sends event notifications via WebSocket
- fix: taosX req_id can't find in other components
- fix: node.js support no timezone on window
- fix: Explorer login error without subpath
- fix: transactions cannot end when modifying global variables
- fix: latency issue in opc-ua
- fix: logic error caused by columns of multiple virtual tables using the same original table column
- fix: taosAdapter crash caused by callback function not being called after stmt query returns
- fix: taosX may cause sql too long with 100k message per row
- fix: data is written to an incorrect dnode and triggers the "Vnode is closed" error when executing insert into select statements
- fix: coredump occurs when the join query in stream subquery contains the tag==%%n condition
- fix: unexpected split result in transform
- fix: field_type error in c ws taos_stmt2_get_fields
- fix: incorrect data source was invoked when using anomaly detection in stream
- fix: the issue that query processes get stuck when both dbname and tbname are set to
?in query statements executed via stmt2 - fix: InfluxDB no tag measurements data in error
- fix: errors occurring when modifying the internal table structure concurrently during schemaless writing
- fix: incorrect results when querying with state window and partition by
- fix: errors in the outer cols function of nested queries
- fix: AVEVA Historian data in configuration error
- fix: resolve the crash issue when querying virtual tables that reference data columns of the same name but different types in sub-tables
- fix: abnormal data loading issue when upgrading from version 3.3.6.32-3.3.6.36 to 3.3.8.6-3.3.8.10
- fix: crash occurs occasionally during disk flushing for decimal-type data with NULL values when caching is enabled
- fix: client cannot perceive table schema modifications made by other clients
- fix: PI/PI-Backfill ingestion error with period sign
- fix: not found model in dsn error while creating pi tasks
- fix: taosgen coredump in case of incorrect csv format
- fix: crash occurs when stream triggers table creation without carrying written data