Help Center/ GaussDB(for MySQL)/ Kernels/ GaussDB(for MySQL) Kernel Version Release History
Updated on 2024-09-06 GMT+08:00

GaussDB(for MySQL) Kernel Version Release History

This section describes the kernel version updates of GaussDB(for MySQL).

2.0.54.240600

Table 1 Version 2.0.54.240600

Date

Description

2024-07-19

  • New features and optimized features
    • Optimized hot row update: Hot row updates happen in different scenarios, like flash sales, concert ticket reservations, and train ticket bookings for popular routes. This version enhances hot row updates, which can be enabled automatically or manually. After hot row update is enabled, hot rows can be upgraded efficiently.
    • Non-blocking DDL: When a user performs a DDL operation, if the target table has uncommitted long transactions or large queries, the DDL operation continuously waits for obtaining the MDL-X lock. As a result, service connections are stacked and blocked. This version supports non-blocking DDL, which allows new transactions to enter the target table even if the MDL-X lock cannot be obtained, ensuring the stability of the entire service system.
    • Multi-tenant management: This feature enables the database to serve multiple tenants, maximizing database resource utilization.
    • Binlog pull for read replicas: You can use read replicas as the data source to establish a binlog replication link and synchronize binlog content in real time, which helps reduce the load on the primary node.
    • Column compression: GaussDB (for MySQL) introduces fine-grained column compression to reduce data page storage space and save costs. Two compression algorithms, ZLIB and ZSTD, are provided. You can select either of them to compress infrequently accessed large columns based on the compression ratio and compression and decompression performance.
    • INTERVAL RANGE partitioned tables: In previous versions, if the data to be inserted into an existing RANGE partitioned table exceeds the range of existing partitions, the data cannot be inserted and an error is returned. With the support for INTERVAL RANGE partitioned tables in this version, the database can now add new partitions based on rules specified in the INTERVAL clause when new data exceeds the range of existing partitions.
    • LIST DEFAULT HASH partitioned tables: This feature supports two types of partitions at the same level: LIST and HASH. Data is first inserted into LIST partitions. Data that does not comply with the LIST partitioning rules is placed in the default partition. If the default partition has multiple partitions, HASH rules are used. LIST DEFAULT HASH partitioned tables are usually used in scenarios where LIST VALUES are unevenly distributed and cannot be fully enumerated.
  • Fixed issues
    • Optimized the table-level restoration performance.
    • Optimized the execution performance of read replicas of a high-spec instance in high-concurrency scenarios.

2.0.51.240300

Table 2 Version 2.0.51.240300

Date

Description

2024-03-30

  • New features and optimized features
    • Added global consistency, which provides strongly consistent reads at the cluster level with low performance loss.
    • Added the SHOW BINARY LOGS NO BLOCK syntax, which prevents transaction commits from being blocked during the execution of SHOW BINARY LOGS.
    • Optimized the UNDO TRUNCATE capability, which solves the issue of undo space expansion caused by a large number of writes.
    • Enhanced the degree of parallelism for full restoration, which optimizes the backup and restoration efficiency.
  • Fixed issues
    • The query results of window functions are incorrect, or errors occur when window functions are executed.
    • Database nodes break down when specific PREPARE statements are repeatedly executed after plan cache is enabled.
    • An error is reported due to inconsistent character sets when stored procedures are executed in sequence.
    • Query results do not meet the expectation when an on-disk hash join is performed after PQ is enabled.
    • An error is reported due to duplicate primary keys when a query involves performing a GROUP BY operation on temporary table fields.

2.0.48.231200

Table 3 Version 2.0.48.231200

Date

Description

2024-01-30

  • New features and optimized features
    • Enhanced composite partitioning: In addition to RANGE-HASH and LIST-HASH of MySQL Community Edition, added RANGE-RANGE, RANGE-LIST, LIST-RANGE, LIST-LIST, HASH-HASH, HASH-KEY, HASH-RANGE, HASH-LIST, KEY-HASH, KEY-KEY, KEY-RANGE, and KEY-LIST.
    • Added the forward compatibility with GROUP BY implicit/explicit sorting in MySQL 5.7.
    • Added the forward compatibility with the max_length_for_sort_data parameter in MySQL 5.7, which optimizes the file sorting performance in specific scenarios.
    • Optimized the issue that accessing views in information_schema is slow due to incorrect execution plan selection.
    • Added the EXIST subquery in PQ.
    • Optimized restoration of database tables or instances to a specific point in time.
  • Fixed issues
    • OpenSSL is upgraded.
    • The default value SYSTEM of the time_zone parameter impacts the efficiency of concurrent SQL statement execution in some scenarios.
    • SQL query results are incorrect when conditions are partially pushed down to a materialized derived table.
    • Performance suffers after PQ is enabled for on-disk hash joins in some scenarios.
    • The permissions page is not updated accordingly after a user is granted permissions on a database through the console and the database is later deleted in non-console mode.

