tencent cloud

Feedback

TXSQL Engine Kernel Version Release Notes

Last updated: 2024-12-18 11:13:40
This document presents the update notes of the TXSQL engine kernel version of TDSQL-C for MySQL.
Note:
If you need to upgrade the kernel version, see Upgrading Kernel Minor Version. If you want to learn about the release dates of each kernel version, see Kernel Overview.
TXSQL Engine 8.0 Kernel Update Notes
TXSQL Engine 5.7 Kernel Update Notes
Minor Version
Description
3.1.15.004
Note:
Starting from MySQL 8.0.29, the query results of tables in the Information Schema will use utf8mb3 instead of utf8. Versions of Connector/Net earlier than 8.0.28 do not support utf8mb3, and will throw an error if utf8mb3 is used: Character Set 'utf8mb3' is not supported by .Net Framework. If your application uses Connector/Net, upgrade Connector/Net to version 8.0.28 or later before upgrading the kernel version of TDSQL-C for MySQL. For details, see:
Feature updates
Added the query cache feature.
Bug fixes
Fixed the issue that the subscription tool using CDC for subscription may encounter the 'could not queue event from master' error when binlog checksum is enabled for some binlogs.
3.1.15.003
Note:
Starting from MySQL 8.0.29, the query results of tables in the Information Schema will use utf8mb3 instead of utf8. Versions of Connector/Net earlier than 8.0.28 do not support utf8mb3, and will throw an error if utf8mb3 is used: Character Set 'utf8mb3' is not supported by .Net Framework. If your application uses Connector/Net, upgrade Connector/Net to version 8.0.28 or later before upgrading the kernel version of TDSQL-C for MySQL. For details, see:
Feature optimizations
Accelerated the wake-up time of Serverless instances.
Bug fixes
Fixed the compatibility issue encountered by users subscribing through Flink CDC GTID, preventing errors when users subscribe to data through Flink.
Fixed the issue that executing large transaction insert operations during full-text indexing blocked other transaction writings.
Fixed the issue that the background optimize thread did not work without read-only instances during full-text indexing.
Fixed the issue that Parallel DDL crashed during execution due to single-threaded sorting being used for small index files.
3.1.15.002
Note:
Starting from MySQL 8.0.29, the query results of tables in the Information Schema will use utf8mb3 instead of utf8. Versions of Connector/Net earlier than 8.0.28 do not support utf8mb3, and will throw an error if utf8mb3 is used: Character Set 'utf8mb3' is not supported by .Net Framework. If your application uses Connector/Net, upgrade Connector/Net to version 8.0.28 or later before upgrading the kernel version of TDSQL-C for MySQL. For details, see:
Feature updates
Supported Transparent Data Encryption (TDE).
Supported the secondary cache feature.
Bug fixes
Fixed some issues related to INSTANT DDL in the MySQL community, as follows.
Fixed data corruption issues that occurred when INSTANT DDL operations were performed on tables with foreign keys after the database version was upgraded from 5.7 to 8.0.
Fixed the issue that performing INSTANT DDL operations caused the background rollback thread to crash.
Fixed the issue that INSTANT information was not recorded in redo when INSTANT was performed to modify column positions, causing errors during redo application.
Fixed the issue that instances with system tables containing instant add column in MySQL versions earlier than 8.0.29 crashed after upgrading to version 3.1.15.
Fixed the issue that parallel execution plans were not displayed when outline was enabled.
3.1.15
or 3.1.15.001
Note:
Starting from MySQL 8.0.29, the query results of tables in the Information Schema will use utf8mb3 instead of utf8. Versions of Connector/Net earlier than 8.0.28 do not support utf8mb3, and will throw an error if utf8mb3 is used: Character Set 'utf8mb3' is not supported by .Net Framework. If your application uses Connector/Net, upgrade Connector/Net to version 8.0.28 or later before upgrading the kernel version of TDSQL-C for MySQL. For details, see:
Feature Update
Added Recycle Bin feature.
Added Parallel DDL feature.
Auditing supports more accurate Sql_Type.
Auditing added fields Transaction ID and table name.
Default auditing for created accounts.
Global index feature supported.
Support for range/list secondary partitioning feature.
Support deadlock detection feature between slave worker threads and SQL threads to prevent crashes or relaylog corruption after restarting.
Support for persistent innodb update counter values.
Parallel query feature update:
Parallel execution in PS Mode.
Hash join (in memory) parallel execution.
Subquery derived table parallel execution.
Nested loop join inner table parallel execution.
Aggregation function (std, variance, var_samp, stddev_samp) parallel execution.
ROLL UP parallel execution.
EXPLAIN ANALYZE parallel.
Partition table as a parallel query table is supported.
Global aggregation optimization is supported.
Having condition push-down parallelism is supported.
Support for rewriting statements with subqueries to window functions when conditions are met.
Support for Nonblocking DDL feature.
Support for BP Isolation feature.
Added TP/AP Load Monitoring feature, allowing the inspection of rows scanned by corresponding statements.
Flashback query supports persistence.
Subquery in LIMIT is prohibited at the syntax level.
Supports Result Cache feature for correlated subqueries.
Supports converting views to CTE.
Supports column syntax.
Supports exchange subpartition template.
Issue Fixing
Optimized performance for asynchronous deletion of large tables.
Fixed an issue where binlog purge during CDC's binlog completion could cause missing slave binlog.
Fixed several instant DDL bugs.
Fixed an issue where calling update returning in a stored procedure could cause a client disconnection.
Fixed vulnerabilities in the SQL filter feature and plan equivalence judgment feature for parallel execution.
Fixed an issue where table structure changes during parallel execution could trigger a crash.
Fixed a performance degradation issue caused by using a prepare statement with WHERE column IN (list).
Fixed a primary key conflict issue when using Parallel Copy DDL with changes that include auto-increment columns.
Fixed a mutex conflict issue during binlog commits under high concurrency.
Optimized the severe performance degradation issue in thread pool mode when the configured thread_pool_size is small.
Optimized the performance regression issue caused by disabling eq_ref cache in outer joins.
Fixed the assertion failure issue during Transaction rollback in Parallel Copy DDL.
Fixed the issue where EXPLAIN FORMAT=TREE does not print subqueries in HashJoin conditions,Official bug.
Fixed the Query Result Error caused by index merge intersect.
Fixed an issue where cross-machine statistics collection could block the shutdown process.
Fixed an issue with check index holding a large number of page locks.
Fixed the partition process exit issue in parallel queries with empty range.
Fixed the upper limit overflow issue of Txsql_optimzier_context_prealloc_size to 0,Official bug.
Fixed the performance issue of thread pool affected by the pfs_thread_setname function.
Fixed the issue where partition_id overflow causes truncate partition crash.
Fixed the issue where related subquery references in parallel query to worker table fields lead to query result errors.
Fixed the issue of retrieving the wrong offset in parallel DDL.
Fixed the issue where adding a unique key to a column with duplicate data in parallel DDL causes a crash.
Fixed the issue of parallel hash join debug assertion failure.
Fixed the issue of NDV being 0 in parallel query cost calculation.
Fixed the issue where creating an index fails with innodb_disable_sort_file_cache enabled in parallel DDL.
Fixed the issue where exchange id is not reset when executing Prepare statement in parallel query.
Fixed the issue where FORCE INDEX ORDER BY statement skips index dive, Official Bug#34976138.
Fixed the issue of duplicate display in official subquery plan, Official Bug#112345.
Fixed the issue where the disk write temporary table count does not increase, Official Bug#112556.
Fixed the deadlock issue caused by concurrent execution of change user and show processlist in the database proxy.
3.1.14
Feature updates
Supported Columnar Storage Index(CSI) (in regional grayscale release), which uses the columnar data format for storing, searching, and managing data, achieving better query performance and higher data compression rates.
Supported enhanced parallel query features: parallel subqueries, rollup, Nested-Loop Join (NLJ) inner table parallelism, and in-mem hash join parallelism.
Bug Fixes
Fixed the issue of RO crash caused by DDL operations on partition tables.
Fixed the issue of garbled characters when a rotate event checksum is received during CDC subscription.
Fixed the issue of precision loss when {} is used to directly insert a JSON string.
3.1.13
Performance optimizations
Optimized the issue of slow data access due to low cyclic efficiency in full table scan.
Optimized the issue of decreased large query scan performance in concurrent scenarios.
Bug Fixes
Fixed the issue of CPU occupancy after the database auditing feature is enabled.
Fixed the issue of duplicate doc IDs in full-text indexes.
Fixed the issue of read-only instance deadlock caused by full-text indexes in certain scenarios.
Fixed the issue of read-only instance crash caused by DDL operations on partition tables.
Fixed some official bugs as follows:
Fixed bugs related to json prepare: Bug #101284.
Fixed bugs related to sort buffer size: Bug #32738705, Bug #33501541.
Fixed bugs related to temporary table index scan: Bug #33700735.
Fixed bugs related to subquery: Bug #31216115, Bug #31946448, Bug #32813547, Bug #32813554.
Fixed some segmentation faults: Bug #32813554, Bug #32813547.
3.1.12
Feature Updates
Enhanced visibility in slow logs, now including metrics on storage layer network IO traffic, execution time, frequency, and transaction commit latency. For details,see Querying and Downloading Slow Logs.
Database auditing supported the addition of transaction ID fields and table names.
Supports the BLACKHOLE storage engine (ENGINE = BLACKHOLE;).
Supports the default algorithms for DDL execution (inplace/instant), which is configurable via the innodb_alter_table_default_algorithm parameter.
Performance Optimization
Large transaction commit binlog optimization: Large transaction logs are first written to a temporary file, which is then renamed the next binlog to reduce the time used by large transactions blocking other transactions.
Binlog write optimization: Supports the conversion of row-format binlogs to statement-format binlogs, with regular expression filtering for effective databases and tables.
Enhanced the performance of purging binlogs, reducing performance fluctuations.
Removed CDC, LSN, and CLUSTER as reserved keywords.
Optimized parallel DDL functionality:
Fixed an issue where created index data is incorrect when the number of scan threads is greater than 1 but innodb_parallel_ddl_threads = 1.
Addressed a crash caused by m_page becoming invalid after a subtree is created.
Resolved an issue where error codes are not reset before indexes are created.
Fixed a crash that occurs when the innodb_disable_sort_file_cache switch is enabled during parallel DDL index creation.
Corrected a crash that happens when a unique key is added to a column with duplicate data.
Bug Fixes
Rectified an issue where database auditing incorrectly records the type of prepare statements.
Fixed the problem where database auditing incorrectly classifies sql_type in execute statements as “other”.
Addressed an error in retrieving custom variable strings in session track: now supports constructing the return value of session track by specifying the string length when fetching custom variables.
Resolved an issue in parallel queries where referencing worker table fields in related subqueries leads to incorrect query results.
3.1.10
Feature updates
Supported binlog subscription for ‌read-only instances.
Supported blackhole engine.
Updated parallel query: Support parallel queries for full-table scans, full index scans, and index range scans; support variance and standard deviation functions; support setting parallel policies with the LIMIT syntax; and support Prepared Statement (PS) query mode.
‌Supported [dynamic thread pool].
‌‌Supported NOWAIT syntax.
Supported flashback query.
‌Supported invisible index.
Bug fixes
Fixed the issue of excessive columns caused by INSTANT ADD on partitioned tables. The default algorithm for DDL has been changed from INSTANT to INPLACE. To use instant DDL, you need to specify algorithm = instant.
Fixed the issue of prohibiting tables with a column name "fts_doc_id" from executing instant DDL.
‌Optimized buffer pool resizing.
Optimized the splitting logic of operator splitting for items in parallel queries.
Fixed the performance degradation caused by the failure of binary search in the IN operator in PS mode.
Optimized the query efficiency for full table count(*) in parallel queries.
Fixed the issue where the stage variable error in Parallel DDL caused the stage null pointer to crash when creating FTS indexes.
Fixed the possible crash when adding full-text indexes.
Fixed the issue of GTID loss caused by the HA switch in certain scenarios.
Fixed the issue of possible crash triggered by executing show create table after killing the mysqld process during DDL.
Fixed the issue of premature release of the FTS cache lock in full-text indexing, which caused inconsistency between reads and writes.
Fixed the issue of data inconsistency between source and replica caused by transaction rollback during the DDL commit process.
Fixed the issue of deadlock occurred when killing a transaction and dropping a database during the process of creating a temp table and inserting data.
Fixed the issue of failure when users perform operations on a database with the same name as the MySQL system database.
Fixed the issue where Canal was unable to obtain the GTID starting point through show master status when extracting binlogs via read-only instances.
3.1.9
Feature updates
Supported CDC, which can directly and repeatedly backtrack/extract the binlogs in the custom log retention period. This solves the problem where the compute node loses local binlogs in scenarios such as HA. For more information on how to set the binlog retention period, see Setting Backup Retention Period.
Optimized the pages purge rate to improve the database performance.
Bug fixes
Fixed the issue where the worker couldn't pass the table-level NULL ROW FLAG to the coordinator and thus caused incorrect results.
Fixed the core issue of parallel query caused by the failure of the sort operator to get the order list during operator splitting because sort order was pushed down to the table.
3.1.8
Feature updates
Supported parallel query, which can automatically identify complicated queries. The parallel query capability leverages multiple compute cores to greatly shorten the response time of large queries. For more information on how to use this feature, see Enabling/Disabling Parallel Query.
Bug fixes
Fixed several database issues in debug mode.
Fixed the issue where abnormal information appeared in database proxy-related fields when show detailed processlist was used to display connection information.
3.1.7
Feature updates
Added the password dictionary parameter as described in Configuring Custom Password Strength, and optimized HA's dependence on dictionary files.
Supported completing purged binlogs in the kernel.
Supported the built-in database proxy for the Serverless architecture to implement connection persistence and momentary disconnection prevention, and fixed the connection error reported during the first wakeup.
3.1.6
Bug fixes
Fixed the crash caused by full-text index (non-tree index) encountered during index check.
Fixed the issue where the liveness probe of the database proxy caused the kernel to output a large number of error logs, and blocked the printing of redundant logs.
Fixed the issue where the uninitialized GCR LSN in the session LSN tracker might return a random value of the database proxy and thus cause the statement execution to time out.
3.1.5
Feature updates
Supported traffic throttling for bulk insert.
Supported setting the change buffer and merge modes.
Supported database proxy. For more information on how to use this feature, see Database Proxy Overview.
Supported logical backup for read-only instances.
Supported parallel replication of binlogs at the table level.
Supported SQL throttling.
Supported interesting order judgment in sort merge join.
Supported TABLESAMPLE.
Supported the HISTOGRAM() function.
Supported histogram versioning and compressed histogram. 
Supported show detail processlist.
Performance optimizations
Optimized the physical replication of transactions to greatly improve the write-only performance.
Optimized the parallel initialization of the transaction system to accelerate the system startup.
Optimized the logic of page locking during log replay in read-only instances to accelerate the replay thread.
Bug fixes
Fixed the issue where the MySQL client exited abnormally when receiving an incomplete package.
Fixed the crash of the FSP management fraction caused by the incorrect commit order of the nested MTRs generated by blob.
Fixed the transaction consistency issue that might be caused by the purge of the host when RO accessed the secondary index.
Fixed the issue where backup lock couldn't be locked due to the lock table statement.
Fixed the issue where several keywords introduced by TDSQL-C couldn't be used as identifiers, such as CDB_GET_TABLE_VERSION, CLUSTER, and THREADPOOL.
Fixed the issue where the startup time was prolonged due to the failure to add dict op lock to the main thread caused by large transactions or long-line transaction rollbacks during instance startup.
Fixed the crash caused by TRX reuse after the failure to allocate the undo page.
Fixed the crash caused by executing alter table on a partitioned table to migrate from the extended tablespace to the system tablespace.
Fixed the crash caused by the startup before the truncate log was completely written.
Fixed the crash caused by inserting data after drop table partition force.
Fixed the possible crash caused by rollbacks after instant DDL.
Fixed the issue where creating tables in the extended tablespace with create temporary table like failed.
Fixed the OOM caused by the continuous increase of the cache during data writes to the full-text index table.
Fixed the error of unstable performance after hotspot update was enabled after optimization.
Fixed the issue where select count(*) parallel scans caused full-table scans in extreme cases.
Fixed the issue where the statistics were read as zero in various cases, and fixed the official Bug#31889883.
Fixed the bug where queries were in the query end status for a long time.
Fixed the case sensitivity issue of column names in the json_table function (official Bug#32591074).
Fixed the bug where an error was reported when the Temptable engine was used and the number of aggregate functions in the selected column exceeded 255.
Fixed the bug that caused correctness issues in window functions because expressions returned early during return true.
Fixed the correctness issue caused by the pushdown by derived condition pushdown when it contained user variables.
Fixed the issue where SQL filters were prone to crash when no namespaces were added in a rule.
Fixed the QPS jitters when the thread pool was enabled under high concurrency and high conflict.
Fixed the crash when information was not cleared during execution of the update statement or stored procedures.
Fixed the issue where the histogram couldn't be stopped by CTRL+C on the existing version.
3.1.3
Feature updates
Supported adding the binlog with the specified filename to an index file.
Added a backup lock in the syntax of LOCK TABLES FOR BACKUP, UNLOCK TABLES.
Added a binlog lock in the syntax of LOCK BINLOG FOR BACKUP, UNLOCK BINLOG.
Bug fixes
Fixed the bug where dynamic metadata persistence caused instance table corruptions or visibility errors.
Merged the official bugfix #32897503 to solve the issue where the execution path of some query statements was incorrect under the prepare statement.
Merged the official bugfix to solve the crash when set resource group failed.
Fixed the bug where the previous gtid was empty after HA switch.
Fixed the bug where an auto-increment column could be set to a value smaller than the inserted maximum value.
Fixed the issue where explicit transactions in read-only instances would block the replay thread from replaying DDL logs.
Fixed the issue where tables with "-" in the name might crash when replicated in a read-only instance after DDL.
Fixed the crash caused by the undo request to the DDL log system table when a read-only instance experienced DDL recovery upon startup.
3.1.2
Feature updates
Supported MySQL 8.0 for read-only nodes and source-replica physical replication.
Supported table space expansion and up to above 1 PB of capacity per instance.
Supported limiting the number of preloaded rows, which achieved a 1%-5% performance increase during point query testing.
Supports extended ANALYZE syntax (UPDATE HISTOGRAM c USING DATA 'json') and direct writes to histograms.
Performance optimizations
Replaced index dive with histogram to reduce evaluation errors and I/O overheads (this capability is not enabled by default).
Bug fixes
Fixed the issue where updates related to large object pages were not written to the log when a full-text index containing large object columns was created.
Fixed the issue with inconsistent formats of undo page and different definitions of TRX_UNDO_HISTORY_NODE in the computing and storage layers.
Fixed the issue where statistics information might be zero during online-DDL.
Fixed the issue where columns generated from replica instances were not updated.
Fixed the issue where the instance hung when binlog was compressed.
Fixed the issue of missing GTID in the previous_gtids event of the newly generated binlog file.
Fixed possible deadlocks when system variables were modified.
Fixed the issue where the information of the SQL thread of the replica instance in SHOW PROCESSLIST was incorrectly displayed.
Implemented the bug fix related to hash join provided in MySQL 8.0.23.
Implemented the bug fix related to writeset provided in MySQL.
Implemented the bug fix related to the query optimizer provided in MySQL 8.0.24.
Fixed the concurrency bugs of optimizing flush list and releasing pages in FAST DDL.
Optimizes the memory usage during data dictionary update in instances with a large number of tables.
Fixed the crash caused by new primary key creation after INSTANT ADD COLUMN.
Fixed the OOM caused by memory growth in full-text index query.
Fixed the issue where -1 was included in the TIME field in the result set returned by SHOW PROCESSLIST.
Fixed the issue where tables might fail to be opened due to histogram compatibility.
Fixed the floating point accumulation error when Singleton histograms were constructed.
Fixed the replication interruption caused by using many Chinese characters in the table name of a row format log.
3.1.1
Feature updates
Supported the official updates of MySQL 8.0.19, 8.0.20, 8.0.21, and 8.0.22.
Supported dynamic setting of thread pooling mode or connection pooling mode by using the thread_handling parameter.
Supported source-replica buffer pool sync: after a high-availability (HA) source-replica switch occurs, it usually takes a long time to warm up the replica, that is, to load hotspot data into its buffer pool. To accelerate the replica's warmup, TXSQL now supports the buffer pool sync between the source and the replica.
Supported sort merge join.
Supported async commit: With the thread pool enabled and binlog disabled, async commit can be enabled by setting the parameter innodb_log_sync_method to async.
Supported fast DDL operations.
Supported querying the value of the character_set_client_handshake parameter.
Supported database audit.
Performance optimizations
Optimized the mechanism of scanning and flushing the dirty pages tracked in the flush list, so as to solve the performance fluctuation issue while creating indexes and thus improve the system stability.
Optimized the BINLOG LOCK_done conflict to improve write performance.
Optimized the trx_sys mutex conflict by using lock free hash and improve performance.
Optimized redo log flushing.
Optimized the buffer pool initialization time.
Optimized the clearing of adaptive hash indexes (AHI) during the drop table operations on big tables.
Bug fixes
Fixed the deadlocks caused by the modification of the offline_mode and cdb_working_mode parameters.
Fixed the concurrency issue while persistently storing max_trx_id of global object trx_sys.
Fixed performance fluctuation when cleaning InnoDB temporary tables.
Fixed the read-only performance decrease when the instance has many cores.
Fixed the error (error code: 1032) caused by hash scans.
Fixed concurrency security issues caused by hotspot update.
3.0.1
Feature updates
Supported three methods of querying cynos_version: select CYNOS_VERSION(), select @@cynos_version, and show variables like 'cynos_version'.
Added a space limit parameter. If the total space usage exceeds the limit, an error will be reported to prompt you to release the space or upgrade the specification.
Added the innodb_ncdb_log_priority read-only parameter, which indicates the priority of the source instance's backend log thread.
Added the innodb_ncdb_apply_priority read-only parameter, which indicates the priority of the read-only instance's log replay thread.
Added the innodb_ncdb_fast_shutdown dynamic parameter, which controls whether to quickly shut down processes. After it is enabled, when a process exits, no destruction operations on the global structure will be performed, which reduces the shutdown time. It is disabled by default.
Added the innodb_max_temp_data_file_size read-only parameter. Its default value is 128 MB. If its value is greater than 0, it indicates the maximum size of the temp tablespace in the local storage.
Minor Version
Description
2.1.13.001
Feature Updates
Supported Recycle Bin.
Supported Flashback Query.
Supported Returning.
Supported Nonblocking DDL.
Added DDL process information.
Supports the use of LIMIT & IN/ALL/ANY/SOME within subqueries.
Auditing is enabled by default when creating an account.
The audit has been enhanced with the addition of the "ClientPort" field.
Bug Fixes
Fixed reached open_files_limit error caused by too many cdc retries.
Fixed the issue of single quotes not escaping in audit statements.
Fixed JSON display accuracy issue.
Fixed threadpool state calculation issue.
Fixed an issue where aggregate function sum() results were incorrect when cdb_enable_sumagg_pushdown was turned on.
Fixed the issue where the null_value of gtid_subset was not reset, resulting in incorrect query results.
Fixed the issue where GROUP_CONCAT did not set USED_TABLES correctly when the DERIVED_MERGE switch was turned on.
Fixed an issue where the database agent would have an error when reusing a connection with a different user.
Fixed proxy return error for row count and found row and db settings.
Fixed the issue of excessive memory usage during hash scan.
Fixed the issue of getting user-defined variable string errors in session track.
Fixed the problem of incorrect query using * column name.
Fixed the issue where sqlfilter generates null pointers.
Disable returning statements when multiple multitables are involved.
Fixed the crash problem when showing processlist.
Fixed an issue where Returning syntax caused cross-availability zone standby machines to crash.
Audit bug fixed: Long logs truncate multi-byte characters, resulting in garbled log content that cannot be parsed.
Audit bug fixed: The audit log frequently requested memory when processing escape characters, resulting in poor performance.
Fixed the issue of flink-cdc timestamp subscription error reporting.
Fixed the problem that when tablespace name is verified, if the name is empty, it will crash in some environments.
2.1.12
Feature Updates
Read-only instances now support binlog subscription via log positions.
Performance Enhancements
Optimized the performance of purging binlog, reducing performance fluctuations.
Bug Fixes
Resolved compatibility issues in certain scenarios where Flink subscribes to the binlog of TDSQL-C read-only instances.
Addressed the official Bug #27422376.
Fixed an issue where traversing a B-Tree in reverse order would cause retries when encountering expired data pages.
Corrected a problem where reducing the size of the buffer pool might lead to the repeated recycling of pages.
2.1.11
Feature Updates
Database auditing now supports the addition of transaction ID fields and table names.
Supports multi-threaded logical backup.
Database proxy now supports Transaction Split Feature.
Performance Optimization
Optimized memory usage mechanisms, reducing the risk of Out Of Memory (OOM).
Removed CDC, LSN, and CLUSTER as reserved keywords.
Enhanced the logic for applying logs, improving the storage layer's ability to process redo logs.
Bug Fixes
Rectified an issue where database auditing incorrectly records the type of prepare statements.
Fixed the problem where database auditing incorrectly classifies sql_type in execute statements as “other”.
Fixed official Bug #111686 and official Bug #26225783.
2.1.10
Feature updates
Supported binlog subscription for ‌read-only instances.
Supported blackhole engine.
‌Supported buffer pool resizing.
Bug fixes
Fixed the issue of frequent disconnections when extracting binlogs via read-only instances.
2.0.23/2.1.9
Feature updates
‌Supported dynamic thread pool.
‌‌Supported NOWAIT syntax.
‌‌‌Supported returning.
‌‌‌‌Supported auto-increment column persistence.
‌Supported invisible index.
‌‌Supported computation pushdown.
‌‌‌Supported buffer pool initialization.
Bug fixes
Fixed the issue of GTID loss caused by the HA switch in certain scenarios.
Fixed the issue of possible crash triggered by executing show create table after killing the mysqld process during DDL.
Fixed the issue of premature release of the FTS cache lock in full-text indexing, which caused inconsistency between reads and writes.
2.0.22/2.1.8
Feature updates
Supported CDC, which can directly and repeatedly backtrack/extract the binlogs in the custom log retention period. This solves the problem where the compute node loses local binlogs in scenarios such as HA. For more information on how to set the binlog retention period, see Setting Backup Retention Period.
Optimized the pages purge rate to improve the database performance.
Bug fixes
Fixed the repeated crashes of the compute instance when the upper limit of the space was reached.
2.0.21/2.1.7
Feature updates
Added the password dictionary parameter as described in Configuring Custom Password Strength, and optimized HA's dependence on dictionary files.
Supported completing purged binlogs in the kernel.
Supported the built-in database proxy for the serverless architecture to implement connection persistence and momentary disconnection prevention, and fixed the connection error reported during the first wakeup.
2.0.20/2.1.6
Bug fixes
Fixed the issue where the liveness probe of the database proxy caused the kernel to output a large number of error logs, and blocked the printing of redundant logs.
Fixed the issue where the uninitialized GCR LSN in the session LSN tracker might return a random value of the database proxy and thus cause the statement execution to time out.
Fixed the issue where creating a temp table in a read-only instance might cause a deadlock.
2.0.19
Feature updates
Supported logical backup for read-only instances.
Supported database proxy. For more information on how to use this feature, see Database Proxy Overview.
Supported parallel replication of binlogs at the table level.
Supported setting the change buffer and merge modes.
Supported show detail processlist.
Bug fixes
Fixed the official Bug#22991924 related to the JSON character set.
Merged the official bugfix for Bug#25865525 to solve the issue where LOAD DATA INFILE failed to read escape characters plus UTF8 characters.
Merged the official bugfix for Bug#31529221 to fix the issue where the error Incorrect key file was reported upon ALTER TABLE failure.
Merged several official bugfixes related to column generation and cascading deletion, including Bug#33053297, Bug#32124113, and Bug#29127203.
Fixed the official Bug#31599938 where resetting the source caused a crash when binary logging was disabled in the replica.
Fixed the issue where the startup time was prolonged due to the failure to add dict op lock to the main thread caused by large transactions or long-line transaction rollbacks during instance startup.
Fixed the crash caused by TRX reuse after the failure to allocate the undo page.
Fixed the crash caused by executing alter table on a partitioned table to migrate from the extended tablespace to the system tablespace.
Fixed the crash caused by the startup before the truncate log was completely written.
Fixed the crash caused by inserting data after drop table partition force.
Fixed the possible crash caused by rollbacks after instant DDL.
Fixed the issue where creating tables in the extended tablespace with create temporary table like failed.
Fixed the OOM caused by the continuous increase of the cache during data writes to the full-text index table.
2.0.17
Feature updates
Supported adding the binlog with the specified filename to an index file.
Bug fixes
Merged the official bugfix for Bug#25865525 to solve the issue where LOAD DATA INFILE failed to read escape characters plus UTF8 characters.
2.0.16
Performance optimizations
Optimized undo space truncate to improve the speed of undo truncate on large-spec instances.
Optimized the performance of large-scale queries on read-only instances.
Bug fixes
Fixed the issue where backup lock couldn't be locked due to the lock table statement.
Fixed the issue where table share went wrong for the read-only instances after thousands of columns were added through INSTANT ADD.
Fixed the replay error when the content of binlog contained escaped keywords.
Fixed the issue where externally prepared XA transactions were not explicitly rolled back and thus blocked normal shutdown.
Fixed the issue where the warning "tablespace -1 not found" was reported during read-only instance startup.
2.0.15
Feature updates
Supported the extended table space: When a single table space exceeds the innodb_ncdb_extend_space_threshold configuration, a new table will be created in the extended table space.
Added new JSON functions: JSON_MERGE_PRESERVE, JSON_MERGE_PATCH, JSON_PRETTY, JSON_STORAGE_SIZE, JSON_ARRAYAGG, JSON_OBJECTAGG.
Optimized the table lock recovery process at system startup to shorten the startup time.
Bug fixes
Fixed the bugs for the group by performance issue in text columns and multiple issues related to virtual columns.
Fixed the possible crash when large transaction rollback and shutdown operations were performed concurrently after instance startup.
Fixed the issue where repeatedly failed IO retries of related pages caused instance exit after undo space truncate failed.
Fixed the crash when statistics update accessed the snapshot cache for disabled read-only instances.
Fixed the issue where the truncation log might be behind the truncate operation in undo space truncate.
Fixed the bug where an error in ICP check for partitioned table scan resulted in slow query.
Fixed the crash when the previous scan in a read-only instance encountered the partial replay of a split index log.
2.0.14
Feature updates
Supported INSTANT MODIFY COLUMN. For more information, see Instant DDL Overview.
Bug fixes
Fixed the issue where the used space was not reclaimed when a temp table in a read-only instance was dropped.
Fixed the issue where the process exited when a read-only instance read the old page version due to changes in storage routes.
Fixed the issue of possible crash when information_schema.metadata_locks was queried.
Fixed the concurrency error of forward scan and B-tree SMO in read-only instance.
Fixed the issue where when multiple tables had complex foreign key dependencies and the foreign key attribute was ON DELETE CASCADE, the corresponding record in a child table might be deleted twice when a record was deleted in its parent table with DELETE.
Fixed the issue where the process exited due to operations such as CREATE USER in a read-only instance.
Fixed the issue where SHOW VOLUME STATUS in a read-only instance might trigger an assertion failure.
Fixed the issue where a read-only instance had abnormal query results and crashed when DDL operations were performed in partitioned tables frequently.
Fixed the issue where the process crashed during historical version construction when an read-only instance scanned a purged undo log.
2.0.13
Feature updates
Supported INSTANT ADD COLUMN. For more information, see Instant DDL Overview.
Optimized the audit performance under high load and added the lock_usleep_time dynamic parameter.
Bug fixes
Fixed the issue where dict_operation_lock might cause deadlock during foreign key check.
Fixed the issue where the process might exit when the ACL change log was replayed during read-only instance startup.
Fixed the issue where data in source and replica instances was inconsistent after INSTANT ADD COLUMN and TRUNCATE TABLE.
Fixed the log replay error occurring when data was inserted again after INSTANT ADD COLUMN and TRUNCATE TABLE.
Fixed the issue where the process exited when a primary key containing a column added by INSTANT ADD COLUMN was created.
Fixed the issue where the process exited during table structure query in a read-only instance when INSTANT COLUMN was used to create or rebuild a partition.
2.0.12
Feature updates
Supported database audit. For more information on how to use it, see Enabling TDSQL-C for MySQL Audit.
Supported purging page read-ahead to accelerate space reclaim.
Supported real-time update of the size information of tables and indexes in the system view.
Added a thread to accelerate recycle LSN and storage GC.
Bug fixes
Fixed official bugs in full-text index, including Bug#24938374, Bug#21625016, Bug#27082268, Bug#27155294, Bug#27326796, Bug#27304661, Bug#25289359, Bug#29717909, and Bug#30787535.
Fixed official bugs where concurrent update might cause system crashes, including Bug#30950714, Bug#31205266, and Bug#25669686.
Fixed the official Bug#28104394 where uncommitted INSERT operations would affect the range scan created by an index and made it return an incorrect number of rows.
Fixed the official Bug#30488700 where an incorrect query execution plan of a derived table could result in a poor performance.
Fixed the issue where the process exited when a read-only instance replayed statistics logs after the source (read-write) instance executed a DDL statement.
Fixed the issue where RENAME TABLE was performed on a database that did not exist.
Fixed the issue where a read-only instance might exit when OPTIMIZE TABLE was used for the source instance.
Fixed the issue where transactions were inconsistent after a table with a full-text index was updated in a read-only instance.
Fixed the deadlock occurring during SET OFFLINE MODE and SHOW VARIABLES operations.
2.0.11
Feature updates
Optimized the binlog file index to accelerate binlog file scan.
Optimized the shutdown process to make it faster.
Optimized the instance memory to reduce the memory usage by structures such as buffer, ZIP, and hash.
Optimized the DDL lock recovery process during read-only instance startup to accelerate replay.
Optimized system table loading in read-only instance to accelerate startup.
Optimized worker thread assignment during PURGE COORDINATOR to accelerate purge.
Bug fixes
Fixed the issue where the process crashed during OPEN TABLE due to incorrect index structure mapping.
Fixed the issue where read-only instance replication was abnormal during XA transaction rollback.
Fixed the issue where startup crashed when binlog replication was started in a read-only instance.
Fixed the memory leak caused by FLUSH LOGS.
Fixed the shutdown failure of mysqladmin shutdown.
Fixed the issue where a read-only instance failed to replay logs when DROP COLUMN was performed on the source instance.
Fixed the issue where data could still be input after space restriction was triggered when a BLOB was inserted.
Fixed the issue of read-only instance replication availability that might be caused by DDL statements in big tables or slow log storage in the source instance.
Fixed the issue where storage wasted small tables after innodb_max_temp_data_file_size was set for a temp table.
Contact Us

Contact our sales team or business advisors to help your business.

Technical Support

Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

7x24 Phone Support