tidb v4.0.5 Release Notes

Release Date: 2020-08-28 // over 3 years ago
  • Compatibility Changes

    • ๐Ÿ”„ Change drop partition and truncate partition's job arguments to support the ID array of multiple partitions #18930
    • โž• Add the delete-only state for checking add partition replicas #18865

    ๐Ÿ‘Œ Improvements

    • ๐ŸŽ Optimize the performance of DecodePlan for big union queries #18941
    • ๐Ÿ”’ Reduce the number of GC lock scans when meeting the Region cache miss error #18876
    • ๐ŸŽ Ease the impact of statistical feedback on cluster performance #18772
    • ๐Ÿ‘Œ Support canceling operations before the RPC response is returned #18580
    • โž• Add the HTTP API to generate the TiDB metric profile #18531
    • ๐Ÿ‘Œ Support scattering partitioned tables #17863
    • โž• Add detailed memory usage of each instance in Grafana #18679
    • ๐Ÿ‘‰ Show the detailed runtime information of the BatchPointGet executor in the result of EXPLAIN #18892
    • ๐Ÿ‘‰ Show the detailed runtime information of the PointGet executor in the result of EXPLAIN #18817
    • ๐Ÿšš Warn the potential deadlock for Consume in remove() #18395
    • ๐Ÿ‘Œ Support the Action when memory exceed quota for TableReader Executor #18392
    • ๐Ÿ‘ Refine the behaviors of StrToInt and StrToFloat and support converting JSON to the date, time, and timestamp types #18159
    • ๐Ÿ‘Œ Support limiting the memory usage of the TableReader executor #18392
    • Avoid too many times of backoff when retrying the batch cop request #18999
    • ๐Ÿ‘Œ Improve compatibility for ALTER TABLE algorithms #19270
    • ๐Ÿ‘‰ Make the single partitioned table support IndexJoin on the inner side #19151
    • ๐Ÿ‘Œ Support searching the log file even when the log includes invalid lines #18579

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fix the should ensure all columns have the same length error that occurs because the ErrTruncate/Overflow error is incorrectly handled in the builtinCastRealAsDecimalSig function #18967
    • Fix the issue that the pre_split_regions table option does not work in the partitioned table #18837
    • ๐Ÿ›  Fixe the issue that might cause a large transaction to be terminated prematurely #18813
    • ๐Ÿ›  Fix the issue that using the collation functions get wrong query results #18735
    • ๐Ÿ›  Fix the bug that the getAutoIncrementID() function does not consider the tidb_snapshot session variable, which might cause the dumper tool to fail with the table not exist error #18692
    • ๐Ÿ›  Fix the unknown column error for SQL statement like select a from t having t.a #18434
    • ๐Ÿ›  Fix the panic issue that writing the 64-bit unsigned type into the hash partitioned table causes overflow and gets an unexpected negative number when the partition key is the integer type #18186
    • ๐Ÿ›  Fix the wrong behavior of the char function #18122
    • ๐Ÿ›  Fix the issue that the ADMIN REPAIR TABLE statement cannot parse integer in the expressions on the range partition #17988
    • ๐Ÿ›  Fix the wrong behavior of the SET CHARSET statement #17289
    • ๐Ÿ›  Fix the bug caused by the wrong collation setting which leads to the wrong result of the collation function #17231
    • Fix the issue that STR_TO_DATE's handling of the format tokens '%r', '%h' is inconsistent with that of MySQL #18727
    • ๐Ÿ›  Fix issues that the TiDB version information is inconsistent with that of PD/TiKV in the cluster_info table #18413
    • ๐Ÿ›  Fix the existent checks for pessimistic transactions #19004
    • ๐Ÿ›  Fix the issue that executing union select for update might cause concurrent race #19006
    • ๐Ÿ›  Fix the wrong query result when apply has a child of the PointGet operator #19046
    • ๐Ÿ›  Fix the incorrect result that occurs when IndexLookUp is in the inner side of the Apply operator #19496
    • ๐Ÿ›  Fix the incorrect result of anti-semi-join queries #19472
    • ๐Ÿ›  Fix the incorrect result caused by the mistaken usage of BatchPointGet #19456
    • ๐Ÿ›  Fix the incorrect result that occurs when UnionScan is in the inner side of the Apply operator #19447
    • ๐Ÿ›  Fix the panic caused by using the EXECUTE statement to print an expensive query log #17419
    • ๐Ÿ›  Fix the index join error when the join key is ENUM or SET #19235
    • ๐Ÿ›  Fix the issue that the query range cannot be built when the NULL value exists on the index column #19358
    • ๐Ÿ›  Fix the data race issue caused by updating the global configuration #17964
    • ๐Ÿ›  Fix the panic issue caused when modifying the character set in an uppercase schema #19286
    • ๐Ÿ›  Fix an unexpected error caused by changing the temporary directory during the disk spill action #18970
    • ๐Ÿ›  Fix the wrong hash key for the decimal type #19131
    • ๐Ÿ›  Fix the issue that the PointGet and BatchPointGet operators do not consider the partition selection syntax and get incorrect results #19141
    • ๐Ÿ›  Fix the incorrect results when using the Apply operator together with the UnionScan operator #19104
    • ๐Ÿ›  Fix the bug that causes the indexed virtual generated column to return wrong value #17989
    • โž• Add the lock for runtime statistics to fix a panic caused by concurrent execution #18983
    • Check ErrTruncate/Overflow locally for builtinCastRealAsDecimalSig to fix the should ensure all columns have the same length error #18961