2.0.45.230900

Table 4 Version 2.0.45.230900

Date

Description

2023-11-24

  • New features and optimized features
    • Added forward compatibility of datatime, timestamp, and time field behaviors.
    • Added on-disk hash joins in PQ.
    • Added INSERT and REPLACE SELECT functions in PQ.
    • Added log printing mechanism for connection and disconnection, which helps you locate connection-related issues quickly.
    • Added some useful information in slow query logs, which helps you locate slow SQL statements.
    • Allowed you to dynamically enable binlog.
    • Optimized the NDP bloom filter.
    • Allowed you to use the CAST (... AS INT) syntax.
    • Optimized the Nested Loop Join + Distinct performance.
    • Identified slice ID corresponding to the slow I/O quickly.
    • Added the sal_init log, which helps you to locate storage API timeout issues.
  • Fixed issues
    • There are trx_id and cpu_time fields in full SQL statements.
    • Character strings can be converted into INT in WHERE conditions of PREPARE statements.
    • No crash issue occurs when DDL operations and queries are concurrently executed on a read replica.
    • The binlogs that are sharply generated in a short period of time can be cleared in a timely manner.
    • Execution results are consistent after PQ is enabled for multi-table JOIN SQL statements.
    • Backward Index Scan is compatible with ICP.
    • weight_string functions support LEVEL clauses.
    • The results of the same SQL statement using different indexes are consistent.
    • When NDP and PQ are enabled at the same time, recycle LSN is correct.

2.0.42.230600

Table 5 Version 2.0.42.230600

Date

Description

2023-08-31

  • New features and optimized features
    • Added support for storing full and incremental backups on read replicas, which reduces the memory and CPU usage of the primary node.
    • Optimized UNDO damage location: When the undo damage occurs during startup, the undo damage log and the corresponding table name are printed.
    • Improved the query performance of read replicas.
    • Added the conversion of IN predicates to subqueries.
    • Supported large-scale commercial use of the NDP feature.
    • Optimized execution plans using statement outline.
    • Supported round functions in PQ.
  • Fixed issues
    • The ORDER BY LIMIT and ORDER LIMIT result sets do not overlap when fast sorting and priority queue sorting algorithms are used.
    • Returned results are correct for PQ statements.
    • No errors are reported when PREPARE statements are executed.
    • No PQ assertion errors are reported on UNION queries.
    • The results of full-text index queries are correct after a read replica is promoted to the primary while a large amount of data is being inserted into the primary node.
    • When read replicas use the general_log and slow_log tables, warning logs will not be displayed.
    • After the value of the parameter innodb_lock_wait_timeout is changed, the actual timeout wait time is correct.
    • When a read replica is promoted to primary, there is no the error "Failed to find page in slice manager".
    • The percentage for the PWAL scanning progress in the SALSQL log cannot exceed 100%.
    • When the sqlsmith tool is executed, there is no the error "mysqld coredump" in the EXPLAIN phase of query statements.
    • In SELECT DISTINCT CAST functions, datetime can be converted to the float type correctly.

2.0.39.230300

Table 6 Version 2.0.39.230300

Date

Description

2023-05-11

  • New features and optimized features
    • Supported small-scale instances.
    • Optimized the solution when DDL statements on standby nodes fail.
    • Optimized the capacity calculation of salsql.
    • Supported the restriction on resources of a single SQL statement.
    • Supported the use of per thread for admin port and local socket.
    • Optimized the memory of pwalScanner.
    • Supported the modification of default_collation_for_utf8mb4 parameter.
    • Supported diagnosis on large transactions.
    • Supported the killing of idle transactions.
    • Accelerated incremental restoration.
    • Added database and account descriptions.
    • Supported the acceleration of buffer pool resize.
  • Fixed issues
    • Ptrc does not lead to inconsistent execution results of Nestedloop join.
    • No crash issue occurs when subqueries are sorted using Windows functions.
    • When using rewrites view, tables are not evaluated to turn left joins into inner joins.
    • Execution results are returned from decimal data that meets specified filter criteria.
    • Memory is aligned.
    • Scan_row is correctly recorded in full logs.

