Skip to content

Releases: pingcap/tidb

tidb-server v5.3.3

14 Sep 03:21
d2a264a
Compare
Choose a tag to compare

There is no release note for this version.

tidb-server v5.3.2

29 Jun 02:29
d2a264a
Compare
Choose a tag to compare

Compatibility Changes

  • Fix the issue that the REPLACE statement incorrectly changes other rows when the auto ID is out of range #29483

Bug Fixes

  • Fix the issue that Amazon S3 cannot correctly calculate the size of compressed data #30534
  • Fix the issue of potential data index inconsistency in optimistic transaction mode #30410
  • Fix the issue that a SQL operation is canceled when its JSON type column joins its CHAR type column #29401
  • Previously, when a network connectivity issue occurred, TiDB did not always correctly free the resources held by the disconnected session. This issue has been fixed so that open transactions can be rolled back and other associated resources can be released. #34722
  • Fix the issue of the data and columnID count not match error that occurs when inserting duplicated values with TiDB Binlog enabled #33608
  • Fix the issue that query result might be wrong when Plan Cache is started in the RC isolation level #34447
  • Fix the session panic that occurs when executing the prepared statement after table schema change with the MySQL binary protocol #33509
  • Fix the issue that the table attributes are not indexed when a new partition is added and the issue that the table range information is not updated when the partition changes #33929
  • Fix the issue that the TiDB server might run out of memory when the INFORMATION_SCHEMA.CLUSTER_SLOW_QUERY table is queried. This issue can be triggered when you check slow queries on the Grafana dashboard #33893
  • Fix the issue that some DDL statements might be stuck for a period after the PD node of a cluster is replaced #33908
  • Fix the issue that granting the all privilege might fail in clusters that are upgraded from v4.0 #33588
  • Fix wrong results of deleting data of multiple tables using left join #31321
  • Fix a bug that TiDB may dispatch duplicate tasks to TiFlash #32814
  • Fix the issue that the background HTTP service of TiDB might not exit successfully and makes the cluster in an abnormal state #30571
  • Fix the panic issue caused by the fatal error: concurrent map read and map write error #35340

tidb-server v6.1.0

13 Jun 03:00
1a89dec
Compare
Choose a tag to compare

Improvements

  • Improve the performance of the UnionScanRead operator #32433
  • Improve the display of task types in the output of EXPLAIN (add the MPP task type) #33332
  • Support using rand() as the default value of a column #10377
  • Support using uuid() as the default value of a column #33870
  • Support modifying the character set of columns from latin1 to utf8/utf8mb4 #34008

Bug fixes

  • Fix the issue of possible panic that might occur when the in function processes the bit type data #33070
  • Fix the issue of wrong query result because the UnionScan operator cannot maintain the order #33175
  • Fix the issue that the Merge Join operator gets wrong results in certain cases #33042
  • Fix the issue that the index join result might be wrong in the dynamic pruning mode #33231
  • Fix the issue that data might not be garbage-collected when some partitions of a partitioned table is dropped #33620
  • Fix the issue that some DDL statements might be stuck for a period after the PD node of a cluster is replaced #33908
  • Fix the issue that the TiDB server might run out of memory when the INFORMATION_SCHEMA.CLUSTER_SLOW_QUERY table is queried. This issue can be triggered when you check slow queries on the Grafana dashboard #33893
  • Fix the issue that the system variable max_allowed_packet does not take effect #31422
  • Fix the issue of memory leak in the TopSQL module #34525 #34502
  • Fix the issue that the Plan Cache might be wrong on the PointGet plan #3237
  • Fix the issue that query result might be wrong when Plan Cache is started in the RC isolation level #34447

tidb-server v5.4.1

13 May 04:49
be48447
Compare
Choose a tag to compare

Improvements

  • Support using the PointGet plan for queries that read the _tidb_rowid column #31543
  • Add more logs and metrics for the Apply operator to show whether it is parallel #33887
  • Improve the TopN pruning logic for Analyze Version 2 used for collecting statistics #34256
  • Support displaying multiple Kubernetes clusters in the Grafana dashboard #32593

