Skip to content

Releases: pingcap/tidb

tidb-server v5.1.5

28 Dec 03:06
48145ba
Compare
Choose a tag to compare

Bug fixes

  • Fix the issue that the window function causes TiDB to panic instead of reporting an error #30326
  • Fix the wrong result that occurs when enabling dynamic mode in partitioned tables for TiFlash #37254
  • Fix wrong results of GREATEST and LEAST when passing in unsigned BIGINT arguments #30101
  • Fix wrong results of deleting data of multiple tables using left join #31321
  • Fix the issue that the result of concat(ifnull(time(3))) in TiDB is different from that in MySQL #29498
  • Fix the issue that the SQL statements that contain cast(integer as char) union string return wrong results #29513
  • Fix the issue that INL_HASH_JOIN might hang when used with LIMIT #35638
  • Fix the wrong ANY_VALUE result that occurs when a Region returns empty data #30923
  • Fix wrong results of index join caused by an innerWorker panic #31494
  • Fix the issue that a SQL operation is canceled when its JSON type column joins its CHAR type column #29401
  • 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 issue that concurrent column type change causes inconsistency between the schema and the data #31048
  • Fix the issue that KILL TIDB cannot take effect immediately on idle connections #24031
  • Fix the bug that setting any session variable will make tidb_snapshot fail to work #35515
  • Fix the issue that the Region cache is not cleaned up in time when the Region is merged #37141
  • Fix the panic issue caused by the connection array race in the KV client #33773
  • Fix the issue that when TiDB Binlog is enabled, executing the ALTER SEQUENCE statement might cause a wrong metadata version and cause Drainer to exit #36276
  • Fix the bug that TiDB may panic when querying statement summary tables #35340
  • 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 avg() function returns ERROR 1105 (HY000): other error for mpp stream: Could not convert to the target type - -value is out of range. when queried from TiFlash #29952
  • Fix the issue that ERROR 1105 (HY000): close of nil channel is returned when using HashJoinExec #30289
  • Fix the issue that TiKV and TiFlash return different results when querying logical operations #37258
  • Fix the issue that the EXECUTE statement might throw an unexpected error in specific scenarios #37187
  • Fix the planner wrong behaviors that occur when tidb_opt_agg_push_down and tidb_enforce_mpp are enabled #34465
  • Fix a bug that TiDB might send coprocessor requests when executing the SHOW COLUMNS statement #36496
  • Add warnings for lock tables and unlock tables when the enable-table-lock flag is not enabled #28967
  • Fix the issue that range partitions allow multiple MAXVALUE partitions #36329

tidb-server v6.1.3

05 Dec 03:18
6b02a5d
Compare
Choose a tag to compare

Bug fixes

  • Fix the issue that restore tasks fail when using old framework for collations in databases or tables #39150 @MoCuishle28

tidb-server v6.4.0

17 Nov 02:58
cf36a9c
Compare
Choose a tag to compare

Improvements

  • Allow modifying the noop variable lc_messages #38231 @djshow832
  • Support the AUTO_RANDOM column as the first column of the clustered composite index #38572 @tangenta
  • Use pessimistic transactions in internal transaction retry to avoid retry failure and reduce time consumption #38136 @jackysp
  • Improve the mechanism for loading the metadata. The metadata is loaded into memory only when necessary, which significantly reduces the memory usage during PITR #38404 @YuJuncen
  • Optimize the file scanning logic to accelerate the scan of schema files #38598 @dsdashun

