This topic describes the updates and features of the PolarDB for MySQL engine.

The following figure shows the position of the PolarDB database engine in the PolarDB architecture.

1

For more information about the architecture and features of PolarDB, see Architecture.

Query the version number

You can use the following methods to query the engine version number of a cluster:

  • Log on to the PolarDB console. On the Overview page of the cluster whose engine version number you want to query, check the value of the Kernel Version parameter. 1
  • If the value of the Kernel Version parameter is not displayed in the console, execute the show variables like "%polardb_version%"; or show variables like '%rds_release_date%'; statement to query the engine version number.
    Note
    • You can execute only the show variables like '%rds_release_date%'; statement to query the engine version number of a PolarDB for MySQL 5.6 cluster.
    • For more information about the version number of the PolarDB database engine, see Version of the PolarDB database kernel.

Compatibility of PolarDB for MySQL with MySQL Community Edition

Engine version Fully compatible MySQL minor version
8.0.2 8.0.18
8.0.1 8.0.13
5.7 5.7.28
5.6 5.6.16

PolarDB for MySQL 8.0

The following table describes the versions and features that are supported by PolarDB for MySQL 8.0.

  • 8.0.2.1.4.1 (2021-10-26)
    Category Description
    Fixed issues The size of database cache can be modified.
  • 8.0.2.1.4 (2020-12-01)
    Category Description
    New features and performance optimization The Index Hints feature of MySQL 8.0.20 is supported.
    Fixed issues
    • The stability issue of parallel hash joins is fixed.
    • The following issue is fixed: The estimated number of rows for each index key in statistics is miscalculated.
    • The following issue is fixed: An error occurs in processing empty data when shared temporary tables are scanned in parallel.
    • The following issue is fixed: An error occurs when you use the REGEXP_REPLACE function provided by PolarDB to process data.
    • The following issue is fixed: An unexpected exit occurs when a complex query contains subquery constants.
    • The following issue is fixed: A filesort operation returns invalid data.
  • 8.0.2.1.3 (2020-10-26)
    Category Description
    New features and performance optimization
    • The cost estimation model for hash joins is improved.
    • Parallel hash joins are supported. The build phase and the probe phase can be executed in parallel.
    Fixed issues
    • The following issue is fixed: The displayed number of parallel partitions in a parallel execution plan is inaccurate.
    • The following issue is fixed: An unexpected exit occurs when parallel subqueries are run.
    • The following issue is fixed: Multiple worker threads cannot return random results when the RAND() function is used in parallel queries.
  • 8.0.2.1.2 (2020-09-27)
    Category Description
    New features and performance optimization PolarDB supports the latest volcano iterator executor for parallel queries.
  • 8.0.2.1.1 (2020-08-26)
    Category Description
    New features and performance optimization The write performance of clusters is optimized.
    Fixed issues The memory leak issue is fixed.
  • 8.0.2.1.0 (2020-07-22)
    Category Description
    New features and performance optimization
    • The EXPLAIN statement can be executed to query the information about a parallel execution plan. After you specify FORMAT=TREE in the EXPLAIN statement, the execution plan is displayed in the tree format.
    • Hash joins are supported in parallel queries. The performance of JOIN operations that do not use indexes is improved. For more information, see Hash joins in parallel queries.
    • The Resource Manager feature is added to monitor CPU and memory resources. For more information, see Resource Manager.
    • The Performance Agent feature is added to collect statistics about performance metrics of PolarDB for MySQL clusters. To collect performance metrics, you can query the PERF_STATISTICS in-memory table. For more information, see Performance Agent.
    • The warm buffer pool feature is supported. When an instance restarts after an unexpected exit or an upgrade, the data in the buffer pool is not cleared. This significantly accelerates the restart process and allows you to maintain the same level of system performance after the restart. .
  • 8.0.1.1.22 (2021-12-22)
    Category Description
    Fixed issues
    • The estimation for the parallelism degree of parallel execution plans is more accurate when the indexes of partitioned tables are the same.
    • The following issue is fixed: The optimizer takes a long time period to estimate the costs of statistics in some scenarios.
    • The following issue is fixed: The optimizer fails to choose a better path to the range of an index for some GROUP BY statements.
    • The following issue is fixed: After a read-only node is promoted to a primary node by using a High Availability (HA) architecture, redo log files fail to be created.
  • 8.0.1.1.21 (2021-11-26)
    Category Description
    Fixed issues
    • The following issue is fixed: When a large value is specified for group_concat_max_len, an arithmetic overflow occurs, which causes an incorrect result of the GROUP_CONCAT function.
    • The following issue is fixed: Data errors occur on read-only nodes in a zone after the nodes recover from a failure.
    • The following issue is fixed: Data exceptions occur after a read-only node in an availability zone is promoted to the primary node.
    • The following issue is fixed: After the filter conditions are specified for multi-column indexes, the optimizer fails to filter the columns and can only filter single-column indexes.
  • 8.0.1.1.19 (2021-09-18)
    Category Description
    New features and performance optimization
    • New concurrency rules are added for data definition language (DDL) operations.
    • The restrict_on_limit_without_order parameter can be used to specify whether parallel queries are allowed for statements that contain the LIMIT clause and does not contain the ORDER BY clause.
    Fixed issues
    • The following issue is fixed: When you select the index to perform GROUP BY operations on columns in scenarios where implicit GROUP BY sorting is used in parallel queries, the results of concurrent execution are not sorted.
    • The following issue is fixed: When the thread pool is used, the transaction ID field in audit logs is always 0.
  • 8.0.1.1.18 (2021-08-14)
    Category Description
    New features and performance optimization Transaction resumable upload is supported for the database kernel. Uncommitted transactions can be read by read-only nodes for the database kernel.
    Fixed issues master_key_id_mutex is optimized so that DDL operations can be executed in parallel.
  • 8.0.1.1.17 (2021-07-23)
    Category Description
    New features and performance optimization
    • The polar_replica_work_on_nonblock_mdl_mode parameter is added. If this parameter is set to on, the uncommitted transactions that use the READ UNCOMMITTED or READ COMMITTED isolation level on read-only nodes no longer block DDL operations on the primary node. In addition, atomicity, consistency, isolation, and durability (ACID) is no longer ensured for the operations of creating tables on the read-only nodes.
    • The mechanism of maintaining statistical information is optimized for scenarios in which a large number of tables need to be used, such as scenarios in which software-as-a-service (SaaS) services are required. This way, the performance of querying table schema information by executing the DESC TABLE statement in high concurrency scenarios is significantly improved. The read and write performance in high concurrency scenarios is also significantly improved.
    Fixed issues
    • The following issue is fixed: A read-only node stops responding due to m_recv_bits.is_set(fold) when physical replication is being performed on the node in high concurrency scenarios.
    • The following issue is fixed: A read-only node fails to respond when the node replays logs in high concurrency scenarios.
  • 8.0.1.1.16 (2021-06-24)
    Category Description
    Fixed issues When requests are in the Waiting for acl cache lock state, the information about the request threads and the first thread that holds the lock can be printed to the master error logs. This helps diagnose issues.
  • 8.0.1.1.15 (2021-05-25)
    Category Description
    New features and optimized features
    • The Transparent Data Encryption (TDE) feature can be used to automatically encrypt data in tables that are newly created in clusters of the ApsaraDB PolarDB for MySQL.
    • MySQL data tables support the utf8mb4_0900_bin character set.
    Fixed issues
    • The following issue is fixed: A database fails to respond due to an excessive number of log records that are generated after you use the Instant ADD COLUMN feature and then roll back an update operation.
    • The following issue is fixed: Errors occur when DDL statements are executed to forcibly change the storage engine of the mysql.slow_log and mysql.general_log tables to InnoDB.
    • The following issue is fixed: Inaccurate metadata about the REGEXP function causes invalid result sets.
    • The following issue is fixed: A database fails to respond when you roll back an update operation on a virtual column.
    • The policy that specifies whether the checkpoint process is immediately triggered after read-only nodes establish a replication relationship with the primary node can be adjusted. If the difference between the log sequence number (LSN) of two consecutive log records is less than the specified threshold, you can configure a policy to prevent the checkpoint process from being triggered.
  • 8.0.1.1.14 (2021-04-23)
    Category Description
    New features and performance optimization
    • The mechanism of maintaining internal index information is optimized for scenarios in which a large number of tables need to be used, such as scenarios in which SaaS services are required. This way, read-only nodes can be started within a shorter time period.
    • Synchronization links in global database networks (GDNs) are optimized. This reduces the amount of CPU resources consumed by synchronization threads. This also improves the speed of synchronizing redo logs between clusters that have less than 8 CPU cores.
    • The AutoDop policy specified by the parameter that controls the degree of parallelism (DOP) is optimized. This optimization eliminates the impact on the use of parallel hints and the force_parallel_mode parameter.
    Fixed issues
    • The following issue is fixed: When the scope of a range query is large, invalid indexes are used due to the inaccurate statistics returned by the records_in_range method.
    • The following issue is fixed: Read-only nodes do not respond due to excessively small buffer pools when a point-in-time restore is used to restore full data.
    • The following issue is fixed: The memory usage of metadata caches in X-Engine is excessively high.
    • Two ACL DDL issues of MySQL are fixed to prevent cluster unavailability caused by deadlocks that occur due to ACL DDL operations.
    • The following issue is fixed: Invalid result sets are returned when aggregate functions are used in parallel queries that include the SQL_BUFFER_RESULT keyword and exclude GROUP BY.
  • 8.0.1.1.13.2 (2021-04-19)
    Category Description
    Fixed issues The following issue is fixed: The encryption information in tables that are encrypted by TDE may be lost during a failover. This results in decryption errors.
  • 8.0.1.1.13.1 (2021-04-08)
    Category Description
    Fixed issues The following issue is fixed: For parallel queries, longer response time is required because constant filter conditions specified in Block Nested-Loop (BNL) join algorithms are not pushed down to each queried table.
  • 8.0.1.1.13 (2021-03-30)
    Category Description
    New features and performance optimization
    • The polar_use_statement_mdl_on_replica parameter is available for read-only nodes. When this parameter is set to on, this setting prevents transactions that use the RC isolation level on read-only nodes from blocking DDL operations on the primary node. When a read transaction on a read-only node is concurrent with a DDL operation on the primary node, the statements in the read transaction read different data sets from tables. For example, if two statements are included in a read transaction on a read-only node and an ADD COLUMN operation is performed on the primary node during the execution interval of the two statements, the second statement on the read-only node reads data from more columns than the first statement.
    • Unnecessary equality conditions for indexes in queries are removed. This helps push down the LIMIT and OFFSET clauses when the ORDER BY LIMIT clause is used.
    • The dbms_stats.gather_stats(timeout, workers) command is added. You can run this command to update outdated histograms. You can also use scheduled events to update outdated histograms.
    • The data of the log_version, log_id, origin_start_time, and rds_ext fields can be queried from the mysql.slow_log table.
    Fixed issues
    • The following issue is fixed: Queries cannot be canceled when you execute CHECK TABLE, COUNT(*), or DDL statements on X-Engine tables in an archive database.
    • KICKOUT is used as a non-reserved keyword.
    • The following issue is fixed: In some scenarios, parallel queries are not performed as expected when the evaluated number of rows to be scanned in the execution plan is less than the actual number of scanned rows.
  • 8.0.1.1.12.2 (2021-03-12)
    Category Description
    Fixed issues
    • Fix the issue that the cluster becomes unavailable when you create or delete temporary tables during the storage process. This issue occurs when the session_track_temporary_tables system variable is enabled.
    • The patch for MySQL 8.0.14 is provided to fix the following issue: CREATE USER statements cannot be executed as expected because the metadata locks (MDLs) of system tables in the corresponding MySQL database cannot be acquired.
  • 8.0.1.1.12.1 (2021-03-02)
    Category Description
    New features and performance optimization The write performance of X-Engine in PolarDB Archive Database is optimized when you continuously import data to multiple tables.
    Fixed issues The following issue is fixed: In parallel queries, the MDL state for the leader thread may be different from that for the worker thread, because the leader thread does not own mutual exclusion locks (mutexes).
  • 8.0.1.1.12 (2021-02-20)
    Category Description
    New features and performance optimization
    • The auto_dop_low_degree_cost parameter can be used to specify the DOP policy. This parameter is used to determine how to automatically specify the DOP for parallel queries. For more information, see DOP policy.
    • The restore_table command is supported. You can run the command to restore tables from the recycle bin. For more information, see Recycle bin.
    • Binary logs can be retrieved from read-only nodes. For more information, see Remotely obtain and parse binary log records from a cluster of the PolarDB for MySQL.
    • The key information such as in_memory can be printed in opt trace. This allows you to locate the causes of exceptions on an execution plan.
    Fixed issues
    • The Port Percona patch is provided to reduce the time that is required to detect conflicts of ACL cache MDLs in high concurrency scenarios.
    • The preferred_ordering_index parameter is added for the optimizer_switch system variable to fix the issue that the optimal plan is not used due to ordered indexes in some scenarios. For example, this issue occurs when you use LIMIT clauses in ORDER BY or GROUP BY queries.
    • The following issue is fixed: The SHOW PROCESSLIST statement returns invalid results in some scenarios.
    • The following issue is fixed: For PolarDB for MySQL 8.0.1.1.10 or earlier, after you upgrade the minor version, results cannot be quickly returned when you query system tables. This is because the definition of the information_schame.KEY_COLUMN_USAGE system table is not updated.
  • 8.0.1.1.11 (2021-01-29)
    Category Description
    New features and performance optimization
    • The parallel_degree_policy parameter can be used to specify the DOP policy for parallel queries. For more information, see DOP policy.
    • The SET GLOBAL statement can be used to specify the max_digest_length parameter. This parameter is used to limit the length of recognizable statements.
      Note After you change the value of max_digest_length, the client must reconnect to the cluster. Otherwise, the new value does not take effect.
    Fixed issues
    • The following issue is fixed: The permissions on the primary node are different from the permissions on read-only nodes.
    • The following issue is fixed: Read-only nodes cannot connect to the primary node after a failover.
    • The following issue is fixed: The processing logic of the SPM is wrong when a specific execution plan becomes invalid.
  • 8.0.1.1.10 (2021-01-12)
    Category Description
    New features and performance optimization
    • Implicit GROUP BY sorting is supported. You can use this feature in the same manner in which you use it in PolarDB for MySQL 5.7.
    • Parallel queries can be disabled if a BLOB field exists.
    • The cache information about statement concurrency control can be automatically updated on read-only nodes.
    • The hot row optimization feature is supported. For more information, see Hot row optimization.
    • The DDL physical replication optimization feature is supported. For more information, see DDL physical replication optimization.
    • The async metadata lock replication feature is supported. For more information, see Async Metadata Lock Replication.
    • Quick reverse traversal is supported when computations are pushed down to InnoDB.
    • The file system is optimized to speed up the process of opening multiple tables at the same time.
    • In multi-table scenarios, the time consumed by a failover is reduced and the recovery of the new primary node is accelerated.
    Fixed issues
    • The following issue is fixed: The system tables are lost when a read-only node is promoted to the primary node.
    • The following issue is fixed: The estimated number of scanned rows is excessively large when range queries are used after the parallel query feature is enabled.
    • The following issue is fixed: The results of aggregate queries are of the integral data type if the field data type is BIT.
    • The following issue is fixed: SELECT DISTINCT queries return invalid results after enumerated fields are used.
    • The following issue is fixed: An exception occurs in the results of parallel queries that use the EXISTS condition.
    • The following issue is fixed: Read-only nodes fail to restart in some scenarios.
    • The following issue is fixed: An exception occurs in table information in the data dictionary when a read-only node executes DDL statements. This is because the table for which DDL statements are being executed is re-opened when a foreign key association table is opened.
    • The following issue is fixed: When you query data by using full-text indexes, failures occur due to the improper setting of a node restart flag after a failover.
    • The following issue is fixed: The log application threads on read-only nodes are blocked due to an MDL.
    • The following issue is fixed: The new primary node becomes unavailable after a failover because the released memory is reused.
    • The following issue is fixed: All nodes become unavailable due to polar.info data errors.
    • The following issue is fixed: Auto-increment column exceptions occur in partitioned tables.
    • The following issue is fixed: A data error occurs when redo logs on the primary node are overwritten.
    • The following issue is fixed: The primary node becomes unavailable when it is waiting for an MDL.
    • The issues related to the TDE feature are fixed.
    • The following issue is fixed: A cluster becomes unavailable when you execute the LOCK TABLE statement and enable the recycle bin feature.
    • The following issue is fixed: A deadlock occurs when DDL statements are executed on the primary node.
    • The following issue is fixed: The thread pool and the connection control cannot take effect at the same time.
  • 8.0.1.1.9 (2020-12-18)
    Category Description
    New features and performance optimization The SPM and PLAN keywords are removed. This way, you can manage the tables whose names contain these two words.
  • 8.0.1.1.8 (2020-12-09)
    Category Description
    New features and performance optimization
    • The multi-plan mode is supported in the execution plan manager.
    • The rds_ap_threshold system variable is added to block the requests that cause the system to scan an excessive number of records. These requests are evaluated by the optimizer.
    • The efficiency of writing dirty pages to disks on the primary node is improved.
    • A multi-shard writing mechanism for redo logs is supported.
    Fixed issues
    • The following issue is fixed: A null pointer of the MDL key occurs in parallel queries.
    • The following issue is fixed: A query fails when you create a parallel thread cache.
    • The following issue is fixed: An error is returned when multi-range read (MRR) is used in parallel queries.
  • 8.0.1.1.7 (2020-11-16)
    Category Description
    New features and performance optimization
    • The efficiency of scanning driven tables in parallel is improved in scenarios such as JOIN queries.
    • When the binary logging feature is disabled, remaining binary logs can be cleared.
    • Interrupted physical replications of read-only nodes can be automatically detected and then resumed. This way, physical replications can be resumed at the earliest opportunity when they are interrupted.
    • The efficiency of failovers between the primary node and read-only nodes is improved.
    • Quick startup is supported for clusters that contain a large number of tables. This way, table data files can be rapidly scanned.
    Fixed issues
    • The following issue is fixed: A cluster breakdown may occur when you obtain the type of trx->wait_lock.
    • The following issue is fixed: The number of AIO threads reaches the upper limit when a multi-queue simulated AIO is enabled.
    • The following issue is fixed: A query cannot be canceled if a query initialization failure occurs when you query indexes.
    • The following issue is fixed: The Next Page of the current cursor points to a page that does not exist when a read-only node is performing a split-merge operation (SMO).
    • The following issue is fixed: Read-only nodes read logs that are overwritten by the primary node.
    • The following issue is fixed: The system fails to clear redo logs because the timestamp intervals of redo logs are excessively large.
    • The following issue is fixed: The table cache information in the related cache is not cleared after MDLs are released.
  • 8.0.1.1.6 (2020-09-21)
    Category Description
    New features and performance optimization
    • The compatibility between the SQL plan manager (SPM) and parallel queries is improved.
    • The efficiency of merging and sorting parallel queries is improved.
    • Queries in DELETE operations can be pushed down.
    • The CTS feature of PolarDB is supported.
    Fixed issues
    • The following issue is fixed: The description of pq_optimize_switch is incorrect.
    • The following issue is fixed: Subqueries cannot be stably executed.
  • 8.0.1.1.5 (2020-08-19)
    Category Description
    New features and performance optimization
    • A feature is added to check whether the primary node immediately applies the checkpoint policy when it establishes a replication relationship with read-only nodes.
    • Range queries are supported and can be pushed down.
    • The pfs_remount feature is supported for Polar File System (PFS). This feature fixes the issue that files in PFS fail to be mounted when the files are open.
    • The performance bottlenecks caused by forcible pauses of parse threads on read-only nodes are removed. The efficiency of data synchronization between the primary node and read-only nodes during physical replication is improved.
    • The performance of Early Lock Release (ELR) is improved in multi-connection scenarios. The cluster performance in multi-connection scenarios is improved by nine times.
    Fixed issues
    • The following issue is fixed: Read-only nodes become unavailable after these nodes fail to connect to the primary node.
    • The following issue is fixed: After a full-text index is used and DDL statements are executed, a read-only node becomes unavailable after a failover.
    • The following issue is fixed: Binary logs cannot be purged after the UNDO TRUNCATE command is run.
    • The following issue is fixed: The statistics on the primary node and the statistics on read-only nodes are inconsistent.
  • 8.0.1.1.4 (2020-07-04)
    Category Description
    New features and performance optimization
    • DDL statements can be executed in parallel. This improves the efficiency of executing DDL statements.
    • The length of each queue for the simulated asynchronous I/O (AIO) can be dynamically adjusted.
    • The cache coherence is supported for FTS.
    • The subqueries that include aggregate functions are supported in WHERE clauses. In addition, if the subqueries support index-based scans, these subqueries can be executed in parallel.
    • The lock mode can be checked for temporary tables and standard tables.
    Fixed issues
    • The following issue is fixed: Clusters become unavailable because some DDL statements are being replicated when the primary node serves as a read-only node.
    • The following issue is fixed: The performance is compromised because thread pools are enabled.
    • The following issue is fixed: Deadlocks occur because binary logs are purged.
    • Several issues that are related to a memory leak are fixed.
    • Several issues that occur in high availability scenarios are fixed.
  • 8.0.1.1.3 (2020-05-29)
    Category Description
    New features and performance optimization
    • Security is enhanced. For example, password management is improved.
    • The performance of parallel queries is improved in the following scenarios:
      • The GROUP BY, UNION, and SELECT COUNT(*) FROM <Table> queries are performed.
      • Shared InnoDB temporary tables are used for execution plans in parallel subqueries.
      • Views, derived tables, and temporary tables are used in execution plans.
      • Temporary tables can be used for parallel queries. When you use temporary tables for parallel queries, take note of the following limits:
        • If you do not specify conditions in the SELECT COUNT(*) statement to query data in temporary tables, parallel queries are not supported.
        • Parallel queries are not supported for temporary tables that use the Memory storage engine.
    • A new version of the audit log format is supported. In this format, information about virtual IP addresses (VIPs) is added.
    • The rate of idle space to total space on index pages can be managed. This reduces latch contention and the probability of performing structure modification operations (SMOs), and improves write performance.
    • The simulated AIO among multiple queues is supported. This improves dirty page flushing and write performance.
    • Buffer pool pages can be excluded from core files. This reduces the sizes of the core files and minimizes the impact on online services.
    Fixed issues
    • The following issue is fixed: If the upper limit of memory in TempTable is reached, the TempTable storage engine reports an out of memory (OOM) error. In this case, the data is not moved from memory to disks.
    • The following issue is fixed: Clusters become unavailable when the sort buffer size is set to an excessively small value and ORDER BY is used in InnoDB FTS.
    • The following issue is fixed: If a temporary table contains duplicate column names, the requested fields fail to be returned.
    • The following issue is fixed: In parallel queries, when the MAX or MIN function is used together with GROUP BY and loose index scans are used, the statements are still being executed after the queries are killed.
    • Several issues that are related to failovers are fixed.
    • Several issues that are related to parallel queries are fixed.
    • The following issue is fixed: When you execute the SHOW BINARY LOGS statement, transactions may not be committed.
  • 8.0.1.1.2 (2020-04-09)
    Category Description
    New features and performance optimization
    • The sorting method is optimized. Column values are first sorted based on string prefixes, and then based on entire strings. To be more specific, if the string prefixes of the column values are the same, the column values are sorted based on the entire strings. When columns of the CHAR and VARCHAR data types are sorted, you can specify the maximum length of different strings in the prefix to accelerate the comparison process. This reduces the sorting time.
    • Parallel queries are supported in the following scenarios:
      • Parallel queries are supported for cost models of range scans.
      • Parallel queries are supported for temporary tables.
      • Parallel queries can be performed based on the semi-join materialization strategies: lookup and scan.
    • Three types of session state trackers are added. The PolarDB intelligent proxy can use these session state trackers to help apply the persistent connection feature. After the trackers are enabled, you can track the changes of user variables in sessions, CREATE and DELETE operations on temporary tables, and PREPARE and DEALLOCATION operations in SQL statements.
    • The performance of dropping an adaptive hash index (AHI) is optimized when DDL statements are executed. This reduces the impact of DDL statements on cluster performance.
    • The recycle bin feature is added to prevent data loss that is caused by unintended deletion operations.
    • The performance of truncating temporary tablespaces in large buffer pools is improved. This reduces the impact of the operations that are related to temporary tables on cluster performance.
    Fixed issues
    • The following issue is fixed: If aggregate functions are nested in the IF function, an error occurs when the ROLLUP function is executed.
    • The issues that occur when the values of the BLOB data type are sorted are fixed.
    • The issue that occurs when the SQL PREPARE statement includes aggregate functions in parallel queries is fixed.
    • Several issues that are related to parallel queries are fixed.
    • The following issue is fixed: Excessive redo logs may be cleared.
    • The issues that are related to the redo logs of read-only nodes are fixed.
  • 8.0.1.1.1 (2020-03-28)
    Category Description
    New features and performance optimization
    • Parallel queries are supported when subqueries contain the ROLLUP function.
    • The statement concurrency control feature is supported.
    • The POLARDB_INDEX hint is added.
    • The replication delay between the primary node and read-only nodes is reduced.
    • The thread pool feature is supported. For more information, see Thread pool.
    • The keyring_rds plug-in for TDE is supported.
    • GDNs are supported. For more information, see Global database networks.
    • The lock-free transaction system is optimized and the read and write performance is improved.
    Fixed issues
    • Several issues that are related to parallel queries are fixed.
    • The following issue is fixed: A value of 0 may be returned for the statistics in online DDL operations.
    • The file system in user mode is optimized to accelerate cluster startup.
    • The following issue is fixed: Clusters may become unavailable when innodb_flush_method is set to all_o_direct.
    • The following issue is fixed: Clusters may become unavailable if you release a lock after a transaction is committed.
    • The following issue is fixed: User requests may be blocked when slow query logs are truncated.
    • The following issue is fixed: Clusters may become unavailable due to the compressed pages on read-only nodes.
    • The following issue is fixed: Replication connections may be killed in thread pools by mistake.
  • 8.0.1.1.0 (2020-02-05)
    Category Description
    New features and performance optimization
    • The parallel query feature is improved, and the parallel computing of the ROLLUP function that is used for enterprise-level analysis is supported.
    • The capabilities of the optimizer cost model are improved. You can specify filters to decrease selectivity. The cost model is supported for parallel queries. The optimizer checks whether a parallel or serial execution plan is used for the executed SQL statements based on the selectivity.
    • Parallel threads can be allocated based on the first in, first out (FIFO) mode and managed in a unified manner. This ensures that system resources are not exhausted by a large number of parallel queries.
    Fixed issues
    • Issues that are related to memory in parallel queries are fixed.
    • Issues that are related to instability in parallel queries are fixed.
  • 8.0.1.0.6 (2020-01-01)
    Category Description
    Fixed issues
    • The following issue is fixed: The binary log index file is not closed after the primary node serves as a read-only node.
    • The following issue is fixed: Clusters become unavailable when read-only nodes access undo log pages that are purged.
    • The following issue is fixed: Background threads access tablespace pages that do not exist when a read-only node is promoted to the primary node during a failover.
    • The following issue is fixed: After clusters are shut down, log threads exit but redo logs are still being written. As a result, the clusters become unavailable.
  • 8.0.1.0.5 (2019-12-03)
    Category Description
    New features and performance optimization
    • The optimizer trace feature allows you to trace information about parallel queries. For example, you can use the optimizer trace tool to analyze the reason why a parallel query is used or not used.
    • Hints are added for parallel queries. You can add hints to SQL statements to explicitly enable parallelism and specify the degree of parallelism.
    • Parallel scans are supported if you execute the INSERT INTO SELECT statement when the isolation level is READ COMMITTED. You can execute the INSERT INTO SELECT statement to query data and insert the result into another table.
    Fixed issues
    • Several issues that are related to parallel queries are fixed.
    • The following issue is fixed: After a read-only node is promoted to the primary node during a failover, the new primary node becomes unavailable.
    • The following issue is fixed: Errors are reported due to the execution of some DDL statements when a failover occurs.
    • The following issue is fixed: The error message "too many connection error" is reported when the upper limit of connections that are supported by locks is reached.