Bug Fixes

  • Fix the issue that date_format in TiDB handles '\n' in a MySQL-incompatible way #32232
  • Fix the issue that TiDB writes wrong data due to the wrong encoding of the ENUM or SET column #32302
  • Fix the issue that the Merge Join operator gets wrong results in certain cases #33042
  • Fix the issue that TiDB gets a wrong result when a correlated subquery returns a constant #32089
  • Fix the issue that TiDB gets the wrong result when using TiFlash to scan tables with empty range although TiFlash does not support reading tables with empty range yet #33083
  • Fix the issue that the MAX or MIN function on the ENUM or SET column returns a wrong result when the new collation is enabled in TiDB #31638
  • Fix a bug that CTE might be blocked when a query reports errors #31302
  • Fix wrong range calculation results for Nulleq function on Enum values #32428
  • Fix TiDB OOM when exporting data using ChunkRPC #31981 #30880
  • Fix a bug that tidb_super_read_only is not automatically enabled when tidb_restricted_read_only is enabled #31745
  • Fix the issue that the greatest or least function with collation gets a wrong result #31789
  • Fix load data panic if the data is broken at an escape character #31589
  • Fix the invalid transaction error when executing a query using index lookup join #30468
  • Fix wrong results of deleting data of multiple tables using left join #31321
  • Fix a bug that TiDB may dispatch duplicate tasks to TiFlash #32814
  • Fix the issue that granting the all privilege might fail in clusters that are upgraded from v4.0 #33588
  • Fix the session panic that occurs when executing the prepared statement after table schema change with the MySQL binary protocol #33509
  • Fix the issue that executing SQL statements that have the compress() expression with tidb_enable_vectorized_expression enabled will fail #33397
  • Fix the issue of high CPU usage by the reArrangeFallback function #30353
  • Fix the issue that the table attributes are not indexed when a new partition is added and the issue that the table range information is not updated when the partition changes #33929
  • Fix a bug that the TopN statistical information of a table during the initialization is not correctly sorted #34216
  • Fix the error that occurs when reading from the INFORMATION_SCHEMA.ATTRIBUTES table by skipping the unidentifiable table attributes #33665
  • Fix a bug that even if @@tidb_enable_parallel_apply is set, the Apply operator is not paralleled when an order property exists #34237
  • Fix a bug that '0000-00-00 00:00:00' can be inserted into a datetime column when sql_mode is set to NO_ZERO_DATE #34099
  • Fix the issue that the TiDB server might run out of memory when the INFORMATION_SCHEMA.CLUSTER_SLOW_QUERY table is queried. This issue can be triggered when you check slow queries on the Grafana dashboard. #33893
  • Fix a bug that in the NOWAIT statement, a transaction being executed does not return immediately when encountering a lock #32754
  • Fix a bug that causes a failure when creating a table with the GBK charset and gbk_bin collation #31308
  • Fix a bug that when enable-new-charset is on, creating a GBK charset table with collation fails with the "Unknown character set" error #31297

tidb-server v5.2.4

26 Apr 06:51
fe5aa97
Compare
Choose a tag to compare

There is no release note for this version.

tidb-server v6.0.0

06 Apr 02:55
36a9810
Compare
Choose a tag to compare

