Releases: pingcap/tidb
Releases · pingcap/tidb
tidb-server v5.1.5
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
andLEAST
when passing in unsignedBIGINT
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 withLIMIT
#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 returnsERROR 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 usingHashJoinExec
#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
andtidb_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
andunlock tables
when theenable-table-lock
flag is not enabled #28967 - Fix the issue that range partitions allow multiple
MAXVALUE
partitions #36329
tidb-server v6.1.3
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
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 themysql.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 forAND
andOR
cause wrong query results #38304 @Yisaer - Fix the issue that
ORDER BY
inGROUP_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 the
binary
encoding format #38351 @dsdashun
tidb-server v5.3.4
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
orSET
column #32302 - Fix the issue that database-level privileges are incorrectly cleaned up #38363
- Fix the issue that the
grantor
field is missing in themysql.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
anddate_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
andLEAST
when passing in unsignedBIGINT
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 returnsERROR 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 usingHashJoinExec
#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
withORDER BY
might fail when theORDER 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
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
withORDER BY
might fail when theORDER BY
clause contains a correlated subquery #18216 @winoros - Fix the issue that
Can't find column
is reported if anUPDATE
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
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
andCOLUMN_TYPE
columns when querying theINFORMSTION_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 withLIMIT
#35638 - Fix the issue that TiDB might return the
invalid memory address or nil pointer dereference
error when executing theSHOW 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
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 toWARN
#36647 @lcwangchao - Fix the issue that when an expression index is defined, the
ORDINAL_POSITION
column of theINFORMAITON_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 toNULL
#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
andJSON_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
andNOT IN
subqueries in some patterns report theCan't find column
error #37032 @AilinKid - Fix the issue that
Can't find column
is reported if anUPDATE
statement contains common table expressions (CTE) #35758 @AilinKid - Fix incorrect
PromQL
#35856 @Defined2014
tidb-server v6.1.1
Compatibility changes
- Make the
SHOW DATABASES LIKE …
statement case-insensitive #34766 @e1ijah1 - Change the default value of
tidb_enable_outer_join_reorder
from1
to0
, which disables Join Reorder's support for Outer Join by default.
Improvements
Bug fixes
- Fix the issue that
INL_HASH_JOIN
might hang when used withLIMIT
#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 theSHOW 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
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
andSHOW 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 theLIKE
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 totrue
#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 runDROP 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 orENUM
columns afterSET character_set_results = GBK
#31338 @tangenta - Fix the incorrect scope of the system variables
tidb_log_file_max_days
andtidb_config
#35190 @morgo - Fix the issue that the output of
SHOW CREATE TABLE
is not compatible with MySQL for theENUM
orSET
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
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
andtidb_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