PolarDB for MySQL 5.7

The following table describes the versions and the features that are supported by PolarDB for MySQL 5.7.

  • 5.7.1.0.16 (Release date: 2021-12-14)
    Item Description
    Fixed issue The policy of manually triggering checkpoints is optimized.
  • 5.7.1.0.15 (Release date: 2021-11-17)
    Item Description
    New feature and performance optimization The fast query cache feature is added. For more information, see Fast query cache.
  • 5.7.1.0.14 (Release date: 2021-10-19)
    Item Description
    Fixed issue
    • Optimizer hints are provided for users to control whether to force merge views. For more information, see MySQL official document.
    • The SELECT FOR UPDATE WAIT N syntax is supported. N specifies the number of seconds during which a row remains locked. The timeout applies only to locking a single row. To lock multiple rows for a query, the system detects the timeout only based on a single row instead of multiple rows. If the lockout time exceeds the specified N value, the system returns a similar lockout timeout error: Lock wait timeout exceeded; try restarting transaction.
  • 5.7.1.0.13 (Release date:2021-09-10)
    Item Description
    New feature and performance optimization GDN allows you to run the alter polar to slave command to promote a read-only node to the primary node, which implements high availability of clusters.
  • 5.7.1.0.12 (Release date: 2021-08-27)
    Item Description
    New feature and performance optimization
    Fixed issue
    • The statement concurrency control rules where databases and tables are specified cannot match actual conditions.
    • The process of loading redo logs is accelerated for the read-only nodes and the secondary cluster, which improves the synchronization efficiency of the primary node.
  • 5.7.1.0.11 (Release date: 2021-07-08)
    Item Description
    New feature and performance optimization The polar_replica_work_on_nonblock_mdl_mode parameter is added. If this parameter is set to on, the uncommitted transactions that use the READ UNCOMMITTED or READ COMMITTED isolation level on read-only nodes no longer block DDL operations on the primary node. In addition, atomicity, consistency, isolation, and durability (ACID) is no longer ensured for the operations of creating tables on the read-only nodes.
  • 5.7.1.0.10 (Release date: 2021-06-15)
    Item Description
    New feature and performance optimization This version is compatible with MySQL 8.0 and supports the SELECT FOR UPDATE, SHARE SKIP LOCKED, and NOWAIT statements. For more information, see MySQL 8.0.
    Fixed issue You can store data in temporary tables in InnoDB databases to disks by using read-only nodes.
  • 5.7.1.0.9 (Release date: 2021-05-13)
    Item Description
    Fixed issue
    • When data is retrieved from multiple tables, the storage engine can be quickly launched.
    • The following issue is fixed: The database crashes when you roll back an update operation on a virtual column.
  • 5.7.1.0.8 (Release date: 2021-04-19)
    Item Description
    New feature and performance optimization A feature is added to decide whether the primary node must apply the checkpoint policy immediately when it establishes a replication relationship with read-only nodes.
    Fixed issue
    • KICKOUT is used as a non-reserved keyword.
    • The following issue is fixed: The encryption information in tables that are encrypted by TDE may be lost during a failover. This results in decryption errors.
  • 5.7.1.0.7 (Release date: 2021-03-10)
    Item Description
    New feature and performance optimization
    • The parallel DDL feature is supported. This feature accelerates the execution of DDL statements. For more information, see Parallel DDL.
    • The innodb_buffer_pool_in_core_file parameter is added. This way, buffer pools can be removed from core files.
    • The following index hints are supported. This allows the optimizer to use or ignore the specified indexes when the optimizer processes queries.
      • GROUP_INDEX or NO_GROUP_INDEX: The optimizer uses or ignores the specified indexes when the optimizer performs index scans for GROUP BY operations.
      • INDEX or NO_INDEX: They system forces the server to use or ignore the specified indexes.
      • JOIN_INDEX or NO_JOIN_INDEX: They system forces MySQL to use or ignore the specified indexes regardless of what method is used to query data.
    • The following join order hints are supported. This allows the optimizer to join tables in a valid order.
      • JOIN_FIXED_ORDER: They system forces the optimizer to join tables by using the order in which the tables appear in the FROM clause.
      • JOIN_ORDER: The optimizer is configured to join tables by using the specified order. This hint applies to named tables. The optimizer may place tables that are not named anywhere in the join order, including between specified tables.
      • JOIN_PREFIX: The optimizer is configured to join the first several tables in the join plan by using the specified order. This hint applies to named tables. The optimizer places all other tables after named tables.
      • JOIN_SUFFIX: The optimizer is configured to join the last several tables in the join plan by using the specified order. This hint applies to named tables. The optimizer places all other tables before named tables.
    Fixed issue
    • The mapping of token numbers is rearranged and some tokens are reserved. This fixes the issue that the digest hash value of a statement is changed after a new token is inserted.
    • The following issue is fixed: A configuration update may fail because read-only nodes cannot be registered on the primary node.
    • The following issue is fixed: The cluster becomes unavailable when you create or delete temporary tables during the storage process. This issue occurs when the session_track_temporary_tables system variable is enabled.
  • 5.7.1.0.6.3 (Release date: 2021-02-22)
    Item Description
    Fixed issue The following issue is fixed: The SHOW PROCESSLIST statement in some scenarios returns an invalid result.
  • 5.7.1.0.6.2 (Release date: 2021-02-10)
    Item Description
    Fixed issue The following issue is fixed: An error occurs when you perform a query that is optimized by Index Merge on a read-only node. The error code is 1032 and the error message is Can't find record in TABLE.
  • 5.7.1.0.6.1 (Release date: 2021-02-02)
    Item Description
    Fixed issue
    • The following issue is fixed: Dirty page flushing cannot be performed as expected on read/write nodes.
    • The following issue is fixed: The primary zone cannot be changed for a cluster that has performed a failover.
    • The following issue is fixed: The database does not respond if Thread Descriptor (THD) is invoked when the SHOW PROCESSLIST statement is being executed.
  • 5.7.1.0.6 (Release date: 2021-01-29)
    Item Description
    New feature and performance optimization
    • The statement queue feature is supported. For more information, see Statement queue.
    • The Instant add column feature is supported. This feature can instantly add columns to a table. For more information, see Instant ADD COLUMN.
    • The Returning feature is supported. For more information, see Returning.
    Fixed issue The following issue is fixed: The system table is lost when you upgrade the PolarDB engine version.
  • 5.7.1.0.5 (Release date: 2020-12-31)
    Item Description
    Fixed issue
    • The following issue is fixed: Read-only nodes do not respond when you query data from the read-only nodes after the key of the primary node is modified.
    • The following issue is fixed: Read-only nodes do not respond when you analyze partitioned tables on the read-only nodes.
    • The following issue is fixed: The new primary node does not respond due to tablespace inconsistency after a failover is performed.
  • 5.7.1.0.4 (Release date: 2020-11-17)
    Item Description
    Fixed issue
    • The following issue is fixed: Data cannot be inserted into temporary tables after a failover is performed.
    • The following issue is fixed: A read-only node becomes unavailable when a temporary tablespace is extended on the read-only node.
    • The following issue is fixed: The simulated AIO does not work as expected.
  • 5.7.1.0.3 (Release date: 2020-10-21)
    Item Description
    New feature and performance optimization The TDE feature is supported. For more information, see Configure TDE.
    Fixed issue
    • The following issue is fixed: Statistics are inconsistent between the primary node and read-only nodes.
    • The following issue is fixed: An error is returned after you execute the SHOW PROCESSLIST statement.
  • 5.7.1.0.2 (Release date: 2020-08-28)
    Item Description
    Fixed issue
    • The following issue is fixed: IDB files cannot be created after a migration from ApsaraDB RDS for MySQL 5.7.
    • You cannot run CF_STATUS_COMMAND commands during a failover process. This is to ensure that the failover process succeeds.
    • The following issue is fixed: The primary node becomes unavailable due to page contention that is caused by updating the aggregation thread and the truncate logic in the background.
  • 5.7.1.0.1 (Release date: 2020-07-30)
    Item Description
    Fixed issue
    • The following issue is fixed: MaxScale becomes inaccessible due to the missing code of some exclusive commands in PolarDB.
    • The following issue is fixed: The cluster that is restored from the cluster recycle bin is unavailable because no tablespaces are found.
    • The following issue is fixed: The unmount PFS error occurs if one or more files are still open when you run the promote replica command.