Improvements

  • Clear the placement rule settings of a table automatically after restoring the table using the FLASHBACK or RECOVER statement #31668
  • Add a performance overview dashboard to show core performance metrics on typical critical paths, making metrics analysis on TiDB easier #31676
  • Support using the REPLACE keyword in the LOAD DATA LOCAL INFILE statement #24515
  • (dup: release-5.1.4.md > Improvements> TiDB)- Support partition pruning for the built-in IN expression in Range partition tables #26739
  • Improve query efficiency by eliminating potentially redundant Exchange operations in MPP aggregation queries #31762
  • Improve compatibility with MySQL by allowing duplicate partition names in the TRUNCATE PARTITION and DROP PARTITION statements #31681
  • Support showing the CREATE_TIME information in the results of the ADMIN SHOW DDL JOBS statement #23494
  • Support a new built-in function CHARSET() #3931
  • Support filtering a baseline capturing blocklist by usernames #32558
  • Optimize the results of the ADMIN SHOW DDL JOBS and SHOW TABLE STATUS statements by displaying the time according to the current time_zone #26642
  • Supports pushing down the DAYNAME() and MONTHNAME() functions to TiFlash #32594
  • Support pushing down the REGEXP function to TiFlash #32637
  • Support tracking the execution of the UnionScan operator #32631
  • Support pushing down the GREATEST and LEAST functions to TiFlash #32787
  • Support using the PointGet plan for queries that read the _tidb_rowid column #31543
  • Support using wildcards in a baseline capturing blocklist #32714
  • Support showing the original partition name in the output of the EXPLAIN statement without converting the name to lowercase #32719
  • Enable partition pruning for RANGE COLUMNS partitionings on IN conditions and string type columns #32626
  • Return an error message when a system variable is set to NULL #32850
  • Remove Broadcast Join from the non-MPP mode #31465
  • Support pushing down the DAYOFMONTH() and LAST_DAY() functions to TiFlash #33012
  • Support pushing down the DAYOFWEEK() and DAYOFYEAR() functions to TiFlash #33130
  • Support pushing down the IS_TRUE, IS_FALSE, and IS_TRUE_WITH_NULL functions to TiFlash #33047
  • Support executing MPP plans on partitioned tables in dynamic pruning mode #32347
  • Support enabling the switch to reduce read latency in transactions at the READ-COMMITTED isolation level for the read-consistency read #33159
  • Support pushing down predicates for common table expressions (CTEs) #28163
  • Simplify the configurations of Statement Summary and Capture Plan Baselines to be available on a global basis only #30557
  • Update gopsutil to v3.21.12 to address alarms reported when building binary on macOS 12 #31607

Bug Fixes

  • Fix the bug that the placement rule reports an error when SCHEDULE = majority_in_primary, and PrimaryRegion and Regions are of the same value #31271
  • (dup: release-5.3.1.md > Bug fixes> TiDB)- Fix the invalid transaction error when executing a query using index lookup join #30468
  • Fix the bug that show grants returns incorrect results when two or more privileges are granted #30855
  • Fix the bug that INSERT INTO t1 SET timestamp_col = DEFAULT would set the timestamp to the zero timestamp for the field defaulted to CURRENT_TIMESTAMP #29926)
  • ​Fix errors reported in reading the results by avoiding encoding the maximum value and minimum non-null value of the string type #31721
  • Fix load data panic if the data is broken at an escape character #31589
  • (dup: release-5.3.1.md > Bug fixes> TiDB)- Fix the issue that the greatest or least function with collation gets a wrong result #31789
  • Fix the bug that the date_add and date_sub functions may return incorrect data types #31809
  • Fix possible panic when inserting data to virtually generated columns using an insert statement #31735
  • Fix the bug that no error is reported when duplicate columns are present in the created list partition #31784
  • Fix wrong results returned when select for update union select uses incorrect snapshots #31530
  • (dup: release-5.3.1.md > Bug fixes> Tools> Backup & Restore (BR))- Fix the potential issue that Regions might be unevenly distributed after a restore operation is finished #31034
  • Fix the bug that COERCIBILITY is wrong for the json type #31541
  • Fix wrong collation of the json type when this type is processed using builtin-func #31320
  • Fix the bug that PD rules are not deleted when the count of TiFlash replicas is set to 0 #32190
  • (dup: release-5.3.1.md > Bug fixes> TiDB)- Fix the issue that alter column set default wrongly updates the table schema #31074
  • (dup: release-5.3.1.md > Bug fixes> TiDB)- Fix the issue that date_format in TiDB handles in a MySQL-incompatible way #32232
  • Fix the bug that errors may occur when updating partitioned tables using join #31629
  • Fix wrong range calculation for Nulleq function on Enum values #32428
  • Fix possible panic in upper() and lower() functions #32488
  • Fix time zone problems encountered when changing the other type columns to timestamp type columns #29585
  • Fix TiDB OOM when exporting data using ChunkRPC #31981 #30880
  • Fix the bug that sub SELECT LIMIT does not work as expected in dynamic partition pruning mode #32516
  • Fix wrong or inconsistent format of bit default value on INFORMATION_SCHEMA.COLUMNS #32655
  • Fix the bug that partition table pruning might not work for listing partition tables after server restart #32416
  • Fix the bug that add column may use wrong default timestamp after executing SET timestamp #31968
  • Fix the bug that connecting to a TiDB passwordless account from MySQL 5.5 or 5.6 client may fail #32334
  • Fix wrong results when reading partitioned tables in dynamic mode in transactions #29851
  • Fix the bug that TiDB may dispatch duplicate tasks to TiFlash #32814
  • Fix wrong results returned when the timdiff function contains a millisecond #31680
  • Fix wrong results when explicitly reading partitions and using the IndexJoin plan #32007
  • Fix the bug that "rename column" fails when changing column type concurrently #31075
  • Fix the bug that the formula for calculating net cost for TiFlash plans is not aligned with TiKV plans #30103
  • Fix the bug that KILL TIDB cannot take effect immediately on idle links #24031
  • Fix the bug that reading from a table with generated columns may get wrong results #33038
  • Fix wrong results of deleting data of multiple tables using left join #31321
  • Fix the bug that the SUBTIME function returns a wrong result in case of overflow #31868
  • Fix the bug that the selection operator can not be pushed down when an aggregation contains the having condition #33166
  • Fix the bug ...