Bug fixes

  • Fix the potential issue of index inconsistency that occurs after you create a new index #38165 @tangenta
  • Fix a permission issue of the INFORMATION_SCHEMA.TIKV_REGION_STATUS table #38407 @CbcWestwolf
  • Fix the issue that the grantor field is missing in the mysql.tables_priv table #38293 @CbcWestwolf
  • Fix the issue that the join result of common table expressions might be wrong #38170 @wjhuang2016
  • Fix the issue that the union result of common table expressions might be wrong #37928 @YangKeao
  • Fix the issue that the information in the transaction region num monitoring panel is incorrect #38139 @jackysp
  • Fix the issue that the system variable tidb_constraint_check_in_place_pessimistic might affect internal transactions. The variable scope is modified to SESSION. #38766
  • Fix the issue that conditions in a query are mistakenly pushed down to projections #35623 @Reminiscent
  • Fix the issue that the wrong isNullRejected check results for AND and OR cause wrong query results #38304 @Yisaer
  • Fix the issue that ORDER BY in GROUP_CONCAT is not considered when the outer join is eliminated, which causes wrong query results #18216 @winoros
  • Fix the issue of the wrong query result that occurs when the mistakenly pushed-down conditions are discarded by Join Reorder #38736 @winoros
  • Fix the restoration failure issue caused by PD leader switch during the restoration process #36910 @MoCuishle28
  • Fix the issue that the log backup task cannot be paused #38250 @joccau
  • Fix the issue that when BR deletes log backup data, it mistakenly deletes data that should not be deleted #38939 @Leavrth
  • Fix the issue that BR fails to delete data when deleting the log backup data stored in Azure Blob Storage or Google Cloud Storage for the first time #38229 @Leavrth
  • Fix the import performance degradation when importing the Apache Parquet files to the target tables that contain the string type columns in thebinary encoding format #38351 @dsdashun

tidb-server v5.3.4

24 Nov 04:24
5ccc10b
Compare
Choose a tag to compare

