Releases: pingcap/tidb
Releases · pingcap/tidb
tidb-server v6.5.0
For new features, improvements, and bug fixes released in 6.5.0 for tidb server, see TiDB 6.5.0 release notes.
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
GREATESTandLEASTwhen passing in unsignedBIGINTarguments #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 stringreturn wrong results #29513 - Fix the issue that
INL_HASH_JOINmight hang when used withLIMIT#35638 - Fix the wrong
ANY_VALUEresult 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
CHARtype 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 TIDBcannot take effect immediately on idle connections #24031 - Fix the bug that setting any session variable will make
tidb_snapshotfail 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 SEQUENCEstatement 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 channelis returned when usingHashJoinExec#30289 - Fix the issue that TiKV and TiFlash return different results when querying logical operations #37258
- Fix the issue that the
EXECUTEstatement might throw an unexpected error in specific scenarios #37187 - Fix the planner wrong behaviors that occur when
tidb_opt_agg_push_downandtidb_enforce_mppare enabled #34465 - Fix a bug that TiDB might send coprocessor requests when executing the
SHOW COLUMNSstatement #36496 - Add warnings for
lock tablesandunlock tableswhen theenable-table-lockflag is not enabled #28967 - Fix the issue that range partitions allow multiple
MAXVALUEpartitions #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_RANDOMcolumn 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_STATUStable #38407 @CbcWestwolf - Fix the issue that the
grantorfield is missing in themysql.tables_privtable #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_pessimisticmight 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
isNullRejectedcheck results forANDandORcause wrong query results #38304 @Yisaer - Fix the issue that
ORDER BYinGROUP_CONCATis 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
binaryencoding 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
ENUMorSETcolumn #32302 - Fix the issue that database-level privileges are incorrectly cleaned up #38363
- Fix the issue that the
grantorfield is missing in themysql.tables_privtable #38293 - Fix the issue that
KILL TIDBcannot take effect immediately on idle connections #24031 - Fix the issue that the return type of
date_addanddate_subis different between TiDB and MySQL #36394, #27573 - Fix the incorrect
INSERT_METHODvalue 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
GREATESTandLEASTwhen passing in unsignedBIGINTarguments #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 channelis 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 ANALYZEstatement 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
EXECUTEstatement might throw an unexpected error in specific scenarios #37187 - Fix the issue that
GROUP CONCATwithORDER BYmight fail when theORDER BYclause 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_STATUSfails due to not retrying other PD nodes #35708 @tangenta - Fix the issue that the
UNIONoperator 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 ANALYZEstatement with DML executors might return result before the transaction commit finishes #37373 @cfzjywxk - Fix the issue that
GROUP CONCATwithORDER BYmight fail when theORDER BYclause contains a correlated subquery #18216 @winoros - Fix the issue that
Can't find columnis reported if anUPDATEstatement contains common table expressions (CTE) #35758 @AilinKid - Fix the issue that the
EXECUTEmight 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 TIDBcannot take effect immediately on idle connections #24031 - Fix the issue that incorrect results are returned in the
DATA_TYPEandCOLUMN_TYPEcolumns when querying theINFORMSTION_SCHEMA.COLUMNSsystem table #36496 - Fix the issue that when TiDB Binlog is enabled, executing the
ALTER SEQUENCEstatement might cause a wrong metadata version and cause Drainer to exit #36276 - Fix the issue that the
UNIONoperator 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_JOINmight hang when used withLIMIT#35638 - Fix the issue that TiDB might return the
invalid memory address or nil pointer dereferenceerror when executing theSHOW WARNINGSstatement #31569 - Fix the
invalid transactionerror that occurs when performing Stale Read in the RC isolation level #30872 - Fix the issue that the
EXPLAIN ANALYZEstatement with DML executors might return result before the transaction commit finishes #37373 - Fix the issue of the
data and columnID count not matcherror 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
UPDATEstatement #32311 - Fix the issue of wrong query result because the
UnionScanoperator 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 columnerror #37568 - Fix the issue that partitioned tables cannot fully use indexes to scan data in some cases #33966
- Fix the issue that the
EXECUTEmight throw an unexpected error in specific scenarios #37187 - Fix the issue that TiDB might return wrong results when using a
BITtype 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_idparameter #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
PREPAREstatements #35784 @lcwangchao - Fix the issue that the system variable
tidb_enable_noop_variablecan be set toWARN#36647 @lcwangchao - Fix the issue that when an expression index is defined, the
ORDINAL_POSITIONcolumn of theINFORMAITON_SCHEMA.COLUMNStable 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 PARTITIONbehaviors with temporary tables #37201 @lcwangchao - Fix the issue that querying
INFORMATION_SCHEMA.TIKV_REGION_STATUSreturns an incorrect result @zimulala - Fix the issue that the
EXPLAINquery on views does not check privileges #34326 @hawkingrei - Fix the issue that JSON
nullcannot be updated toNULL#37852 @YangKeao - Fix the issue that
row_countof DDL jobs is inaccurate #25968 @Defined2014 - Fix the issue that
FLASHBACK TABLEdoes not work properly #37386 @tiancaiamao - Fix the issue of failing to handle
preparedstatement 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_INFOdoes 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_OBJECTAGGandJSON_ARRAYAGGin 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
UNIONoperator might return unexpected empty result #36903 @tiancaiamao - Fix the issue that the result of the
castRealAsTimeexpression 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-commitchange affects transaction commit behaviours #36581 @cfzjywxk - Fix the issue that the
EXPLAIN ANALYZEstatement 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 columnerror #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
INandNOT INsubqueries in some patterns report theCan't find columnerror #37032 @AilinKid - Fix the issue that
Can't find columnis reported if anUPDATEstatement 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_reorderfrom1to0, which disables Join Reorder's support for Outer Join by default.
Improvements
Bug fixes
- Fix the issue that
INL_HASH_JOINmight hang when used withLIMIT#35638 @guo-shaoge - Fix the issue that TiDB might panic when executing the
UPDATEstatement #32311 @Yisaer - Fix a bug that TiDB might send coprocessor requests when executing the
SHOW COLUMNSstatement #36496 @tangenta - Fix a bug that TiDB might return the
invalid memory address or nil pointer dereferenceerror when executing theSHOW WARNINGSstatement #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
firstrowaggregate 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_CACHEhint #34596 @fzzf678 - Fix the issu that an
EXCHANGEoperator 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-rangeerror 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 SEQUENCEstatement 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
UnknownPlanIDissue 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 matcherror 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 DATAstatement 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(*) WARNINGSandSHOW COUNT(*) ERRORSstatements #25068 @likzn - Add validation check for some system variables #35048 @morgo
- Optimize the error messages for some type conversions #32447 @fanrenhoo
- The
KILLcommand now supports DDL operations #24144 @morgo - Make the output of
SHOW TABLES/DATABASES LIKE …more MySQL-compatible. The column names in the output contain theLIKEvalue #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_pagingis 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_WAITsupports 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 ROLEcannot match the granted role if there are capital letters in the host #33061 @morgo - Fix the issue that columns with
auto_incrementcannot be dropped #34891 @Defined2014 - Fix the issue that
SHOW CONFIGshows 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-lengthstill reports an error in non-strict mode #34931 @e11jah - Fix the issue that
ALTER COLUMN ... DROP DEFAULTdoes 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_privtable 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 + exprmight 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
ENUMcolumn #31637 @wjhuang2016 - Fix the issue that when one PD node goes down, the query of
information_schema.TIKV_REGION_STATUSfails due to not retrying other PD nodes #35708 @tangenta - Fix the issue that
SHOW CREATE TABLE …cannot correctly display set orENUMcolumns afterSET character_set_results = GBK#31338 @tangenta - Fix the incorrect scope of the system variables
tidb_log_file_max_daysandtidb_config#35190 @morgo - Fix the issue that the output of
SHOW CREATE TABLEis not compatible with MySQL for theENUMorSETcolumn #36317 @Defined2014 - Fix the issue that when creating a table, the behavior of a
LONG BYTEcolumn is not compatible with MySQL #36239 @Defined2014 - Fix the issue that
auto_increment = xdoes 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
- ...