Read more

v6.0.0-alpha: session: fix global sysdate_is_now won't work (#32785)

04 Mar 05:33
74d74b0
Compare
Choose a tag to compare

tidb-server v5.3.1

03 Mar 10:17
459917c
Compare
Choose a tag to compare

Compatibility changes

  • Change the default value of the system variable tidb_analyze_version from 2 to 1 #31748
  • Since v5.1.4, if TiKV is configured with storage.enable-ttl = true, the requests from TiDB are rejected, because the TTL feature of TiKV only supports the RawKV mode #27303

Feature enhancements

  • Support partition pruning for the built-in IN expression in Range partition tables #26739
  • Improve the accuracy of tracking memory usage when IndexJoin is executed #28650

Bug fixes

  • Fix a memory leak bug that occurs when the system variable tidb_analyze_version is set to 2 #32499
  • Fix the issue that the MaxDays and MaxBackups configurations do not take effect for the slow log #25716
  • Fix the issue that executing the INSERT ... SELECT ... ON DUPLICATE KEY UPDATE statement gets panic #28078
  • Fix the wrong result that might occur when performing JOIN on ENUM type columns #27831
  • Fix the issue that INDEX HASH JOIN returns the send on closed channel error #31129
  • Fix the issue that using the BatchCommands API might block sending TiDB requests to TiKV in some rare cases #32500
  • Fix the issue of potential data index inconsistency in optimistic transaction mode #30410
  • Fix the issue that window functions might return different results when using a transaction or not #29947
  • Fix the issue that the length information is wrong when casting Decimal to String #29417
  • Fix the issue that the GREATEST function returns incorrect result that occurs when setting the tidb_enable_vectorized_expression vectorized expression to off #29434
  • Fix the issue that the optimizer might cache invalid plans for join in some cases #28087
  • Fix wrong results of the microsecond and hour functions in vectorized expressions #29244 #28643
  • Fix the TiDB panic when executing the ALTER TABLE.. ADD INDEX statement in some cases #27687
  • Fix a bug that the availability detection of MPP node does not work in some corner cases #3118
  • Fix the DATA RACE issue when assigning MPP task ID #27952
  • Fix the INDEX OUT OF RANGE error for a MPP query after deleting an empty dual table #28250
  • Fix the issue of false positive error log invalid cop task execution summaries length for MPP queries #1791

