Skip to content

Commit

Permalink
update tidb v4.0.12 release notes (#5090)
Browse files Browse the repository at this point in the history
* update v4.0.12 release notes at 2021-03-23T19:50:59

Signed-off-by: ti-srebot <ti-srebot@pingcap.com>

* add TOC

* Update release-4.0.12.md

* update v4.0.12 release notes at 2021-03-26T16:06:43

Signed-off-by: ti-srebot <ti-srebot@pingcap.com>

* Update releases/4.0.12.md

* update

* update TiDB and TiFlash notes

* Update release-4.0.12.md

* add tools and tikv and pd

* adjust the position of PD notes

* refine language

* refine language1

* refine language

* Apply suggestions from code review

Co-authored-by: Grace Cai <qqzczy@126.com>

* Update releases/release-4.0.12.md

Co-authored-by: TomShawn <41534398+TomShawn@users.noreply.github.com>
Co-authored-by: Grace Cai <qqzczy@126.com>
  • Loading branch information
3 people authored Apr 2, 2021
1 parent a5824ce commit 5f44496
Show file tree
Hide file tree
Showing 3 changed files with 135 additions and 0 deletions.
1 change: 1 addition & 0 deletions TOC.md
Original file line number Diff line number Diff line change
Expand Up @@ -529,6 +529,7 @@
+ v5.0
+ [5.0.0-rc](/releases/release-5.0.0-rc.md)
+ v4.0
+ [4.0.12](/releases/release-4.0.12.md)
+ [4.0.11](/releases/release-4.0.11.md)
+ [4.0.10](/releases/release-4.0.10.md)
+ [4.0.9](/releases/release-4.0.9.md)
Expand Down
133 changes: 133 additions & 0 deletions releases/release-4.0.12.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
---
title: TiDB 4.0.12 Release Notes
---

# TiDB 4.0.12 Release Notes

Release date: April 2, 2021

TiDB version: 4.0.12

## New Features

+ TiFlash

- Add tools to check the status of `tiflash replica` for online rolling updates

## Improvements

+ TiDB

- Refine the output information of the `EXPLAIN` statement for the `batch cop` mode [#23164](https://github.com/pingcap/tidb/pull/23164)
- Add the warning information for expressions that cannot be pushed to the storage layer in the output of the `EXPLAIN` statement [#23020](https://github.com/pingcap/tidb/pull/23020)
- Migrate a part of the DDL package code from `Execute`/`ExecRestricted` to the safe API (2) [#22935](https://github.com/pingcap/tidb/pull/22935)
- Migrate a part of the DDL package code from `Execute`/`ExecRestricted` to the safe API (1) [#22929](https://github.com/pingcap/tidb/pull/22929)
- Add `optimization-time` and `wait-TS-time` into the slow log [#22918](https://github.com/pingcap/tidb/pull/22918)
- Support querying `partition_id` from the `infoschema.partitions` table [#22489](https://github.com/pingcap/tidb/pull/22489)
- Add `last_plan_from_binding` to help the users know whether a SQL statement's execution plan is matched with the hints in the binding [#21430](https://github.com/pingcap/tidb/pull/21430)
- Scatter truncated tables without the `pre-split` option [#22872](https://github.com/pingcap/tidb/pull/22872)
- Add three format specifiers for the `str_to_date` expression [#22812](https://github.com/pingcap/tidb/pull/22812)
- Record the `PREPARE` execution failure as `Failed Query OPM` in the metrics monitor [#22672](https://github.com/pingcap/tidb/pull/22672)
- Do not report errors for the `PREPARE` execution if `tidb_snapshot` is set [#22641](https://github.com/pingcap/tidb/pull/22641)

+ TiKV

- Prevent a large number of reconnections in a short period of time [#9879](https://github.com/tikv/tikv/pull/9879)
- Optimize the write operations and Batch Get in the scenarios of many tombstones [#9729](https://github.com/tikv/tikv/pull/9729)
- Change the default value of `leader-transfer-max-log-lag` to `128` to increase the success rate of leader transfer [#9605](https://github.com/tikv/tikv/pull/9605)

+ PD

- Update the Region cache only when `pending-peers` or `down-peers` changes, which reduces the pressure of updating heartbeats [#3471](https://github.com/pingcap/pd/pull/3471)
- Prevent the Regions in `split-cache` from becoming the target of merge [#3459](https://github.com/pingcap/pd/pull/3459)

+ TiFlash

- Optimize the configuration file and remove useless items
- Reduce the size of TiFlash binary files
- Use an adaptive aggressive GC strategy to reduce memory usage

+ Tools

+ TiCDC

- Add a double confirmation when users create or resume the changefeed with the `start-ts` or `checkpoint-ts` 1 day before the current timestamp [#1497](https://github.com/pingcap/ticdc/pull/1497)

+ Backup & Restore (BR)

- Log the `HTTP_PROXY` and `HTTPS_PROXY` environmental variables [#827](https://github.com/pingcap/br/pull/827)
- Improve the backup performance when there are many tables [#745](https://github.com/pingcap/br/pull/745)
- Report errors if the service safe point check fails [#826](https://github.com/pingcap/br/pull/826)
- Add the `cluster_version` and `br_version` information in `backupmeta` [#803](https://github.com/pingcap/br/pull/803)
- Add retry for external storage errors to increase the success rate of backup [#851](https://github.com/pingcap/br/pull/851)
- Reduce memory usage during backup [#886](https://github.com/pingcap/br/pull/886)

+ TiDB Lightning

- Check the TiDB cluster version before running TiDB Lightning to avoid unexpected errors [#787](https://github.com/pingcap/br/pull/787)
- Fail fast when TiDB Lightning meets the `cancel` error [#867](https://github.com/pingcap/br/pull/867)
- Add `tikv-importer.engine-mem-cache-size` and `tikv-importer.local-writer-mem-cache-size` configuration items to balance between memory usage and performance [#866](https://github.com/pingcap/br/pull/866)
- Run `batch split region` in parallel for TiDB Lightning's Local-backend to increase the import speed [#868](https://github.com/pingcap/br/pull/868)
- When using TiDB Lightning to import data from a S3 storage, TiDB Lightning no longer requires the `s3:ListBucket` permission [#919](https://github.com/pingcap/br/pull/919)
- When resuming from a checkpoint, TiDB Lightning keeps using the original engine [#924](https://github.com/pingcap/br/pull/924)

## Bug Fixes

+ TiDB

- Fix the issue that the `get` variable expression goes wrong when the session variable is hexadecimal literals[#23372](https://github.com/pingcap/tidb/pull/23372)
- Fix the issue that wrong collation is used when creating the fast execution plan for the `Enum` or `Set` type [#23292](https://github.com/pingcap/tidb/pull/23292)
- Fix the possible wrong result of the `nullif` expression when it is used with `is-null` [#23279](https://github.com/pingcap/tidb/pull/23279)
- Fix the issue that the auto-analysis is triggered outside its time range [#23219](https://github.com/pingcap/tidb/pull/23219)
- Fix the issue that the `CAST` function might ignore errors for the `point get` plan [#23211](https://github.com/pingcap/tidb/pull/23211)
- Fix a bug that prevents SPM from taking effect when `CurrentDB` is empty [#23209](https://github.com/pingcap/tidb/pull/23209)
- Fix the issue of possible wrong table filters for the IndexMerge plan [#23165](https://github.com/pingcap/tidb/pull/23165)
- Fix the issue of unexpected `NotNullFlag` in the returning types of the `NULL` constant [#23135](https://github.com/pingcap/tidb/pull/23135)
- Fix a bug that collation might not be handled by the text type [#23092](https://github.com/pingcap/tidb/pull/23092)
- Fix the issue that the range partition might incorrectly handle the `IN` expression [#23074](https://github.com/pingcap/tidb/pull/23074)
- Fix the issue that after marking a TiKV store as tombstone, starting new TiKV stores with different StoreIDs with the same IP address and port keeps returning the `StoreNotMatch` error [#23071](https://github.com/pingcap/tidb/pull/23071)
- Do not adjust the `INT` type when it is `NULL` and compared with `YEAR` [#22844](https://github.com/pingcap/tidb/pull/22844)
- Fix the issue of lost connection when loading data on tables with the `auto_random` column [#22736](https://github.com/pingcap/tidb/pull/22736)
- Fix the issue of DDL hangover when the DDL operation meets panic in the cancelling path [#23297](https://github.com/pingcap/tidb/pull/23297)
- Fix the wrong key range of index scan when comparing the `YEAR` column with `NULL` [#23104](https://github.com/pingcap/tidb/pull/23104)
- Fix the issue that a successfully created view is failed to use [#23083](https://github.com/pingcap/tidb/pull/23083)

+ TiKV

- Fix the issue that the `IN` expression does not properly handle unsigned/signed integers [#9850](https://github.com/tikv/tikv/pull/9850)
- Fix the issue that the ingest operation is not re-entrant [#9779](https://github.com/tikv/tikv/pull/9779)
- Fix the issue that the space is missed when converting JSON to string in TiKV coprocessor [#9666](https://github.com/tikv/tikv/pull/9666)

+ PD

- Fix a bug that the isolation level is wrong when the store lacks the label [#3474](https://github.com/pingcap/pd/pull/3474)

+ TiFlash

- Fix the issue of incorrect execution results when the default value of the `binary` type column contains leading or tailing zero bytes
- Fix a bug that TiFlash fails to synchronize schema if the name of the database contains special characters
- Fix the issue of incorrect results when handling the `IN` expression with decimal values
- Fix a bug that the metric for the opened file count shown in Grafana is high
- Fix a bug that TiFlash does not support the `Timestamp` literal
- Fix the potential not responding issue while handling the `FROM_UNIXTIME` expression
- Fix the issue of incorrect results when casting string as integer
- Fix a bug that the `like` function might return wrong results

+ Tools

+ TiCDC

- Fix a disorder issue of the `resolved ts` event [#1464](https://github.com/pingcap/ticdc/pull/1464)
- Fix a data loss issue caused by wrong table scheduling due to the network problem [#1508](https://github.com/pingcap/ticdc/pull/1508)

+ Backup & Restore (BR)

- Fix a bug that `WalkDir` for the s3 storage returns `nil` if the target path is bucket name [#733](https://github.com/pingcap/br/pull/733)
- Fix a bug that the `status` port is not served with TLS [#839](https://github.com/pingcap/br/pull/839)

+ TiDB Lightning

- Fix the error that TiKV Importer might ignore that the file has already existed [#848](https://github.com/pingcap/br/pull/848)
- Fix a bug that the TiDB Lightning might use the wrong timestamp and read the wrong data [#850](https://github.com/pingcap/br/pull/850)
- Fix a bug that TiDB Lightning's unexpected exit might cause damaged checkpoint file [#889](https://github.com/pingcap/br/pull/889)
- Fix the issue of possible data error that occurs because the `cancel` error is ignored [#874](https://github.com/pingcap/br/pull/874)
1 change: 1 addition & 0 deletions releases/release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ aliases: ['/docs/dev/releases/release-notes/','/docs/dev/releases/rn/']

## 4.0

- [4.0.12](/releases/release-4.0.12.md)
- [4.0.11](/releases/release-4.0.11.md)
- [4.0.10](/releases/release-4.0.10.md)
- [4.0.9](/releases/release-4.0.9.md)
Expand Down

0 comments on commit 5f44496

Please sign in to comment.