Bug fixes

  • Fix the issue that the Region cache is not cleaned up in time when the Region is merged #37141
  • Fix the issue that TiDB writes wrong data due to the wrong encoding of the ENUM or SET column #32302
  • Fix the issue that database-level privileges are incorrectly cleaned up #38363
  • Fix the issue that the grantor field is missing in the mysql.tables_priv table #38293
  • Fix the issue that KILL TIDB cannot take effect immediately on idle connections #24031
  • Fix the issue that the return type of date_add and date_sub is different between TiDB and MySQL #36394, #27573
  • Fix the incorrect INSERT_METHOD value when Parser restores table options #38368
  • Fix the issue that authentication fails when a MySQL client of v5.1 or earlier connects to the TiDB server #29725
  • Fix wrong results of GREATEST and LEAST when passing in unsigned BIGINT arguments #30101
  • Fix the issue that the result of concat(ifnull(time(3)) in TiDB is different from that in MySQL #29498
  • Fix the issue that the avg() function returns ERROR 1105 (HY000): other error for mpp stream: Could not convert to the target type - -value is out of range. when queried from TiFlash #29952
  • Fix the issue that ERROR 1105 (HY000): close of nil channel is returned when using HashJoinExec #30289
  • Fix the issue that TiKV and TiFlash return different results when querying logical operations #37258
  • Fix the issue that the EXPLAIN ANALYZE statement with DML executors might return result before the transaction commit finishes #37373
  • Fix the issue that Region cache is not cleared properly after merging many Regions #37174
  • Fix the issue that the EXECUTE statement might throw an unexpected error in specific scenarios #37187
  • Fix the issue that GROUP CONCAT with ORDER BY might fail when the ORDER BY clause contains a correlated subquery #18216
  • Fix wrong results returned when length and width are incorrectly set for Decimal and Real when using plan cache #29565

tidb-server v6.1.2

24 Oct 04:31
5d2030e
Compare
Choose a tag to compare

Improvements

  • Allow setting placement rules and TiFlash replicas at the same time in one table #37171 @lcwangchao

Bug fixes

  • Fix the issue that database-level privileges are incorrectly cleaned up #38363 @dveeden
  • Fix the incorrect output of SHOW CREATE PLACEMENT POLICY #37526 @xhebox
  • Fix the issue that when one PD node goes down, the query of information_schema.TIKV_REGION_STATUS fails due to not retrying other PD nodes #35708 @tangenta
  • Fix the issue that the UNION operator might return unexpected empty result #36903 @tiancaiamao
  • Fix the wrong result that occurs when enabling dynamic mode in partitioned tables for TiFlash #37254 @wshwsh12
  • Fix the issue that the Region cache is not cleaned up in time when the Region is merged #37141 @sticnarf
  • Fix the issue that the KV client sends unnecessary ping messages #36861 @jackysp
  • Fix the issue that the EXPLAIN ANALYZE statement with DML executors might return result before the transaction commit finishes #37373 @cfzjywxk
  • Fix the issue that GROUP CONCAT with ORDER BY might fail when the ORDER BY clause contains a correlated subquery #18216 @winoros
  • Fix the issue that Can't find column is reported if an UPDATE statement contains common table expressions (CTE) #35758 @AilinKid
  • Fix the issue that the EXECUTE might throw an unexpected error in specific scenarios #37187 @Reminiscent

tidb-server v5.4.3

13 Oct 06:35
f9b13b7
Compare
Choose a tag to compare

Bug fixes

  • Fix the incorrect output of SHOW CREATE PLACEMENT POLICY #37526
  • 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 KILL TIDB cannot take effect immediately on idle connections #24031
  • Fix the issue that incorrect results are returned in the DATA_TYPE and COLUMN_TYPE columns when querying the INFORMSTION_SCHEMA.COLUMNS system table #36496
  • Fix the issue that when TiDB Binlog is enabled, executing the ALTER SEQUENCE statement might cause a wrong metadata version and cause Drainer to exit #36276
  • Fix the issue that the UNION operator might return unexpected empty result #36903
  • Fix the wrong result that occurs when enabling dynamic mode in partitioned tables for TiFlash #37254
  • Fix the issue that INL_HASH_JOIN might hang when used with LIMIT #35638
  • Fix the issue that TiDB might return the invalid memory address or nil pointer dereference error when executing the SHOW WARNINGS statement #31569
  • Fix the invalid transaction error that occurs when performing Stale Read in the RC isolation level #30872
  • Fix the issue that the EXPLAIN ANALYZE statement with DML executors might return result before the transaction commit finishes #37373
  • 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 in the static partition prune mode, SQL statements with an aggregate condition might return wrong result when the table is empty #35295
  • Fix the issue that TiDB might panic when executing the UPDATE statement #32311
  • Fix the issue of wrong query result because the UnionScan operator cannot maintain the order #33175
  • Fix the issue that the UPDATE statements incorrectly eliminate the projection in some cases, which causes the Can't find column error #37568
  • Fix the issue that partitioned tables cannot fully use indexes to scan data in some cases #33966
  • Fix the issue that the EXECUTE might throw an unexpected error in specific scenarios #37187
  • Fix the issue that TiDB might return wrong results when using a BIT type index with prepared plan cache enabled #33067

tidb-server v6.3.0

30 Sep 02:35
ecd6753
Compare
Choose a tag to compare

Improvements

  • TiDB is now case-insensitive to the target table name when checking the table existence #34610 @tiancaiamao
  • Improve MySQL compatibility by adding a parsing check when setting the value of init_connect #35324 @CbcWestwolf
  • Improve the log warning generated for new connections #34964 @xiongjiwei
  • Optimize the HTTP API for querying DDL history jobs, and add support for the start_job_id parameter #35838 @tiancaiamao
  • Report errors when the JSON path has wrong syntax #22525 #34959 @xiongjiwei
  • Improve the performance of Join operations by fixing a false sharing issue #37641 @gengliqi
  • Support exporting the execution plan information of multiple SQL statements at a time using PLAN REPLAYER, which makes troubleshooting more efficient #37798 @Yisaer

Bug fixes

  • Fix the issue that the privilege check is skipped for PREPARE statements #35784 @lcwangchao
  • Fix the issue that the system variable tidb_enable_noop_variable can be set to WARN #36647 @lcwangchao
  • Fix the issue that when an expression index is defined, the ORDINAL_POSITION column of the INFORMAITON_SCHEMA.COLUMNS table might be incorrect #31200 @bb7133
  • Fix the issue that TiDB does not report an error when the timestamp is larger than MAXINT32 #31585 @bb7133
  • Fix the issue that TiDB server cannot be started when the enterprise plugin is used #37319 @xhebox
  • Fix the incorrect output of SHOW CREATE PLACEMENT POLICY #37526 @xhebox
  • Fix the unexpected EXCHANGE PARTITION behaviors with temporary tables #37201 @lcwangchao
  • Fix the issue that querying INFORMATION_SCHEMA.TIKV_REGION_STATUS returns an incorrect result @zimulala
  • Fix the issue that the EXPLAIN query on views does not check privileges #34326 @hawkingrei
  • Fix the issue that JSON null cannot be updated to NULL #37852 @YangKeao
  • Fix the issue that row_count of DDL jobs is inaccurate #25968 @Defined2014
  • Fix the issue that FLASHBACK TABLE does not work properly #37386 @tiancaiamao
  • Fix the issue of failing to handle prepared statement flags in the typical MySQL protocol #36731 @dveeden
  • Fix the issue of incorrect TiDB status that might appear on startup in some extreme cases #36791 @xhebox
  • Fix the issue that INFORMATION_SCHEMA.VARIABLES_INFO does not comply with security enhanced mode (SEM) #37586 @CbcWestwolf
  • Fix the issue that casting string to string goes wrong in queries with UNION #31678 @cbcwestwolf
  • Fix the wrong result that occurs when enabling dynamic mode in partitioned tables for TiFlash #37254 @wshwsh12
  • Fix the issue that the cast and comparison between binary strings and JSON in TiDB are incompatible with MySQL #31918 #25053 @YangKeao
  • Fix the issue that JSON_OBJECTAGG and JSON_ARRAYAGG in TiDB are not compatible with MySQL on binary values #25053 @YangKeao
  • Fix the issue that the comparison between JSON opaque values causes panic #37315 @YangKeao
  • Fix the issue that the single precision float cannot be used in JSON aggregation funtions #37287 @YangKeao
  • Fix the issue that the UNION operator might return unexpected empty result #36903 @tiancaiamao
  • Fix the issue that the result of the castRealAsTime expression is inconsistent with MySQL #37462 @mengxin9014
  • Fix the issue that pessimistic DML operations lock non-unique index keys #36235 @ekexium
  • Fix the issue that auto-commit change affects transaction commit behaviours #36581 @cfzjywxk
  • Fix the issue that the EXPLAIN ANALYZE statement with DML executors might return result before the transaction commit finishes #37373 @cfzjywxk
  • Fix the issue that the UPDATE statements incorrectly eliminate the projection in some cases, which causes the Can't find column error #37568 @AilinKid
  • Fix the issue that the Join Reorder operation will mistakenly push down its Outer Join condition #37238 @AilinKid
  • Fix the issue that the IN and NOT IN subqueries in some patterns report the Can't find column error #37032 @AilinKid
  • Fix the issue that Can't find column is reported if an UPDATE statement contains common table expressions (CTE) #35758 @AilinKid
  • Fix incorrect PromQL #35856 @Defined2014

tidb-server v6.1.1

01 Sep 03:39
5263a0a
Compare
Choose a tag to compare

Compatibility changes

Improvements

  • Add a new optimizer SEMI_JOIN_REWRITE to improve the performance of EXISTS queries #35323 @winoros

Bug fixes

  • Fix the issue that INL_HASH_JOIN might hang when used with LIMIT #35638 @guo-shaoge
  • Fix the issue that TiDB might panic when executing the UPDATE statement #32311 @Yisaer
  • Fix a bug that TiDB might send coprocessor requests when executing the SHOW COLUMNS statement #36496 @tangenta
  • Fix a bug that TiDB might return the invalid memory address or nil pointer dereference error when executing the SHOW WARNINGS statement #31569 @zyguan
  • Fix a bug that in the static partition prune mode, SQL statements with an aggregate condition might return wrong result when the table is empty #35295 @tiancaiamao
  • Fix the issue that the Join Reorder operation will mistakenly push down its Outer Join condition #37238 @winoros
  • Fix the issue that CTE-schema hash code is cloned mistakenly, which causes the Can't find column ... in schema ... error when CTE is referenced more than once #35404 @AilinKid
  • Fix the issue that the wrong join reorder in some right outer join scenarios causes wrong query result #36912 @winoros
  • Fix the issue of incorrectly inferred null flag of the TiFlash firstrow aggregate function in the EqualAll case #34584 @fixdb
  • Fix the issue that Plan Cache does not work when a binding is created with the IGNORE_PLAN_CACHE hint #34596 @fzzf678
  • Fix the issu that an EXCHANGE operator is missing between the hash-partition window and the single-partition window #35990 @LittleFall
  • Fix the issue that partitioned tables cannot fully use indexes to scan data in some cases #33966 @mjonss
  • Fix the issue of wrong query result when a wrong default value is set for partial aggregation after the aggregation is pushed down #35295 @tiancaiamao
  • Fix the issue that querying partitioned tables might get the index-out-of-range error in some cases #35181 @mjonss
  • Fix the issue that a partition is incorrectly pruned if a partition key is used in the query condition and the collate is different from the one in the query partition table #32749 @mjonss
  • Fix the issue that when TiDB Binlog is enabled, executing the ALTER SEQUENCE statement might cause a wrong metadata version and cause Drainer to exit #36276 @AilinKid
  • Fix the issue of incorrect TiDB status that might appear on startup in some extreme cases #36791 @xhebox
  • Fix the potential UnknownPlanID issue that occurs when querying the execution plans for partitioned tables in TiDB Dashboard #35153 @time-and-fate
  • Fix the issue that the column list does not work in the LOAD DATA statement #35198 @SpadeA-Tang
  • Fix the issue of the data and columnID count not match error that occurs when inserting duplicated values with TiDB Binlog enabled #33608 @zyguan
  • Remove the limitation of tidb_gc_life_time #35392 @TonsnakeLin
  • Fix the LOAD DATA statement dead loop when an empty filed terminator is used #33298 @zyguan
  • Avoid sending requests to unhealthy TiKV nodes to improve availability #34906 @sticnarf

tidb-server v6.2.0

23 Aug 00:25
daf2b17
Compare
Choose a tag to compare

For the complete and official release notes, see https://docs.pingcap.com/tidb/v6.2/release-6.2.0.

Improvements

  • Support the SHOW COUNT(*) WARNINGS and SHOW COUNT(*) ERRORS statements #25068 @likzn
  • Add validation check for some system variables #35048 @morgo
  • Optimize the error messages for some type conversions #32447 @fanrenhoo
  • The KILL command now supports DDL operations #24144 @morgo
  • Make the output of SHOW TABLES/DATABASES LIKE … more MySQL-compatible. The column names in the output contain the LIKE value #35116 @likzn
  • Improve the performance of JSON-related functions #35859 @wjhuang2016
  • Improve the verification speed of password login using SHA-2 #35998 @virusdefender
  • Simplify some log outputs #36011 @dveeden
  • Optimize the Coprocessor communication protocol. This can greatly reduce the memory consumption of the TiDB processes when reading data, and further alleviate the OOM issue in the scenario of scanning tables and exporting data by Dumpling. The system variable tidb_enable_paging is introduced to control whether to enable this communication protocol (with the scope of SESSION or GLOBAL). This protocol is disabled by default. To enable it, set the variable value to true #35633 @tiancaiama @wshwsh12
  • Optimize the accuracy of memory tracking for some operators (HashJoin, HashAgg, Update, Delete) (#35634, #35631, #35635 @wshwsh12) (#34096 @ekexium)
  • The system table INFORMATION_SCHEMA.DATA_LOCK_WAIT supports recording the locking information of optimistic transactions #34609 @longfangson
  • Add some monitoring metrics for transactions #34456 @longfangsong
  • ...

Bug fixes

  • Fix the issue that a partition is incorrectly pruned if a partition key is used in the query condition and the collate is different from the one in the query partition table #32749 @mjonss
  • Fix the issue that SET ROLE cannot match the granted role if there are capital letters in the host #33061 @morgo
  • Fix the issue that columns with auto_increment cannot be dropped #34891 @Defined2014
  • Fix the issue that SHOW CONFIG shows some configuration items that have been removed #34867 @morgo
  • Fix the issue that SHOW DATABASES LIKE … is case-sensitive #34766 @e11jah
  • Fix the issue that SHOW TABLE STATUS LIKE ... is case-sensitive #7518 @likzn
  • Fix the issue that max-index-length still reports an error in non-strict mode #34931 @e11jah
  • Fix the issue that ALTER COLUMN ... DROP DEFAULT does not work #35018 @Defined2014
  • Fix the issue that when you create a table, the default value and the type of a column are not consistent and are not automatically corrected #34881 @Lloyd-Pottiger
  • Fix the issue that data in the mysql.columns_priv table is not deleted synchronously after you run DROP USER #35059 @lcwangchao
  • Fix the issue of DDL jam by disallowing creating tables within the schemas of some systems #35205 @tangenta
  • Fix the issue that querying partitioned tables might report "index-out-of-range" and "non used index" errors in some cases #35181 @mjonss
  • Fix the issue that INTERVAL expr unit + expr might report an error #30253 @mjonss
  • Fix a bug that a temporary table cannot be found after being created in a transaction #35644 @djshow832
  • Fix the panic issue that occurs when setting collation to the ENUM column #31637 @wjhuang2016
  • Fix the issue that when one PD node goes down, the query of information_schema.TIKV_REGION_STATUS fails due to not retrying other PD nodes #35708 @tangenta
  • Fix the issue that SHOW CREATE TABLE … cannot correctly display set or ENUM columns after SET character_set_results = GBK #31338 @tangenta
  • Fix the incorrect scope of the system variables tidb_log_file_max_days and tidb_config #35190 @morgo
  • Fix the issue that the output of SHOW CREATE TABLE is not compatible with MySQL for the ENUM or SET column #36317 @Defined2014
  • Fix the issue that when creating a table, the behavior of a LONG BYTE column is not compatible with MySQL #36239 @Defined2014
  • Fix the issue that auto_increment = x does not take effect on temporary tables #36224 @djshow832
  • Fix the wrong default value when modifying columns concurrently #35846 @wjhuang2016
  • Avoid sending requests to unhealthy TiKV nodes to improve availability #34906 @sticnarf
  • Fix the issue that the column list does not work in the LOAD DATA statement #35198 @SpadeA-Tang
  • Fix the issue that in some scenarios the pessimistic lock is incorrectly added to the non-unique secondary index #36235 @ekexium
  • ...

tidb-server v5.4.2

08 Jul 01:43
d6be910
Compare
Choose a tag to compare

Improvements

  • Avoid sending requests to unhealthy TiKV nodes to improve availability #34906

Bug Fixes

  • Fix the issue of wrong TableDual plans cached in binary protocol #34690 #34678
  • Fix the issue of incorrectly inferred null flag of the TiFlash firstrow aggregate function in the EqualAll case #34584
  • Fix the issue that the planner generates wrong 2-phase aggregate plan for TiFlash #34682
  • Fix the planner wrong behaviors that occur when tidb_opt_agg_push_down and tidb_enforce_mpp are enabled #34465
  • Fix the wrong memory-usage value used when Plan Cache is evicted #34613
  • Fix the issue that the column list does not work in the LOAD DATA statement #35198
  • Avoid reporting WriteConflict errors in pessimistic transactions #11612
  • Fix the issue that the prewrite requests are not idempotency when Region errors and network issues occur #34875
  • Fix the issue that the async commit transactions being rolled back might not meet atomicity #33641
  • 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 that the references invalid table error might be incorrectly reported when TiDB queries views with CTE #33965
  • Fix the panic issue caused by the fatal error: concurrent map read and map write error #35340
  • Fix the error that occurs when reading from the INFORMATION_SCHEMA.ATTRIBUTES table by skipping the unidentifiable table attributes #33665