tidb-server v5.1.4

21 Feb 13:37
094b3e5
Compare
Choose a tag to compare

Compatibility changes

  • Change the default value of the system variable tidb_analyze_version from 2 to 1 #31748
  • Since v5.1.4, if TiKV is configured with storage.enable-ttl = true, the requests from TiDB are rejected, because the TTL feature of TiKV only supports the RawKV mode #27303

Feature enhancements

  • Support partition pruning for the built-in IN expression in Range partition tables #26739
  • Improve the accuracy of tracking memory usage when IndexJoin is executed #28650

Bug fixes

  • Fix a memory leak bug that occurs when the system variable tidb_analyze_version is set to 2 #32499
  • Fix the issue that the MaxDays and MaxBackups configurations do not take effect for the slow log #25716
  • Fix the issue that executing the INSERT ... SELECT ... ON DUPLICATE KEY UPDATE statement gets panic #28078
  • Fix the wrong result that might occur when performing JOIN on ENUM type columns #27831
  • Fix the issue that INDEX HASH JOIN returns the send on closed channel error #31129
  • Fix the issue that using the BatchCommands API might block sending TiDB requests to TiKV in some rare cases #32500
  • Fix the issue of potential data index inconsistency in optimistic transaction mode #30410
  • Fix the issue that window functions might return different results when using a transaction or not #29947
  • Fix the issue that the length information is wrong when casting Decimal to String #29417
  • Fix the issue that the GREATEST function returns incorrect result that occurs when setting the tidb_enable_vectorized_expression vectorized expression to off #29434
  • Fix the issue that the optimizer might cache invalid plans for join in some cases #28087
  • Fix wrong results of the microsecond and hour functions in vectorized expressions #29244 #28643
  • Fix the TiDB panic when executing the ALTER TABLE.. ADD INDEX statement in some cases #27687
  • Fix a bug that the availability detection of MPP node does not work in some corner cases #3118
  • Fix the DATA RACE issue when assigning MPP task ID #27952
  • Fix the INDEX OUT OF RANGE error for a MPP query after deleting an empty dual table #28250
  • Fix the issue of false positive error log invalid cop task execution summaries length for MPP queries #1791

tidb-server v5.4.0

10 Feb 07:21
55f3b24
Compare
Choose a tag to compare

Improvements

  • Add a new system variable tidb_enable_paging to determine whether to use paging to send Coprocessor requests. Enabling this feature can reduce the amount of data to process and to reduce latency and resource consumption #30578
  • Support the ADMIN {SESSION | INSTANCE | GLOBAL} PLAN_CACHE syntax to clear the cached query plan #30370

Bug fixes

  • Fix the issue of the tidb_analyze_version value change that occurs when upgrading the cluster from v4.x to v5.x #25422
  • Fix the issue of the wrong result that occurs when using different collations in a subquery #30748
  • Fix the issue that the result of concat(ifnull(time(3)) in TiDB is different from that in MySQL #29498
  • Fix the issue of potential data index inconsistency in optimistic transaction mode #30410
  • Fix the issue that the query execution plan of IndexMerge is wrong when an expression cannot be pushed down to TiKV #30200
  • Fix the issue that concurrent column type change causes inconsistency between the schema and the data #31048
  • Fix the issue that the IndexMerge query result is wrong when there is a subquery #30913
  • Fix the panic issue that occurs when the FetchSize is set too large in the client #30896
  • Fix the issue that LEFT JOIN might be mistakenly converted to INNER JOIN #20510
  • Fix the issue that panic might occur when the CASE-WHEN expression and collation are used together #30245
  • Fix the issue of wrong query result that occurs when the IN value contains a binary constant #31261
  • Fix the issue of wrong query result that occurs when CTE has a subquery #31255
  • Fix the issue that executing the INSERT ... SELECT ... ON DUPLICATE KEY UPDATE statement gets panic #28078
  • Fix the issue that INDEX HASH JOIN returns the send on closed channel error #31129