tidb v4.0.8 Release Notes
Release Date: 2020-10-30 // about 4 years ago-
๐ New Features
- ๐ Support the new aggregate function
APPROX_PERCENTILE
#20197
๐ Improvements
- Prioritize low-selectivity indexes in the greedy search procedure of
Selectivity()
#20154 - Record more RPC runtime information in Coprocessor runtime statistics #19264
- ๐ Speed up parsing the slow log to improve query performance #20556
- โก๏ธ Wait for timeout execution plans during the plan binding stage to record more debug information when the SQL optimizer is verifying potential new plans #20530
- โ Add the execution retry time in the slow log and the slow query result #20495 #20494
- Add the
table_storage_stats
system table #20431 - โ Add the RPC runtime statistical information for the
INSERT
/UPDATE
/REPLACE
statement #20430 - โ Add the operator information in the result of
EXPLAIN FOR CONNECTION
#20384 - ๐ฒ Adjust the TiDB error log to the
DEBUG
level for the client connection/disconnection activities #20321 - โ Add monitoring metrics for Coprocessor Cache #20293
- โ Add the runtime information of pessimistic lock keys #20199
- โ Add two extra sections of time consumption information in the runtime information and
trace
span #20187 - โ Add the runtime information of transaction commit in the slow log #20185
- ๐ Disable the index merge join #20599
- โ Add the ISO 8601 and timezone supports for temporal string literals #20670
๐ Bug Fixes
- ๐ Fix the unexpected panic that occurs when using partitioned tables #20565
- ๐ Fix the wrong result of outer join when filtering the outer side using index merge join #20427
- ๐ Fix the issue that the
NULL
value is returned when converting data to theBIT
type if the data is too long #20363 - ๐ Fix the corrupted default value for the
BIT
type column #20340 - ๐ Fix the overflow error that might occur when converting the
BIT
type to theINT64
type #20312 - ๐ Fix the possible wrong result of the propagate column optimization for the hybrid type column #20297
- ๐ Fix the panic that might occur when storing outdated plans from the plan cache #20246
- ๐ Fix the bug that the returned result is mistakenly truncated if
FROM_UNIXTIME
andUNION ALL
are used together #20240 - ๐ Fix the issue that wrong results might be returned when the
Enum
type value is converted to theFloat
type #20235 - ๐ Fix the possible panic of
RegionStore.accessStore
#20210 - ๐ Fix the wrong result returned when sorting the maximum unsigned integer in
BatchPointGet
#20205 - ๐ Fix the bug that the coercibilities of
Enum
andSet
are wrong #20364 - ๐ Fix an issue of ambiguous
YEAR
conversion #20292 - Fix the issue of wrong reported result that occurs when the KV duration panel contains
store0
#20260 - ๐ Fix the issue that the
Float
type data is mistakenly inserted regardless of theout of range
error #20252 - ๐ Fix the bug that the generated column does not handle bad
NULL
values #20216 - ๐ Fix the inaccurate error information for the
YEAR
type data that is out of range #20170 - ๐ Fix the unexpected
invalid auto-id
error that might occur during the pessimistic transaction retry #20134 - ๐ Fix the issue that the constraint is not checked when using
ALTER TABLE
to change theEnum
/Set
type #20046 - ๐ Fix the wrong runtime information of
cop
tasks recorded when multiple operators are used for concurrency #19947 - ๐ Fix the issue that read-only system variables cannot be explicitly selected as the session variables #19944
- ๐ Fix the issue that the duplicate
ORDER BY
condition might cause sub-optimal execution plans #20333 - ๐ Fix the issue that the generated metric profile might fail if the font size exceeds the maximum allowable value #20637
- ๐ Support the new aggregate function
Previous changes from v4.0.7
-
๐ Improvements
- โ Add more runtime information for the
join
operator #20093 - โ Add the hit ratio information of coprocessor cache in
EXPLAIN ANALYZE
#19972 - ๐ Support pushing down the
ROUND
function to TiFlash #19967 - โ Add the default value of
CMSketch
forANALYZE
#19927 - Refine error message desensitization #20004
- Accept connections from clients using connectors from MySQL 8.0 #19959
๐ Bug Fixes
- ๐ Fix a vectorization bug from
and
/or
/COALESCE
caused by shortcut #20092 - ๐ Fix the issue that plan digests are the same when the cop task stores are of different types #20076
- ๐ Fix the wrong behavior of the
!= any()
function #20062 - ๐ Fix the query error that occurs when the
slow-log
file does not exist #20051 - ๐ Fix the issue that Region requests continue to retry when the context is canceled #20031
- Fix the issue that querying the time type of the
cluster_slow_query
table in streaming request might result in an error #19943 - ๐ Fix the issue that DML statements using
case when
might cause schema change #20095 - ๐ Fix the issue that the
prev_stmt
information in slow log is not desensitized #20048 - ๐ Fix the issue that tidb-server does not release the table lock when it exits abnormally #20020
- ๐ Fix the incorrect error message that occurs when inserting data of the
ENUM
andSET
type #19950 - ๐ Fix the wrong behavior of the
IsTrue
function in some situations #19903 - ๐ Fix the issue that the
CLUSTER_INFO
system table might not work normally after PD is scaled in or out #20026 - โ Avoid unnecessary warnings or errors when folding constants in
control
expressions #19910 - โก๏ธ Update the method of updating statistics to avoid Out of Memory (OOM) #20013
- โ Add more runtime information for the