PolarDB for MySQL 5.6

The following table describes the versions and features that are supported by PolarDB for MySQL 5.6.

  • 5.6.1.0.30 (Release date: 2021-11-10)
    Item Description
    Fixed issue
    • The following issue is fixed: The statistics gathered for partitioned tables are inconsistent.
    • The following issue is fixed: When the packet length is 251 bytes, a length encoding error occurs.
  • 5.6.1.0.29 (Release date: 2021-09-09)
    Item Description
    New feature and performance optimization
    • The database engine supports transaction-based resumable transfer.
    • The fast query cache feature is supported. For more information, see Fast query cache.
    Fixed issue The process of loading redo logs is accelerated for the read-only nodes and the secondary cluster, which improves the synchronization efficiency of the primary node.
  • 5.6.1.0.28 (Release date: 2021-07-23)
    Item Description
    New feature and performance optimization The polar_replica_work_on_nonblock_mdl_mode parameter is added. If this parameter is set to on, the uncommitted transactions that use the READ UNCOMMITTED or READ COMMITTED isolation level on read-only nodes no longer block DDL operations on the primary node. In addition, atomicity, consistency, isolation, and durability (ACID) is no longer ensured for the operations of creating tables on the read-only nodes.
    Fixed issue The speed at which the tablespace metadata is loaded is increased. For an instance that contains millions of tables, this can significantly reduce the time required to restore a failed primary node and the time required to start a read-only node.
  • 5.6.1.0.27 (Release date: 2021-06-01)
    Item Description
    Fixed issue
    • 4K alignment is used when you run the truncate polar logs lsn command to delete files on read-only nodes.
    • KICKOUT is used as a non-reserved keyword.
    • The policy that specifies whether a checkpoint is immediately triggered when a read-only node is attached to the primary node for the first time is adjusted. The new policy specifies that the checkpoint is not triggered if the log sequence number (LSN) difference is less than a specified threshold.
    • Conditional statements can be added in the load polar logs statement.
    • The issue in which duplicate entries exist for the auto-increment field is fixed.
  • 5.6.1.0.26 (Release date: 2021-03-19)
    Item Description
    Fixed issue
    • The following issue is fixed: The connection fails when you run the FLUSH PRIVILEGES or FLUSH GRANT command that is used to authorize multiple users at a time.
    • The following issue is fixed: An incorrect estimation result is returned in some cases because the estimation of partition tables is aborted.
    • The following issue is fixed: The SHOW PROCESSLIST statement returns invalid results in some scenarios.
    • The following issue is fixed: A cluster becomes unavailable when you create or delete temporary tables during the storage process. This issue occurs when the session_track_temporary_tables system variable is enabled.
  • 5.6.1.0.25 (Release date: 2021-02-05)
    Item Description
    New feature and performance optimization The database-level data recovery feature and the table-level data recovery feature are optimized. This way, data can be recovered in a more efficient manner.
    Fixed issue
    • The following issue is fixed: Read-only nodes become unavailable after they read truncated undo pages.
    • The following issue is fixed: The primary zone cannot be changed after a failover is performed for a cluster.
  • 5.6.1.0.24 (Release date: 2021-01-22)
    Item Description
    New feature and performance optimization
    • The process in which the PolarDB engine is initialized is optimized. The time required to initialize the engine is reduced in large table scenarios.
    • The Kernel Version information about clusters can be viewed on the Basic Information page.
    Fixed issue
    • The following issue is fixed: Undo logs cannot be truncated when data is being migrated from an ApsaraDB RDS instance to a PolarDB cluster.
    • The following issue is fixed: System tables cannot be added.
    • The following issue is fixed: The primary node is unavailable when databases or tables are being restored.
    • The following issue is fixed: The returned decimal numbers are not correctly sorted.
    • The issues that cause the MySQL service process to break down in some scenarios are fixed.
  • 5.6.1.0.23 (Release date: 2021-01-04)
    Item Description
    Fixed issue The following issue is fixed: Memory leaks occur on read-only nodes.
  • 5.6.1.0.22 (Release date: 2020-12-25)
    Item Description
    New feature and performance optimization The directory indexing feature is supported by PFS to improve cluster performance in scenarios where a large number of tables are used.
    Fixed issue
    • The following issue is fixed: A cluster becomes unavailable due to invalid node roles after a failover between the primary node and a read-only node is performed in some cases.
    • The following issue is fixed: Read-only nodes do not respond because the statement queue feature is not initialized.
    • The following issue is fixed: New system tables are not initialized after a failover between the primary node and a read-only node.
    • The following issue about the thread pool and connection control features is fixed: If you enable one of the features, the other feature is automatically enabled.
    • The following issue is fixed: A cluster becomes unavailable due to duplicate IDs in the full-text index.
    • The following issue is fixed: You cannot execute queries on a read-only node in some cases.
    • The following issue is fixed: The replication process is interrupted when the log replication thread exits in an abnormal manner.
  • 5.6.1.0.21 (Release date: 2020-11-12)
    Item Description
    New feature and performance optimization
    • Point-in-time restore is supported. For more information, see Method 2 for full restoration: point-in-time restore.
    • The TDE feature is supported. For more information, see Configure TDE.
    • PFS allows you to mount multiple disks to restore individual tables.
    • The resource utilization of the adaptive hash index lock in physical replications is optimized.
    Fixed issue
    • The following issue is fixed: The out of memory error occurs when you use DYNAMIC RANGE and INDEX MERGE in SELECT statements.
    • The following issue is fixed: A cluster breaks down when you create or delete an account in some cases.
    • The following issue is fixed: Read-only nodes cannot be reconnected in some cases.
    • The following issue is fixed: A cluster fails to start when a failover error occurs.
    • The following issue is fixed: The Binlog thread is not in the expected state in some cases.
  • 5.6.1.0.20 (Release date: 2020-10-27)
    Item Description
    New feature and performance optimization Physical replication can be performed in a more efficient manner in some scenarios.
    Fixed issue
    • The following issue is fixed: A cluster breaks down when you execute the CREATE TABLE... SELECT statement.
    • The following issue is fixed: Memory leaks occur in the stored procedure due to the excessive use of derived tables.
    • The following issue is fixed: The data is not restored to the specified point in time or fails to be restored.
    • The following issue is fixed: A large number of PFS exception logs are reported.
    • The following issue is fixed: Tables are lost when you perform DDL operations. This issue occurs after the foreign key check is disabled.
    • The following issue is fixed: Read-only nodes break down when you truncate multiple temporary tables at the same time.
  • 20200831 (Release date: 2020-09-22)
    Item Description
    New feature and performance optimization Local disks and writable snapshots that are created for the disks attached to an instance are supported by PFS. The performance of PFS is optimized.
    Fixed issue
    • The following issue is fixed: The cluster breaks down when you use the statement queue feature in some cases.
    • The following issue is fixed: A large amount of storage resources is being consumed by the core files.
    • The following issue is fixed: The statistics on the primary node and the statistics on read-only nodes are inconsistent.
    • The following issue is fixed: After a read-only node is specified as the primary node, the other read-only nodes cannot connect to the new primary node.
    • The following issue is fixed: The full-text index cache that is allocated to be shared between the primary node and read-only nodes is inconsistent.
  • 20200616 (Release date: 2020-07-01)
    Item Description
    New feature and performance optimization
    • The statement queue feature is supported. For more information, see Statement queue.
    • The replication delay between the primary node and read-only nodes is reduced.
    • The metadata lock can be replicated when you execute the LOCK TABLE statement.
    Fixed issue
    • The metadata lock bug that occurs during data replication is fixed.
    • The following issue is fixed: A full-text search index is created in the system table.
    • The issues that are related to the updates and performance optimization of hot rows are fixed.
  • 20200601 (Release date: 2020-06-05)
    Item Description
    New feature and performance optimization
    Fixed issue The following issue is fixed: The write performance is reduced due to issues in thread pools.
  • 20200507 (Release date: 2020-05-13)
    Item Description
    New feature and performance optimization
    • The statement concurrency control feature is added.
    • A parameter is added to manage the ratio of idle space to total space on index pages.
    • The simulated asynchronous I/O model is optimized.
    Fixed issue
    • The following issue is fixed: The performance is degraded because data of the Boolean flag data type exists.
    • The following issue is fixed: Clusters become unavailable because the pfs_umount table is not closed.

Version upgrade

  • Upgrade major versions and minor versions

    PolarDB does not allow you to upgrade the major versions or the minor versions in a direct way. For example, you cannot upgrade PolarDB for MySQL 5.6 to PolarDB for MySQL 8.0 or upgrade the minor version from PolarDB for MySQL 8.0.1 to 8.0.2 in a direct way. However, you can use Data Transmission Service (DTS) to migrate or synchronize data from the cluster of the source version to the cluster of the destination version. For more information about how to migrate or synchronize data, see Overview of data migration or synchronization solutions.

  • Upgrade revision versions

    For more information about how to upgrade revision versions, see Upgrade the revision version.