| title | summary |
|---|---|
TiDB 4.0.14 Release Notes |
TiDB 4.0.14 was released on July 27, 2021. The release includes compatibility changes, feature enhancements, improvements, bug fixes, and updates to various tools. Some notable changes include default value updates for TiDB and TiKV, support for OIDC SSO in TiDB Dashboard, and bug fixes for TiDB, TiKV, PD, TiFlash, and various tools. |
Release date: July 27, 2021
TiDB version: 4.0.14
-
TiDB
- Change the default value of
tidb_multi_statement_modefromWARNtoOFFin v4.0. It is recommended to use the multi-statement feature of your client library instead. See the documentation ontidb_multi_statement_modefor details. #25749 - Upgrade Grafana dashboard from v6.1.16 to v7.5.7 to solve two security vulnerabilities. See the Grafana blog post for details.
- Change the default value of the
tidb_stmt_summary_max_stmt_countvariable from200to3000#25872
- Change the default value of
-
TiKV
- Change the default value of
merge-check-tick-intervalfrom10to2to speed up the Region merge process #9676
- Change the default value of
-
TiKV
-
TiDB Dashboard
- Support OIDC SSO. By setting the OIDC-compatible SSO services (such as Okta and Auth0), users can log into TiDB Dashboard without entering the SQL password. #960
- Add the Debug API UI, which is an alternative method to the command line to call several common TiDB and PD internal APIs for advanced debugging #927
-
TiDB
- Change the
LOCKrecord into thePUTrecord for the index keys usingpoint getorbatch point getforUPDATEreads #26223 - Support the MySQL system variable
init_connectand its associated features #26031 - Support the stable result mode to make the query results more stable #26003
- Support pushing down the built-in function
json_unquote()to TiKV #25721 - Make the SQL Plan Management (SPM) not affected by the character set #23295
- Change the
-
TiKV
- Shutdown the status server first to make sure that the client can correctly check the shutdown status #10504
- Always respond to stale peers to make sure that these peers are cleared quicker #10400
- Limit the TiCDC sink's memory consumption #10147
- When a Region is too large, use the even split to speed up the split process #10275
-
PD
-
TiDB Dashboard
-
Tools
-
Backup & Restore (BR)
- Speed up restore by merging small backup files #655
-
Dumpling
- Always split tables using
_tidb_rowidwhen the upstream is a TiDB v3.x cluster, which helps reduce TiDB's memory usage #306
- Always split tables using
-
TiCDC
- Improve the error message returned when a PD endpoint misses the certificate #1973
- Make the sorter I/O errors more user-friendly #1976
- Add a concurrency limit on the Region incremental scan in the KV client to reduce the pressure of TiKV #1926
- Add metrics for the table memory consumption #1884
- Add
capture-session-ttlto the TiCDC server configuration #2169
-
-
TiDB
- Fix the issue that the
SELECTresult is incompatible with MySQL when joining a subquery with aWHEREclause evaluated tofalse#24865 - Fix the calculation error of the
ifnullfunction that occurs when the argument is theENUMorSETtype #24944 - Fix the wrong aggregate pruning in some cases #25202
- Fix the incorrect result of the merge join operation that might occur when the column is the
SETtype #25669 - Fix the issue that TiDB returns wrong results for cartesian join #25591
- Fix the panic issue that occurs when
SELECT ... FOR UPDATEworks on a join operation and the join uses a partitioned table #20028 - Fix the issue that the cached
preparedplan is incorrectly used forpoint get#24741 - Fix the issue that the
LOAD DATAstatement can abnormally import non-utf8 data #25979 - Fix a potential memory leak issue that occurs when accessing the statistics via an HTTP API #24650
- Fix a security issue that occurs when executing the
ALTER USERstatement #25225 - Fix a bug that the
TIKV_REGION_PEERStable cannot correctly handle theDOWNstatus #24879 - Fix the issue that invalid strings are not truncated when parsing
DateTime#22231 - Fix the issue that the
select into outfilestatement might have no result when the column type isYEAR#22159 - Fix the issue that the query result might be wrong when
NULLis in theUNIONsubquery #26532 - Fix the issue that the projection operator in execution might cause panic in some cases #26534
- Fix the issue that the
-
TiKV
- Fix the issue that the duration calculation might panic on certain platforms #related-issue
- Fix the wrong function that casts
DOUBLEtoDOUBLE#25200 - Fix the issue that the panic log might be lost when using the async logger #8998
- Fix the panic issue that occurs when building a snapshot twice if encryption is enabled #9786 #10407
- Fix the wrong arguments type of the
json_unquote()function in the coprocessor #10176 - Fix the issues of suspicious warnings during shutdown and the non-deterministic response from Raftstore #10353 #10307
- Fix the issue of backup threads leak #10287
- Fix the issue that Region split might panic and corrupt the metadata if the split process is too slow and Region merge is on-going #8456 #8783
- Fix the issue that the Region heartbeats prevent TiKV from splitting large Regions in some situations #10111
- Fix the wrong statistics caused by the format inconsistency of CM Sketch between TiKV and TiDB #25638
- Fix the wrong statistics of the
apply wait durationmetric #9893 - Fix the "Missing Blob" error after using
delete_files_in_rangein Titan #10232
-
PD
- Fix a bug that the scheduler might reappear after executing the delete operation #2572
- Fix the data race issue that might occur when the scheduler is started before the temporary configuration is loaded #3771
- Fix a PD panic issue that might occur during the Region scattering operation #3761
- Fix the issue that the priority of some operators is not set correctly #3703
- Fix a PD panic issue that might occur when deleting the
evict-leaderscheduler from a non-existent store #3660 - Fix the issue that the PD Leader re-election is slow when there are many stores #3697
-
TiDB Dashboard
-
TiFlash
- Fix the potential panic issue that occurs when compiling DAG requests
- Fix the panic issue that occurs when the read load is heavy
- Fix the issue that TiFlash keeps restarting because of the split failure in column storage
- Fix a potential bug that TiFlash cannot delete the delta data
- Fix the incorrect results that occur when cloning the shared delta index concurrently
- Fix a bug that TiFlash fails to restart in the case of incomplete data
- Fix the issue that the old dm files cannot be removed automatically
- Fix the panic issue that occurs when executing the
SUBSTRINGfunction with specific arguments - Fix the issue of incorrect results when casting the
INTEGERtype to theTIMEtype
-
Tools
-
Backup & Restore (BR)
- Fix the issue that the data restore from the
mysqlschema might fail #1142
- Fix the issue that the data restore from the
-
TiDB Lightning
- Fix the issue that TiDB Lightning fails to parse the
DECIMALtype data in Parquet files #1276 - Fix the EOF error reported when TiDB Lightning splits the imported large CSV files #1133
- Fix a bug that an excessively large base value is generated when TiDB Lightning imports tables with the
auto_incrementcolumn of theFLOATorDOUBLEtype #1185 - Fix the issue of TiDB Lightning panic that occurs when generating KV data larger than 4 GB #1128
- Fix the issue that TiDB Lightning fails to parse the
-
Dumpling
- When using Dumpling to export data to the S3 storage, the
s3:ListBucketpermission is no longer required on the entire bucket. The permission is required only on the data source prefix. #898
- When using Dumpling to export data to the S3 storage, the
-
TiCDC
- Fix the issue of extra partition dispatching after adding new table partitions #2205
- Fix the panic issue that occurs when TiCDC fails to read
/proc/meminfo#2023 - Reduce TiCDC's runtime memory consumption #2011 #1957
- Fix a bug that some MySQL connection might leak after MySQL sink meets the error and pauses #1945
- Fix the issue that TiCDC changefeed cannot be created when start TS is less than current TS minus GC TTL #1839
- Reduce memory
mallocin sort heap to avoid too much CPU overhead #1853 - Fix a bug that the replication task might stop when moving a table #1827
-