2.0.28.18

Table 7 Version 2.0.28.18

Date

Description

2023-05-17

Errors of exceeded sorting memory are not reported for columns containing large JSON data.

2.0.28.17

Table 8 Version 2.0.28.17

Date

Description

2023-04-02

Character sets are not used in combination in prepared statements.

2.0.28.16

Table 9 Version 2.0.28.16

Date

Description

2023-03-14

  • New features:

    Reduced primary/standby latency.

  • Fixed issues:
    • No error occurs when JSON-related functions are used in prepare statements.
    • Query results are returned when filter criteria are specified.
    • No null pointer error is reported after Windows functions generate a temporary disk table.
    • The crash issue caused by the use of null pointers in Windows functions is resolved.
    • Prepared statements are executed successfully.

2.0.28.15

Table 10 Version 2.0.28.15

Date

Description

2023-01-11

  • New features
    • Supported SQL statement concurrency control.
    • Optimized read flow control.
    • Optimized the consistency of primary/standby execution plan.
    • Pre-created slices asynchronously.
  • Fixed issues
    • No crash issue occurs when the system variable INNODB_VALIDATE_TABLESPACE_PATHS is disabled and the undo space truncate command is executed.
    • The query of information_schema.innodb_trx is fast.
    • The issue of inconsistent results is resolved: left joins now are turned into inner joins.
    • The crash issue caused by subquery optimization is resolved.
    • Values of the Instant field are correctly obtained under concurrent instant DDL and DML operations.
    • No OOM issue occurs when two InnoDB tables with FTS indexes are loaded.
    • No OOM issue occurs when the data dictionary of millions of tables is being updated.

2.0.28.12

Table 11 Version 2.0.28.12

Date

Description

2022-12-07

Scan errors triggered by Skip Scans are not displayed when a table with virtual columns is updated.

2.0.28.10

Table 12 Version 2.0.28.10

Date

Description

2022-11-16

During a primary/standby switchover, databases will not break down when connecting to the standby instance times out.

2.0.28.9

Table 13 Version 2.0.28.9

Date

Description

2022-09-23

  • The If(...) statement in Condition_pushdown::replace_columns_in_cond is modified.
  • The database does not break down when:
    • Storage functions are invoked recursively.
    • Multiple tables are deleted or full-text search is performed.
    • SQL query statements of multiple window functions are executed.
  • Users with global permission can successfully run SHOW CREATE DATABASE.

2.0.28.7

Table 14 Version 2.0.28.7

Date

Description

2022-08-25

The ptrc crash problem in stored procedure is resolved.

2.0.28.4

Table 15 Version 2.0.28.4

Date

Description

2022-07-22

  • Databases will not break down due to empty accounts.
  • When a temporary table used for aggregation is updated, BLOB points to the latest data.

2.0.28.1

Table 16 Version 2.0.28.1

Date

Description

2022-05-16

  • New features
    • You can enable or disable orphaned definer check control.
    • GaussDB(for MySQL) supports transparent transmission of proxy IP addresses.
    • You can set the consistency level of your proxy instances to session consistency.
  • Fixed issues
    • The data dictionary on standby nodes is updated if DDL statements on the primary node are not submitted.
    • During a failover, the auto increment of the primary node is not rolled back.
    • The performance issue of standby nodes is resolved.

2.0.31.220700

Table 17 Version 2.0.31.220700

Date

Description

2022-08-12

  • New features and performance optimized
    • Supported SQL statement concurrency control.
    • Added a limit to concurrent numbers of Faster DDL.
    • Supported all Faster DDL operations in row format.
    • Extended full SQL fields.
    • Optimized flow control.
    • Supported the quick timeout of ALTER TABLE.
    • Supported the query of plan cache.
    • Optimized statistics on standby nodes.
  • Fixed issues
    • Standby nodes do not break down after partition-table on the primary node is renamed.
    • The default buffer size of SQL tracer is modified.
    • When the truncate lsn of standby nodes lags behind, the standby nodes can start successfully.
    • The execution plan error is not displayed when SQL queries with the same range are executed.
    • The crash issue caused by empty accounts is resolved.
    • The crash issue caused by database dropping is resolved.