From 15aca45ff408230a973ec31d8c0ca89cb5d146a6 Mon Sep 17 00:00:00 2001 From: qiancai Date: Mon, 5 Jun 2023 15:52:41 +0800 Subject: [PATCH 001/121] Create release-7.2.0.md --- releases/release-7.2.0.md | 230 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 230 insertions(+) create mode 100644 releases/release-7.2.0.md diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md new file mode 100644 index 000000000000..ba998911a0ff --- /dev/null +++ b/releases/release-7.2.0.md @@ -0,0 +1,230 @@ +--- +title: TiDB 7.2.0 Release Notes +summary: 了解 TiDB 7.2.0 版本的新功能、兼容性变更、改进提升,以及错误修复。 +--- + +# TiDB 7.2.0 Release Notes + +发版日期:2023 年 x 月 x 日 + +TiDB 版本:7.2.0 + +试用链接:[快速体验](https://docs.pingcap.com/zh/tidb/v7.2/quick-start-with-tidb) | [下载离线包](https://cn.pingcap.com/product-community/) + +在 7.2.0 版本中,你可以获得以下关键特性: + + + +## 功能详情 + +### 可扩展性 + + + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 性能 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 稳定性 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 高可用 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### SQL 功能 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 数据库管理 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 可观测性 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 安全 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 数据迁移 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +## 兼容性变更 + +> **注意:** +> +> 以下为从 v7.0.0 升级至当前版本 (v7.2.0) 所需兼容性变更信息。如果从 v6.6.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 release notes 中提到的兼容性变更信息。 + +### 行为变更 + + + +* 兼容性 1 + +* 兼容性 2 + +### 系统变量 + +| 变量名 | 修改类型(包括新增/修改/删除) | 描述 | +|--------|------------------------------|------| +| | | | +| | | | +| | | | +| | | | + +### 配置文件参数 + +| 配置文件 | 配置项 | 修改类型 | 描述 | +| -------- | -------- | -------- | -------- | +| | | | | +| | | | | +| | | | | +| | | | | + +## 废弃功能 + +## 改进提升 + ++ TiDB + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiKV + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ PD + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiFlash + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ Tools + + + Backup & Restore (BR) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiCDC + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Data Migration (DM) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Lightning + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiUP + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + +## 错误修复 + ++ TiDB + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiKV + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ PD + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiFlash + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ Tools + + + Backup & Restore (BR) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiCDC + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Data Migration (DM) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Lightning + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiUP + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + +## 贡献者 + +感谢来自 TiDB 社区的贡献者们: + +- [贡献者 GitHub ID]() \ No newline at end of file From 6d9cd2573afdd964e076b4691686a2879947d616 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Fri, 9 Jun 2023 11:17:25 +0800 Subject: [PATCH 002/121] Update release-7.2.0.md --- releases/release-7.2.0.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index ba998911a0ff..57a09cbbb242 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -35,6 +35,17 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 +* 新增支持下推两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 至 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@xxx** + + * `FIRST_VALUE` + * `LAST_VALUE` + +* TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@xxx** + + 在 v7.2.0 版本之前,TiFlash 尽量使用所有节点的副本进行数据扫描及 MPP 计算,以提供最强大的性能。在 v7.2.0 版本中,TiFlash 引入副本选择策略,可以根据节点区域属性,选择特定的副本,并调度部分节点进行数据扫描及 MPP 计算。当集群部署在超过一个机房,并且每个机房都拥有完整的 TiFlash 数据副本时,可以只选择当前机房的 TiFlash 副本,在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,避免大量跨机房的网络数据传输。新增系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read) 用于设定节点选择策略。 + + 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 + ### 稳定性 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -59,6 +70,18 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 +* TiDB 支持完整的分区类型管理功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) + + 在 v7.2.0 之前,TiDB 中的分区表不能调整分区类型。从 v7.2.0 开始,TiDB 支持将分区表修改为非分区表、将非分区表修改为分区表、修改分区类型功能。你可以根据需要灵活调整表的分区类型、数量。例如,通过 `ALTER TABLE t PARTITION BY ...` 语句修改分区类型。 + + 更多信息,请参考[用户文档](/partitioned-table.md#分区管理)。 + +* LIST 分区表支持 DEFAULT 分区功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) + + LIST 分区表必须指定所有的分区,不满足任何分区条件的数据,无法正常写入该表。从 v7.2.0 开始,TiDB 支持 [默认 LIST 分区](/partitioned-table.md#list-分区) 功能。该功能启用时,所有不符合已有 LIST 分区的数据将被保存在默认 LIST 分区中。通过系统变量 `tidb_enable_default_list_partition` 控制是否启用默认 LIST 分区gonna。 + + 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 + ### 数据库管理 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 88d62c181bab2d18cf2ad55e9909d7757a8c23db Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 9 Jun 2023 11:42:13 +0800 Subject: [PATCH 003/121] added supplementary info --- releases/release-7.2.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 57a09cbbb242..7a0cbd38a9ca 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -35,12 +35,12 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* 新增支持下推两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 至 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@xxx** +* 新增支持下推两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 至 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@qiancai** * `FIRST_VALUE` * `LAST_VALUE` -* TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@xxx** +* TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@qiancai** 在 v7.2.0 版本之前,TiFlash 尽量使用所有节点的副本进行数据扫描及 MPP 计算,以提供最强大的性能。在 v7.2.0 版本中,TiFlash 引入副本选择策略,可以根据节点区域属性,选择特定的副本,并调度部分节点进行数据扫描及 MPP 计算。当集群部署在超过一个机房,并且每个机房都拥有完整的 TiFlash 数据副本时,可以只选择当前机房的 TiFlash 副本,在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,避免大量跨机房的网络数据传输。新增系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read) 用于设定节点选择策略。 @@ -70,13 +70,13 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* TiDB 支持完整的分区类型管理功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) +* TiDB 支持完整的分区类型管理功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) **tw@qiancai** 在 v7.2.0 之前,TiDB 中的分区表不能调整分区类型。从 v7.2.0 开始,TiDB 支持将分区表修改为非分区表、将非分区表修改为分区表、修改分区类型功能。你可以根据需要灵活调整表的分区类型、数量。例如,通过 `ALTER TABLE t PARTITION BY ...` 语句修改分区类型。 更多信息,请参考[用户文档](/partitioned-table.md#分区管理)。 -* LIST 分区表支持 DEFAULT 分区功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) +* LIST 分区表支持 DEFAULT 分区功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) **tw@qiancai** LIST 分区表必须指定所有的分区,不满足任何分区条件的数据,无法正常写入该表。从 v7.2.0 开始,TiDB 支持 [默认 LIST 分区](/partitioned-table.md#list-分区) 功能。该功能启用时,所有不符合已有 LIST 分区的数据将被保存在默认 LIST 分区中。通过系统变量 `tidb_enable_default_list_partition` 控制是否启用默认 LIST 分区gonna。 From 5f3f94d7f6302b4b0dc43185238b7176b738dab6 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 9 Jun 2023 11:48:00 +0800 Subject: [PATCH 004/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 7a0cbd38a9ca..13dc3251d3ba 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -118,7 +118,7 @@ TiDB 版本:7.2.0 > **注意:** > -> 以下为从 v7.0.0 升级至当前版本 (v7.2.0) 所需兼容性变更信息。如果从 v6.6.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 release notes 中提到的兼容性变更信息。 +> 以下为从 v7.1.0 升级至当前版本 (v7.2.0) 所需兼容性变更信息。如果从 v7.0.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 release notes 中提到的兼容性变更信息。 ### 行为变更 From 4b96d674b248ed32cba96882a611c89438e3f4db Mon Sep 17 00:00:00 2001 From: Roger Song Date: Sun, 11 Jun 2023 16:08:24 +0800 Subject: [PATCH 005/121] Enabling tidb_remove_orderby_in_subquery by default --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 13dc3251d3ba..d69e1c2003c4 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -132,7 +132,7 @@ TiDB 版本:7.2.0 | 变量名 | 修改类型(包括新增/修改/删除) | 描述 | |--------|------------------------------|------| -| | | | +| [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入)| 修改 | 从 v7.2.0 及之后版本中默认为 `ON`, 即优化器改写会考虑消除子查询中的排序操作。 | | | | | | | | | | | | | From 7c75c9df6fcc49e208c5808b2a34fc6a51055e77 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Sun, 11 Jun 2023 21:52:56 +0800 Subject: [PATCH 006/121] CMD to show the progress of stats collection --- releases/release-7.2.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index d69e1c2003c4..c47789edbabd 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -98,6 +98,12 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 +* 为统计信息收集增加进度展示 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) + + 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。 在 v7.2.0 中, TiDB 加入了对统计信息收集进度的信息展示。 新加入 [`SHOW ANALYZE SUMMARY`]() 命令,能够以表或分区为单位展示总体工作量,当前进度,以及对完成时间的预测。 在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 + + 更多信息,请参考[用户文档](链接)。 + ### 安全 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From b76254f6d595c8cc21583afe69a4d9fb2201182c Mon Sep 17 00:00:00 2001 From: Roger Song Date: Sun, 11 Jun 2023 22:31:22 +0800 Subject: [PATCH 007/121] analyze enhancement: skip useless --- releases/release-7.2.0.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index c47789edbabd..cdb4bb1ce9f2 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -46,6 +46,10 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 +* 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) + + v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 + ### 稳定性 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From d6599bdf57797ab059308e9f8147cc77a75eea9b Mon Sep 17 00:00:00 2001 From: Roger Song Date: Sun, 11 Jun 2023 23:43:16 +0800 Subject: [PATCH 008/121] runaway query management --- releases/release-7.2.0.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index cdb4bb1ce9f2..a3c200876976 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -58,6 +58,17 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 +* 自动管理资源超出预期的查询 (实验特性) [#issue号](链接) @[nolouch](https://github.com/nolouch) @[glorv](https://github.com/glorv) @[Connor1996](https://github.com/Connor1996) @[JmPotato](https://github.com/JmPotato) @[CabinfeverB](https://github.com/CabinfeverB) @[HuSharp](https://github.com/HuSharp) + + 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。 造成 SQL 性能问题的原因有很多, 有可能是未经充分测试的新 SQL,数据量剧烈变化,执行计划突变等等,这些问题很难从源头上完全规避。 TiDB 在 v7.2.0 加入了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 + + 用户可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。 当查询的执行时间超过设置时, 自动降低查询的优先级或者取消查询。 用户还可以设置在一段时间内通过文本立即匹配已经识别出的查询, 从而避免问题查询的并发度太高时,在识别阶段就造成大量消耗的情况。 + + 对资源超出预期查询的自动管理, 为用户提供了有效的手段,快速应对突发的查询性能问题,降低问题对数据库整体性能的影响,从而提升数据库的稳定性。 + + 更多信息,请参考[用户文档](链接)。 + + ### 高可用 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 8a41a8989c5bef2524c0364bdc56fa53cde76de4 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Mon, 12 Jun 2023 00:10:22 +0800 Subject: [PATCH 009/121] Reduce the time consumed by "admin check table/index" --- releases/release-7.2.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a3c200876976..a2834ed5b824 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -50,6 +50,12 @@ TiDB 版本:7.2.0 v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 +* 提升表和索引一致性检查的性能 [#issue号](链接) @[wjhuang2016](https://github.com/wjhuang2016) + + TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据导入的时间, 提升数据导入的体验。 设置 [`tidb_enable_fast_table_check`]() 为 `TRUE` 启用这个新机制。 + + 更多信息,请参考[用户文档](链接) + ### 稳定性 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 0b1ed24095f65b06ad279852fe72397426b48886 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 12 Jun 2023 10:56:50 +0800 Subject: [PATCH 010/121] Apply suggestions from code review --- releases/release-7.2.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a2834ed5b824..672f66df93fb 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -46,11 +46,11 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 -* 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) +* 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 -* 提升表和索引一致性检查的性能 [#issue号](链接) @[wjhuang2016](https://github.com/wjhuang2016) +* 提升表和索引一致性检查的性能 [#issue号](链接) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据导入的时间, 提升数据导入的体验。 设置 [`tidb_enable_fast_table_check`]() 为 `TRUE` 启用这个新机制。 @@ -64,7 +64,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* 自动管理资源超出预期的查询 (实验特性) [#issue号](链接) @[nolouch](https://github.com/nolouch) @[glorv](https://github.com/glorv) @[Connor1996](https://github.com/Connor1996) @[JmPotato](https://github.com/JmPotato) @[CabinfeverB](https://github.com/CabinfeverB) @[HuSharp](https://github.com/HuSharp) +* 自动管理资源超出预期的查询 (实验特性) [#issue号](链接) @[nolouch](https://github.com/nolouch) @[glorv](https://github.com/glorv) @[Connor1996](https://github.com/Connor1996) @[JmPotato](https://github.com/JmPotato) @[CabinfeverB](https://github.com/CabinfeverB) @[HuSharp](https://github.com/HuSharp) **tw@hfxsd** 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。 造成 SQL 性能问题的原因有很多, 有可能是未经充分测试的新 SQL,数据量剧烈变化,执行计划突变等等,这些问题很难从源头上完全规避。 TiDB 在 v7.2.0 加入了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 @@ -119,7 +119,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* 为统计信息收集增加进度展示 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) +* 为统计信息收集增加进度展示 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。 在 v7.2.0 中, TiDB 加入了对统计信息收集进度的信息展示。 新加入 [`SHOW ANALYZE SUMMARY`]() 命令,能够以表或分区为单位展示总体工作量,当前进度,以及对完成时间的预测。 在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 From 4aaf2d0d7a6e8ab24515cabcd5527fad8b76a515 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 12 Jun 2023 11:48:24 +0800 Subject: [PATCH 011/121] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-7.2.0.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 672f66df93fb..3fa58bab4ca2 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -140,9 +140,15 @@ TiDB 版本:7.2.0 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) 更多信息,请参考[用户文档](链接)。 - +* 引入新的 SQL statement “import into”,该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter)--实验特性 +"import into " 集成了 Lightning 物理导入模式(local backend)的能力,用户可直接编写 "import into“ SQL 导入数据到 TiDB,同时还支持将数据导入任务拆分成多个子任务调度到多个 TiDB 节点,进行并行导入,提升导入性能。在导入空表的场景,用户无需再部署和管理 Lightning ,降低了导入数据难度的同时,大大提升了导入数据效率。 +更多信息,请参考[用户文档](链接)。 +* Lightning 物理导入模式(local backend)支持在导入数据前对需要导入的数据是否存在键值冲突进行检测并处理。[#41629](https://github.com/pingcap/tidb/issues/41629)@[gozssky](https://github.com/gozssky) @[lance6716](https://github.com/lance6716) +Lightning 物理导入模式(local backend)支持在导入数据前根据目标表的 PK、UK 定义对源文件的数据是否存在键值冲突进行检测。如发现存在冲突数据,在导入过程中用户可以通过配置策略如 replace 或 ignore 来处理冲突的数据,为用户提供了便利性。同时,用户也可以在实际数据导入之前,根据检测结果,提前发现冲突的记录,并排查原因,从源头保障数据质量,保证导入数据的准确性。 +更多信息,请参考[用户文档](链接)。 ## 兼容性变更 - +从 7.2 版本开始 Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。 +该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景,因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。 > **注意:** > > 以下为从 v7.1.0 升级至当前版本 (v7.2.0) 所需兼容性变更信息。如果从 v7.0.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 release notes 中提到的兼容性变更信息。 From 88437520c2669769593df92fe7c0ba27d28e5ef3 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 12 Jun 2023 14:00:08 +0800 Subject: [PATCH 012/121] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-7.2.0.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 3fa58bab4ca2..eafc04389bb3 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -216,12 +216,19 @@ Lightning 物理导入模式(local backend)支持在导入数据前根据目 - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiDB Data Migration (DM) +功能:在 DataMigration(DM)7.2 版本中引入了一个新的参数"strict-optimistic-shard-mode" 用于兼容历史版本 2.0 分库分表同步 DDL 的行为。 +当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断,在多个表的 DDL变更有依赖关系的场景,可以及时中断,用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。详细的参数设置和使用说明,请参考相关文档。 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiDB Lightning - + + TiDB Lightning +- Lightning 支持将字符集为 latin1 和 utf8 的源文件导入到 TiDB。 +通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 和 utf8 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集(latin1 或 utf8)。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) +更多信息,请参考[用户文档](https://github.com/pingcap/docs-cn/pull/14172/files) +- Lightning 引入了新的参数 "send-kv-size" ,用于设置发单次送到 TiKV 的 KV pairs 的大小。 +在 Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入了新的参数"send-kv-size" 。当 KV 键值对的大小达到设定的阈值时,它们将被 Lightning 立即发送到 TiKV,避免在导入大宽表的时候 Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整 "send-kv-size" 参数,您可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。[#43853](https://github.com/pingcap/tidb/issues/43853) @[D3Hunter](https://github.com/D3Hunter) - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From 1787424b6aaf18c007c86b1f963081d6821d0817 Mon Sep 17 00:00:00 2001 From: qiancai Date: Mon, 12 Jun 2023 14:32:28 +0800 Subject: [PATCH 013/121] adjust the location of DM features --- releases/release-7.2.0.md | 55 ++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index eafc04389bb3..e6b5893f1fd2 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -52,7 +52,7 @@ TiDB 版本:7.2.0 * 提升表和索引一致性检查的性能 [#issue号](链接) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** - TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据导入的时间, 提升数据导入的体验。 设置 [`tidb_enable_fast_table_check`]() 为 `TRUE` 启用这个新机制。 + TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据导入的时间, 提升数据导入的体验。 设置 [`tidb_enable_fast_table_check`](链接) 为 `TRUE` 启用这个新机制。 更多信息,请参考[用户文档](链接) @@ -66,14 +66,13 @@ TiDB 版本:7.2.0 * 自动管理资源超出预期的查询 (实验特性) [#issue号](链接) @[nolouch](https://github.com/nolouch) @[glorv](https://github.com/glorv) @[Connor1996](https://github.com/Connor1996) @[JmPotato](https://github.com/JmPotato) @[CabinfeverB](https://github.com/CabinfeverB) @[HuSharp](https://github.com/HuSharp) **tw@hfxsd** - 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。 造成 SQL 性能问题的原因有很多, 有可能是未经充分测试的新 SQL,数据量剧烈变化,执行计划突变等等,这些问题很难从源头上完全规避。 TiDB 在 v7.2.0 加入了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 + 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。 造成 SQL 性能问题的原因有很多, 有可能是未经充分测试的新 SQL,数据量剧烈变化,执行计划突变等等,这些问题很难从源头上完全规避。 TiDB 在 v7.2.0 加入了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 - 用户可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。 当查询的执行时间超过设置时, 自动降低查询的优先级或者取消查询。 用户还可以设置在一段时间内通过文本立即匹配已经识别出的查询, 从而避免问题查询的并发度太高时,在识别阶段就造成大量消耗的情况。 + 用户可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。 当查询的执行时间超过设置时, 自动降低查询的优先级或者取消查询。 用户还可以设置在一段时间内通过文本立即匹配已经识别出的查询, 从而避免问题查询的并发度太高时,在识别阶段就造成大量消耗的情况。 - 对资源超出预期查询的自动管理, 为用户提供了有效的手段,快速应对突发的查询性能问题,降低问题对数据库整体性能的影响,从而提升数据库的稳定性。 + 对资源超出预期查询的自动管理, 为用户提供了有效的手段,快速应对突发的查询性能问题,降低问题对数据库整体性能的影响,从而提升数据库的稳定性。 更多信息,请参考[用户文档](链接)。 - ### 高可用 @@ -100,7 +99,7 @@ TiDB 版本:7.2.0 * LIST 分区表支持 DEFAULT 分区功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) **tw@qiancai** LIST 分区表必须指定所有的分区,不满足任何分区条件的数据,无法正常写入该表。从 v7.2.0 开始,TiDB 支持 [默认 LIST 分区](/partitioned-table.md#list-分区) 功能。该功能启用时,所有不符合已有 LIST 分区的数据将被保存在默认 LIST 分区中。通过系统变量 `tidb_enable_default_list_partition` 控制是否启用默认 LIST 分区gonna。 - + 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 ### 数据库管理 @@ -121,7 +120,7 @@ TiDB 版本:7.2.0 * 为统计信息收集增加进度展示 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** - 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。 在 v7.2.0 中, TiDB 加入了对统计信息收集进度的信息展示。 新加入 [`SHOW ANALYZE SUMMARY`]() 命令,能够以表或分区为单位展示总体工作量,当前进度,以及对完成时间的预测。 在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 + 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。 在 v7.2.0 中, TiDB 加入了对统计信息收集进度的信息展示。 新加入 [`SHOW ANALYZE SUMMARY`](链接) 命令,能够以表或分区为单位展示总体工作量,当前进度,以及对完成时间的预测。 在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 更多信息,请参考[用户文档](链接)。 @@ -135,20 +134,26 @@ TiDB 版本:7.2.0 ### 数据迁移 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** +* 引入新的 SQL statement “import into” (实验特性),该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + "import into " 集成了 Lightning 物理导入模式(local backend)的能力,用户可直接编写 "import into“ SQL 导入数据到 TiDB,同时还支持将数据导入任务拆分成多个子任务调度到多个 TiDB 节点,进行并行导入,提升导入性能。在导入空表的场景,用户无需再部署和管理 Lightning ,降低了导入数据难度的同时,大大提升了导入数据效率。 更多信息,请参考[用户文档](链接)。 -* 引入新的 SQL statement “import into”,该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter)--实验特性 -"import into " 集成了 Lightning 物理导入模式(local backend)的能力,用户可直接编写 "import into“ SQL 导入数据到 TiDB,同时还支持将数据导入任务拆分成多个子任务调度到多个 TiDB 节点,进行并行导入,提升导入性能。在导入空表的场景,用户无需再部署和管理 Lightning ,降低了导入数据难度的同时,大大提升了导入数据效率。 -更多信息,请参考[用户文档](链接)。 -* Lightning 物理导入模式(local backend)支持在导入数据前对需要导入的数据是否存在键值冲突进行检测并处理。[#41629](https://github.com/pingcap/tidb/issues/41629)@[gozssky](https://github.com/gozssky) @[lance6716](https://github.com/lance6716) -Lightning 物理导入模式(local backend)支持在导入数据前根据目标表的 PK、UK 定义对源文件的数据是否存在键值冲突进行检测。如发现存在冲突数据,在导入过程中用户可以通过配置策略如 replace 或 ignore 来处理冲突的数据,为用户提供了便利性。同时,用户也可以在实际数据导入之前,根据检测结果,提前发现冲突的记录,并排查原因,从源头保障数据质量,保证导入数据的准确性。 -更多信息,请参考[用户文档](链接)。 + +* Lightning 物理导入模式(local backend)支持在导入数据前对需要导入的数据是否存在键值冲突进行检测并处理。[#41629](https://github.com/pingcap/tidb/issues/41629)@[gozssky](https://github.com/gozssky) @[lance6716](https://github.com/lance6716) **tw@hfxsd** + + Lightning 物理导入模式(local backend)支持在导入数据前根据目标表的 PK、UK 定义对源文件的数据是否存在键值冲突进行检测。如发现存在冲突数据,在导入过程中用户可以通过配置策略如 replace 或 ignore 来处理冲突的数据,为用户提供了便利性。同时,用户也可以在实际数据导入之前,根据检测结果,提前发现冲突的记录,并排查原因,从源头保障数据质量,保证导入数据的准确性。 + + 更多信息,请参考[用户文档](链接)。 + +* Lightning 支持将字符集为 latin1 和 utf8 的源文件导入到 TiDB。[#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** + + 通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 和 utf8 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集(latin1 或 utf8)。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 + + 更多信息,请参考[用户文档](https://github.com/pingcap/docs-cn/pull/14172/files) + ## 兼容性变更 -从 7.2 版本开始 Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。 -该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景,因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。 + > **注意:** > > 以下为从 v7.1.0 升级至当前版本 (v7.2.0) 所需兼容性变更信息。如果从 v7.0.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 release notes 中提到的兼容性变更信息。 @@ -176,11 +181,14 @@ Lightning 物理导入模式(local backend)支持在导入数据前根据目 | -------- | -------- | -------- | -------- | | | | | | | | | | | -| | | | | -| | | | | +| TiDB Lightning | `send-kv-pairs` | 废弃 | 从 7.2 版本开始 TiDB Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。**tw@hfxsd** | +| TiDB Lightning | `send-kv-size` | 新增 | 从 7.2 版本开始在 Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入 `send-kv-size` 参数,用于设置发单次送到 TiKV 的 KV pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 Lightning 立即发送到 TiKV,避免在导入大宽表的时候 Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整 "send-kv-size" 参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | +| Data Migration | `strict-optimistic-shard-mode` | 新增 | 用于兼容历史版本 2.0 分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断,在多个表的 DDL变更有依赖关系的场景,可以及时中断,用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | ## 废弃功能 +- note [#issue](链接) @[贡献者 GitHub ID](链接) + ## 改进提升 + TiDB @@ -216,19 +224,12 @@ Lightning 物理导入模式(local backend)支持在导入数据前根据目 - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiDB Data Migration (DM) -功能:在 DataMigration(DM)7.2 版本中引入了一个新的参数"strict-optimistic-shard-mode" 用于兼容历史版本 2.0 分库分表同步 DDL 的行为。 -当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断,在多个表的 DDL变更有依赖关系的场景,可以及时中断,用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。详细的参数设置和使用说明,请参考相关文档。 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiDB Lightning - + TiDB Lightning -- Lightning 支持将字符集为 latin1 和 utf8 的源文件导入到 TiDB。 -通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 和 utf8 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集(latin1 或 utf8)。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) -更多信息,请参考[用户文档](https://github.com/pingcap/docs-cn/pull/14172/files) -- Lightning 引入了新的参数 "send-kv-size" ,用于设置发单次送到 TiKV 的 KV pairs 的大小。 -在 Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入了新的参数"send-kv-size" 。当 KV 键值对的大小达到设定的阈值时,它们将被 Lightning 立即发送到 TiKV,避免在导入大宽表的时候 Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整 "send-kv-size" 参数,您可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。[#43853](https://github.com/pingcap/tidb/issues/43853) @[D3Hunter](https://github.com/D3Hunter) + - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From a8b6cae4e262c122a27d843b93db7f9610acbc5c Mon Sep 17 00:00:00 2001 From: qiancai Date: Tue, 13 Jun 2023 13:37:07 +0800 Subject: [PATCH 014/121] add release note: DDL tasks support pause and resume operations --- releases/release-7.2.0.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index e6b5893f1fd2..6c41e6c7bbef 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -104,11 +104,17 @@ TiDB 版本:7.2.0 ### 数据库管理 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** +* DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) **tw@ran-huang** - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + TiDB v7.1.0 之前的版本中,当 DDL 任务执行期间遇到业务高峰时间点时,为了减少对业务的影响,只能手动取消 DDL 任务。TiDB v7.1.0 引入了 DDL 任务的暂停和恢复功能,你可以在高峰时间点暂停 DDL 任务,等到业务高峰时间结束后再恢复 DDL 任务,从而避免了 DDL 操作对业务负载的影响。 - 更多信息,请参考[用户文档](链接)。 + 例如,可以通过如下 `ADMIN PAUSE DDL JOBS` 或 `ADMIN RESUME DDL JOBS` 语句暂停或者恢复多个 DDL 任务: + + ```sql + ADMIN PAUSE DDL JOBS 1,2; + ADMIN RESUME DDL JOBS 1,2; + + 更多信息,请参考 [用户文档](/ddl-introduction.md#ddl - 相关的命令介绍)。 ### 可观测性 From ce19b2202d31a68ea937853c7a1db269d6111ce1 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Jun 2023 17:27:48 +0800 Subject: [PATCH 015/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 6c41e6c7bbef..9ad06ac22165 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -199,7 +199,7 @@ TiDB 版本:7.2.0 + TiDB - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV From 4b6887b5f4deee2c17d250db778657755502edce Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Tue, 13 Jun 2023 18:39:40 +0800 Subject: [PATCH 016/121] Update release-7.2.0.md --- releases/release-7.2.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 9ad06ac22165..96709cf143c2 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -46,6 +46,12 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 +* TiFlash 支持 pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@qiancai** + + 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但是并不能完全避免。在 v7.2.0 版本中,TiFlash 引入 pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设定是否启用 pipeline 执行模型。 + + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_tiflash_pipeline_model)。 + * 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 From 66926d9565e288b9a1067dba1d7410ecb3f93d58 Mon Sep 17 00:00:00 2001 From: qiancai Date: Wed, 14 Jun 2023 11:06:55 +0800 Subject: [PATCH 017/121] remove empty placeholders --- releases/release-7.2.0.md | 54 ++------------------------------------- 1 file changed, 2 insertions(+), 52 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 96709cf143c2..b3c3fc397656 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -17,24 +17,8 @@ TiDB 版本:7.2.0 ## 功能详情 -### 可扩展性 - - - -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### 性能 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 新增支持下推两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 至 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@qiancai** * `FIRST_VALUE` @@ -64,12 +48,6 @@ TiDB 版本:7.2.0 ### 稳定性 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 自动管理资源超出预期的查询 (实验特性) [#issue号](链接) @[nolouch](https://github.com/nolouch) @[glorv](https://github.com/glorv) @[Connor1996](https://github.com/Connor1996) @[JmPotato](https://github.com/JmPotato) @[CabinfeverB](https://github.com/CabinfeverB) @[HuSharp](https://github.com/HuSharp) **tw@hfxsd** 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。 造成 SQL 性能问题的原因有很多, 有可能是未经充分测试的新 SQL,数据量剧烈变化,执行计划突变等等,这些问题很难从源头上完全规避。 TiDB 在 v7.2.0 加入了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 @@ -80,22 +58,8 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -### 高可用 - -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### SQL 功能 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * TiDB 支持完整的分区类型管理功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) **tw@qiancai** 在 v7.2.0 之前,TiDB 中的分区表不能调整分区类型。从 v7.2.0 开始,TiDB 支持将分区表修改为非分区表、将非分区表修改为分区表、修改分区类型功能。你可以根据需要灵活调整表的分区类型、数量。例如,通过 `ALTER TABLE t PARTITION BY ...` 语句修改分区类型。 @@ -112,7 +76,7 @@ TiDB 版本:7.2.0 * DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) **tw@ran-huang** - TiDB v7.1.0 之前的版本中,当 DDL 任务执行期间遇到业务高峰时间点时,为了减少对业务的影响,只能手动取消 DDL 任务。TiDB v7.1.0 引入了 DDL 任务的暂停和恢复功能,你可以在高峰时间点暂停 DDL 任务,等到业务高峰时间结束后再恢复 DDL 任务,从而避免了 DDL 操作对业务负载的影响。 + TiDB v7.2.0 之前的版本中,当 DDL 任务执行期间遇到业务高峰时间点时,为了减少对业务的影响,只能手动取消 DDL 任务。TiDB v7.2.0 引入了 DDL 任务的暂停和恢复功能,你可以在高峰时间点暂停 DDL 任务,等到业务高峰时间结束后再恢复 DDL 任务,从而避免了 DDL 操作对业务负载的影响。 例如,可以通过如下 `ADMIN PAUSE DDL JOBS` 或 `ADMIN RESUME DDL JOBS` 语句暂停或者恢复多个 DDL 任务: @@ -124,26 +88,12 @@ TiDB 版本:7.2.0 ### 可观测性 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 为统计信息收集增加进度展示 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。 在 v7.2.0 中, TiDB 加入了对统计信息收集进度的信息展示。 新加入 [`SHOW ANALYZE SUMMARY`](链接) 命令,能够以表或分区为单位展示总体工作量,当前进度,以及对完成时间的预测。 在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 更多信息,请参考[用户文档](链接)。 -### 安全 - -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### 数据迁移 * 引入新的 SQL statement “import into” (实验特性),该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** @@ -303,4 +253,4 @@ TiDB 版本:7.2.0 感谢来自 TiDB 社区的贡献者们: -- [贡献者 GitHub ID]() \ No newline at end of file +- [贡献者 GitHub ID](链接) \ No newline at end of file From 1e643222c58e7829e094f53646ebda2572911ff6 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:12:29 +0800 Subject: [PATCH 018/121] Update release-7.2.0.md remove notes for partitions --- releases/release-7.2.0.md | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b3c3fc397656..771c5faea617 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -60,18 +60,6 @@ TiDB 版本:7.2.0 ### SQL 功能 -* TiDB 支持完整的分区类型管理功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) **tw@qiancai** - - 在 v7.2.0 之前,TiDB 中的分区表不能调整分区类型。从 v7.2.0 开始,TiDB 支持将分区表修改为非分区表、将非分区表修改为分区表、修改分区类型功能。你可以根据需要灵活调整表的分区类型、数量。例如,通过 `ALTER TABLE t PARTITION BY ...` 语句修改分区类型。 - - 更多信息,请参考[用户文档](/partitioned-table.md#分区管理)。 - -* LIST 分区表支持 DEFAULT 分区功能 [#42728](https://github.com/pingcap/tidb/issues/42728) @[mjonss](https://github.com/mjonss) **tw@qiancai** - - LIST 分区表必须指定所有的分区,不满足任何分区条件的数据,无法正常写入该表。从 v7.2.0 开始,TiDB 支持 [默认 LIST 分区](/partitioned-table.md#list-分区) 功能。该功能启用时,所有不符合已有 LIST 分区的数据将被保存在默认 LIST 分区中。通过系统变量 `tidb_enable_default_list_partition` 控制是否启用默认 LIST 分区gonna。 - - 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 - ### 数据库管理 * DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) **tw@ran-huang** From a637bef18839e52d20d045799ec82e00d448194a Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 14 Jun 2023 13:47:35 +0800 Subject: [PATCH 019/121] Update releases/release-7.2.0.md Co-authored-by: Aolin --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 771c5faea617..017defc05933 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -120,7 +120,7 @@ TiDB 版本:7.2.0 | 变量名 | 修改类型(包括新增/修改/删除) | 描述 | |--------|------------------------------|------| -| [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入)| 修改 | 从 v7.2.0 及之后版本中默认为 `ON`, 即优化器改写会考虑消除子查询中的排序操作。 | +| [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | | | | | | | | | | | | | From c15b1475c63ce4fbb361b7d697756b68e122a785 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 14 Jun 2023 14:09:51 +0800 Subject: [PATCH 020/121] update tw name and number --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 017defc05933..c8bde4bd341b 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -30,7 +30,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 -* TiFlash 支持 pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@qiancai** +* TiFlash 支持 pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但是并不能完全避免。在 v7.2.0 版本中,TiFlash 引入 pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设定是否启用 pipeline 执行模型。 From 3168b7c22477fd8b91563806ee6f0c9e7453d933 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Wed, 14 Jun 2023 14:26:04 +0800 Subject: [PATCH 021/121] Merge branch 'v7.2.0/release_notes' of https://github.com/qiancai/docs-cn into pr/14154 --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index c8bde4bd341b..556b9dc78cea 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -34,7 +34,7 @@ TiDB 版本:7.2.0 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但是并不能完全避免。在 v7.2.0 版本中,TiFlash 引入 pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设定是否启用 pipeline 执行模型。 - 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_tiflash_pipeline_model)。 + 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 * 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** From 012ec6ee33b38b7c5549ca5255cff100f5b1449a Mon Sep 17 00:00:00 2001 From: Roger Song Date: Wed, 14 Jun 2023 17:59:43 +0800 Subject: [PATCH 022/121] enhance hint parsing and support more patterns for binding from history --- releases/release-7.2.0.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 556b9dc78cea..2adde7ee8948 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -58,6 +58,13 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 +* 增强对历史执行计划的绑定能力 [#issue号](链接) @[qw4990](https://github.com/qw4990) + + 新版本的 TiDB 对历史执行计划绑定的能力做了进一步增强。 一方面加强了对复杂语句的解析和绑定, 另一方面, 也加入了对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDERED_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name)、[`NO_ORDERED_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 借助这个能力, 从历史执行计划中创建的 [SQL Binding](/sql-plan-management.md#执行计划绑定-sql-binding) 能够更加稳定的固定住执行计划。 + + 更多信息,请参考[用户文档](/sql-plan-management.md#执行计划绑定-sql-binding)。 + + ### SQL 功能 ### 数据库管理 From 2976c501223561960903fa984b1eec72b2ae6ebd Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 14 Jun 2023 18:47:53 +0800 Subject: [PATCH 023/121] Apply suggestions from code review Co-authored-by: bob34007 <88366491+bob34007@users.noreply.github.com> --- releases/release-7.2.0.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 2adde7ee8948..3a76c669f535 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -58,7 +58,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* 增强对历史执行计划的绑定能力 [#issue号](链接) @[qw4990](https://github.com/qw4990) +* 增强对历史执行计划的绑定能力 [#issue号](链接) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** 新版本的 TiDB 对历史执行计划绑定的能力做了进一步增强。 一方面加强了对复杂语句的解析和绑定, 另一方面, 也加入了对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDERED_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name)、[`NO_ORDERED_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 借助这个能力, 从历史执行计划中创建的 [SQL Binding](/sql-plan-management.md#执行计划绑定-sql-binding) 能够更加稳定的固定住执行计划。 @@ -67,6 +67,12 @@ TiDB 版本:7.2.0 ### SQL 功能 +* 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678] (https://github.com/fzzf678) **tw@qiancai** + + v7.2.0 版本开始,用户可以通过 `CHECK` 约束功能约束表中一个或者多个字段值必须满足特定条件。添加 `CHECK` 约束后,TiDB 会在数据插入或者更新时检查约束条件是否满足,只允许满足约束的数据写入。 + + 更多信息,请参考[用户文档](链接)。 + ### 数据库管理 * DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) **tw@ran-huang** From a1ca9cb656cd9b804e955430715f101c9e87f3be Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 15 Jun 2023 09:31:34 +0800 Subject: [PATCH 024/121] Update releases/release-7.2.0.md Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 3a76c669f535..8d2a1acddb1a 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -103,7 +103,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* Lightning 物理导入模式(local backend)支持在导入数据前对需要导入的数据是否存在键值冲突进行检测并处理。[#41629](https://github.com/pingcap/tidb/issues/41629)@[gozssky](https://github.com/gozssky) @[lance6716](https://github.com/lance6716) **tw@hfxsd** +* Lightning 物理导入模式(local backend)支持在导入数据前对需要导入的数据是否存在键值冲突进行检测并处理(实验特性)[#41629](https://github.com/pingcap/tidb/issues/41629)@[gozssky](https://github.com/gozssky) @[lance6716](https://github.com/lance6716) **tw@hfxsd** Lightning 物理导入模式(local backend)支持在导入数据前根据目标表的 PK、UK 定义对源文件的数据是否存在键值冲突进行检测。如发现存在冲突数据,在导入过程中用户可以通过配置策略如 replace 或 ignore 来处理冲突的数据,为用户提供了便利性。同时,用户也可以在实际数据导入之前,根据检测结果,提前发现冲突的记录,并排查原因,从源头保障数据质量,保证导入数据的准确性。 From 49c674a712e5a9d059f0c9a227f5951d1ebeaf13 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Thu, 15 Jun 2023 14:36:02 +0800 Subject: [PATCH 025/121] Update release-7.2.0.md --- releases/release-7.2.0.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 8d2a1acddb1a..17991868fb92 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -24,12 +24,6 @@ TiDB 版本:7.2.0 * `FIRST_VALUE` * `LAST_VALUE` -* TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@qiancai** - - 在 v7.2.0 版本之前,TiFlash 尽量使用所有节点的副本进行数据扫描及 MPP 计算,以提供最强大的性能。在 v7.2.0 版本中,TiFlash 引入副本选择策略,可以根据节点区域属性,选择特定的副本,并调度部分节点进行数据扫描及 MPP 计算。当集群部署在超过一个机房,并且每个机房都拥有完整的 TiFlash 数据副本时,可以只选择当前机房的 TiFlash 副本,在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,避免大量跨机房的网络数据传输。新增系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read) 用于设定节点选择策略。 - - 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 - * TiFlash 支持 pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但是并不能完全避免。在 v7.2.0 版本中,TiFlash 引入 pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设定是否启用 pipeline 执行模型。 From 3574bd9132645a90ff5aaf7b8f6c69d01212e31c Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 15 Jun 2023 14:52:17 +0800 Subject: [PATCH 026/121] Update releases/release-7.2.0.md Co-authored-by: Hangjie Mo --- releases/release-7.2.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 17991868fb92..b4c252265a42 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -151,6 +151,7 @@ TiDB 版本:7.2.0 + TiDB - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes + - 支持分区表下推 TopN 逻辑,在减少了 indexLookUp 和 IndexMerge 算子回表次数,提升了 SQL 执行性能 [#26166](https://github.com/pingcap/tidb/issues/26166) [#41028](https://github.com/pingcap/tidb/issues/41028) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV From 8ba4dad42093a9561ffbf85c8cfb3af86347685c Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 15 Jun 2023 15:17:13 +0800 Subject: [PATCH 027/121] Update releases/release-7.2.0.md Co-authored-by: Hangjie Mo --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b4c252265a42..e2aa84d3148f 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -151,7 +151,7 @@ TiDB 版本:7.2.0 + TiDB - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - - 支持分区表下推 TopN 逻辑,在减少了 indexLookUp 和 IndexMerge 算子回表次数,提升了 SQL 执行性能 [#26166](https://github.com/pingcap/tidb/issues/26166) [#41028](https://github.com/pingcap/tidb/issues/41028) + - 支持分区表下推 TopN 算子,减少该情况下 indexLookUp 和 IndexMerge 算子回表次数,提升相关 SQL 执行性能 [#26166](https://github.com/pingcap/tidb/issues/26166) [#41028](https://github.com/pingcap/tidb/issues/41028) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV From e5c12bdccf8cd72354c763db5fc2c2ea8fc68427 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Thu, 15 Jun 2023 15:46:48 +0800 Subject: [PATCH 028/121] address comments --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index e2aa84d3148f..3f1297489b29 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -36,7 +36,7 @@ TiDB 版本:7.2.0 * 提升表和索引一致性检查的性能 [#issue号](链接) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** - TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据导入的时间, 提升数据导入的体验。 设置 [`tidb_enable_fast_table_check`](链接) 为 `TRUE` 启用这个新机制。 + TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 设置 [`tidb_enable_fast_table_check`](链接) 为 `TRUE` 启用这个新机制。 更多信息,请参考[用户文档](链接) From 39e0aabf08b69b8688c867553c023f8bc77f3e56 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Thu, 15 Jun 2023 18:13:40 +0800 Subject: [PATCH 029/121] Update release-7.2.0.md --- releases/release-7.2.0.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 3f1297489b29..a99f455ce5ce 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -30,6 +30,10 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 +* 提升 TiFlash 处理超大量表的性能 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@ran-huang** + + 在 v7.2.0 版本之前,TiFlash 会同步所有表的 schema 信息,即使该表没有 TiFlash 副本。此外,TiFlash 进行读写时,如果检测到某张表的 schema 变动,需要同步所有表的 schema 信息。当数据库中有大量表时,同步所有表的 schema 信息严重影响 TiFlash 的处理性能。在 v7.2.0 版本中,TiFlash 优化机制,只会同步包含 TiFlash 副本的表的 schema 信息。在检测到某张表的 schema 变动时,只会同步该表的 schema 信息,大大提升 TiFlash 处理性能,从而支持对超大量表的处理。该优化自动生效,不需要任何设定调整。 + * 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 From 688c8894c0969ee96ccf8c5cb0b3b0e64f14fdf3 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 15 Jun 2023 18:19:38 +0800 Subject: [PATCH 030/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a99f455ce5ce..09b7372bb715 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -30,7 +30,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 -* 提升 TiFlash 处理超大量表的性能 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@ran-huang** +* 提升 TiFlash 处理超大量表的性能 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** 在 v7.2.0 版本之前,TiFlash 会同步所有表的 schema 信息,即使该表没有 TiFlash 副本。此外,TiFlash 进行读写时,如果检测到某张表的 schema 变动,需要同步所有表的 schema 信息。当数据库中有大量表时,同步所有表的 schema 信息严重影响 TiFlash 的处理性能。在 v7.2.0 版本中,TiFlash 优化机制,只会同步包含 TiFlash 副本的表的 schema 信息。在检测到某张表的 schema 变动时,只会同步该表的 schema 信息,大大提升 TiFlash 处理性能,从而支持对超大量表的处理。该优化自动生效,不需要任何设定调整。 From dae152fb9e64526a9f2ad5f625a6f8c1a74fda40 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Fri, 16 Jun 2023 11:39:46 +0800 Subject: [PATCH 031/121] Update release-7.2.0.md --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 09b7372bb715..0f6402e6edf8 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -30,9 +30,9 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 -* 提升 TiFlash 处理超大量表的性能 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** +* 降低 TiFlash 等待 schema 同步的时延 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** - 在 v7.2.0 版本之前,TiFlash 会同步所有表的 schema 信息,即使该表没有 TiFlash 副本。此外,TiFlash 进行读写时,如果检测到某张表的 schema 变动,需要同步所有表的 schema 信息。当数据库中有大量表时,同步所有表的 schema 信息严重影响 TiFlash 的处理性能。在 v7.2.0 版本中,TiFlash 优化机制,只会同步包含 TiFlash 副本的表的 schema 信息。在检测到某张表的 schema 变动时,只会同步该表的 schema 信息,大大提升 TiFlash 处理性能,从而支持对超大量表的处理。该优化自动生效,不需要任何设定调整。 + 当表的 schema 变动时,TiFlash 需要及时和 TiKV 同步表的 schema 信息。在 v7.2.0 版本之前,TiFlash 访问表数据时,如果检测到某张表的 schema 变动时,会同步所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,读取一张表的数据需要同步所有表的 schema 信息,schema 同步的时延非常高。在 v7.2.0 版本中,TiFlash 优化 schema 同步机制,只同步包含 TiFlash 副本的表的 schema 信息,并且当检测到某张表的 schema 变动时,只同步该表的 schema 信息,降低 TiFlash 同步 schema 的时延。该优化自动生效,不需要任何设定调整。 * 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** From c3da810137c2413c351855b50a50f8fac90477cc Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 16 Jun 2023 13:54:06 +0800 Subject: [PATCH 032/121] Update releases/release-7.2.0.md Co-authored-by: lance6716 --- releases/release-7.2.0.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 0f6402e6edf8..9de045a7798d 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -101,12 +101,6 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* Lightning 物理导入模式(local backend)支持在导入数据前对需要导入的数据是否存在键值冲突进行检测并处理(实验特性)[#41629](https://github.com/pingcap/tidb/issues/41629)@[gozssky](https://github.com/gozssky) @[lance6716](https://github.com/lance6716) **tw@hfxsd** - - Lightning 物理导入模式(local backend)支持在导入数据前根据目标表的 PK、UK 定义对源文件的数据是否存在键值冲突进行检测。如发现存在冲突数据,在导入过程中用户可以通过配置策略如 replace 或 ignore 来处理冲突的数据,为用户提供了便利性。同时,用户也可以在实际数据导入之前,根据检测结果,提前发现冲突的记录,并排查原因,从源头保障数据质量,保证导入数据的准确性。 - - 更多信息,请参考[用户文档](链接)。 - * Lightning 支持将字符集为 latin1 和 utf8 的源文件导入到 TiDB。[#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** 通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 和 utf8 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集(latin1 或 utf8)。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 From 8463a39a775bc400297154701dd32e5b4844baf3 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 16 Jun 2023 13:54:25 +0800 Subject: [PATCH 033/121] Update releases/release-7.2.0.md Co-authored-by: Aolin --- releases/release-7.2.0.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 9de045a7798d..e0c058fae7d8 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -87,12 +87,6 @@ TiDB 版本:7.2.0 ### 可观测性 -* 为统计信息收集增加进度展示 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** - - 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。 在 v7.2.0 中, TiDB 加入了对统计信息收集进度的信息展示。 新加入 [`SHOW ANALYZE SUMMARY`](链接) 命令,能够以表或分区为单位展示总体工作量,当前进度,以及对完成时间的预测。 在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 - - 更多信息,请参考[用户文档](链接)。 - ### 数据迁移 * 引入新的 SQL statement “import into” (实验特性),该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** From 28c83a1bfc666b5318ff548bed77e1278ecd2e87 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 16 Jun 2023 13:55:00 +0800 Subject: [PATCH 034/121] Apply suggestions from code review Co-authored-by: Connor --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index e0c058fae7d8..c400a288a7ca 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -46,7 +46,7 @@ TiDB 版本:7.2.0 ### 稳定性 -* 自动管理资源超出预期的查询 (实验特性) [#issue号](链接) @[nolouch](https://github.com/nolouch) @[glorv](https://github.com/glorv) @[Connor1996](https://github.com/Connor1996) @[JmPotato](https://github.com/JmPotato) @[CabinfeverB](https://github.com/CabinfeverB) @[HuSharp](https://github.com/HuSharp) **tw@hfxsd** +* 自动管理资源超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) @[glorv](https://github.com/glorv) @[HuSharp](https://github.com/HuSharp) @[nolouch](https://github.com/nolouch) **tw@hfxsd** 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。 造成 SQL 性能问题的原因有很多, 有可能是未经充分测试的新 SQL,数据量剧烈变化,执行计划突变等等,这些问题很难从源头上完全规避。 TiDB 在 v7.2.0 加入了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 @@ -54,7 +54,7 @@ TiDB 版本:7.2.0 对资源超出预期查询的自动管理, 为用户提供了有效的手段,快速应对突发的查询性能问题,降低问题对数据库整体性能的影响,从而提升数据库的稳定性。 - 更多信息,请参考[用户文档](链接)。 + 更多信息,请参考[用户文档](/tidb-resource-control.md###管理Runaway查询)。 * 增强对历史执行计划的绑定能力 [#issue号](链接) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** From 9b4fa7237fad6294a814109687fba6c9dd5de643 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 16 Jun 2023 13:58:40 +0800 Subject: [PATCH 035/121] Apply suggestions from code review Co-authored-by: lance6716 --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index c400a288a7ca..d81266f90cd4 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -95,9 +95,9 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](链接)。 -* Lightning 支持将字符集为 latin1 和 utf8 的源文件导入到 TiDB。[#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** +* Lightning 支持将字符集为 latin1 的源文件导入到 TiDB。[#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** - 通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 和 utf8 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集(latin1 或 utf8)。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 + 通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 更多信息,请参考[用户文档](https://github.com/pingcap/docs-cn/pull/14172/files) From 7c53d77df4df126e5d0e0a3289b641fad8a7494a Mon Sep 17 00:00:00 2001 From: qiancai Date: Fri, 16 Jun 2023 14:03:10 +0800 Subject: [PATCH 036/121] format updates --- releases/release-7.2.0.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index d81266f90cd4..ce8f6d844d26 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -33,7 +33,7 @@ TiDB 版本:7.2.0 * 降低 TiFlash 等待 schema 同步的时延 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** 当表的 schema 变动时,TiFlash 需要及时和 TiKV 同步表的 schema 信息。在 v7.2.0 版本之前,TiFlash 访问表数据时,如果检测到某张表的 schema 变动时,会同步所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,读取一张表的数据需要同步所有表的 schema 信息,schema 同步的时延非常高。在 v7.2.0 版本中,TiFlash 优化 schema 同步机制,只同步包含 TiFlash 副本的表的 schema 信息,并且当检测到某张表的 schema 变动时,只同步该表的 schema 信息,降低 TiFlash 同步 schema 的时延。该优化自动生效,不需要任何设定调整。 - + * 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 @@ -58,19 +58,18 @@ TiDB 版本:7.2.0 * 增强对历史执行计划的绑定能力 [#issue号](链接) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** - 新版本的 TiDB 对历史执行计划绑定的能力做了进一步增强。 一方面加强了对复杂语句的解析和绑定, 另一方面, 也加入了对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDERED_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name)、[`NO_ORDERED_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 借助这个能力, 从历史执行计划中创建的 [SQL Binding](/sql-plan-management.md#执行计划绑定-sql-binding) 能够更加稳定的固定住执行计划。 + 新版本的 TiDB 对历史执行计划绑定的能力做了进一步增强。 一方面加强了对复杂语句的解析和绑定, 另一方面, 也加入了对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDERED_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name)、[`NO_ORDERED_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 借助这个能力, 从历史执行计划中创建的 [SQL Binding](/sql-plan-management.md#执行计划绑定-sql-binding) 能够更加稳定的固定住执行计划。 更多信息,请参考[用户文档](/sql-plan-management.md#执行计划绑定-sql-binding)。 - ### SQL 功能 * 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678] (https://github.com/fzzf678) **tw@qiancai** v7.2.0 版本开始,用户可以通过 `CHECK` 约束功能约束表中一个或者多个字段值必须满足特定条件。添加 `CHECK` 约束后,TiDB 会在数据插入或者更新时检查约束条件是否满足,只允许满足约束的数据写入。 - + 更多信息,请参考[用户文档](链接)。 - + ### 数据库管理 * DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) **tw@ran-huang** @@ -89,7 +88,7 @@ TiDB 版本:7.2.0 ### 数据迁移 -* 引入新的 SQL statement “import into” (实验特性),该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** +* 引入新的 SQL statement “import into” (实验特性),该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** "import into " 集成了 Lightning 物理导入模式(local backend)的能力,用户可直接编写 "import into“ SQL 导入数据到 TiDB,同时还支持将数据导入任务拆分成多个子任务调度到多个 TiDB 节点,进行并行导入,提升导入性能。在导入空表的场景,用户无需再部署和管理 Lightning ,降低了导入数据难度的同时,大大提升了导入数据效率。 From 9bd95ee317bd8c3ec29bd4af74c68671ced932c6 Mon Sep 17 00:00:00 2001 From: Yuanjia Zhang Date: Fri, 16 Jun 2023 14:12:33 +0800 Subject: [PATCH 037/121] Update releases/release-7.2.0.md Co-authored-by: Grace Cai --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index ce8f6d844d26..b13377311743 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -56,7 +56,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/tidb-resource-control.md###管理Runaway查询)。 -* 增强对历史执行计划的绑定能力 [#issue号](链接) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** +* 增强对历史执行计划的绑定能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** 新版本的 TiDB 对历史执行计划绑定的能力做了进一步增强。 一方面加强了对复杂语句的解析和绑定, 另一方面, 也加入了对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDERED_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name)、[`NO_ORDERED_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 借助这个能力, 从历史执行计划中创建的 [SQL Binding](/sql-plan-management.md#执行计划绑定-sql-binding) 能够更加稳定的固定住执行计划。 From 5d2ee3cd3bc6e8b1e81d7264f1d0c28245fee4f9 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 16 Jun 2023 14:18:26 +0800 Subject: [PATCH 038/121] add the issue number for two features --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b13377311743..52999865c8f2 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -34,11 +34,11 @@ TiDB 版本:7.2.0 当表的 schema 变动时,TiFlash 需要及时和 TiKV 同步表的 schema 信息。在 v7.2.0 版本之前,TiFlash 访问表数据时,如果检测到某张表的 schema 变动时,会同步所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,读取一张表的数据需要同步所有表的 schema 信息,schema 同步的时延非常高。在 v7.2.0 版本中,TiFlash 优化 schema 同步机制,只同步包含 TiFlash 副本的表的 schema 信息,并且当检测到某张表的 schema 变动时,只同步该表的 schema 信息,降低 TiFlash 同步 schema 的时延。该优化自动生效,不需要任何设定调整。 -* 提升统计信息收集的性能 [#issue号](链接) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** +* 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 -* 提升表和索引一致性检查的性能 [#issue号](链接) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** +* 提升表和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 设置 [`tidb_enable_fast_table_check`](链接) 为 `TRUE` 启用这个新机制。 From 494045bc9351e1143151367f8a081adc89698db3 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 16 Jun 2023 17:53:51 +0800 Subject: [PATCH 039/121] remove a feature description --- releases/release-7.2.0.md | 1 - 1 file changed, 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 52999865c8f2..355b9d41342c 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -142,7 +142,6 @@ TiDB 版本:7.2.0 + TiDB - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - - 支持分区表下推 TopN 算子,减少该情况下 indexLookUp 和 IndexMerge 算子回表次数,提升相关 SQL 执行性能 [#26166](https://github.com/pingcap/tidb/issues/26166) [#41028](https://github.com/pingcap/tidb/issues/41028) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV From 2f240e925f1fa12aea982591d752507f7887d09f Mon Sep 17 00:00:00 2001 From: Roger Song Date: Sun, 18 Jun 2023 17:12:06 +0800 Subject: [PATCH 040/121] Introduce fix control --- releases/release-7.2.0.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 355b9d41342c..a63f886b2b85 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -62,6 +62,16 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/sql-plan-management.md#执行计划绑定-sql-binding)。 +* Fix Controls 机制对优化器行为做细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) + + 为了生成更合理的执行计划,TiDB 优化器的行为会随产品迭代而不断演进。但在某些特定和极端场景下,这些变化可能引发性能的回退。因此 TiDB 引入了 Fix Controls 来控制优化器的一部分细粒度行为,允许客户对一些新的变化进行回滚或控制。 + + 每一个可控的行为,都有一个与 Fix 号码对应的 Github Issue 进行说明。所有可控的行为列举在文档 [Optimizer Fix Controls](/optimizer-fix-controls.md) 中。通过设置系统变量 [`tidb_opt_fix_control`](/system-variables.md#tidb_opt_fix_control-从-v710-版本开始引入) 可以为一个或多个行为设置目标值,进而达到行为控制的目的。 + + Fix Controls 机制加强了用户对 TiDB 优化器的细粒度管控能力,为升级过程引发的性能问题提供了新的修复手段,提升 TiDB 的稳定性。 + + 更多信息,请参考 [Optimizer Fix Controls](/optimizer-fix-controls.md)。 + ### SQL 功能 * 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678] (https://github.com/fzzf678) **tw@qiancai** From 3d343d9191781d2d9a20df543ba496b7902b6dc8 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 19 Jun 2023 10:10:47 +0800 Subject: [PATCH 041/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a63f886b2b85..7148c67e57af 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -139,6 +139,8 @@ TiDB 版本:7.2.0 | -------- | -------- | -------- | -------- | | | | | | | | | | | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 7.2 版本开始 TiDB Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。**tw@hfxsd** | | TiDB Lightning | `send-kv-size` | 新增 | 从 7.2 版本开始在 Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入 `send-kv-size` 参数,用于设置发单次送到 TiKV 的 KV pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 Lightning 立即发送到 TiKV,避免在导入大宽表的时候 Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整 "send-kv-size" 参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | | Data Migration | `strict-optimistic-shard-mode` | 新增 | 用于兼容历史版本 2.0 分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断,在多个表的 DDL变更有依赖关系的场景,可以及时中断,用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | From 85826c84ca94ff6df8ad424b6abb16f629e1a4c2 Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 19 Jun 2023 11:09:35 +0800 Subject: [PATCH 042/121] compatibility changes: add tidb_expensive_txn_time_threshold and TiCDC Signed-off-by: Aolin --- releases/release-7.2.0.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 7148c67e57af..ce4277363fcd 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -129,7 +129,7 @@ TiDB 版本:7.2.0 | 变量名 | 修改类型(包括新增/修改/删除) | 描述 | |--------|------------------------------|------| | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | -| | | | +| [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | | | | | | | | | @@ -144,6 +144,8 @@ TiDB 版本:7.2.0 | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 7.2 版本开始 TiDB Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。**tw@hfxsd** | | TiDB Lightning | `send-kv-size` | 新增 | 从 7.2 版本开始在 Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入 `send-kv-size` 参数,用于设置发单次送到 TiKV 的 KV pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 Lightning 立即发送到 TiKV,避免在导入大宽表的时候 Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整 "send-kv-size" 参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | | Data Migration | `strict-optimistic-shard-mode` | 新增 | 用于兼容历史版本 2.0 分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断,在多个表的 DDL变更有依赖关系的场景,可以及时中断,用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | +| TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| +| TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | ## 废弃功能 From 23ea804f45f2c10bf2cfca65ddf4c3ac17d28ecb Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 19 Jun 2023 11:30:22 +0800 Subject: [PATCH 043/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index ce4277363fcd..d5a6227deb51 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -142,7 +142,7 @@ TiDB 版本:7.2.0 | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 7.2 版本开始 TiDB Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。**tw@hfxsd** | -| TiDB Lightning | `send-kv-size` | 新增 | 从 7.2 版本开始在 Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入 `send-kv-size` 参数,用于设置发单次送到 TiKV 的 KV pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 Lightning 立即发送到 TiKV,避免在导入大宽表的时候 Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整 "send-kv-size" 参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | +| TiDB Lightning | `send-kv-size` | 新增 | 从 7.2 版本开始在 TiDB Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入 `send-kv-size` 参数,用于设置发单次送到 TiKV 的 KV pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候 TiDB Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | | Data Migration | `strict-optimistic-shard-mode` | 新增 | 用于兼容历史版本 2.0 分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断,在多个表的 DDL变更有依赖关系的场景,可以及时中断,用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | From 3d960bba4f0f711c401c25424cb9ccc6982ebfac Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 19 Jun 2023 11:30:52 +0800 Subject: [PATCH 044/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index d5a6227deb51..a2e8a3d242af 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -129,6 +129,7 @@ TiDB 版本:7.2.0 | 变量名 | 修改类型(包括新增/修改/删除) | 描述 | |--------|------------------------------|------| | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | +| [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | | [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | | | | | | | | | From 811d54fc4229f90326fffd614c438b2eab38a896 Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 19 Jun 2023 14:30:24 +0800 Subject: [PATCH 045/121] Apply suggestions from code review --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a2e8a3d242af..fd07a09508fe 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -132,7 +132,7 @@ TiDB 版本:7.2.0 | [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | | [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | | | | | -| | | | +| [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) | 新增 | 这个变量用来控制是否启用 TiFlash 新的执行模型 [Pipeline Model](/tiflash/tiflash-pipeline-model.md),默认值为 `OFF`,即关闭 Pipeline Model。 | ### 配置文件参数 @@ -144,7 +144,7 @@ TiDB 版本:7.2.0 | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 7.2 版本开始 TiDB Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。**tw@hfxsd** | | TiDB Lightning | `send-kv-size` | 新增 | 从 7.2 版本开始在 TiDB Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入 `send-kv-size` 参数,用于设置发单次送到 TiKV 的 KV pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候 TiDB Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | -| Data Migration | `strict-optimistic-shard-mode` | 新增 | 用于兼容历史版本 2.0 分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断,在多个表的 DDL变更有依赖关系的场景,可以及时中断,用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | +| Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | From 9508185dbf3397f31862b2993a0f48ad2f6fcbf1 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 19 Jun 2023 15:58:44 +0800 Subject: [PATCH 046/121] Apply suggestions from code review --- releases/release-7.2.0.md | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index fd07a09508fe..d4fc88c00e13 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -36,7 +36,9 @@ TiDB 版本:7.2.0 * 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** - v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,提升统计信息收集的整体速度达 30% 。 这个提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确, 从而达到提升数据库整体性能的目的。 + TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息。统计信息收集的整体速度提升了 30%。该提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确,从而达到提升数据库整体性能的目的。 + + 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 * 提升表和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** @@ -46,15 +48,15 @@ TiDB 版本:7.2.0 ### 稳定性 -* 自动管理资源超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) @[glorv](https://github.com/glorv) @[HuSharp](https://github.com/HuSharp) @[nolouch](https://github.com/nolouch) **tw@hfxsd** +* 自动管理资源超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) @[glorv](https://github.com/glorv) @[HuSharp](https://github.com/HuSharp) @[nolouch](https://github.com/nolouch) **tw@hfxsd** - 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。 造成 SQL 性能问题的原因有很多, 有可能是未经充分测试的新 SQL,数据量剧烈变化,执行计划突变等等,这些问题很难从源头上完全规避。 TiDB 在 v7.2.0 加入了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 + 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。造成 SQL 性能问题的原因有很多,例如未经充分测试的新 SQL、数据量剧烈变化、执行计划突变。这些问题很难从源头上完全规避。TiDB v7.2.0 增加了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 - 用户可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。 当查询的执行时间超过设置时, 自动降低查询的优先级或者取消查询。 用户还可以设置在一段时间内通过文本立即匹配已经识别出的查询, 从而避免问题查询的并发度太高时,在识别阶段就造成大量消耗的情况。 + 你可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。当查询的执行时间超过设置时,自动降低查询的优先级或者取消查询。你还可以设置在一段时间内通过文本立即匹配已经识别出的查询,从而避免问题查询的并发度太高时,在识别阶段就造成大量资源消耗的情况。 - 对资源超出预期查询的自动管理, 为用户提供了有效的手段,快速应对突发的查询性能问题,降低问题对数据库整体性能的影响,从而提升数据库的稳定性。 + 对资源超出预期查询的自动管理,为你提供了有效的手段,快速应对突发的查询性能问题,降低对数据库整体性能的影响,从而提升数据库的稳定性。 - 更多信息,请参考[用户文档](/tidb-resource-control.md###管理Runaway查询)。 + 更多信息,请参考[用户文档](/tidb-resource-control.md#管理资源消耗超出预期的查询-runaway-queries)。 * 增强对历史执行计划的绑定能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** @@ -62,15 +64,15 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/sql-plan-management.md#执行计划绑定-sql-binding)。 -* Fix Controls 机制对优化器行为做细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) +* Optimizer Fix Controls 机制对优化器行为做细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) **tw@hfxsd** - 为了生成更合理的执行计划,TiDB 优化器的行为会随产品迭代而不断演进。但在某些特定和极端场景下,这些变化可能引发性能的回退。因此 TiDB 引入了 Fix Controls 来控制优化器的一部分细粒度行为,允许客户对一些新的变化进行回滚或控制。 + 为了生成更合理的执行计划,TiDB 优化器的行为会随产品迭代而不断演进。但在某些特定场景下,这些变化可能引发性能回退。因此 TiDB 引入了 Optimizer Fix Controls 来控制优化器的一部分细粒度行为,你可以对一些新的变化进行回滚或控制。 - 每一个可控的行为,都有一个与 Fix 号码对应的 Github Issue 进行说明。所有可控的行为列举在文档 [Optimizer Fix Controls](/optimizer-fix-controls.md) 中。通过设置系统变量 [`tidb_opt_fix_control`](/system-variables.md#tidb_opt_fix_control-从-v710-版本开始引入) 可以为一个或多个行为设置目标值,进而达到行为控制的目的。 + 每一个可控的行为,都有一个与 Fix 号码对应的 GitHub Issue 进行说明。所有可控的行为列举在文档 [Optimizer Fix Controls](/optimizer-fix-controls.md) 中。通过设置系统变量 [`tidb_opt_fix_control`](/system-variables.md#tidb_opt_fix_control-从-v710-版本开始引入) 可以为一个或多个行为设置目标值,进而达到行为控制的目的。 - Fix Controls 机制加强了用户对 TiDB 优化器的细粒度管控能力,为升级过程引发的性能问题提供了新的修复手段,提升 TiDB 的稳定性。 + Optimizer Fix Controls 机制加强了你对 TiDB 优化器的细粒度管控能力,为升级过程引发的性能问题提供了新的修复手段,提升 TiDB 的稳定性。 - 更多信息,请参考 [Optimizer Fix Controls](/optimizer-fix-controls.md)。 + 更多信息,请参考 [用户文档](/optimizer-fix-controls.md)。 ### SQL 功能 @@ -142,8 +144,8 @@ TiDB 版本:7.2.0 | | | | | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | -| TiDB Lightning | `send-kv-pairs` | 废弃 | 从 7.2 版本开始 TiDB Lightning 配置文件的参数 "send-kv-pairs" 不再生效,由新的参数 "send-kv-size" 代替。该新参数用于指定 KV 键值对的大小阈值,单位为 KiB 或 MiB,默认值为 "16 KiB"。当 KV 键值对的大小达到设定的阈值时,它们将立即发送到 TiKV,避免在导入大宽表等一些场景因为 Lightning 节点内存积累键值对过多导致 OOM 的问题。**tw@hfxsd** | -| TiDB Lightning | `send-kv-size` | 新增 | 从 7.2 版本开始在 TiDB Lightning 配置文件 "[tikv-importer]" 这个 Session 中引入 `send-kv-size` 参数,用于设置发单次送到 TiKV 的 KV pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候 TiDB Lightning 节点因为内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | +| TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | +| TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的 KV Pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | | Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | From db1d40471ba4d126e0dd205e50edca255f8325f5 Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 19 Jun 2023 17:47:23 +0800 Subject: [PATCH 047/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index d4fc88c00e13..40735fab23b6 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -93,6 +93,7 @@ TiDB 版本:7.2.0 ```sql ADMIN PAUSE DDL JOBS 1,2; ADMIN RESUME DDL JOBS 1,2; +``` 更多信息,请参考 [用户文档](/ddl-introduction.md#ddl - 相关的命令介绍)。 From 15da3546ae2ef9416f1b2f3b1e4a81d2069e5e23 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 19 Jun 2023 20:44:38 +0800 Subject: [PATCH 048/121] Apply suggestions from code review --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 40735fab23b6..d62226aa592d 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -64,7 +64,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/sql-plan-management.md#执行计划绑定-sql-binding)。 -* Optimizer Fix Controls 机制对优化器行为做细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) **tw@hfxsd** +* 提供 Optimizer Fix Controls 机制对优化器行为进行细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) **tw@hfxsd** 为了生成更合理的执行计划,TiDB 优化器的行为会随产品迭代而不断演进。但在某些特定场景下,这些变化可能引发性能回退。因此 TiDB 引入了 Optimizer Fix Controls 来控制优化器的一部分细粒度行为,你可以对一些新的变化进行回滚或控制。 @@ -72,7 +72,7 @@ TiDB 版本:7.2.0 Optimizer Fix Controls 机制加强了你对 TiDB 优化器的细粒度管控能力,为升级过程引发的性能问题提供了新的修复手段,提升 TiDB 的稳定性。 - 更多信息,请参考 [用户文档](/optimizer-fix-controls.md)。 + 更多信息,请参考[用户文档](/optimizer-fix-controls.md)。 ### SQL 功能 From 5232f3709a30e35d0e4e34c3487d1b1b5278f3e4 Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 20 Jun 2023 07:52:28 +0800 Subject: [PATCH 049/121] Apply suggestions from code review --- releases/release-7.2.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index d62226aa592d..182ac31966b9 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -58,11 +58,11 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/tidb-resource-control.md#管理资源消耗超出预期的查询-runaway-queries)。 -* 增强对历史执行计划的绑定能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** +* 增强根据历史执行计划创建绑定的能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** - 新版本的 TiDB 对历史执行计划绑定的能力做了进一步增强。 一方面加强了对复杂语句的解析和绑定, 另一方面, 也加入了对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDERED_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name)、[`NO_ORDERED_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 借助这个能力, 从历史执行计划中创建的 [SQL Binding](/sql-plan-management.md#执行计划绑定-sql-binding) 能够更加稳定的固定住执行计划。 + TiDB v7.2.0 进一步增强根据历史执行计划创建绑定的能力,加强对复杂语句的解析和绑定,并新增对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name) 和 [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。借助这个能力,根据历史执行计划创建的 SQL Binding 能够更稳定地固定住执行计划。 - 更多信息,请参考[用户文档](/sql-plan-management.md#执行计划绑定-sql-binding)。 + 更多信息,请参考[用户文档](/sql-plan-management.md)。 * 提供 Optimizer Fix Controls 机制对优化器行为进行细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) **tw@hfxsd** From 3a19f790b36ed07b3c0526cbfa40416a331e0848 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 20 Jun 2023 11:01:08 +0800 Subject: [PATCH 050/121] Apply suggestions from code review --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 182ac31966b9..b14fbc299246 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -26,7 +26,7 @@ TiDB 版本:7.2.0 * TiFlash 支持 pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** - 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但是并不能完全避免。在 v7.2.0 版本中,TiFlash 引入 pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设定是否启用 pipeline 执行模型。 + 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但并不能完全避免此问题。因此,在 v7.2.0 中,TiFlash 引入 pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设置是否启用 pipeline 执行模型。 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 @@ -93,7 +93,7 @@ TiDB 版本:7.2.0 ```sql ADMIN PAUSE DDL JOBS 1,2; ADMIN RESUME DDL JOBS 1,2; -``` + ``` 更多信息,请参考 [用户文档](/ddl-introduction.md#ddl - 相关的命令介绍)。 From 26289cc234dbaddff1ca1b7b520e2889554ab825 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 20 Jun 2023 11:15:28 +0800 Subject: [PATCH 051/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b14fbc299246..4b00ffa503c3 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -95,7 +95,7 @@ TiDB 版本:7.2.0 ADMIN RESUME DDL JOBS 1,2; ``` - 更多信息,请参考 [用户文档](/ddl-introduction.md#ddl - 相关的命令介绍)。 + 更多信息,请参考[用户文档](/ddl-introduction.md#ddl-相关的命令介绍)。 ### 可观测性 From 2357c57f2ff0eb03ed77178fc54b25f64ba918df Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 20 Jun 2023 15:06:33 +0800 Subject: [PATCH 052/121] Apply suggestions from code review Co-authored-by: HuaiyuXu Co-authored-by: Jianjun Liao <36503113+Leavrth@users.noreply.github.com> --- releases/release-7.2.0.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 4b00ffa503c3..14a0afb6bd63 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -208,7 +208,8 @@ TiDB 版本:7.2.0 + TiDB - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复关联子查询中含有 CTE 时可能出现的查询 hang 住的问题 [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) + - 修复某些情况下 max/min 结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43508)@[wshwsh12](https://github.com/wshwsh12) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV @@ -223,13 +224,14 @@ TiDB 版本:7.2.0 + TiFlash - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复在 join 的 build 端数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) - note [#issue](链接) @[贡献者 GitHub ID](链接) + Tools + Backup & Restore (BR) + - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @Leavrth - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From 69b69c1a498106c60edaf36bc7e583225d9584a6 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Tue, 20 Jun 2023 15:09:30 +0800 Subject: [PATCH 053/121] Update releases/release-7.2.0.md Co-authored-by: Grace Cai --- releases/release-7.2.0.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 14a0afb6bd63..5ce2484ecca1 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -32,7 +32,9 @@ TiDB 版本:7.2.0 * 降低 TiFlash 等待 schema 同步的时延 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** - 当表的 schema 变动时,TiFlash 需要及时和 TiKV 同步表的 schema 信息。在 v7.2.0 版本之前,TiFlash 访问表数据时,如果检测到某张表的 schema 变动时,会同步所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,读取一张表的数据需要同步所有表的 schema 信息,schema 同步的时延非常高。在 v7.2.0 版本中,TiFlash 优化 schema 同步机制,只同步包含 TiFlash 副本的表的 schema 信息,并且当检测到某张表的 schema 变动时,只同步该表的 schema 信息,降低 TiFlash 同步 schema 的时延。该优化自动生效,不需要任何设定调整。 + 当表的 schema 发生变化时,TiFlash 需要及时从 TiKV 同步新的表结构信息。在 v7.2.0 之前,当 TiFlash 访问表数据时,只要检测到数据库中的某张表的 schema 发生了变化,TiFlash 就会重新同步该数据库中所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,通过 TiFlash 只读取一张表的数据也可能因为需要等待所有表的 schema 信息同步完成而造成较高的时延。 + + 在 v7.2.0 中,TiFlash 优化了 schema 的同步机制,只同步拥有 TiFlash 副本的表的 schema 信息。当检测到某张有 TiFlash 副本的表的 schema 有变化时,TiFlash 只同步该表的 schema 信息,从而降低了 TiFlash 同步 schema 的时延。该优化自动生效,无须任何设置。 * 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** From 33db81d1281900f622ac3bacd8326c787b13229a Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 20 Jun 2023 15:14:08 +0800 Subject: [PATCH 054/121] Apply suggestions from code review --- releases/release-7.2.0.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 5ce2484ecca1..1644b08cf0af 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -19,7 +19,7 @@ TiDB 版本:7.2.0 ### 性能 -* 新增支持下推两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 至 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@qiancai** +* 新增支持下推以下两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 到 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@qiancai** * `FIRST_VALUE` * `LAST_VALUE` @@ -44,9 +44,9 @@ TiDB 版本:7.2.0 * 提升表和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** - TiDB 在新版本中优化了数据一致性校验的方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 的执行效率, 性能提升接近 200 倍。 这个能力可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 设置 [`tidb_enable_fast_table_check`](链接) 为 `TRUE` 启用这个新机制。 + [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,性能提升接近 200 倍。该优化默认开启 ([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 - 更多信息,请参考[用户文档](链接) + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入)。 ### 稳定性 @@ -80,9 +80,9 @@ TiDB 版本:7.2.0 * 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678] (https://github.com/fzzf678) **tw@qiancai** - v7.2.0 版本开始,用户可以通过 `CHECK` 约束功能约束表中一个或者多个字段值必须满足特定条件。添加 `CHECK` 约束后,TiDB 会在数据插入或者更新时检查约束条件是否满足,只允许满足约束的数据写入。 + 从 v7.2.0 开始,你可以通过 `CHECK` 约束限制表中的一个或者多个字段值必须满足特定的条件。当为表添加 `CHECK` 约束后,在插入或者更新表的数据时,TiDB 会先检查约束条件是否满足,只允许满足约束的数据写入。 - 更多信息,请参考[用户文档](链接)。 + 更多信息,请参考[用户文档](/constraints.md#check-约束)。 ### 数据库管理 @@ -107,13 +107,13 @@ TiDB 版本:7.2.0 "import into " 集成了 Lightning 物理导入模式(local backend)的能力,用户可直接编写 "import into“ SQL 导入数据到 TiDB,同时还支持将数据导入任务拆分成多个子任务调度到多个 TiDB 节点,进行并行导入,提升导入性能。在导入空表的场景,用户无需再部署和管理 Lightning ,降低了导入数据难度的同时,大大提升了导入数据效率。 - 更多信息,请参考[用户文档](链接)。 + 更多信息,请参考[用户文档](sql-statements/sql-statement-import-into.md)。 -* Lightning 支持将字符集为 latin1 的源文件导入到 TiDB。[#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** +* TiDB Lightning 支持将字符集为 latin1 的源文件导入到 TiDB 中 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** 通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 - 更多信息,请参考[用户文档](https://github.com/pingcap/docs-cn/pull/14172/files) + 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) ## 兼容性变更 From 5e0970333937c2aca1010c7aa3a84588cbd31c87 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 20 Jun 2023 15:36:23 +0800 Subject: [PATCH 055/121] Apply suggestions from code review --- releases/release-7.2.0.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 1644b08cf0af..d533f6f6b5d5 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -103,15 +103,17 @@ TiDB 版本:7.2.0 ### 数据迁移 -* 引入新的 SQL statement “import into” (实验特性),该 SQL 集成了 Lightning 物理导入模式(local backend)的能力,大大提升导入数据的效率。[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** +* 引入新的 SQL 语句 `IMPORT INTO`,大幅提升导入效率(实验特性)[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** - "import into " 集成了 Lightning 物理导入模式(local backend)的能力,用户可直接编写 "import into“ SQL 导入数据到 TiDB,同时还支持将数据导入任务拆分成多个子任务调度到多个 TiDB 节点,进行并行导入,提升导入性能。在导入空表的场景,用户无需再部署和管理 Lightning ,降低了导入数据难度的同时,大大提升了导入数据效率。 + `IMPORT INTO` 集成了 TiDB Lightning 的[物理导入模式](/tidb-lightning/tidb-lightning-physical-import-mode.md) 的能力。通过该语句,你可以将 `CSV`、`SQL`、`PARQUET` 等格式的数据快速导入到 TiDB 的一张空表中。这种导入方式无需单独部署和管理 TiDB Lightning,在降低了数据导入难度的同时,大幅提升了数据导入效率。 + + 对于存储在 Amazon S3 或 GCS 的数据文件,在开启了[后端任务分布式框架](/tidb-distributed-execution-framework.md) 后,`IMPORT INTO` 还支持将数据导入任务拆分成多个子任务,并将子任务调度到多个 TiDB 节点并行导入,进一步提升导入性能。 更多信息,请参考[用户文档](sql-statements/sql-statement-import-into.md)。 * TiDB Lightning 支持将字符集为 latin1 的源文件导入到 TiDB 中 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** - 通过此功能,用户现在可以使用 Lightning 数据导入工具直接将字符集为 latin1 的源文件导入到 TiDB 中。这扩展了用户在处理各种字符集时的数据导入选项的兼容性和灵活性。以前,导入这样的文件需要额外的预处理或转换。现在用户只需在运行 Lightning 导入过程时指定源文件的字符集。Lightning 工具会在导入过程中自动处理字符集转换,确保数据的完整性和准确性。 + 通过此功能,你可以使用 TiDB Lightning 将字符集为 latin1 的源文件直接导入到 TiDB 中。在 v7.2.0 之前,导入这样的文件需要额外的预处理或转换。从 v7.2.0 起,你只需在配置 TiDB Lightning 导入任务时指定 `character-set = "latin1"`,TiDB Lightning 就会在导入过程中自动处理字符集的转换,确保数据的完整性和准确性。 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) From 3a0699d2338bda3bc9afbb92dd169a8b6c85b713 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 20 Jun 2023 15:37:20 +0800 Subject: [PATCH 056/121] Update releases/release-7.2.0.md Co-authored-by: Roger Song --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index d533f6f6b5d5..dc83464c1a88 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -44,7 +44,7 @@ TiDB 版本:7.2.0 * 提升表和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** - [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,性能提升接近 200 倍。该优化默认开启 ([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 + [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,在大数据量场景中性能能够提升百倍。该优化默认开启 ([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入)。 From e107c14516d57b235010b97f55ab2cf5ad18860b Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 20 Jun 2023 16:36:27 +0800 Subject: [PATCH 057/121] add three compatibility changes --- releases/release-7.2.0.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index dc83464c1a88..4ef154b3c465 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -135,8 +135,10 @@ TiDB 版本:7.2.0 | 变量名 | 修改类型(包括新增/修改/删除) | 描述 | |--------|------------------------------|------| +| [`last_insert_id`](/system-variables.md#last_insert_id-从-v530-版本开始引入) | 修改 | 该变量的最大值从 `9223372036854775807` 修改为 `18446744073709551615`,和 MySQL 保持一致。 | | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | -| [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | +| [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | +| [`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) | 新增 | 这个变量用于控制是否使用基于校验和的方式来快速检查表中数据和索引的一致性。默认值 `ON` 表示该功能默认开启。 | | [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | | | | | | [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) | 新增 | 这个变量用来控制是否启用 TiFlash 新的执行模型 [Pipeline Model](/tiflash/tiflash-pipeline-model.md),默认值为 `OFF`,即关闭 Pipeline Model。 | @@ -150,6 +152,7 @@ TiDB 版本:7.2.0 | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | +| TiDB Lightning | `character-set` | 修改 | 扩展支持导入的字符集,新增 `latin1` 选项,用于导入字符集为 latin1 的源文件。| | TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的 KV Pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | | Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| From 27a5442e40db8c933f2a7724628c6eaf0c5601b6 Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 20 Jun 2023 17:39:18 +0800 Subject: [PATCH 058/121] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.2.0.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 4ef154b3c465..9d161a948548 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -62,7 +62,12 @@ TiDB 版本:7.2.0 * 增强根据历史执行计划创建绑定的能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** - TiDB v7.2.0 进一步增强根据历史执行计划创建绑定的能力,加强对复杂语句的解析和绑定,并新增对新 Hint 的支持,包括 [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop)、[`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop)、[`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name) 和 [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。借助这个能力,根据历史执行计划创建的 SQL Binding 能够更稳定地固定住执行计划。 + TiDB v7.2.0 进一步增强[根据历史执行计划创建绑定](/sql-plan-management.md#根据历史执行计划创建绑定)的能力,加强对复杂语句的解析和绑定,使绑定更稳固,并新增支持对以下 Hint 的绑定。 + + - [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop) + - [`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop) + - [`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name) + - [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 更多信息,请参考[用户文档](/sql-plan-management.md)。 From 78c6cedca4b1fe578d6519c47fd4553293dfe604 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 21 Jun 2023 10:26:27 +0800 Subject: [PATCH 059/121] Apply suggestions from code review Co-authored-by: xixirangrang --- releases/release-7.2.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 9d161a948548..193acda53a3d 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -24,9 +24,9 @@ TiDB 版本:7.2.0 * `FIRST_VALUE` * `LAST_VALUE` -* TiFlash 支持 pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** +* TiFlash 支持 Pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** - 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但并不能完全避免此问题。因此,在 v7.2.0 中,TiFlash 引入 pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设置是否启用 pipeline 执行模型。 + 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但并不能完全避免此问题。因此,在 v7.2.0 中,TiFlash 引入 Pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设置是否启用 Pipeline 执行模型。 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 @@ -93,7 +93,7 @@ TiDB 版本:7.2.0 * DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) **tw@ran-huang** - TiDB v7.2.0 之前的版本中,当 DDL 任务执行期间遇到业务高峰时间点时,为了减少对业务的影响,只能手动取消 DDL 任务。TiDB v7.2.0 引入了 DDL 任务的暂停和恢复功能,你可以在高峰时间点暂停 DDL 任务,等到业务高峰时间结束后再恢复 DDL 任务,从而避免了 DDL 操作对业务负载的影响。 + TiDB v7.2.0 之前的版本中,当 DDL 任务在执行期间遇到业务高峰时,为了减少对业务的影响,只能手动取消 DDL 任务。TiDB v7.2.0 引入了 DDL 任务的暂停和恢复功能,你可以在高峰时间点暂停 DDL 任务,等到业务高峰时间结束后再恢复 DDL 任务,从而避免了 DDL 操作对业务负载的影响。 例如,可以通过如下 `ADMIN PAUSE DDL JOBS` 或 `ADMIN RESUME DDL JOBS` 语句暂停或者恢复多个 DDL 任务: From 3ca2e06c8ec95fe38294b098de0ec50bc48e978b Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 21 Jun 2023 11:18:34 +0800 Subject: [PATCH 060/121] Apply suggestions from code review --- releases/release-7.2.0.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 193acda53a3d..492d91469f69 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -42,9 +42,11 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 -* 提升表和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** +* 提升数据和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** - [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,在大数据量场景中性能能够提升百倍。该优化默认开启 ([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 + [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,在大数据量场景中性能能够提升百倍。 + + 该优化默认开启 ([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入)。 From f378f40e29315aaef653e593d917d95925b366c6 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 21 Jun 2023 14:45:59 +0800 Subject: [PATCH 061/121] Apply suggestions from code review Co-authored-by: Ran Co-authored-by: Roger Song --- releases/release-7.2.0.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 492d91469f69..e4ce8d09602c 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -38,7 +38,9 @@ TiDB 版本:7.2.0 * 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** - TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息。统计信息收集的整体速度提升了 30%。该提升有利于 TiDB 对数据库对象的统计信息进行更及时的更新,使得生成的执行计划更准确,从而达到提升数据库整体性能的目的。 + TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,从而将统计信息收集的整体速度提升了 30%。这一改进有利于 TiDB 更及时地更新数据库对象的统计信息,生成更准确的执行计划,从而提升数据库整体性能。 + + 默认设置下,统计信息收集会跳过类型为 `json`, `blob`, `mediumblob`, `longblob` 的列。你可以通过设置系统变量[``tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 JSON, BLOB, TEXT 这几个类型及其子类型。 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 @@ -54,11 +56,11 @@ TiDB 版本:7.2.0 * 自动管理资源超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) @[glorv](https://github.com/glorv) @[HuSharp](https://github.com/HuSharp) @[nolouch](https://github.com/nolouch) **tw@hfxsd** - 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。造成 SQL 性能问题的原因有很多,例如未经充分测试的新 SQL、数据量剧烈变化、执行计划突变。这些问题很难从源头上完全规避。TiDB v7.2.0 增加了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 + 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。造成 SQL 性能问题的原因有很多,例如未经充分测试的新 SQL、数据量剧烈变化、执行计划突变等,这些问题很难从源头上完全规避。TiDB v7.2.0 增加了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 - 你可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。当查询的执行时间超过设置时,自动降低查询的优先级或者取消查询。你还可以设置在一段时间内通过文本立即匹配已经识别出的查询,从而避免问题查询的并发度太高时,在识别阶段就造成大量资源消耗的情况。 + 你可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。当查询的执行时间超过设置值时,自动降低查询的优先级或者取消查询。你还可以设置在一段时间内通过文本立即匹配已经识别出的查询,从而避免问题查询的并发度太高时,在识别阶段就造成大量资源消耗的情况。 - 对资源超出预期查询的自动管理,为你提供了有效的手段,快速应对突发的查询性能问题,降低对数据库整体性能的影响,从而提升数据库的稳定性。 + 对资源超出预期查询的自动管理能力,为你提供了有效的手段,快速应对突发的查询性能问题,降低对数据库整体性能的影响,从而提升数据库的稳定性。 更多信息,请参考[用户文档](/tidb-resource-control.md#管理资源消耗超出预期的查询-runaway-queries)。 @@ -160,7 +162,7 @@ TiDB 版本:7.2.0 | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | | TiDB Lightning | `character-set` | 修改 | 扩展支持导入的字符集,新增 `latin1` 选项,用于导入字符集为 latin1 的源文件。| -| TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的 KV Pairs 的大小。当 KV 键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | +| TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的键值对的大小。当键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | | Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | From 2e1c9cd826e923942929c919d88d3705934ba829 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 21 Jun 2023 14:48:50 +0800 Subject: [PATCH 062/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index e4ce8d09602c..fe2eb38455e9 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -40,7 +40,7 @@ TiDB 版本:7.2.0 TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,从而将统计信息收集的整体速度提升了 30%。这一改进有利于 TiDB 更及时地更新数据库对象的统计信息,生成更准确的执行计划,从而提升数据库整体性能。 - 默认设置下,统计信息收集会跳过类型为 `json`, `blob`, `mediumblob`, `longblob` 的列。你可以通过设置系统变量[``tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 JSON, BLOB, TEXT 这几个类型及其子类型。 + 默认设置下,统计信息收集会跳过类型为 `json`, `blob`, `mediumblob`, `longblob` 的列。你可以通过设置系统变量 [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 `JSON`、`BLOB`、`TEXT` 这几个类型及其子类型。 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 From 8277323d23ad4bf2e6aec8f9846c17c608f45f82 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 21 Jun 2023 17:15:24 +0800 Subject: [PATCH 063/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index fe2eb38455e9..e2c73fa8b9e1 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -40,7 +40,7 @@ TiDB 版本:7.2.0 TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,从而将统计信息收集的整体速度提升了 30%。这一改进有利于 TiDB 更及时地更新数据库对象的统计信息,生成更准确的执行计划,从而提升数据库整体性能。 - 默认设置下,统计信息收集会跳过类型为 `json`, `blob`, `mediumblob`, `longblob` 的列。你可以通过设置系统变量 [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 `JSON`、`BLOB`、`TEXT` 这几个类型及其子类型。 + 默认设置下,统计信息收集会跳过类型为 `json`、`blob`、`mediumblob`、`longblob` 的列。你可以通过设置系统变量 [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 `JSON`、`BLOB`、`TEXT` 这几个类型及其子类型。 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 From 900a650a9c701b4b2ba450d7c3cd79dd9e0ace05 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 21 Jun 2023 17:39:34 +0800 Subject: [PATCH 064/121] Apply suggestions from code review Co-authored-by: ShuNing Co-authored-by: Hangjie Mo Co-authored-by: givemefive <87104512+nongfushanquan@users.noreply.github.com> --- releases/release-7.2.0.md | 54 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 50 insertions(+), 4 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index e2c73fa8b9e1..ee806011d1f5 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -177,15 +177,24 @@ TiDB 版本:7.2.0 - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - note [#issue](链接) @[贡献者 GitHub ID](链接) +- 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) +- 当 stale read retry leader 遇到 lock,resolve lock 之后强制走 leader 避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) +- 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) +- 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) + TiKV - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 使用 gzip 压缩 check leader 请求减少流量消耗 [#14553](https://github.com/tikv/tikv/issues/14553) @[you06](https://github.com/you06) + - 添加 check leader 相关 metric [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) + - 详细记录 write command 处理时间细节 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) - note [#issue](链接) @[贡献者 GitHub ID](链接) + PD - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) + - 默认打开 bucket split,改善 Multi-Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) + - 新增历史负载信息,避免了存储引擎为 raft-kv2 时,热点调度器对不稳定负载所在的 Region 进行频繁调度 [#6297](https://github.com/tikv/pd/issues/6297) @[bufferflies](https://github.com/bufferflies) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiFlash @@ -227,15 +236,36 @@ TiDB 版本:7.2.0 - 修复关联子查询中含有 CTE 时可能出现的查询 hang 住的问题 [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) - 修复某些情况下 max/min 结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43508)@[wshwsh12](https://github.com/wshwsh12) - note [#issue](链接) @[贡献者 GitHub ID](链接) - + - 修复当 query 包含子查询时,information schema 显示中 `TxnStart` 字段为空的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) + - 修复 cop task 中 txn scope 缺失导致 stale read global optimization 不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) + - 修复 follower read 未处理 flashback 错误进行重试导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) + - 修复 prepared stale read 语句无法读到预期结果机会的问题 [#43044](https://github.com/pingcap/tidb/issues/43044) @[you06](https://github.com/you06) + - 修复 on update 语句没有正确更新 primary key 导致数据索引不一致问题 @[zyguan](https://github.com/zyguan) + - 修复 RC 模式悲观锁缓存可能导致数据不一致的问题 [43294](https://github.com/pingcap/tidb/issues/43294) @[ekexium](https://github.com/ekexium) +```suggestion + - 修复部分 TiDB 内部 SQL 解析错误问题 [#43392] (https://github.com/pingcap/tidb/issues/43392) @[guo-shaoge](https://github.com/guo-shaoge) + - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC` 和 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) + - 修复了 add Index 在 ingest 模式下失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) + - 修复了 cancel 处于在 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) + - 修复了 memtracker 配合 cursor 使用导致内存泄漏的问题 [#44254](https://github.com/pingcap/tidb/issues/44254) @[YangKeao](https://github.com/YangKeao) + - 修复了删除 database 导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复了分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) + - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) + - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031] (https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) + TiKV - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复锁堆积优化在老版本升级情况下不生效的问题 #[14780](https://github.com/tikv/tikv/issues/14780) @[ekexium](https://github.com/ekexium) + - 修复 fair lock 在出现 stale req 情况下的正确性问题 #[13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) + - 修复 autocommit point get 在 follower read 情况下线性一致性可能被破坏的问题 #[14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxkj](https://github.com/cfzjywxk) + PD - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复在特殊情况下冗余副本无法自动修复的问题 [#6573](https://github.com/tikv/pd/issues/6573) @[nolouch](https://github.com/nolouch) + - 修复 region health 监控项在 pd leader 发生变化后丢失的问题 [#6366](https://github.com/tikv/pd/issues/6366)@[iosmanthus](https://github.com/iosmanthus) + - 修复 nightling 在使用 region label 暂停调度时,导致不健康的副本无法自动修复的问题 [#6426](https://github.com/tikv/pd/issues/6426) @[nolouch](https://github.com/nolouch) + - 修复使用 pd control 标记 tikv, tikv 重启后 label 丢失的问题 [#6467](https://github.com/tikv/pd/issues/6467) @[JmPotato](https://github.com/JmPotato) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiFlash @@ -251,7 +281,23 @@ TiDB 版本:7.2.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) - + TiCDC ++ TiCDC + +- 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) +- 优化 canal-json 协议在发生 update 操作时输出数据的格式 [#8706](https://github.com/pingcap/tiflow/issues/8706) +- 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) +- 修复同步到对象存储场下上游执行 exchange partition 命令时不能正常执行的问题 [#8914](https://github.com/pingcap/tiflow/issues/8914) +- 优化 CDC 同步有损 DDL 时的行为 [#8686](https://github.com/pingcap/tiflow/issues/8686) +- 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) +- 修复在某些特殊情况下 resolved ts 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) +- 修复使用 Avro 或 csv 协议场景下 update 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) +- 修复同步到 Kafka 场景下,读取下游 meta 信息太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) +- 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) +- 修复同步到 TiDB/MySQL场景下频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) +- 修复 PD 节点 crash 时导致 CDC节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) +- 优化 CDC 做增量扫时的并发控制逻辑,降低 CDC 节点在 crash 时对同步延时的影响 [#8858](https://github.com/pingcap/tiflow/issues/8858) +- 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) +- 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From ed5b89399346bca6b564e5952698a0f691a810dd Mon Sep 17 00:00:00 2001 From: qiancai Date: Wed, 21 Jun 2023 17:45:44 +0800 Subject: [PATCH 065/121] format upates --- releases/release-7.2.0.md | 95 +++++++++++++++++++-------------------- 1 file changed, 45 insertions(+), 50 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index ee806011d1f5..3c275396035d 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -33,7 +33,7 @@ TiDB 版本:7.2.0 * 降低 TiFlash 等待 schema 同步的时延 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** 当表的 schema 发生变化时,TiFlash 需要及时从 TiKV 同步新的表结构信息。在 v7.2.0 之前,当 TiFlash 访问表数据时,只要检测到数据库中的某张表的 schema 发生了变化,TiFlash 就会重新同步该数据库中所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,通过 TiFlash 只读取一张表的数据也可能因为需要等待所有表的 schema 信息同步完成而造成较高的时延。 - + 在 v7.2.0 中,TiFlash 优化了 schema 的同步机制,只同步拥有 TiFlash 副本的表的 schema 信息。当检测到某张有 TiFlash 副本的表的 schema 有变化时,TiFlash 只同步该表的 schema 信息,从而降低了 TiFlash 同步 schema 的时延。该优化自动生效,无须任何设置。 * 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** @@ -41,13 +41,13 @@ TiDB 版本:7.2.0 TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,从而将统计信息收集的整体速度提升了 30%。这一改进有利于 TiDB 更及时地更新数据库对象的统计信息,生成更准确的执行计划,从而提升数据库整体性能。 默认设置下,统计信息收集会跳过类型为 `json`、`blob`、`mediumblob`、`longblob` 的列。你可以通过设置系统变量 [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 `JSON`、`BLOB`、`TEXT` 这几个类型及其子类型。 - + 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 * 提升数据和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,在大数据量场景中性能能够提升百倍。 - + 该优化默认开启 ([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入)。 @@ -67,21 +67,21 @@ TiDB 版本:7.2.0 * 增强根据历史执行计划创建绑定的能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** TiDB v7.2.0 进一步增强[根据历史执行计划创建绑定](/sql-plan-management.md#根据历史执行计划创建绑定)的能力,加强对复杂语句的解析和绑定,使绑定更稳固,并新增支持对以下 Hint 的绑定。 - - - [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop) - - [`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop) - - [`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name) - - [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 - 更多信息,请参考[用户文档](/sql-plan-management.md)。 + - [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop) + - [`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop) + - [`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name) + - [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 + + 更多信息,请参考[用户文档](/sql-plan-management.md)。 * 提供 Optimizer Fix Controls 机制对优化器行为进行细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) **tw@hfxsd** 为了生成更合理的执行计划,TiDB 优化器的行为会随产品迭代而不断演进。但在某些特定场景下,这些变化可能引发性能回退。因此 TiDB 引入了 Optimizer Fix Controls 来控制优化器的一部分细粒度行为,你可以对一些新的变化进行回滚或控制。 - 每一个可控的行为,都有一个与 Fix 号码对应的 GitHub Issue 进行说明。所有可控的行为列举在文档 [Optimizer Fix Controls](/optimizer-fix-controls.md) 中。通过设置系统变量 [`tidb_opt_fix_control`](/system-variables.md#tidb_opt_fix_control-从-v710-版本开始引入) 可以为一个或多个行为设置目标值,进而达到行为控制的目的。 + 每一个可控的行为,都有一个与 Fix 号码对应的 GitHub Issue 进行说明。所有可控的行为列举在文档 [Optimizer Fix Controls](/optimizer-fix-controls.md) 中。通过设置系统变量 [`tidb_opt_fix_control`](/system-variables.md#tidb_opt_fix_control-从-v710-版本开始引入) 可以为一个或多个行为设置目标值,进而达到行为控制的目的。 - Optimizer Fix Controls 机制加强了你对 TiDB 优化器的细粒度管控能力,为升级过程引发的性能问题提供了新的修复手段,提升 TiDB 的稳定性。 + Optimizer Fix Controls 机制加强了你对 TiDB 优化器的细粒度管控能力,为升级过程引发的性能问题提供了新的修复手段,提升 TiDB 的稳定性。 更多信息,请参考[用户文档](/optimizer-fix-controls.md)。 @@ -115,7 +115,7 @@ TiDB 版本:7.2.0 * 引入新的 SQL 语句 `IMPORT INTO`,大幅提升导入效率(实验特性)[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** `IMPORT INTO` 集成了 TiDB Lightning 的[物理导入模式](/tidb-lightning/tidb-lightning-physical-import-mode.md) 的能力。通过该语句,你可以将 `CSV`、`SQL`、`PARQUET` 等格式的数据快速导入到 TiDB 的一张空表中。这种导入方式无需单独部署和管理 TiDB Lightning,在降低了数据导入难度的同时,大幅提升了数据导入效率。 - + 对于存储在 Amazon S3 或 GCS 的数据文件,在开启了[后端任务分布式框架](/tidb-distributed-execution-framework.md) 后,`IMPORT INTO` 还支持将数据导入任务拆分成多个子任务,并将子任务调度到多个 TiDB 节点并行导入,进一步提升导入性能。 更多信息,请参考[用户文档](sql-statements/sql-statement-import-into.md)。 @@ -142,7 +142,7 @@ TiDB 版本:7.2.0 ### 系统变量 -| 变量名 | 修改类型(包括新增/修改/删除) | 描述 | +| 变量名 | 修改类型 | 描述 | |--------|------------------------------|------| | [`last_insert_id`](/system-variables.md#last_insert_id-从-v530-版本开始引入) | 修改 | 该变量的最大值从 `9223372036854775807` 修改为 `18446744073709551615`,和 MySQL 保持一致。 | | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | @@ -156,8 +156,6 @@ TiDB 版本:7.2.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | -| | | | | -| | | | | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | @@ -176,19 +174,19 @@ TiDB 版本:7.2.0 + TiDB - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes + - 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) + - 当 stale read retry leader 遇到 lock,resolve lock 之后强制走 leader 避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) + - 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) + - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - note [#issue](链接) @[贡献者 GitHub ID](链接) -- 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) -- 当 stale read retry leader 遇到 lock,resolve lock 之后强制走 leader 避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) -- 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) -- 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) + TiKV - - note [#issue](链接) @[贡献者 GitHub ID](链接) - 使用 gzip 压缩 check leader 请求减少流量消耗 [#14553](https://github.com/tikv/tikv/issues/14553) @[you06](https://github.com/you06) - 添加 check leader 相关 metric [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 write command 处理时间细节 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + PD @@ -242,16 +240,16 @@ TiDB 版本:7.2.0 - 修复 prepared stale read 语句无法读到预期结果机会的问题 [#43044](https://github.com/pingcap/tidb/issues/43044) @[you06](https://github.com/you06) - 修复 on update 语句没有正确更新 primary key 导致数据索引不一致问题 @[zyguan](https://github.com/zyguan) - 修复 RC 模式悲观锁缓存可能导致数据不一致的问题 [43294](https://github.com/pingcap/tidb/issues/43294) @[ekexium](https://github.com/ekexium) -```suggestion - - 修复部分 TiDB 内部 SQL 解析错误问题 [#43392] (https://github.com/pingcap/tidb/issues/43392) @[guo-shaoge](https://github.com/guo-shaoge) - - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC` 和 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) - - 修复了 add Index 在 ingest 模式下失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) - - 修复了 cancel 处于在 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) - - 修复了 memtracker 配合 cursor 使用导致内存泄漏的问题 [#44254](https://github.com/pingcap/tidb/issues/44254) @[YangKeao](https://github.com/YangKeao) - - 修复了删除 database 导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) - - 修复了分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) - - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031] (https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) + - 修复部分 TiDB 内部 SQL 解析错误问题 [#43392] (https://github.com/pingcap/tidb/issues/43392) @[guo-shaoge](https://github.com/guo-shaoge) + - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC` 和 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) + - 修复了 add Index 在 ingest 模式下失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) + - 修复了 cancel 处于在 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) + - 修复了 memtracker 配合 cursor 使用导致内存泄漏的问题 [#44254](https://github.com/pingcap/tidb/issues/44254) @[YangKeao](https://github.com/YangKeao) + - 修复了删除 database 导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复了分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) + - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) + - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) + + TiKV - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -277,30 +275,27 @@ TiDB 版本:7.2.0 + Backup & Restore (BR) - - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @Leavrth + - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @Leavrth - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) -+ TiCDC - -- 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) -- 优化 canal-json 协议在发生 update 操作时输出数据的格式 [#8706](https://github.com/pingcap/tiflow/issues/8706) -- 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) -- 修复同步到对象存储场下上游执行 exchange partition 命令时不能正常执行的问题 [#8914](https://github.com/pingcap/tiflow/issues/8914) -- 优化 CDC 同步有损 DDL 时的行为 [#8686](https://github.com/pingcap/tiflow/issues/8686) -- 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) -- 修复在某些特殊情况下 resolved ts 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) -- 修复使用 Avro 或 csv 协议场景下 update 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) -- 修复同步到 Kafka 场景下,读取下游 meta 信息太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) -- 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) -- 修复同步到 TiDB/MySQL场景下频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) -- 修复 PD 节点 crash 时导致 CDC节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) -- 优化 CDC 做增量扫时的并发控制逻辑,降低 CDC 节点在 crash 时对同步延时的影响 [#8858](https://github.com/pingcap/tiflow/issues/8858) -- 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) -- 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) + + TiCDC - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) + - 优化 canal-json 协议在发生 update 操作时输出数据的格式 [#8706](https://github.com/pingcap/tiflow/issues/8706) + - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) + - 修复同步到对象存储场下上游执行 exchange partition 命令时不能正常执行的问题 [#8914](https://github.com/pingcap/tiflow/issues/8914) + - 优化 CDC 同步有损 DDL 时的行为 [#8686](https://github.com/pingcap/tiflow/issues/8686) + - 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) + - 修复在某些特殊情况下 resolved ts 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) + - 修复使用 Avro 或 csv 协议场景下 update 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) + - 修复同步到 Kafka 场景下,读取下游 meta 信息太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) + - 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) + - 修复同步到 TiDB/MySQL场景下频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) + - 修复 PD 节点 crash 时导致 CDC节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) + - 优化 CDC 做增量扫时的并发控制逻辑,降低 CDC 节点在 crash 时对同步延时的影响 [#8858](https://github.com/pingcap/tiflow/issues/8858) + - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) + - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) + TiDB Data Migration (DM) From efdd29bf97258f4018e7d38d47c444c1a27b2789 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 21 Jun 2023 19:45:43 +0800 Subject: [PATCH 066/121] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Xiaoju Wu Co-authored-by: 山岚 <36239017+YuJuncen@users.noreply.github.com> --- releases/release-7.2.0.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 3c275396035d..d0a4b950e198 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -249,7 +249,7 @@ TiDB 版本:7.2.0 - 修复了分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - +- 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645] (https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + TiKV - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -276,7 +276,9 @@ TiDB 版本:7.2.0 + Backup & Restore (BR) - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @Leavrth - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复了在一些情况下误报 checksum mismatch 的问题。[#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) + - 修复了在一些情况下误报 resolved lock timeout 的问题。[#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) + - 修复了在恢复统计信息的时候可能会 panic 的问题。[#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC From 08bc45b03c89d959e2c7d9fd36f55c4560f8cfac Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sat, 24 Jun 2023 21:36:42 +0800 Subject: [PATCH 067/121] Apply suggestions from code review Co-authored-by: tonyxuqqi --- releases/release-7.2.0.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index d0a4b950e198..ca874d5c7bda 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -181,7 +181,9 @@ TiDB 版本:7.2.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV - + - 支持配置PDclient的重连间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) + - resource control提高调度算法将全局的资源使用作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) + - compaction-guard-min-output-file-size默认值从8MB改为1MB [#14888](https://github.com/tikv/tikv/issues/14888) @[tonyxuqqi](https://github.com/tonyxuqqi) - 使用 gzip 压缩 check leader 请求减少流量消耗 [#14553](https://github.com/tikv/tikv/issues/14553) @[you06](https://github.com/you06) - 添加 check leader 相关 metric [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 write command 处理时间细节 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) @@ -251,7 +253,8 @@ TiDB 版本:7.2.0 - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645] (https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + TiKV - + - 修复处理stale悲观锁冲突时不正确的事务返回值. [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) + - 修复in-memory pessimistic locks可能导致flashback失败和数据不一致. [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) - 修复锁堆积优化在老版本升级情况下不生效的问题 #[14780](https://github.com/tikv/tikv/issues/14780) @[ekexium](https://github.com/ekexium) From 14c1c3106c1875fcb026a7bd93439915c83e761c Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sat, 24 Jun 2023 21:37:23 +0800 Subject: [PATCH 068/121] Update releases/release-7.2.0.md Co-authored-by: Xiaoju Wu --- releases/release-7.2.0.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index ca874d5c7bda..816f50296f46 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -164,7 +164,8 @@ TiDB 版本:7.2.0 | Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | - +| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 用于控制 TiDB 启动时是否采用轻量级的统计信息初始化,默认值从 false 变更为 true。 | +| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 用于控制 TiDB 启动时是否在统计信息初始化完成后再对外提供服务,默认值从 false 变更为 true。 | ## 废弃功能 - note [#issue](链接) @[贡献者 GitHub ID](链接) From bd6f95d8e9ef3110af608057cfbd06f06fbe5f25 Mon Sep 17 00:00:00 2001 From: qiancai Date: Sat, 24 Jun 2023 22:36:33 +0800 Subject: [PATCH 069/121] Update release-7.2.0.md --- releases/release-7.2.0.md | 105 +++++++++++++++++--------------------- 1 file changed, 47 insertions(+), 58 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 816f50296f46..a576a6209777 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -19,7 +19,7 @@ TiDB 版本:7.2.0 ### 性能 -* 新增支持下推以下两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 到 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@qiancai** +* 新增支持下推以下两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 到 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@qiancai** * `FIRST_VALUE` * `LAST_VALUE` @@ -108,8 +108,6 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/ddl-introduction.md#ddl-相关的命令介绍)。 -### 可观测性 - ### 数据迁移 * 引入新的 SQL 语句 `IMPORT INTO`,大幅提升导入效率(实验特性)[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** @@ -144,18 +142,19 @@ TiDB 版本:7.2.0 | 变量名 | 修改类型 | 描述 | |--------|------------------------------|------| -| [`last_insert_id`](/system-variables.md#last_insert_id-从-v530-版本开始引入) | 修改 | 该变量的最大值从 `9223372036854775807` 修改为 `18446744073709551615`,和 MySQL 保持一致。 | +| [`last_insert_id`](/system-variables.md#last_insert_id-从-v530-版本开始引入) | 修改 | 该变量的最大值从 `9223372036854775807` 修改为 `18446744073709551615`,和 MySQL 保持一致。 | | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | | [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | -| [`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) | 新增 | 这个变量用于控制是否使用基于校验和的方式来快速检查表中数据和索引的一致性。默认值 `ON` 表示该功能默认开启。 | -| [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | -| | | | +| [`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) | 新增 | 这个变量用于控制是否使用基于校验和的方式来快速检查表中数据和索引的一致性。默认值 `ON` 表示该功能默认开启。 | | [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) | 新增 | 这个变量用来控制是否启用 TiFlash 新的执行模型 [Pipeline Model](/tiflash/tiflash-pipeline-model.md),默认值为 `OFF`,即关闭 Pipeline Model。 | +| [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | ### 配置文件参数 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | +| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 变更为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | +| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 变更为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | @@ -164,8 +163,7 @@ TiDB 版本:7.2.0 | Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | -| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 用于控制 TiDB 启动时是否采用轻量级的统计信息初始化,默认值从 false 变更为 true。 | -| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 用于控制 TiDB 启动时是否在统计信息初始化完成后再对外提供服务,默认值从 false 变更为 true。 | + ## 废弃功能 - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -174,29 +172,29 @@ TiDB 版本:7.2.0 + TiDB + - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) - 当 stale read retry leader 遇到 lock,resolve lock 之后强制走 leader 避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) - 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV - - 支持配置PDclient的重连间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) - - resource control提高调度算法将全局的资源使用作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) - - compaction-guard-min-output-file-size默认值从8MB改为1MB [#14888](https://github.com/tikv/tikv/issues/14888) @[tonyxuqqi](https://github.com/tonyxuqqi) + + + - 支持配置PDclient的重连间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) + - resource control提高调度算法将全局的资源使用作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) + - compaction-guard-min-output-file-size默认值从8MB改为1MB [#14888](https://github.com/tikv/tikv/issues/14888) @[tonyxuqqi](https://github.com/tonyxuqqi) - 使用 gzip 压缩 check leader 请求减少流量消耗 [#14553](https://github.com/tikv/tikv/issues/14553) @[you06](https://github.com/you06) - 添加 check leader 相关 metric [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 write command 处理时间细节 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + PD + - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) - 默认打开 bucket split,改善 Multi-Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) - 新增历史负载信息,避免了存储引擎为 raft-kv2 时,热点调度器对不稳定负载所在的 Region 进行频繁调度 [#6297](https://github.com/tikv/pd/issues/6297) @[bufferflies](https://github.com/bufferflies) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiFlash @@ -207,13 +205,21 @@ TiDB 版本:7.2.0 + Backup & Restore (BR) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) + TiCDC - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + + - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) + - 优化 canal-json 协议在发生 update 操作时输出数据的格式 [#8706](https://github.com/pingcap/tiflow/issues/8706) + - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) + - 优化 CDC 同步有损 DDL 时的行为 [#8686](https://github.com/pingcap/tiflow/issues/8686) + - 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) + - 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) + - 优化 CDC 做增量扫时的并发控制逻辑,降低 CDC 节点在 crash 时对同步延时的影响 [#8858](https://github.com/pingcap/tiflow/issues/8858) + - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) + TiDB Data Migration (DM) @@ -225,18 +231,13 @@ TiDB 版本:7.2.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) - + TiUP - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - ## 错误修复 + TiDB + - 修复关联子查询中含有 CTE 时可能出现的查询 hang 住的问题 [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) - 修复某些情况下 max/min 结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43508)@[wshwsh12](https://github.com/wshwsh12) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - 修复当 query 包含子查询时,information schema 显示中 `TxnStart` 字段为空的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) - 修复 cop task 中 txn scope 缺失导致 stale read global optimization 不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) - 修复 follower read 未处理 flashback 错误进行重试导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) @@ -252,56 +253,49 @@ TiDB 版本:7.2.0 - 修复了分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) -- 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645] (https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645] (https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + + TiKV - - 修复处理stale悲观锁冲突时不正确的事务返回值. [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - - 修复in-memory pessimistic locks可能导致flashback失败和数据不一致. [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + - 修复处理stale悲观锁冲突时不正确的事务返回值 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) + - 修复in-memory pessimistic locks可能导致flashback失败和数据不一致 [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) - 修复锁堆积优化在老版本升级情况下不生效的问题 #[14780](https://github.com/tikv/tikv/issues/14780) @[ekexium](https://github.com/ekexium) - 修复 fair lock 在出现 stale req 情况下的正确性问题 #[13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 autocommit point get 在 follower read 情况下线性一致性可能被破坏的问题 #[14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxkj](https://github.com/cfzjywxk) + PD + - 修复在特殊情况下冗余副本无法自动修复的问题 [#6573](https://github.com/tikv/pd/issues/6573) @[nolouch](https://github.com/nolouch) - 修复 region health 监控项在 pd leader 发生变化后丢失的问题 [#6366](https://github.com/tikv/pd/issues/6366)@[iosmanthus](https://github.com/iosmanthus) - 修复 nightling 在使用 region label 暂停调度时,导致不健康的副本无法自动修复的问题 [#6426](https://github.com/tikv/pd/issues/6426) @[nolouch](https://github.com/nolouch) - 修复使用 pd control 标记 tikv, tikv 重启后 label 丢失的问题 [#6467](https://github.com/tikv/pd/issues/6467) @[JmPotato](https://github.com/JmPotato) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiFlash + - 修复在 join 的 build 端数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + Tools + Backup & Restore (BR) - - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @Leavrth - - 修复了在一些情况下误报 checksum mismatch 的问题。[#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - - 修复了在一些情况下误报 resolved lock timeout 的问题。[#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) - - 修复了在恢复统计信息的时候可能会 panic 的问题。[#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + + - 修复了在一些情况下误报 checksum mismatch 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) + - 修复了在一些情况下误报 resolved lock timeout 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) + - 修复了在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) + TiCDC - - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) - - 优化 canal-json 协议在发生 update 操作时输出数据的格式 [#8706](https://github.com/pingcap/tiflow/issues/8706) - - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) - - 修复同步到对象存储场下上游执行 exchange partition 命令时不能正常执行的问题 [#8914](https://github.com/pingcap/tiflow/issues/8914) - - 优化 CDC 同步有损 DDL 时的行为 [#8686](https://github.com/pingcap/tiflow/issues/8686) - - 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) - - 修复在某些特殊情况下 resolved ts 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) - - 修复使用 Avro 或 csv 协议场景下 update 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) - - 修复同步到 Kafka 场景下,读取下游 meta 信息太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) - - 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) - - 修复同步到 TiDB/MySQL场景下频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) - - 修复 PD 节点 crash 时导致 CDC节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) - - 优化 CDC 做增量扫时的并发控制逻辑,降低 CDC 节点在 crash 时对同步延时的影响 [#8858](https://github.com/pingcap/tiflow/issues/8858) - - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) - - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) + + - 修复同步到对象存储场下上游执行 exchange partition 命令时不能正常执行的问题 [#8914](https://github.com/pingcap/tiflow/issues/8914) + - 修复在某些特殊情况下 resolved ts 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) + - 修复使用 Avro 或 csv 协议场景下 update 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) + - 修复同步到 Kafka 场景下,读取下游 meta 信息太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) + - 修复同步到 TiDB/MySQL场景下频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) + - 修复 PD 节点 crash 时导致 CDC节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) + - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) + TiDB Data Migration (DM) @@ -313,11 +307,6 @@ TiDB 版本:7.2.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) - + TiUP - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - ## 贡献者 感谢来自 TiDB 社区的贡献者们: From 5b20c2a90395e04cc698c7e8f268bd80ff72078b Mon Sep 17 00:00:00 2001 From: qiancai Date: Sat, 24 Jun 2023 22:44:31 +0800 Subject: [PATCH 070/121] format updates --- releases/release-7.2.0.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a576a6209777..7a33fee63e6b 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -153,16 +153,16 @@ TiDB 版本:7.2.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | -| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 变更为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | -| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 变更为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化。 | +| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | +| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | -| TiDB Lightning | `character-set` | 修改 | 扩展支持导入的字符集,新增 `latin1` 选项,用于导入字符集为 latin1 的源文件。| +| TiDB Lightning | [`character-set`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) | 修改 | 扩展支持导入的字符集,新增 `latin1` 选项,用于导入字符集为 latin1 的源文件。| | TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的键值对的大小。当键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | | Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | -| TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| -| TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | +| TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| +| TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | ## 废弃功能 From dbac868132de086d4bf1ae39f369a98828c96bb8 Mon Sep 17 00:00:00 2001 From: qiancai Date: Sun, 25 Jun 2023 09:27:20 +0800 Subject: [PATCH 071/121] add contibutors --- releases/release-7.2.0.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 7a33fee63e6b..2a78bcd44233 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -311,4 +311,15 @@ TiDB 版本:7.2.0 感谢来自 TiDB 社区的贡献者们: -- [贡献者 GitHub ID](链接) \ No newline at end of file +- [asjdf](https://github.com/asjdf) +- [blacktear23](https://github.com/blacktear23) +- [Cavan-xu](https://github.com/Cavan-xu) +- [darraes](https://github.com/darraes) +- [demoManito](https://github.com/demoManito) +- [dhysum](https://github.com/dhysum) +- [HappyUncle](https://github.com/HappyUncle) +- [jiyfhust](https://github.com/jiyfhust) +- [L-maple](https://github.com/L-maple) +- [nyurik](https://github.com/nyurik) +- [SeigeC](https://github.com/SeigeC) +- [tangjingyu97](https://github.com/tangjingyu97) \ No newline at end of file From 17fb9e8e80551fff36ac61c8d1bc4c5149740d73 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sun, 25 Jun 2023 09:47:51 +0800 Subject: [PATCH 072/121] Update releases/release-7.2.0.md Co-authored-by: Hangjie Mo --- releases/release-7.2.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 2a78bcd44233..722ca8701d0a 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -178,6 +178,7 @@ TiDB 版本:7.2.0 - 当 stale read retry leader 遇到 lock,resolve lock 之后强制走 leader 避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) - 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) + - 支持通过 MySQL 压缩协议连接 TiDB (在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) + TiKV From 619befa5211669b9f0b9a9acc8a9d20038a69b48 Mon Sep 17 00:00:00 2001 From: Aolin Date: Sun, 25 Jun 2023 12:30:53 +0800 Subject: [PATCH 073/121] Apply suggestions from code review --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 722ca8701d0a..b355b918a441 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -71,7 +71,7 @@ TiDB 版本:7.2.0 - [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop) - [`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop) - [`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name) - - [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name)。 + - [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name) 更多信息,请参考[用户文档](/sql-plan-management.md)。 From 6af529fca5c77483eb2068c541d8ce23991e08dd Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sun, 25 Jun 2023 13:22:54 +0800 Subject: [PATCH 074/121] Apply suggestions from code review Co-authored-by: Aolin --- releases/release-7.2.0.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b355b918a441..b797f193e827 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -32,7 +32,7 @@ TiDB 版本:7.2.0 * 降低 TiFlash 等待 schema 同步的时延 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** - 当表的 schema 发生变化时,TiFlash 需要及时从 TiKV 同步新的表结构信息。在 v7.2.0 之前,当 TiFlash 访问表数据时,只要检测到数据库中的某张表的 schema 发生了变化,TiFlash 就会重新同步该数据库中所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,通过 TiFlash 只读取一张表的数据也可能因为需要等待所有表的 schema 信息同步完成而造成较高的时延。 + 当表的 schema 发生变化时,TiFlash 需要及时从 TiKV 同步新的表结构信息。在 v7.2.0 之前,当 TiFlash 访问表数据时,只要检测到数据库中某张表的 schema 发生了变化,TiFlash 就会重新同步该数据库中所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,通过 TiFlash 只读取一张表的数据也可能因为需要等待所有表的 schema 信息同步完成而造成较高的时延。 在 v7.2.0 中,TiFlash 优化了 schema 的同步机制,只同步拥有 TiFlash 副本的表的 schema 信息。当检测到某张有 TiFlash 副本的表的 schema 有变化时,TiFlash 只同步该表的 schema 信息,从而降低了 TiFlash 同步 schema 的时延。该优化自动生效,无须任何设置。 @@ -48,7 +48,7 @@ TiDB 版本:7.2.0 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,在大数据量场景中性能能够提升百倍。 - 该优化默认开启 ([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间, 提升运维体验。 + 该优化默认开启([`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) 默认为 `ON`),可以大幅减少大型表数据一致性检查的时间,提升运维体验。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入)。 @@ -87,7 +87,7 @@ TiDB 版本:7.2.0 ### SQL 功能 -* 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678] (https://github.com/fzzf678) **tw@qiancai** +* 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678](https://github.com/fzzf678) **tw@qiancai** 从 v7.2.0 开始,你可以通过 `CHECK` 约束限制表中的一个或者多个字段值必须满足特定的条件。当为表添加 `CHECK` 约束后,在插入或者更新表的数据时,TiDB 会先检查约束条件是否满足,只允许满足约束的数据写入。 @@ -110,19 +110,19 @@ TiDB 版本:7.2.0 ### 数据迁移 -* 引入新的 SQL 语句 `IMPORT INTO`,大幅提升导入效率(实验特性)[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** +* 引入新的 SQL 语句 `IMPORT INTO`,大幅提升数据导入效率(实验特性)[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** - `IMPORT INTO` 集成了 TiDB Lightning 的[物理导入模式](/tidb-lightning/tidb-lightning-physical-import-mode.md) 的能力。通过该语句,你可以将 `CSV`、`SQL`、`PARQUET` 等格式的数据快速导入到 TiDB 的一张空表中。这种导入方式无需单独部署和管理 TiDB Lightning,在降低了数据导入难度的同时,大幅提升了数据导入效率。 + `IMPORT INTO` 集成了 TiDB Lightning [物理导入模式](/tidb-lightning/tidb-lightning-physical-import-mode.md)的能力。通过该语句,你可以将 CSV、SQL 和 PARQUET 等格式的数据快速导入到 TiDB 的一张空表中。这种导入方式无需单独部署和管理 TiDB Lightning,在降低了数据导入难度的同时,大幅提升了数据导入效率。 - 对于存储在 Amazon S3 或 GCS 的数据文件,在开启了[后端任务分布式框架](/tidb-distributed-execution-framework.md) 后,`IMPORT INTO` 还支持将数据导入任务拆分成多个子任务,并将子任务调度到多个 TiDB 节点并行导入,进一步提升导入性能。 + 对于存储在 Amazon S3 或 GCS 的数据文件,在开启了[后端任务分布式框架](/tidb-distributed-execution-framework.md)后,`IMPORT INTO` 还支持将数据导入任务拆分成多个子任务,并将子任务调度到多个 TiDB 节点并行导入,进一步提升导入性能。 更多信息,请参考[用户文档](sql-statements/sql-statement-import-into.md)。 * TiDB Lightning 支持将字符集为 latin1 的源文件导入到 TiDB 中 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** - 通过此功能,你可以使用 TiDB Lightning 将字符集为 latin1 的源文件直接导入到 TiDB 中。在 v7.2.0 之前,导入这样的文件需要额外的预处理或转换。从 v7.2.0 起,你只需在配置 TiDB Lightning 导入任务时指定 `character-set = "latin1"`,TiDB Lightning 就会在导入过程中自动处理字符集的转换,确保数据的完整性和准确性。 + 通过此功能,你可以使用 TiDB Lightning 将字符集为 latin1 的源文件直接导入到 TiDB 中。在 v7.2.0 之前,导入这样的文件需要额外的预处理或转换。从 v7.2.0 起,你只需在配置 TiDB Lightning 导入任务时指定 `character-set = "latin1"`,TiDB Lightning 就会在导入过程中自动处理字符集的转换,以确保数据的完整性和准确性。 - 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) + 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置)。 ## 兼容性变更 From dee33d6036c3cfa5cb03482032d68d9ce0c4fb7a Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sun, 25 Jun 2023 13:29:33 +0800 Subject: [PATCH 075/121] implement comments from wjhuang2016 --- releases/release-7.2.0.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b797f193e827..924cc8926d1d 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -179,7 +179,9 @@ TiDB 版本:7.2.0 - 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - 支持通过 MySQL 压缩协议连接 TiDB (在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) - + - 支持将utf8和utf8mb3都识别为旧的三字节字符集编码。[#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) + - 支持将 := 用于 update 语句中赋值。[#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) + + TiKV @@ -255,6 +257,7 @@ TiDB 版本:7.2.0 - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645] (https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + - last_insert_id函数的返回类型从varchar变更为longlong,与MySQL相同,同时last_insert_id的最大上限也变更为MaxUint64。[#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) + TiKV From b1a86df6bd3f30c7cbf042c6e636302f755fda34 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sun, 25 Jun 2023 13:51:15 +0800 Subject: [PATCH 076/121] remove improvements and bug fixes already covered in v7.1.0 --- releases/release-7.2.0.md | 54 +++++++++++---------------------------- 1 file changed, 15 insertions(+), 39 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 924cc8926d1d..b245c329cb00 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -170,21 +170,19 @@ TiDB 版本:7.2.0 ## 改进提升 -+ TiDB ++ TiDB - - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) - 当 stale read retry leader 遇到 lock,resolve lock 之后强制走 leader 避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) - 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - 支持通过 MySQL 压缩协议连接 TiDB (在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) - - 支持将utf8和utf8mb3都识别为旧的三字节字符集编码。[#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - - 支持将 := 用于 update 语句中赋值。[#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) + - 支持将utf8和utf8mb3都识别为旧的三字节字符集编码。[#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) + - 支持将 := 用于 update 语句中赋值。[#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) -+ TiKV ++ TiKV - - 支持配置PDclient的重连间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) - resource control提高调度算法将全局的资源使用作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) - compaction-guard-min-output-file-size默认值从8MB改为1MB [#14888](https://github.com/tikv/tikv/issues/14888) @[tonyxuqqi](https://github.com/tonyxuqqi) @@ -192,12 +190,10 @@ TiDB 版本:7.2.0 - 添加 check leader 相关 metric [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 write command 处理时间细节 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) -+ PD ++ PD - - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) - 默认打开 bucket split,改善 Multi-Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) - - 新增历史负载信息,避免了存储引擎为 raft-kv2 时,热点调度器对不稳定负载所在的 Region 进行频繁调度 [#6297](https://github.com/tikv/pd/issues/6297) @[bufferflies](https://github.com/bufferflies) + TiFlash @@ -206,23 +202,15 @@ TiDB 版本:7.2.0 + Tools - + Backup & Restore (BR) - - + + Backup & Restore (BR) - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) - + TiCDC + + TiCDC - - - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) - - 优化 canal-json 协议在发生 update 操作时输出数据的格式 [#8706](https://github.com/pingcap/tiflow/issues/8706) - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) - - 优化 CDC 同步有损 DDL 时的行为 [#8686](https://github.com/pingcap/tiflow/issues/8686) - 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) - 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) - - 优化 CDC 做增量扫时的并发控制逻辑,降低 CDC 节点在 crash 时对同步延时的影响 [#8858](https://github.com/pingcap/tiflow/issues/8858) - - 优化 CDC 同步任务失败时设置 gc ttl 的方法 [#8403](https://github.com/pingcap/tiflow/issues/8403) + TiDB Data Migration (DM) @@ -236,9 +224,8 @@ TiDB 版本:7.2.0 ## 错误修复 -+ TiDB ++ TiDB - - 修复关联子查询中含有 CTE 时可能出现的查询 hang 住的问题 [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) - 修复某些情况下 max/min 结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43508)@[wshwsh12](https://github.com/wshwsh12) - 修复当 query 包含子查询时,information schema 显示中 `TxnStart` 字段为空的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) @@ -247,7 +234,6 @@ TiDB 版本:7.2.0 - 修复 prepared stale read 语句无法读到预期结果机会的问题 [#43044](https://github.com/pingcap/tidb/issues/43044) @[you06](https://github.com/you06) - 修复 on update 语句没有正确更新 primary key 导致数据索引不一致问题 @[zyguan](https://github.com/zyguan) - 修复 RC 模式悲观锁缓存可能导致数据不一致的问题 [43294](https://github.com/pingcap/tidb/issues/43294) @[ekexium](https://github.com/ekexium) - - 修复部分 TiDB 内部 SQL 解析错误问题 [#43392] (https://github.com/pingcap/tidb/issues/43392) @[guo-shaoge](https://github.com/guo-shaoge) - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC` 和 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) - 修复了 add Index 在 ingest 模式下失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) - 修复了 cancel 处于在 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) @@ -256,44 +242,34 @@ TiDB 版本:7.2.0 - 修复了分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645] (https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) - - last_insert_id函数的返回类型从varchar变更为longlong,与MySQL相同,同时last_insert_id的最大上限也变更为MaxUint64。[#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) + - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + - last_insert_id函数的返回类型从varchar变更为longlong,与MySQL相同,同时last_insert_id的最大上限也变更为MaxUint64。[#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) -+ TiKV ++ TiKV - - 修复处理stale悲观锁冲突时不正确的事务返回值 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复in-memory pessimistic locks可能导致flashback失败和数据不一致 [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) - - 修复锁堆积优化在老版本升级情况下不生效的问题 #[14780](https://github.com/tikv/tikv/issues/14780) @[ekexium](https://github.com/ekexium) - 修复 fair lock 在出现 stale req 情况下的正确性问题 #[13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 autocommit point get 在 follower read 情况下线性一致性可能被破坏的问题 #[14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxkj](https://github.com/cfzjywxk) -+ PD ++ PD - - 修复在特殊情况下冗余副本无法自动修复的问题 [#6573](https://github.com/tikv/pd/issues/6573) @[nolouch](https://github.com/nolouch) - - 修复 region health 监控项在 pd leader 发生变化后丢失的问题 [#6366](https://github.com/tikv/pd/issues/6366)@[iosmanthus](https://github.com/iosmanthus) - - 修复 nightling 在使用 region label 暂停调度时,导致不健康的副本无法自动修复的问题 [#6426](https://github.com/tikv/pd/issues/6426) @[nolouch](https://github.com/nolouch) - - 修复使用 pd control 标记 tikv, tikv 重启后 label 丢失的问题 [#6467](https://github.com/tikv/pd/issues/6467) @[JmPotato](https://github.com/JmPotato) -+ TiFlash ++ TiFlash - - 修复在 join 的 build 端数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - - 修复了在一些情况下误报 checksum mismatch 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - 修复了在一些情况下误报 resolved lock timeout 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) - 修复了在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) - + TiCDC + + TiCDC - - - 修复同步到对象存储场下上游执行 exchange partition 命令时不能正常执行的问题 [#8914](https://github.com/pingcap/tiflow/issues/8914) - 修复在某些特殊情况下 resolved ts 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) - 修复使用 Avro 或 csv 协议场景下 update 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) - 修复同步到 Kafka 场景下,读取下游 meta 信息太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) From 946034d02fa3d978c2347451df84738f0cc00908 Mon Sep 17 00:00:00 2001 From: qiancai Date: Sun, 25 Jun 2023 14:27:00 +0800 Subject: [PATCH 077/121] remove #43294 as the issue for it has been covered by v7.1.0 --- releases/release-7.2.0.md | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b245c329cb00..fe7414b8db70 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -170,7 +170,7 @@ TiDB 版本:7.2.0 ## 改进提升 -+ TiDB ++ TiDB - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) @@ -178,9 +178,9 @@ TiDB 版本:7.2.0 - 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - 支持通过 MySQL 压缩协议连接 TiDB (在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) - - 支持将utf8和utf8mb3都识别为旧的三字节字符集编码。[#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) + - 支持将utf8和utf8mb3都识别为旧的三字节字符集编码。[#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - 支持将 := 用于 update 语句中赋值。[#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) - + + TiKV - 支持配置PDclient的重连间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) @@ -190,7 +190,7 @@ TiDB 版本:7.2.0 - 添加 check leader 相关 metric [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 write command 处理时间细节 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) -+ PD ++ PD - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) - 默认打开 bucket split,改善 Multi-Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) @@ -198,11 +198,10 @@ TiDB 版本:7.2.0 + TiFlash - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) @@ -224,16 +223,18 @@ TiDB 版本:7.2.0 ## 错误修复 -+ TiDB ++ TiDB + + - 修复关联子查询中含有 CTE 时可能出现的查询 hang 住的问题 [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) - 修复某些情况下 max/min 结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43508)@[wshwsh12](https://github.com/wshwsh12) - 修复当 query 包含子查询时,information schema 显示中 `TxnStart` 字段为空的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) - 修复 cop task 中 txn scope 缺失导致 stale read global optimization 不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) - 修复 follower read 未处理 flashback 错误进行重试导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) + - 修复 prepared stale read 语句无法读到预期结果机会的问题 [#43044](https://github.com/pingcap/tidb/issues/43044) @[you06](https://github.com/you06) - 修复 on update 语句没有正确更新 primary key 导致数据索引不一致问题 @[zyguan](https://github.com/zyguan) - - 修复 RC 模式悲观锁缓存可能导致数据不一致的问题 [43294](https://github.com/pingcap/tidb/issues/43294) @[ekexium](https://github.com/ekexium) - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC` 和 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) - 修复了 add Index 在 ingest 模式下失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) - 修复了 cancel 处于在 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) @@ -252,17 +253,17 @@ TiDB 版本:7.2.0 - 修复 fair lock 在出现 stale req 情况下的正确性问题 #[13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 autocommit point get 在 follower read 情况下线性一致性可能被破坏的问题 #[14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxkj](https://github.com/cfzjywxk) -+ PD ++ PD - 修复在特殊情况下冗余副本无法自动修复的问题 [#6573](https://github.com/tikv/pd/issues/6573) @[nolouch](https://github.com/nolouch) -+ TiFlash ++ TiFlash - 修复在 join 的 build 端数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - 修复了在一些情况下误报 checksum mismatch 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - 修复了在一些情况下误报 resolved lock timeout 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) From a8163fd6c8dd06bf368291347ffb3f339a1f3d04 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sun, 25 Jun 2023 16:38:13 +0800 Subject: [PATCH 078/121] Apply suggestions from code review Co-authored-by: Xiaoju Wu --- releases/release-7.2.0.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index fe7414b8db70..95d42fef9974 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -213,13 +213,13 @@ TiDB 版本:7.2.0 + TiDB Data Migration (DM) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 支持 MySQL 8.0 压缩 binlog 的增量同步 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) + TiDB Lightning - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 优化导入时遇到 leader 切换导致的错误的重试机制 [#44478](https://github.com/pingcap/tidb/pull/44478) + - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) + - 优化宽表导入下 lightning OOM 的问题 [43853](https://github.com/pingcap/tidb/issues/43853) ## 错误修复 @@ -245,6 +245,9 @@ TiDB 版本:7.2.0 - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) - last_insert_id函数的返回类型从varchar变更为longlong,与MySQL相同,同时last_insert_id的最大上限也变更为MaxUint64。[#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) +- 修复了 CTE 多次被非关联子查询引用的情况下,因过滤条件下推导致的结果错误 [#44051] (https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) +- 修复了 outer join reorder 对 condition 的错误处理导致的结果正确性问题 [#44314] (https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) +- 修复了 `prepare stmt from "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320] (https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + TiKV @@ -285,8 +288,8 @@ TiDB 版本:7.2.0 + TiDB Lightning - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复开启 expression index 且默认值是 uuid 导致 lightning panic 的问题 [#44516](https://github.com/pingcap/tidb/pull/44516) + - 修复划分数据文件时任务退出导致 lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) ## 贡献者 From c02f56105475c766eaac90cf2b3be40c6e14e9e6 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Sun, 25 Jun 2023 16:47:07 +0800 Subject: [PATCH 079/121] Apply suggestions from code review --- releases/release-7.2.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 95d42fef9974..1630d669e4ae 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -211,11 +211,11 @@ TiDB 版本:7.2.0 - 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) - 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) - + TiDB Data Migration (DM) + + TiDB Data Migration (DM) - 支持 MySQL 8.0 压缩 binlog 的增量同步 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) - + TiDB Lightning + + TiDB Lightning - 优化导入时遇到 leader 切换导致的错误的重试机制 [#44478](https://github.com/pingcap/tidb/pull/44478) - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @@ -286,7 +286,7 @@ TiDB 版本:7.2.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) - + TiDB Lightning + + TiDB Lightning - 修复开启 expression index 且默认值是 uuid 导致 lightning panic 的问题 [#44516](https://github.com/pingcap/tidb/pull/44516) - 修复划分数据文件时任务退出导致 lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) From 96e981812e0a6d713ea78324451a25aae04446c0 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Sun, 25 Jun 2023 19:47:11 +0800 Subject: [PATCH 080/121] Apply suggestions from code review --- releases/release-7.2.0.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 1630d669e4ae..c0c5d461bf9e 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -207,9 +207,9 @@ TiDB 版本:7.2.0 + TiCDC - - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) - - 增加在 Kafka 场景下 OAuth 认证方式的支持 [#8865](https://github.com/pingcap/tiflow/issues/8865) - - 增加同步到 Kafka 场景下,对于 delete 操作,用户可以只选择输出 handle key 的方式 [#9143](https://github.com/pingcap/tiflow/issues/9143) + - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) @[CharlesCheung96](https://github.com/CharlesCheung96) + - 增加在 Kafka 场景下支持 OAUTHBEARER 认证方式 [#8865](https://github.com/pingcap/tiflow/issues/8865) @[hi-rustin](https://github.com/hi-rustin) + - 增加同步到 Kafka 场景下,对于 `DELETE` 操作,支持选择只输出 Handle Key [#9143](https://github.com/pingcap/tiflow/issues/9143) @[3AceShowHand](https://github.com/3AceShowHand) + TiDB Data Migration (DM) @@ -268,18 +268,18 @@ TiDB 版本:7.2.0 + Backup & Restore (BR) - - 修复了在一些情况下误报 checksum mismatch 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - - 修复了在一些情况下误报 resolved lock timeout 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) - - 修复了在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) + - 修复某些情况下误报 `checksum mismatch` 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) + - 修复某些情况下误报 `resolved lock timeout` 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) + - 修复在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) + TiCDC - - 修复在某些特殊情况下 resolved ts 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) - - 修复使用 Avro 或 csv 协议场景下 update 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) - - 修复同步到 Kafka 场景下,读取下游 meta 信息太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) - - 修复同步到 TiDB/MySQL场景下频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) - - 修复 PD 节点 crash 时导致 CDC节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) - - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) + - 修复在某些特殊情况下 Resolved TS 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) @[CharlesCheung96](https://github.com/CharlesCheung96) + - 修复使用 Avro 或 CSV 协议场景下 `UPDATE` 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) @[3AceShowHand](https://github.com/3AceShowHand) + - 修复同步到 Kafka 场景下,读取下游 Metadata 太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) @[hi-rustin](https://github.com/hi-rustin) + - 修复同步到 TiDB 或 MySQL 场景下,频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) @[asddongmen](https://github.com/asddongmen) + - 修复 PD 节点宕机导致 TiCDC 节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) @[asddongmen](https://github.com/asddongmen) + - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) @[hi-rustin](https://github.com/hi-rustin) + TiDB Data Migration (DM) @@ -288,8 +288,8 @@ TiDB 版本:7.2.0 + TiDB Lightning - - 修复开启 expression index 且默认值是 uuid 导致 lightning panic 的问题 [#44516](https://github.com/pingcap/tidb/pull/44516) - - 修复划分数据文件时任务退出导致 lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) + - 修复开启 `experimental.allow-expression-index` 且默认值是 UUID 时导致 TiDB Lightning panic 的问题 [#44497](https://github.com/pingcap/tidb/issues/44497) @[lichunzhu](https://github.com/lichunzhu) + - 修复划分数据文件时任务退出导致 TiDB Lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) @[lance6716](https://github.com/lance6716) ## 贡献者 From 8b9e5f75cda663e81050e285a6acc2dd032658d3 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Sun, 25 Jun 2023 20:18:37 +0800 Subject: [PATCH 081/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index c0c5d461bf9e..0057e2494d59 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -203,7 +203,7 @@ TiDB 版本:7.2.0 + Backup & Restore (BR) - - 为外部存储 Azure Blob Storage 提供 SAS (shared access signature) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) + - 为外部存储 Azure Blob Storage 提供 shared access signature (SAS) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) + TiCDC From 56c4802a3e621f328155540bfcb9feae432d7017 Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 26 Jun 2023 11:54:18 +0800 Subject: [PATCH 082/121] Apply suggestions from code review --- releases/release-7.2.0.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 0057e2494d59..0631a665cd55 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -155,6 +155,7 @@ TiDB 版本:7.2.0 | -------- | -------- | -------- | -------- | | TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | | TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为减小 RocksDB 中 compaction 任务的数据量,该变量默认值从 `"8MB"` 修改为 `"1MB"`。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | @@ -183,17 +184,16 @@ TiDB 版本:7.2.0 + TiKV - - 支持配置PDclient的重连间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) - - resource control提高调度算法将全局的资源使用作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) - - compaction-guard-min-output-file-size默认值从8MB改为1MB [#14888](https://github.com/tikv/tikv/issues/14888) @[tonyxuqqi](https://github.com/tonyxuqqi) - - 使用 gzip 压缩 check leader 请求减少流量消耗 [#14553](https://github.com/tikv/tikv/issues/14553) @[you06](https://github.com/you06) - - 添加 check leader 相关 metric [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - - 详细记录 write command 处理时间细节 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) + - 支持通过 `pd.retry-interval` 配置请求失败等场景下 PD 连接的重试间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) + - 优化资源管控调度算法,将全局的资源使用量作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) + - 使用 gzip 压缩 `check_leader` 请求以减少流量 [#14553](https://github.com/tikv/tikv/issues/14553) @[you06](https://github.com/you06) + - 为 `check_leader` 请求增加相关监控项 [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) + - 详细记录 TiKV 处理写入命令过程中的时间信息 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) + PD - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) - - 默认打开 bucket split,改善 Multi-Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) + - 默认开启 bucket split 以改善多 Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) + TiFlash @@ -251,10 +251,10 @@ TiDB 版本:7.2.0 + TiKV - - 修复处理stale悲观锁冲突时不正确的事务返回值 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - - 修复in-memory pessimistic locks可能导致flashback失败和数据不一致 [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) - - 修复 fair lock 在出现 stale req 情况下的正确性问题 #[13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - - 修复 autocommit point get 在 follower read 情况下线性一致性可能被破坏的问题 #[14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxkj](https://github.com/cfzjywxk) + - 修复处理 stale 悲观锁冲突时事务返回值不正确的问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) + - 修复内存悲观锁可能导致 Flashback 失败和数据不一致的问题 [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) + - 修复处理过期请求时 fair lock 的正确性问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) + - 修复 autocommit 和 point get replica read 可能破坏线性一致性的问题 [#14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxk](https://github.com/cfzjywxk) + PD From 1b85978b7fbb8473531faf67ff9a4b7914a3a84c Mon Sep 17 00:00:00 2001 From: Hangjie Mo Date: Mon, 26 Jun 2023 16:20:54 +0800 Subject: [PATCH 083/121] Update releases/release-7.2.0.md Co-authored-by: Grace Cai --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 0631a665cd55..5ff7dda773be 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -244,7 +244,7 @@ TiDB 版本:7.2.0 - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) - - last_insert_id函数的返回类型从varchar变更为longlong,与MySQL相同,同时last_insert_id的最大上限也变更为MaxUint64。[#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) + - 修复 `LAST_INSERT_ID()` 函数的返回类型,从 VARCHAR 变更为 LONGLONG,与 MySQL 一致 [#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) - 修复了 CTE 多次被非关联子查询引用的情况下,因过滤条件下推导致的结果错误 [#44051] (https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) - 修复了 outer join reorder 对 condition 的错误处理导致的结果正确性问题 [#44314] (https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) - 修复了 `prepare stmt from "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320] (https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) From ef1384584f54ad9ee57b5f7b31126b6c794bb367 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 26 Jun 2023 16:35:35 +0800 Subject: [PATCH 084/121] Apply suggestions from code review --- releases/release-7.2.0.md | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 5ff7dda773be..82b100692d0c 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -233,21 +233,20 @@ TiDB 版本:7.2.0 - 修复 cop task 中 txn scope 缺失导致 stale read global optimization 不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) - 修复 follower read 未处理 flashback 错误进行重试导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) - - 修复 prepared stale read 语句无法读到预期结果机会的问题 [#43044](https://github.com/pingcap/tidb/issues/43044) @[you06](https://github.com/you06) - - 修复 on update 语句没有正确更新 primary key 导致数据索引不一致问题 @[zyguan](https://github.com/zyguan) - - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC` 和 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) - - 修复了 add Index 在 ingest 模式下失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) - - 修复了 cancel 处于在 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) - - 修复了 memtracker 配合 cursor 使用导致内存泄漏的问题 [#44254](https://github.com/pingcap/tidb/issues/44254) @[YangKeao](https://github.com/YangKeao) - - 修复了删除 database 导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) - - 修复了分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) - - 修复了创建 subpartition 的报错信息 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - - 修复了执行时间超过 `MAX_EXECUTION_TIME` 被 kill 的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - - 修复了 Leading Hint 无法支持 query block alias 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + - 修复 `ON UPDATE` 语句没有正确更新 primary key 导致数据索引不一致问题 [#44565](https://github.com/pingcap/tidb/issues/44565) @[zyguan](https://github.com/zyguan) + - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC`,与 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) + - 修复在 ingest 模式下创建索引失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) + - 修复取消处于 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) + - 修复 `memTracker` 配合 cursor fetch 使用导致内存泄漏的问题 [#44254](https://github.com/pingcap/tidb/issues/44254) @[YangKeao](https://github.com/YangKeao) + - 修复删除 database 导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) + - 修复在创建分区表时使用 `SUBPARTITION` 没有警告提醒的问题 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) + - 修复了执行时间超过 `MAX_EXECUTION_TIME` 的 query 被 kill 时的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) + - 修复了 `LEADING` hint 不支持查询块别名 (query block alias) 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) - 修复 `LAST_INSERT_ID()` 函数的返回类型,从 VARCHAR 变更为 LONGLONG,与 MySQL 一致 [#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) -- 修复了 CTE 多次被非关联子查询引用的情况下,因过滤条件下推导致的结果错误 [#44051] (https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) -- 修复了 outer join reorder 对 condition 的错误处理导致的结果正确性问题 [#44314] (https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) -- 修复了 `prepare stmt from "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320] (https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + - 修复当公共表表达式 (CTE) 多次被非关联子查询引用时,因过滤条件下推导致结果有误的问题 [#44051] (https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) + - 修复了 outer join reorder 对 condition 的错误处理导致结果有误的问题 [#44314] (https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) + - 修复了 `PREPARE stmt FROM "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320] (https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + TiKV @@ -262,7 +261,7 @@ TiDB 版本:7.2.0 + TiFlash - - 修复在 join 的 build 端数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + - 修复在 join 操作的 build 侧数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + Tools From ca80de90a98231e7c48f0de9217d42a888e381a2 Mon Sep 17 00:00:00 2001 From: qiancai Date: Mon, 26 Jun 2023 16:42:30 +0800 Subject: [PATCH 085/121] fix comment format issue that causes build failures --- releases/release-7.2.0.md | 69 ++++++++++++++++++++++++--------------- 1 file changed, 43 insertions(+), 26 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 82b100692d0c..8f8aa988a291 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -171,7 +171,9 @@ TiDB 版本:7.2.0 ## 改进提升 -+ TiDB ++ TiDB + + - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) @@ -182,7 +184,9 @@ TiDB 版本:7.2.0 - 支持将utf8和utf8mb3都识别为旧的三字节字符集编码。[#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - 支持将 := 用于 update 语句中赋值。[#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) -+ TiKV ++ TiKV + + - 支持通过 `pd.retry-interval` 配置请求失败等场景下 PD 连接的重试间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) - 优化资源管控调度算法,将全局的资源使用量作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) @@ -190,36 +194,42 @@ TiDB 版本:7.2.0 - 为 `check_leader` 请求增加相关监控项 [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 TiKV 处理写入命令过程中的时间信息 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) -+ PD ++ PD + + - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) - 默认开启 bucket split 以改善多 Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) -+ TiFlash - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) + + - 为外部存储 Azure Blob Storage 提供 shared access signature (SAS) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) - + TiCDC + + TiCDC + + - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) @[CharlesCheung96](https://github.com/CharlesCheung96) - 增加在 Kafka 场景下支持 OAUTHBEARER 认证方式 [#8865](https://github.com/pingcap/tiflow/issues/8865) @[hi-rustin](https://github.com/hi-rustin) - 增加同步到 Kafka 场景下,对于 `DELETE` 操作,支持选择只输出 Handle Key [#9143](https://github.com/pingcap/tiflow/issues/9143) @[3AceShowHand](https://github.com/3AceShowHand) - + TiDB Data Migration (DM) + + TiDB Data Migration (DM) + + - 支持 MySQL 8.0 压缩 binlog 的增量同步 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) - + TiDB Lightning + + TiDB Lightning + + - - 优化导入时遇到 leader 切换导致的错误的重试机制 [#44478](https://github.com/pingcap/tidb/pull/44478) - - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) - - 优化宽表导入下 lightning OOM 的问题 [43853](https://github.com/pingcap/tidb/issues/43853) + - 优化导入时遇到 leader 切换导致的错误的重试机制 [#44478](https://github.com/pingcap/tidb/pull/44478) + - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) + - 优化宽表导入下 lightning OOM 的问题 [43853](https://github.com/pingcap/tidb/issues/43853) ## 错误修复 @@ -244,34 +254,44 @@ TiDB 版本:7.2.0 - 修复了执行时间超过 `MAX_EXECUTION_TIME` 的 query 被 kill 时的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - 修复了 `LEADING` hint 不支持查询块别名 (query block alias) 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) - 修复 `LAST_INSERT_ID()` 函数的返回类型,从 VARCHAR 变更为 LONGLONG,与 MySQL 一致 [#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) - - 修复当公共表表达式 (CTE) 多次被非关联子查询引用时,因过滤条件下推导致结果有误的问题 [#44051] (https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) + - 修复当公共表表达式 (CTE) 多次被非关联子查询引用时,因过滤条件下推导致结果有误的问题 [#44051](https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) - 修复了 outer join reorder 对 condition 的错误处理导致结果有误的问题 [#44314] (https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) - - 修复了 `PREPARE stmt FROM "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320] (https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + - 修复了 `PREPARE stmt FROM "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320](https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + ++ TiKV -+ TiKV + - 修复处理 stale 悲观锁冲突时事务返回值不正确的问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复内存悲观锁可能导致 Flashback 失败和数据不一致的问题 [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) - 修复处理过期请求时 fair lock 的正确性问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 autocommit 和 point get replica read 可能破坏线性一致性的问题 [#14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxk](https://github.com/cfzjywxk) -+ PD ++ PD + + - 修复在特殊情况下冗余副本无法自动修复的问题 [#6573](https://github.com/tikv/pd/issues/6573) @[nolouch](https://github.com/nolouch) -+ TiFlash ++ TiFlash + + - 修复在 join 操作的 build 侧数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) + + - 修复某些情况下误报 `checksum mismatch` 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - 修复某些情况下误报 `resolved lock timeout` 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) - 修复在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) - + TiCDC + + TiCDC + + - 修复在某些特殊情况下 Resolved TS 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复使用 Avro 或 CSV 协议场景下 `UPDATE` 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) @[3AceShowHand](https://github.com/3AceShowHand) @@ -280,12 +300,9 @@ TiDB 版本:7.2.0 - 修复 PD 节点宕机导致 TiCDC 节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) @[asddongmen](https://github.com/asddongmen) - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) @[hi-rustin](https://github.com/hi-rustin) - + TiDB Data Migration (DM) - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + + TiDB Lightning - + TiDB Lightning + - 修复开启 `experimental.allow-expression-index` 且默认值是 UUID 时导致 TiDB Lightning panic 的问题 [#44497](https://github.com/pingcap/tidb/issues/44497) @[lichunzhu](https://github.com/lichunzhu) - 修复划分数据文件时任务退出导致 TiDB Lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) @[lance6716](https://github.com/lance6716) From 3ec4365eeccb267c83395ad5a1568ac1690e657a Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 26 Jun 2023 17:05:02 +0800 Subject: [PATCH 086/121] Apply suggestions from code review --- releases/release-7.2.0.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 8f8aa988a291..c5d23811640d 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -175,14 +175,14 @@ TiDB 版本:7.2.0 - - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @xuyifangreeneyes - - 为 stale read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) - - 当 stale read retry leader 遇到 lock,resolve lock 之后强制走 leader 避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) - - 使用估计时间计算 stale read ts,减少 stale read 开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) + - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) + - 为 Stale Read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) + - 当 Stale Read 的 retry leader 遇到 lock 时,resolve lock 之后强制重试 leader,避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) + - 使用估计时间计算 Stale Read ts,减少 Stale Read 的开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - - 支持通过 MySQL 压缩协议连接 TiDB (在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) - - 支持将utf8和utf8mb3都识别为旧的三字节字符集编码。[#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - - 支持将 := 用于 update 语句中赋值。[#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) + - 支持通过 MySQL 压缩协议连接 TiDB(在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) + - 支持将 utf8 和 utf8mb3 识别为旧的三字节字符集编码 [#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) + - 支持在 UPDATE 语句中使用 `:=` 进行赋值操作 [#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) + TiKV @@ -237,11 +237,11 @@ TiDB 版本:7.2.0 - - 修复关联子查询中含有 CTE 时可能出现的查询 hang 住的问题 [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) - - 修复某些情况下 max/min 结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43508)@[wshwsh12](https://github.com/wshwsh12) - - 修复当 query 包含子查询时,information schema 显示中 `TxnStart` 字段为空的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) - - 修复 cop task 中 txn scope 缺失导致 stale read global optimization 不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) - - 修复 follower read 未处理 flashback 错误进行重试导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) + (dup)- 修复使用 CTE 的查询导致 TiDB 卡住的问题 [#43749](https://github.com/pingcap/tidb/issues/43749) [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) + (dup)- 修复 `min, max` 查询结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43805) @[wshwsh12](https://github.com/wshwsh12) + (dup)- 修复 `SHOW PROCESSLIST` 语句无法显示子查询时间较长语句的事务的 TxnStart 的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) + - 修复由于 Coprocessor task 中 `TxnScope` 缺失导致 Stale Read 全局优化不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) + - 修复 follower read 未处理 flashback 错误而进行重试,导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) - 修复 `ON UPDATE` 语句没有正确更新 primary key 导致数据索引不一致问题 [#44565](https://github.com/pingcap/tidb/issues/44565) @[zyguan](https://github.com/zyguan) - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC`,与 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) From 3d5242c579d16b919d613a012abc7c831e30d4e8 Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 26 Jun 2023 17:07:08 +0800 Subject: [PATCH 087/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index c5d23811640d..1513100fbdb1 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -227,9 +227,9 @@ TiDB 版本:7.2.0 - - 优化导入时遇到 leader 切换导致的错误的重试机制 [#44478](https://github.com/pingcap/tidb/pull/44478) - - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) - - 优化宽表导入下 lightning OOM 的问题 [43853](https://github.com/pingcap/tidb/issues/43853) + - 优化导入过程中的重试机制,避免因 leader 切换而导致的错误 [#44478](https://github.com/pingcap/tidb/issues/44263) @[lance6716](https://github.com/lance6716) + - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) + - 优化导入宽表时 TiDB Lightning 发生 OOM 的问题 [#43853](https://github.com/pingcap/tidb/issues/43853) @[D3Hunter](https://github.com/D3Hunter) ## 错误修复 From 61b852857c7082104fc6dc234f226e9921fa544b Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 26 Jun 2023 18:56:12 +0800 Subject: [PATCH 088/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 1513100fbdb1..88c7cbea213e 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -173,7 +173,7 @@ TiDB 版本:7.2.0 + TiDB - + - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) - 为 Stale Read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) From ea5ec8a523c0578e3951e7dab208ee46c1550c65 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 26 Jun 2023 20:35:58 +0800 Subject: [PATCH 089/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 1 - 1 file changed, 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 88c7cbea213e..2a774c9bca3a 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -174,7 +174,6 @@ TiDB 版本:7.2.0 + TiDB - - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) - 为 Stale Read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) - 当 Stale Read 的 retry leader 遇到 lock 时,resolve lock 之后强制重试 leader,避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) From 3c56033828fdd56d7cf0ba663383be494a80259e Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 26 Jun 2023 22:04:58 +0800 Subject: [PATCH 090/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 2a774c9bca3a..40ee59d5f11e 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -173,7 +173,7 @@ TiDB 版本:7.2.0 + TiDB - + - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) - 为 Stale Read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) - 当 Stale Read 的 retry leader 遇到 lock 时,resolve lock 之后强制重试 leader,避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) From 1294326d09b8d383b715076635ac0e7c7093ae70 Mon Sep 17 00:00:00 2001 From: qiancai Date: Tue, 27 Jun 2023 00:08:08 +0800 Subject: [PATCH 091/121] add key features --- releases/release-7.2.0.md | 88 ++++++++++++++++++++++++++------------- 1 file changed, 60 insertions(+), 28 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 40ee59d5f11e..bf4160e2f929 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -13,7 +13,38 @@ TiDB 版本:7.2.0 在 7.2.0 版本中,你可以获得以下关键特性: - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CategoryFeatureDescription
可扩展性与性能资源组支持管理资源消耗超出预期的查询(实验特性)资源组可以通过降低优先级或终止查询来管理超出预期执行时间的查询。通过该功能,你可以在资源组级别设置查询的最长执行时间,并指定当查询超出此设置值时需要 TiDB 采取的操作,从而更好地控制超出预期长时间运行的查询对集群的影响。 +
TiFlash 支持 Pipeline 执行模型(实验特性)TiFlash 支持 Pipeline 执行模型,优化对线程资源的控制。 +当前,TiDB Serverless 的分析能力依赖于此功能。
SQL支持新的 SQL 语句 `IMPORT INTO`, 可以通过 TiDB 进行数据导入 (实验特性)TiDB 引入了一个新的 SQL 语句 `IMPORT INTO`。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 远程导入数据到 TiDB 中。
数据库管理与可观测性DDL 任务支持暂停和恢复操作(实验特性)DDL 操作(如添加索引)可能消耗大量资源并影响业务负载。与传统的 schema 更改工具(如 pt-osc 和 gh-ost)类似,TiDB 现在原生支持同时暂停多个后台 DDL 任务。该功能可以帮助你节省资源并最小化 DDL 操作对业务负载的影响,而无需取消和重新启动 DDL 任务。
## 功能详情 @@ -171,9 +202,10 @@ TiDB 版本:7.2.0 ## 改进提升 + + + TiDB - - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) - 为 Stale Read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) - 当 Stale Read 的 retry leader 遇到 lock 时,resolve lock 之后强制重试 leader,避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) @@ -183,9 +215,9 @@ TiDB 版本:7.2.0 - 支持将 utf8 和 utf8mb3 识别为旧的三字节字符集编码 [#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - 支持在 UPDATE 语句中使用 `:=` 进行赋值操作 [#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) -+ TiKV + - ++ TiKV - 支持通过 `pd.retry-interval` 配置请求失败等场景下 PD 连接的重试间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) - 优化资源管控调度算法,将全局的资源使用量作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) @@ -193,38 +225,38 @@ TiDB 版本:7.2.0 - 为 `check_leader` 请求增加相关监控项 [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 TiKV 处理写入命令过程中的时间信息 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) -+ PD + - ++ PD - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) - 默认开启 bucket split 以改善多 Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) + Tools - + Backup & Restore (BR) + - + + Backup & Restore (BR) - 为外部存储 Azure Blob Storage 提供 shared access signature (SAS) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) - + TiCDC + - + + TiCDC - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) @[CharlesCheung96](https://github.com/CharlesCheung96) - 增加在 Kafka 场景下支持 OAUTHBEARER 认证方式 [#8865](https://github.com/pingcap/tiflow/issues/8865) @[hi-rustin](https://github.com/hi-rustin) - 增加同步到 Kafka 场景下,对于 `DELETE` 操作,支持选择只输出 Handle Key [#9143](https://github.com/pingcap/tiflow/issues/9143) @[3AceShowHand](https://github.com/3AceShowHand) - + TiDB Data Migration (DM) + - + + TiDB Data Migration (DM) - 支持 MySQL 8.0 压缩 binlog 的增量同步 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) - + TiDB Lightning + - + + TiDB Lightning - 优化导入过程中的重试机制,避免因 leader 切换而导致的错误 [#44478](https://github.com/pingcap/tidb/issues/44263) @[lance6716](https://github.com/lance6716) - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) @@ -232,9 +264,9 @@ TiDB 版本:7.2.0 ## 错误修复 -+ TiDB + - ++ TiDB (dup)- 修复使用 CTE 的查询导致 TiDB 卡住的问题 [#43749](https://github.com/pingcap/tidb/issues/43749) [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) (dup)- 修复 `min, max` 查询结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43805) @[wshwsh12](https://github.com/wshwsh12) @@ -257,40 +289,40 @@ TiDB 版本:7.2.0 - 修复了 outer join reorder 对 condition 的错误处理导致结果有误的问题 [#44314] (https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) - 修复了 `PREPARE stmt FROM "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320](https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) -+ TiKV + - ++ TiKV - 修复处理 stale 悲观锁冲突时事务返回值不正确的问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复内存悲观锁可能导致 Flashback 失败和数据不一致的问题 [#13303](https://github.com/tikv/tikv/issues/13303) @[JmPotato](https://github.com/JmPotato) - 修复处理过期请求时 fair lock 的正确性问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 autocommit 和 point get replica read 可能破坏线性一致性的问题 [#14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxk](https://github.com/cfzjywxk) -+ PD + - ++ PD - 修复在特殊情况下冗余副本无法自动修复的问题 [#6573](https://github.com/tikv/pd/issues/6573) @[nolouch](https://github.com/nolouch) -+ TiFlash + - ++ TiFlash - 修复在 join 操作的 build 侧数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + Tools - + Backup & Restore (BR) + - + + Backup & Restore (BR) - 修复某些情况下误报 `checksum mismatch` 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - 修复某些情况下误报 `resolved lock timeout` 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) - 修复在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) - + TiCDC + - + + TiCDC - 修复在某些特殊情况下 Resolved TS 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复使用 Avro 或 CSV 协议场景下 `UPDATE` 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) @[3AceShowHand](https://github.com/3AceShowHand) @@ -299,9 +331,9 @@ TiDB 版本:7.2.0 - 修复 PD 节点宕机导致 TiCDC 节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) @[asddongmen](https://github.com/asddongmen) - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) @[hi-rustin](https://github.com/hi-rustin) - + TiDB Lightning + - + + TiDB Lightning - 修复开启 `experimental.allow-expression-index` 且默认值是 UUID 时导致 TiDB Lightning panic 的问题 [#44497](https://github.com/pingcap/tidb/issues/44497) @[lichunzhu](https://github.com/lichunzhu) - 修复划分数据文件时任务退出导致 TiDB Lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) @[lance6716](https://github.com/lance6716) From 4a3cb1072d521d6da2e35421fd213d8e3772a32b Mon Sep 17 00:00:00 2001 From: qiancai Date: Tue, 27 Jun 2023 00:28:02 +0800 Subject: [PATCH 092/121] Update release-7.2.0.md --- releases/release-7.2.0.md | 28 +++++++--------------------- 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index bf4160e2f929..a818695d9092 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -234,29 +234,21 @@ TiDB 版本:7.2.0 + Tools - - - + Backup & Restore (BR) + + Backup & Restore (BR) - 为外部存储 Azure Blob Storage 提供 shared access signature (SAS) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) - - - + TiCDC + + TiCDC - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) @[CharlesCheung96](https://github.com/CharlesCheung96) - 增加在 Kafka 场景下支持 OAUTHBEARER 认证方式 [#8865](https://github.com/pingcap/tiflow/issues/8865) @[hi-rustin](https://github.com/hi-rustin) - 增加同步到 Kafka 场景下,对于 `DELETE` 操作,支持选择只输出 Handle Key [#9143](https://github.com/pingcap/tiflow/issues/9143) @[3AceShowHand](https://github.com/3AceShowHand) - - - + TiDB Data Migration (DM) + + TiDB Data Migration (DM) - 支持 MySQL 8.0 压缩 binlog 的增量同步 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) - - - + TiDB Lightning + + TiDB Lightning - 优化导入过程中的重试机制,避免因 leader 切换而导致的错误 [#44478](https://github.com/pingcap/tidb/issues/44263) @[lance6716](https://github.com/lance6716) - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) @@ -312,17 +304,13 @@ TiDB 版本:7.2.0 + Tools - - - + Backup & Restore (BR) + + Backup & Restore (BR) - 修复某些情况下误报 `checksum mismatch` 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - 修复某些情况下误报 `resolved lock timeout` 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) - 修复在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) - - - + TiCDC + + TiCDC - 修复在某些特殊情况下 Resolved TS 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复使用 Avro 或 CSV 协议场景下 `UPDATE` 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) @[3AceShowHand](https://github.com/3AceShowHand) @@ -331,9 +319,7 @@ TiDB 版本:7.2.0 - 修复 PD 节点宕机导致 TiCDC 节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) @[asddongmen](https://github.com/asddongmen) - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) @[hi-rustin](https://github.com/hi-rustin) - - - + TiDB Lightning + + TiDB Lightning - 修复开启 `experimental.allow-expression-index` 且默认值是 UUID 时导致 TiDB Lightning panic 的问题 [#44497](https://github.com/pingcap/tidb/issues/44497) @[lichunzhu](https://github.com/lichunzhu) - 修复划分数据文件时任务退出导致 TiDB Lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) @[lance6716](https://github.com/lance6716) From 24581bc7ed1c047b8c0ec733d8596fab566a2a67 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 27 Jun 2023 10:22:01 +0800 Subject: [PATCH 093/121] Apply suggestions from code review Co-authored-by: xixirangrang --- releases/release-7.2.0.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a818695d9092..beb5b6420aa6 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -207,13 +207,13 @@ TiDB 版本:7.2.0 + TiDB - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) - - 为 Stale Read 新增相关监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) + - 新增 `Stale Read OPS`、`Stale Read Traffic` 监控指标 [#43325](https://github.com/pingcap/tidb/issues/43325) @[you06](https://github.com/you06) - 当 Stale Read 的 retry leader 遇到 lock 时,resolve lock 之后强制重试 leader,避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) - 使用估计时间计算 Stale Read ts,减少 Stale Read 的开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - - 添加 long running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) + - 添加 long-running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - 支持通过 MySQL 压缩协议连接 TiDB(在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) - - 支持将 utf8 和 utf8mb3 识别为旧的三字节字符集编码 [#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - - 支持在 UPDATE 语句中使用 `:=` 进行赋值操作 [#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) + - 支持将 `utf8` 和 `utf8mb3` 识别为旧的三字节字符集编码 [#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) + - 支持在 `UPDATE` 语句中使用 `:=` 进行赋值操作 [#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) @@ -250,8 +250,8 @@ TiDB 版本:7.2.0 + TiDB Lightning - - 优化导入过程中的重试机制,避免因 leader 切换而导致的错误 [#44478](https://github.com/pingcap/tidb/issues/44263) @[lance6716](https://github.com/lance6716) - - 导入完成后通过 SQL 的方式校验 checksum,提升检验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) + - 优化导入数据过程中的重试机制,避免因 leader 切换而导致的错误 [#44478](https://github.com/pingcap/tidb/issues/44263) @[lance6716](https://github.com/lance6716) + - 数据导入完成后使用 SQL 方式校验 checksum,提升数据校验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) - 优化导入宽表时 TiDB Lightning 发生 OOM 的问题 [#43853](https://github.com/pingcap/tidb/issues/43853) @[D3Hunter](https://github.com/D3Hunter) ## 错误修复 From 0599dfc7a3d3eec78132e620c742042a93e58d7b Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 27 Jun 2023 11:50:59 +0800 Subject: [PATCH 094/121] Apply suggestions from code review Co-authored-by: Ran --- releases/release-7.2.0.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index beb5b6420aa6..7674f3317add 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -241,12 +241,12 @@ TiDB 版本:7.2.0 + TiCDC - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) @[CharlesCheung96](https://github.com/CharlesCheung96) - - 增加在 Kafka 场景下支持 OAUTHBEARER 认证方式 [#8865](https://github.com/pingcap/tiflow/issues/8865) @[hi-rustin](https://github.com/hi-rustin) - - 增加同步到 Kafka 场景下,对于 `DELETE` 操作,支持选择只输出 Handle Key [#9143](https://github.com/pingcap/tiflow/issues/9143) @[3AceShowHand](https://github.com/3AceShowHand) + - 在同步到 Kafka 场景下,支持 OAUTHBEARER 认证方式 [#8865](https://github.com/pingcap/tiflow/issues/8865) @[hi-rustin](https://github.com/hi-rustin) + - 在同步到 Kafka 场景下,对于 `DELETE` 操作,支持选择只输出 Handle Key [#9143](https://github.com/pingcap/tiflow/issues/9143) @[3AceShowHand](https://github.com/3AceShowHand) + TiDB Data Migration (DM) - - 支持 MySQL 8.0 压缩 binlog 的增量同步 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) + - 支持读取 MySQL 8.0 中的压缩 binlog 作为增量同步的数据源 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) + TiDB Lightning @@ -315,9 +315,9 @@ TiDB 版本:7.2.0 - 修复在某些特殊情况下 Resolved TS 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复使用 Avro 或 CSV 协议场景下 `UPDATE` 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) @[3AceShowHand](https://github.com/3AceShowHand) - 修复同步到 Kafka 场景下,读取下游 Metadata 太频繁导致下游压力过大的问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) @[hi-rustin](https://github.com/hi-rustin) - - 修复同步到 TiDB 或 MySQL 场景下,频繁设置下游 BDR 相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) @[asddongmen](https://github.com/asddongmen) + - 修复同步到 TiDB 或 MySQL 场景下,频繁设置下游双向复制相关变量导致下游日志过多的问题 [#9180](https://github.com/pingcap/tiflow/issues/9180) @[asddongmen](https://github.com/asddongmen) - 修复 PD 节点宕机导致 TiCDC 节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) @[asddongmen](https://github.com/asddongmen) - - 修复 TiCDC 同步到 KOP 时不能正确建立链接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) @[hi-rustin](https://github.com/hi-rustin) + - 修复 TiCDC 同步到 Kafka-on-Pulsar 时不能正确建立连接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) @[hi-rustin](https://github.com/hi-rustin) + TiDB Lightning From 38af09aa60088e66e6868d6ddb3b8a4d735d89a9 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Tue, 27 Jun 2023 12:04:24 +0800 Subject: [PATCH 095/121] lightweight initial stats GA --- releases/release-7.2.0.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index beb5b6420aa6..83a852a73e09 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -116,6 +116,14 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/optimizer-fix-controls.md)。 +* 轻量统计信息初始化 GA [#42160](https://github.com/pingcap/tidb/issues/42160) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) + + 轻量统计信息初始化自 v7.2.0 成为正式功能。轻量级的统计信息初始化可以大幅减少启动时必须加载的统计信息的数量,从而提升启动过程中统计信息的加载速度。该功能提升了 TiDB 在复杂运行环境下的稳定性,并降低了部分 TiDB 节点重启对整体服务的影响。 + + 从 v7.2.0 开始,新建集群默认加载轻量统计信息,TiDB 在初始统计信息加载完成前不对外提供服务。从旧版本升级的集群,可通过修改 TiDB 配置参数 [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) 和 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) 手工开启。 + + 更多信息,请参考[用户文档](/statistics.md#统计信息的加载)。 + ### SQL 功能 * 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678](https://github.com/fzzf678) **tw@qiancai** From a265a97aba7c053cd029b03820ed0470c29475f1 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 27 Jun 2023 13:56:47 +0800 Subject: [PATCH 096/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 6242fa594fae..0853941a4e8d 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -204,10 +204,6 @@ TiDB 版本:7.2.0 | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | -## 废弃功能 - -- note [#issue](链接) @[贡献者 GitHub ID](链接) - ## 改进提升 From 9e6d66566e33bcd7514ba64c5f189540837b7603 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 27 Jun 2023 14:52:56 +0800 Subject: [PATCH 097/121] Apply suggestions from code review Co-authored-by: Aolin --- releases/release-7.2.0.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 0853941a4e8d..20a5438a0632 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -55,7 +55,7 @@ TiDB 版本:7.2.0 * `FIRST_VALUE` * `LAST_VALUE` -* TiFlash 支持 Pipeline 执行模型(实验特性) [#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** +* TiFlash 支持 Pipeline 执行模型(实验特性)[#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但并不能完全避免此问题。因此,在 v7.2.0 中,TiFlash 引入 Pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设置是否启用 Pipeline 执行模型。 @@ -270,20 +270,20 @@ TiDB 版本:7.2.0 - 修复由于 Coprocessor task 中 `TxnScope` 缺失导致 Stale Read 全局优化不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) - 修复 follower read 未处理 flashback 错误而进行重试,导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) - - 修复 `ON UPDATE` 语句没有正确更新 primary key 导致数据索引不一致问题 [#44565](https://github.com/pingcap/tidb/issues/44565) @[zyguan](https://github.com/zyguan) - - 修改 UNIX_TIMESTAMP 函数的上限为 `3001-01-19 03:14:07.999999 UTC`,与 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) + - 修复 `ON UPDATE` 语句没有正确更新主键导致数据索引不一致的问题 [#44565](https://github.com/pingcap/tidb/issues/44565) @[zyguan](https://github.com/zyguan) + - 修改 `UNIX_TIMESTAMP()` 函数的上限为 `3001-01-19 03:14:07.999999 UTC`,与 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) - 修复在 ingest 模式下创建索引失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) - 修复取消处于 rollback 状态的 DDL 任务导致相关元数据出错的问题 [#44143](https://github.com/pingcap/tidb/issues/44143) @[wjhuang2016](https://github.com/wjhuang2016) - 修复 `memTracker` 配合 cursor fetch 使用导致内存泄漏的问题 [#44254](https://github.com/pingcap/tidb/issues/44254) @[YangKeao](https://github.com/YangKeao) - - 修复删除 database 导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) - - 修复分区表在 Index join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) + - 修复删除数据库导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复分区表在 Index Join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) - 修复在创建分区表时使用 `SUBPARTITION` 没有警告提醒的问题 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - - 修复了执行时间超过 `MAX_EXECUTION_TIME` 的 query 被 kill 时的返回值和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - - 修复了 `LEADING` hint 不支持查询块别名 (query block alias) 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) - - 修复 `LAST_INSERT_ID()` 函数的返回类型,从 VARCHAR 变更为 LONGLONG,与 MySQL 一致 [#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) - - 修复当公共表表达式 (CTE) 多次被非关联子查询引用时,因过滤条件下推导致结果有误的问题 [#44051](https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) - - 修复了 outer join reorder 对 condition 的错误处理导致结果有误的问题 [#44314] (https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) - - 修复了 `PREPARE stmt FROM "analyze table xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320](https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + - 修复了执行时间超过 `MAX_EXECUTION_TIME` 的 query 被 kill 时的报错信息和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) + - 修复了 `LEADING` hint 不支持查询块别名 (query block alias) 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + - 修复 `LAST_INSERT_ID()` 函数的返回类型,从 VARCHAR 变更为 LONGLONG,与 MySQL 一致 [#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) + - 修复在带有非关联子查询的语句中使用公共表表达式 (CTE) 可能导致结果错误的问题 [#44051](https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) + - 修复 Join Reorder 可能会造成 Outer Join 结果错误的问题 [#44314](https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) + - 修复了 `PREPARE stmt FROM "ANALYZE TABLE xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320](https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) From c8674dc6d99895f0c836187aff913cbf629f86bf Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 27 Jun 2023 15:46:47 +0800 Subject: [PATCH 098/121] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 20a5438a0632..646c82aa2df1 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -223,7 +223,7 @@ TiDB 版本:7.2.0 + TiKV - - 支持通过 `pd.retry-interval` 配置请求失败等场景下 PD 连接的重试间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) + - 支持通过 `pd.retry-interval` 配置在连接请求失败等场景下 PD 连接的重试间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) - 优化资源管控调度算法,将全局的资源使用量作为调度因素 [#14604](https://github.com/tikv/tikv/issues/14604) @[Connor1996](https://github.com/Connor1996) - 使用 gzip 压缩 `check_leader` 请求以减少流量 [#14553](https://github.com/tikv/tikv/issues/14553) @[you06](https://github.com/you06) - 为 `check_leader` 请求增加相关监控项 [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) @@ -233,7 +233,7 @@ TiDB 版本:7.2.0 + PD - - PD Leader 选举使用单独的 gRPC 链接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) + - PD Leader 选举使用单独的 gRPC 连接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) - 默认开启 bucket split 以改善多 Region 的热点问题 [#6433](https://github.com/tikv/pd/issues/6433) @[bufferflies](https://github.com/bufferflies) + Tools From eb9a251436c7170ed7d0f287391d60c81ce0158e Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 27 Jun 2023 16:29:54 +0800 Subject: [PATCH 099/121] Apply suggestions from code review --- releases/release-7.2.0.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 646c82aa2df1..ea006af29f66 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -24,24 +24,23 @@ TiDB 版本:7.2.0 可扩展性与性能 - 资源组支持管理资源消耗超出预期的查询(实验特性) + 资源组支持管理资源消耗超出预期的查询(实验特性) 资源组可以通过降低优先级或终止查询来管理超出预期执行时间的查询。通过该功能,你可以在资源组级别设置查询的最长执行时间,并指定当查询超出此设置值时需要 TiDB 采取的操作,从而更好地控制超出预期长时间运行的查询对集群的影响。 - TiFlash 支持 Pipeline 执行模型(实验特性) - TiFlash 支持 Pipeline 执行模型,优化对线程资源的控制。 -当前,TiDB Serverless 的分析能力依赖于此功能。 + TiFlash 支持 Pipeline 执行模型(实验特性) + TiFlash 支持 Pipeline 执行模型,优化对线程资源的控制。 SQL - 支持新的 SQL 语句 `IMPORT INTO`, 可以通过 TiDB 进行数据导入 (实验特性) + 支持新的 SQL 语句 `IMPORT INTO`, 可以通过 TiDB 进行数据导入 (实验特性) TiDB 引入了一个新的 SQL 语句 `IMPORT INTO`。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 远程导入数据到 TiDB 中。 数据库管理与可观测性 - DDL 任务支持暂停和恢复操作(实验特性) - DDL 操作(如添加索引)可能消耗大量资源并影响业务负载。与传统的 schema 更改工具(如 pt-osc 和 gh-ost)类似,TiDB 现在原生支持同时暂停多个后台 DDL 任务。该功能可以帮助你节省资源并最小化 DDL 操作对业务负载的影响,而无需取消和重新启动 DDL 任务。 + DDL 任务支持暂停和恢复操作(实验特性) + DDL 操作(如添加索引)可能消耗大量资源并影响业务负载。受传统的 schema 更改工具(如 pt-osc 和 gh-ost)功能启发,TiDB 现在原生支持同时暂停多个后台 DDL 任务。该功能可以帮助你节省资源并最小化 DDL 操作对业务负载的影响,而无需取消和重新启动 DDL 任务。 From 00bc4e2e6c4db1ecd2c9f65229634e0041051aaf Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 27 Jun 2023 16:30:10 +0800 Subject: [PATCH 100/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index ea006af29f66..317387ab45d6 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -25,7 +25,7 @@ TiDB 版本:7.2.0 可扩展性与性能 资源组支持管理资源消耗超出预期的查询(实验特性) - 资源组可以通过降低优先级或终止查询来管理超出预期执行时间的查询。通过该功能,你可以在资源组级别设置查询的最长执行时间,并指定当查询超出此设置值时需要 TiDB 采取的操作,从而更好地控制超出预期长时间运行的查询对集群的影响。 + 通过此功能,你可以更细粒度地管理执行时间超时的查询,根据查询的不同类型实现不同的行为。符合指定阈值的查询将按照你的设置被降低优先级或者终止执行。 From 851a5fbefb040d35203cff741a945b28f2b8f1f4 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 27 Jun 2023 19:57:35 +0800 Subject: [PATCH 101/121] Apply suggestions from code review Co-authored-by: joey-yez <104608045+joey-yez@users.noreply.github.com> Co-authored-by: bob34007 <88366491+bob34007@users.noreply.github.com> Co-authored-by: Xiaoju Wu --- releases/release-7.2.0.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 317387ab45d6..3636bab7866c 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -64,7 +64,7 @@ TiDB 版本:7.2.0 当表的 schema 发生变化时,TiFlash 需要及时从 TiKV 同步新的表结构信息。在 v7.2.0 之前,当 TiFlash 访问表数据时,只要检测到数据库中某张表的 schema 发生了变化,TiFlash 就会重新同步该数据库中所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,通过 TiFlash 只读取一张表的数据也可能因为需要等待所有表的 schema 信息同步完成而造成较高的时延。 - 在 v7.2.0 中,TiFlash 优化了 schema 的同步机制,只同步拥有 TiFlash 副本的表的 schema 信息。当检测到某张有 TiFlash 副本的表的 schema 有变化时,TiFlash 只同步该表的 schema 信息,从而降低了 TiFlash 同步 schema 的时延。该优化自动生效,无须任何设置。 + 在 v7.2.0 中,TiFlash 优化了 schema 的同步机制,只同步拥有 TiFlash 副本的表的 schema 信息。当检测到某张有 TiFlash 副本的表的 schema 有变化时,TiFlash 只同步该表的 schema 信息,从而降低了 TiFlash 同步 schema 的时延,同时减少了 DDL 操作对于 TiFlash 同步数据的影响。该优化自动生效,无须任何设置。 * 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** @@ -129,6 +129,8 @@ TiDB 版本:7.2.0 从 v7.2.0 开始,你可以通过 `CHECK` 约束限制表中的一个或者多个字段值必须满足特定的条件。当为表添加 `CHECK` 约束后,在插入或者更新表的数据时,TiDB 会先检查约束条件是否满足,只允许满足约束的数据写入。 + 该功能默认关闭,你可以通过将变量 [`tidb_enable_check_constraint`](/system-variables.md#tidb_enable_check_constraint-从-v720-版本开始引入) 设置为 `ON` 开启该功能。 + 更多信息,请参考[用户文档](/constraints.md#check-约束)。 ### 数据库管理 @@ -186,13 +188,16 @@ TiDB 版本:7.2.0 | [`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) | 新增 | 这个变量用于控制是否使用基于校验和的方式来快速检查表中数据和索引的一致性。默认值 `ON` 表示该功能默认开启。 | | [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) | 新增 | 这个变量用来控制是否启用 TiFlash 新的执行模型 [Pipeline Model](/tiflash/tiflash-pipeline-model.md),默认值为 `OFF`,即关闭 Pipeline Model。 | | [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | +| [`tidb_enable_non_prepared_plan_cache`](/system-variables.md#tidb_enable_non_prepared_plan_cache) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即默认开启非 Prepare 语句执行计划缓存。 | +| [`tidb_enable_check_constraint`](/system-variables.md#tidb_enable_check_constraint-从-v720-版本开始引入) | 新增 | 这个变量用于控制`CHECK` 约束功能是否开启。默认值为 `OFF` 表示该功能默认关闭。 | ### 配置文件参数 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | -| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | -| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化。 | +| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 经进一步的测试后,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化,以提高启动时统计信息初始化的效率。 | +| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 配合 `lite-init-stats`,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | + | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为减小 RocksDB 中 compaction 任务的数据量,该变量默认值从 `"8MB"` 修改为 `"1MB"`。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | From 94da8d086592c27e07108b30a3ff44dd725da95c Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 27 Jun 2023 21:31:52 +0800 Subject: [PATCH 102/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 3636bab7866c..b66686a034b3 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -308,7 +308,7 @@ TiDB 版本:7.2.0 + TiFlash - - 修复在 join 操作的 build 侧数据量很大且含有大量短字符串时内存消耗过大的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + - 修复查询在 Join build 侧数据非常大,且包含许多小型字符串类型列时,消耗的内存可能会超过实际需要的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + Tools From 58b8f8953eaf7c1dcd82ed9443d1c4ef84db779f Mon Sep 17 00:00:00 2001 From: qiancai Date: Tue, 27 Jun 2023 21:49:36 +0800 Subject: [PATCH 103/121] adjust the order of system variables --- releases/release-7.2.0.md | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index b66686a034b3..a59b4b7d26c5 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -170,26 +170,18 @@ TiDB 版本:7.2.0 > > 以下为从 v7.1.0 升级至当前版本 (v7.2.0) 所需兼容性变更信息。如果从 v7.0.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 release notes 中提到的兼容性变更信息。 -### 行为变更 - - - -* 兼容性 1 - -* 兼容性 2 - ### 系统变量 | 变量名 | 修改类型 | 描述 | |--------|------------------------------|------| | [`last_insert_id`](/system-variables.md#last_insert_id-从-v530-版本开始引入) | 修改 | 该变量的最大值从 `9223372036854775807` 修改为 `18446744073709551615`,和 MySQL 保持一致。 | +| [`tidb_enable_non_prepared_plan_cache`](/system-variables.md#tidb_enable_non_prepared_plan_cache) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即默认开启非 Prepare 语句执行计划缓存。 | | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | | [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | +| [`tidb_enable_check_constraint`](/system-variables.md#tidb_enable_check_constraint-从-v720-版本开始引入) | 新增 | 这个变量用于控制`CHECK` 约束功能是否开启。默认值为 `OFF` 表示该功能默认关闭。 | | [`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) | 新增 | 这个变量用于控制是否使用基于校验和的方式来快速检查表中数据和索引的一致性。默认值 `ON` 表示该功能默认开启。 | | [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) | 新增 | 这个变量用来控制是否启用 TiFlash 新的执行模型 [Pipeline Model](/tiflash/tiflash-pipeline-model.md),默认值为 `OFF`,即关闭 Pipeline Model。 | | [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | -| [`tidb_enable_non_prepared_plan_cache`](/system-variables.md#tidb_enable_non_prepared_plan_cache) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即默认开启非 Prepare 语句执行计划缓存。 | -| [`tidb_enable_check_constraint`](/system-variables.md#tidb_enable_check_constraint-从-v720-版本开始引入) | 新增 | 这个变量用于控制`CHECK` 约束功能是否开启。默认值为 `OFF` 表示该功能默认关闭。 | ### 配置文件参数 @@ -197,7 +189,6 @@ TiDB 版本:7.2.0 | -------- | -------- | -------- | -------- | | TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 经进一步的测试后,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化,以提高启动时统计信息初始化的效率。 | | TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 配合 `lite-init-stats`,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | - | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为减小 RocksDB 中 compaction 任务的数据量,该变量默认值从 `"8MB"` 修改为 `"1MB"`。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | @@ -259,8 +250,8 @@ TiDB 版本:7.2.0 + TiDB Lightning - 优化导入数据过程中的重试机制,避免因 leader 切换而导致的错误 [#44478](https://github.com/pingcap/tidb/issues/44263) @[lance6716](https://github.com/lance6716) - - 数据导入完成后使用 SQL 方式校验 checksum,提升数据校验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) - - 优化导入宽表时 TiDB Lightning 发生 OOM 的问题 [#43853](https://github.com/pingcap/tidb/issues/43853) @[D3Hunter](https://github.com/D3Hunter) + - 数据导入完成后使用 SQL 方式校验 checksum,提升数据校验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) + - 优化导入宽表时 TiDB Lightning 发生 OOM 的问题 [#43853](https://github.com/pingcap/tidb/issues/43853) @[D3Hunter](https://github.com/D3Hunter) ## 错误修复 From e50833ec65ddc9e8fc946e67ae5bfba3ced23806 Mon Sep 17 00:00:00 2001 From: qiancai Date: Wed, 28 Jun 2023 01:25:50 +0800 Subject: [PATCH 104/121] add two new TiKV parameters --- releases/release-7.2.0.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a59b4b7d26c5..be72fdf8a8c6 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -190,8 +190,10 @@ TiDB 版本:7.2.0 | TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 经进一步的测试后,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化,以提高启动时统计信息初始化的效率。 | | TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 配合 `lite-init-stats`,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为减小 RocksDB 中 compaction 任务的数据量,该变量默认值从 `"8MB"` 修改为 `"1MB"`。 | -| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v710-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | -| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v710-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v720-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].periodic-compaction-seconds](/tikv-configuration-file.md#periodic-compaction-seconds-从-v720-版本开始引入) | 新增 | 控制周期性 compaction 的时间,修改时间超过此值的 SST 文件将被选中进行 compaction,并被重新写入这些 SST 文件所在的层级。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v720-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ttl](/tikv-configuration-file.md#ttl-从-v720-版本开始引入) | 新增 | 设置 SST 文件被自动选中执行 compaction 的 TTL 时间。更新时间超过 TTL 的 SST 文件将被选中并进行 compaction。 | | TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | | TiDB Lightning | [`character-set`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) | 修改 | 扩展支持导入的字符集,新增 `latin1` 选项,用于导入字符集为 latin1 的源文件。| | TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的键值对的大小。当键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | From 49db470e82b2f8cd27bbadcec7a1e7710d007e16 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 28 Jun 2023 09:16:43 +0800 Subject: [PATCH 105/121] Apply suggestions from code review --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index be72fdf8a8c6..c9377d634b21 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -115,11 +115,11 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/optimizer-fix-controls.md)。 -* 轻量统计信息初始化 GA [#42160](https://github.com/pingcap/tidb/issues/42160) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) +* 轻量统计信息初始化 GA [#42160](https://github.com/pingcap/tidb/issues/42160) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@qiancai** 轻量统计信息初始化自 v7.2.0 成为正式功能。轻量级的统计信息初始化可以大幅减少启动时必须加载的统计信息的数量,从而提升启动过程中统计信息的加载速度。该功能提升了 TiDB 在复杂运行环境下的稳定性,并降低了部分 TiDB 节点重启对整体服务的影响。 - 从 v7.2.0 开始,新建集群默认加载轻量统计信息,TiDB 在初始统计信息加载完成前不对外提供服务。从旧版本升级的集群,可通过修改 TiDB 配置参数 [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) 和 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) 手工开启。 + 从 v7.2.0 起,新建的集群在启动阶段将默认加载轻量级统计信息,并在加载完成后再对外提供服务。对于从旧版本升级上来的集群,可通过修改 TiDB 配置项 [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) 和 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) 为 `true` 开启此功能。 更多信息,请参考[用户文档](/statistics.md#统计信息的加载)。 From c6be3c1084d55bd3ab3e37cab72c4a45f3884fd4 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 28 Jun 2023 10:35:55 +0800 Subject: [PATCH 106/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index c9377d634b21..53f28fb50de7 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -40,7 +40,7 @@ TiDB 版本:7.2.0 数据库管理与可观测性 DDL 任务支持暂停和恢复操作(实验特性) - DDL 操作(如添加索引)可能消耗大量资源并影响业务负载。受传统的 schema 更改工具(如 pt-osc 和 gh-ost)功能启发,TiDB 现在原生支持同时暂停多个后台 DDL 任务。该功能可以帮助你节省资源并最小化 DDL 操作对业务负载的影响,而无需取消和重新启动 DDL 任务。 + 支持暂停消耗资源较大的 DDL 任务(如添加索引),以节省资源并降低对在线负载的影响。当需要执行这些暂停的 DDL 任务时,你可以无缝恢复这些任务,而无需取消并重新开始。此功能可以增强资源利用率,提升使用体验,并简化 schema 更改流程。 From e876e230322209961cc85558df83325a426319a8 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 28 Jun 2023 10:53:26 +0800 Subject: [PATCH 107/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 53f28fb50de7..7384485a4d8e 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -212,8 +212,8 @@ TiDB 版本:7.2.0 - 当 Stale Read 的 retry leader 遇到 lock 时,resolve lock 之后强制重试 leader,避免无谓开销 [#43659](https://github.com/pingcap/tidb/issues/43659) @[you06](https://github.com/you06) - 使用估计时间计算 Stale Read ts,减少 Stale Read 的开销 [#44215](https://github.com/pingcap/tidb/issues/44215) @[you06](https://github.com/you06) - 添加 long-running 事务日志和系统变量 [#41471](https://github.com/pingcap/tidb/issues/41471) @[crazycs520](https://github.com/crazycs520) - - 支持通过 MySQL 压缩协议连接 TiDB(在连接时加上 `--compress` 选项),提升数据密集型查询在低网络质量下的性能,并节省带宽成本的开销 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) - - 支持将 `utf8` 和 `utf8mb3` 识别为旧的三字节字符集编码 [#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) + - 支持通过压缩的 MySQL 协议连接 TiDB,提升数据密集型查询在低网络质量下的性能,并节省带宽成本。该功能支持基于 `zlib` 和 `zstd` 的压缩算法 [#22605](https://github.com/pingcap/tidb/issues/22605) @[dveeden](https://github.com/dveeden) + - 支持将 `utf8` 和 `utf8mb3` 识别为旧的三字节 UTF-8 字符集编码,有助于将具有旧字符集编码的表从 MySQL 8.0 迁移到 TiDB [#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - 支持在 `UPDATE` 语句中使用 `:=` 进行赋值操作 [#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) From 8fee0945730e0d00befef40471ec22bfe8d8cc1f Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 28 Jun 2023 15:53:00 +0800 Subject: [PATCH 108/121] Apply suggestions from code review Co-authored-by: Aolin --- releases/release-7.2.0.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 7384485a4d8e..cf582451e01c 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -16,9 +16,9 @@ TiDB 版本:7.2.0 - - - + + + @@ -34,8 +34,8 @@ TiDB 版本:7.2.0 - - + + @@ -178,7 +178,7 @@ TiDB 版本:7.2.0 | [`tidb_enable_non_prepared_plan_cache`](/system-variables.md#tidb_enable_non_prepared_plan_cache) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即默认开启非 Prepare 语句执行计划缓存。 | | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | | [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | -| [`tidb_enable_check_constraint`](/system-variables.md#tidb_enable_check_constraint-从-v720-版本开始引入) | 新增 | 这个变量用于控制`CHECK` 约束功能是否开启。默认值为 `OFF` 表示该功能默认关闭。 | +| [`tidb_enable_check_constraint`](/system-variables.md#tidb_enable_check_constraint-从-v720-版本开始引入) | 新增 | 这个变量用于控制 `CHECK` 约束功能是否开启。默认值 `OFF` 表示该功能默认关闭。 | | [`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) | 新增 | 这个变量用于控制是否使用基于校验和的方式来快速检查表中数据和索引的一致性。默认值 `ON` 表示该功能默认开启。 | | [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) | 新增 | 这个变量用来控制是否启用 TiFlash 新的执行模型 [Pipeline Model](/tiflash/tiflash-pipeline-model.md),默认值为 `OFF`,即关闭 Pipeline Model。 | | [`tidb_expensive_txn_time_threshold`](/system-variables.md#tidb_expensive_txn_time_threshold-从-v720-版本开始引入) | 新增 | 控制打印 expensive transaction 日志的阈值时间,默认值是 600 秒。expensive transaction 日志会将尚未 COMMIT 或 ROLLBACK 且持续时间超过该阈值的事务的相关信息打印出来。 | @@ -187,8 +187,8 @@ TiDB 版本:7.2.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | -| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 经进一步的测试后,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认将采用轻量级的统计信息初始化,以提高启动时统计信息初始化的效率。 | -| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 配合 `lite-init-stats`,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认会在完成统计信息初始化后再对外提供服务。 | +| TiDB | [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) | 修改 | 经进一步的测试后,默认值从 `false` 修改为 `true`,表示 TiDB 启动时默认采用轻量级的统计信息初始化,以提高启动时统计信息初始化的效率。 | +| TiDB | [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) | 修改 | 配合 `lite-init-stats`,默认值从 `false` 修改为 `true`,表示 TiDB 启动时会等到统计信息初始化完成后再对外提供服务。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为减小 RocksDB 中 compaction 任务的数据量,该变量默认值从 `"8MB"` 修改为 `"1MB"`。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].optimize-filters-for-memory](/tikv-configuration-file.md#optimize-filters-for-memory-从-v720-版本开始引入) | 新增 | 控制是否生成能够最小化内存碎片的 Bloom/Ribbon filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].periodic-compaction-seconds](/tikv-configuration-file.md#periodic-compaction-seconds-从-v720-版本开始引入) | 新增 | 控制周期性 compaction 的时间,修改时间超过此值的 SST 文件将被选中进行 compaction,并被重新写入这些 SST 文件所在的层级。 | From b4f5991d0ccd764025ebcdfd4527ec47e695b333 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 28 Jun 2023 17:31:02 +0800 Subject: [PATCH 109/121] fix a broken link --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index cf582451e01c..3f7b4b20543c 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -56,7 +56,7 @@ TiDB 版本:7.2.0 * TiFlash 支持 Pipeline 执行模型(实验特性)[#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** - 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但并不能完全避免此问题。因此,在 v7.2.0 中,TiFlash 引入 Pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model) 用于设置是否启用 Pipeline 执行模型。 + 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但并不能完全避免此问题。因此,在 v7.2.0 中,TiFlash 引入 Pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) 用于设置是否启用 Pipeline 执行模型。 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 From 13db9abe3c5ba3ef84ea95d17040a68b5fabdb9b Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 28 Jun 2023 19:22:33 +0800 Subject: [PATCH 110/121] Update releases/release-7.2.0.md Co-authored-by: Cathy <24819510+benmaoer@users.noreply.github.com> --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 3f7b4b20543c..4a752a2a7240 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -40,7 +40,7 @@ TiDB 版本:7.2.0 - +
CategoryFeatureDescription分类功能描述
SQL支持新的 SQL 语句 `IMPORT INTO`, 可以通过 TiDB 进行数据导入 (实验特性)TiDB 引入了一个新的 SQL 语句 `IMPORT INTO`。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 远程导入数据到 TiDB 中。支持新的 SQL 语句 IMPORT INTO,可以通过 TiDB 进行数据导入(实验特性)TiDB 引入了一个新的 SQL 语句 IMPORT INTO。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 远程导入数据到 TiDB 中。
数据库管理与可观测性
数据库管理与可观测性 DDL 任务支持暂停和恢复操作(实验特性)支持暂停消耗资源较大的 DDL 任务(如添加索引),以节省资源并降低对在线负载的影响。当需要执行这些暂停的 DDL 任务时,你可以无缝恢复这些任务,而无需取消并重新开始。此功能可以增强资源利用率,提升使用体验,并简化 schema 更改流程。该功能允许临时暂停资源密集型的 DDL 操作,例如索引创建,以节省资源并最小化对在线流量的影响。当资源许可时,你可以无缝恢复 DDL 任务,而无需取消和重新开始。该功能提高了资源利用率,改善了用户体验,并简化了 schema 更改过程。
From 4407eba0c55643b941f93f0cd06a0cd3bfea553f Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 28 Jun 2023 23:11:30 +0800 Subject: [PATCH 111/121] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> Co-authored-by: Aolin --- releases/release-7.2.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 4a752a2a7240..c5056ddeda84 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -35,7 +35,7 @@ TiDB 版本:7.2.0 SQL 支持新的 SQL 语句 IMPORT INTO,可以通过 TiDB 进行数据导入(实验特性) - TiDB 引入了一个新的 SQL 语句 IMPORT INTO。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 远程导入数据到 TiDB 中。 + TiDB 引入了一个新的 SQL 语句 IMPORT INTO。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 或 Google Cloud Storage(GCS)远程导入数据到 TiDB 中。 数据库管理与可观测性 @@ -70,7 +70,7 @@ TiDB 版本:7.2.0 TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,从而将统计信息收集的整体速度提升了 30%。这一改进有利于 TiDB 更及时地更新数据库对象的统计信息,生成更准确的执行计划,从而提升数据库整体性能。 - 默认设置下,统计信息收集会跳过类型为 `json`、`blob`、`mediumblob`、`longblob` 的列。你可以通过设置系统变量 [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 `JSON`、`BLOB`、`TEXT` 这几个类型及其子类型。 + 默认设置下,统计信息收集会跳过类型为 `JSON`、`BLOB`、`MEDIUMBLOB`、`LONGBLOB` 的列。你可以通过设置系统变量 [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) 来修改默认行为。当前支持设置跳过 `JSON`、`BLOB`、`TEXT` 这几个类型及其子类型。 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 From d85aa0d62de4c92fdc7b317c75a44d74ee4ee37b Mon Sep 17 00:00:00 2001 From: qiancai Date: Wed, 28 Jun 2023 23:34:40 +0800 Subject: [PATCH 112/121] remove the tw info --- releases/release-7.2.0.md | 71 +++++++++++++++------------------------ 1 file changed, 28 insertions(+), 43 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index c5056ddeda84..81b13a548123 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -5,7 +5,7 @@ summary: 了解 TiDB 7.2.0 版本的新功能、兼容性变更、改进提升 # TiDB 7.2.0 Release Notes -发版日期:2023 年 x 月 x 日 +发版日期:2023 年 6 月 29 日 TiDB 版本:7.2.0 @@ -49,24 +49,24 @@ TiDB 版本:7.2.0 ### 性能 -* 新增支持下推以下两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 到 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@qiancai** +* 新增支持下推以下两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 到 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) * `FIRST_VALUE` * `LAST_VALUE` -* TiFlash 支持 Pipeline 执行模型(实验特性)[#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) **tw@ran-huang** +* TiFlash 支持 Pipeline 执行模型(实验特性)[#6518](https://github.com/pingcap/tiflash/issues/6518) @[SeaRise](https://github.com/SeaRise) 在 v7.2.0 版本之前,TiFlash 引擎中各个任务在执行时,需要自行申请线程资源。TiFlash 引擎通过控制任务数的方式限制线程资源使用,以避免线程资源超用,但并不能完全避免此问题。因此,在 v7.2.0 中,TiFlash 引入 Pipeline 执行模型,对所有线程资源进行统一管理,并对所有任务的执行进行统一调度,充分利用线程资源,同时避免资源超用。新增系统变量 [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) 用于设置是否启用 Pipeline 执行模型。 更多信息,请参考[用户文档](/tiflash/tiflash-pipeline-model.md)。 -* 降低 TiFlash 等待 schema 同步的时延 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** +* 降低 TiFlash 等待 schema 同步的时延 [#7630](https://github.com/pingcap/tiflash/issues/7630) @[hongyunyan](https://github.com/hongyunyan) 当表的 schema 发生变化时,TiFlash 需要及时从 TiKV 同步新的表结构信息。在 v7.2.0 之前,当 TiFlash 访问表数据时,只要检测到数据库中某张表的 schema 发生了变化,TiFlash 就会重新同步该数据库中所有表的 schema 信息。即使一张表没有 TiFlash 副本,TiFlash 也会同步该表的 schema 信息。当数据库中有大量表时,通过 TiFlash 只读取一张表的数据也可能因为需要等待所有表的 schema 信息同步完成而造成较高的时延。 在 v7.2.0 中,TiFlash 优化了 schema 的同步机制,只同步拥有 TiFlash 副本的表的 schema 信息。当检测到某张有 TiFlash 副本的表的 schema 有变化时,TiFlash 只同步该表的 schema 信息,从而降低了 TiFlash 同步 schema 的时延,同时减少了 DDL 操作对于 TiFlash 同步数据的影响。该优化自动生效,无须任何设置。 -* 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@hfxsd** +* 提升统计信息收集的性能 [#44725](https://github.com/pingcap/tidb/issues/44725) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) TiDB v7.2.0 优化了统计信息的收集策略,会选择跳过一部分重复的信息,以及对优化器价值不高的信息,从而将统计信息收集的整体速度提升了 30%。这一改进有利于 TiDB 更及时地更新数据库对象的统计信息,生成更准确的执行计划,从而提升数据库整体性能。 @@ -74,7 +74,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入)。 -* 提升数据和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) **tw@qiancai** +* 提升数据和索引一致性检查的性能 [#43693](https://github.com/pingcap/tidb/issues/43693) @[wjhuang2016](https://github.com/wjhuang2016) [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句用于校验表中数据和对应索引的一致性。在 v7.2.0 中,TiDB 优化了数据一致性的校验方式,大幅提升了 [`ADMIN CHECK [TABLE|INDEX]`](/sql-statements/sql-statement-admin-check-table-index.md) 语句的执行效率,在大数据量场景中性能能够提升百倍。 @@ -84,7 +84,7 @@ TiDB 版本:7.2.0 ### 稳定性 -* 自动管理资源超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) @[glorv](https://github.com/glorv) @[HuSharp](https://github.com/HuSharp) @[nolouch](https://github.com/nolouch) **tw@hfxsd** +* 自动管理资源超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) @[glorv](https://github.com/glorv) @[HuSharp](https://github.com/HuSharp) @[nolouch](https://github.com/nolouch) 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。造成 SQL 性能问题的原因有很多,例如未经充分测试的新 SQL、数据量剧烈变化、执行计划突变等,这些问题很难从源头上完全规避。TiDB v7.2.0 增加了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 @@ -94,7 +94,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/tidb-resource-control.md#管理资源消耗超出预期的查询-runaway-queries)。 -* 增强根据历史执行计划创建绑定的能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** +* 增强根据历史执行计划创建绑定的能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) TiDB v7.2.0 进一步增强[根据历史执行计划创建绑定](/sql-plan-management.md#根据历史执行计划创建绑定)的能力,加强对复杂语句的解析和绑定,使绑定更稳固,并新增支持对以下 Hint 的绑定。 @@ -105,7 +105,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/sql-plan-management.md)。 -* 提供 Optimizer Fix Controls 机制对优化器行为进行细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) **tw@hfxsd** +* 提供 Optimizer Fix Controls 机制对优化器行为进行细粒度控制 [#43169](https://github.com/pingcap/tidb/issues/43169) @[time-and-fate](https://github.com/time-and-fate) 为了生成更合理的执行计划,TiDB 优化器的行为会随产品迭代而不断演进。但在某些特定场景下,这些变化可能引发性能回退。因此 TiDB 引入了 Optimizer Fix Controls 来控制优化器的一部分细粒度行为,你可以对一些新的变化进行回滚或控制。 @@ -115,17 +115,17 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](/optimizer-fix-controls.md)。 -* 轻量统计信息初始化 GA [#42160](https://github.com/pingcap/tidb/issues/42160) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) **tw@qiancai** +* 轻量统计信息初始化 GA [#42160](https://github.com/pingcap/tidb/issues/42160) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) 轻量统计信息初始化自 v7.2.0 成为正式功能。轻量级的统计信息初始化可以大幅减少启动时必须加载的统计信息的数量,从而提升启动过程中统计信息的加载速度。该功能提升了 TiDB 在复杂运行环境下的稳定性,并降低了部分 TiDB 节点重启对整体服务的影响。 - 从 v7.2.0 起,新建的集群在启动阶段将默认加载轻量级统计信息,并在加载完成后再对外提供服务。对于从旧版本升级上来的集群,可通过修改 TiDB 配置项 [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) 和 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) 为 `true` 开启此功能。 + 从 v7.2.0 起,新建的集群在启动阶段将默认加载轻量级统计信息,并在加载完成后再对外提供服务。对于从旧版本升级上来的集群,可通过修改 TiDB 配置项 [`lite-init-stats`](/tidb-configuration-file.md#lite-init-stats-从-v710-版本开始引入) 和 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v710-版本开始引入) 为 `true` 开启此功能。 更多信息,请参考[用户文档](/statistics.md#统计信息的加载)。 ### SQL 功能 -* 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678](https://github.com/fzzf678) **tw@qiancai** +* 支持 `CHECK` 约束 [#41711](https://github.com/pingcap/tidb/issues/41711) @[fzzf678](https://github.com/fzzf678) 从 v7.2.0 开始,你可以通过 `CHECK` 约束限制表中的一个或者多个字段值必须满足特定的条件。当为表添加 `CHECK` 约束后,在插入或者更新表的数据时,TiDB 会先检查约束条件是否满足,只允许满足约束的数据写入。 @@ -135,7 +135,7 @@ TiDB 版本:7.2.0 ### 数据库管理 -* DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) **tw@ran-huang** +* DDL 任务支持暂停和恢复操作(实验特性)[#18015](https://github.com/pingcap/tidb/issues/18015) @[godouxm](https://github.com/godouxm) TiDB v7.2.0 之前的版本中,当 DDL 任务在执行期间遇到业务高峰时,为了减少对业务的影响,只能手动取消 DDL 任务。TiDB v7.2.0 引入了 DDL 任务的暂停和恢复功能,你可以在高峰时间点暂停 DDL 任务,等到业务高峰时间结束后再恢复 DDL 任务,从而避免了 DDL 操作对业务负载的影响。 @@ -150,7 +150,7 @@ TiDB 版本:7.2.0 ### 数据迁移 -* 引入新的 SQL 语句 `IMPORT INTO`,大幅提升数据导入效率(实验特性)[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) **tw@qiancai** +* 引入新的 SQL 语句 `IMPORT INTO`,大幅提升数据导入效率(实验特性)[#42930](https://github.com/pingcap/tidb/issues/42930) @[D3Hunter](https://github.com/D3Hunter) `IMPORT INTO` 集成了 TiDB Lightning [物理导入模式](/tidb-lightning/tidb-lightning-physical-import-mode.md)的能力。通过该语句,你可以将 CSV、SQL 和 PARQUET 等格式的数据快速导入到 TiDB 的一张空表中。这种导入方式无需单独部署和管理 TiDB Lightning,在降低了数据导入难度的同时,大幅提升了数据导入效率。 @@ -158,7 +158,7 @@ TiDB 版本:7.2.0 更多信息,请参考[用户文档](sql-statements/sql-statement-import-into.md)。 -* TiDB Lightning 支持将字符集为 latin1 的源文件导入到 TiDB 中 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) **tw@qiancai** +* TiDB Lightning 支持将字符集为 latin1 的源文件导入到 TiDB 中 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) 通过此功能,你可以使用 TiDB Lightning 将字符集为 latin1 的源文件直接导入到 TiDB 中。在 v7.2.0 之前,导入这样的文件需要额外的预处理或转换。从 v7.2.0 起,你只需在配置 TiDB Lightning 导入任务时指定 `character-set = "latin1"`,TiDB Lightning 就会在导入过程中自动处理字符集的转换,以确保数据的完整性和准确性。 @@ -194,17 +194,15 @@ TiDB 版本:7.2.0 | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].periodic-compaction-seconds](/tikv-configuration-file.md#periodic-compaction-seconds-从-v720-版本开始引入) | 新增 | 控制周期性 compaction 的时间,修改时间超过此值的 SST 文件将被选中进行 compaction,并被重新写入这些 SST 文件所在的层级。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ribbon-filter-above-level](/tikv-configuration-file.md#ribbon-filter-above-level-从-v720-版本开始引入) | 新增 | 控制是否对于大于等于该值的 level 使用 Ribbon filter,对于小于该值的 level,使用非 block-based bloom filter。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].ttl](/tikv-configuration-file.md#ttl-从-v720-版本开始引入) | 新增 | 设置 SST 文件被自动选中执行 compaction 的 TTL 时间。更新时间超过 TTL 的 SST 文件将被选中并进行 compaction。 | -| TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。**tw@hfxsd** | +| TiDB Lightning | `send-kv-pairs` | 废弃 | 从 v7.2.0 版本开始,`send-kv-pairs` 不再生效。你可以使用新参数 [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) 来指定物理导入模式下向 TiKV 发送数据时一次请求的最大大小。 | | TiDB Lightning | [`character-set`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) | 修改 | 扩展支持导入的字符集,新增 `latin1` 选项,用于导入字符集为 latin1 的源文件。| -| TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的键值对的大小。当键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。**tw@hfxsd** | -| Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。 **tw@ran-huang** | +| TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的键值对的大小。当键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。| +| Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。| | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| | TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | ## 改进提升 - - + TiDB - 优化构造索引扫描范围的逻辑,支持将一些复杂条件转化为索引扫描范围 [#41572](https://github.com/pingcap/tidb/issues/41572) [#44389](https://github.com/pingcap/tidb/issues/44389) @[xuyifangreeneyes](https://github.com/xuyifangreeneyes) @@ -216,8 +214,6 @@ TiDB 版本:7.2.0 - 支持将 `utf8` 和 `utf8mb3` 识别为旧的三字节 UTF-8 字符集编码,有助于将具有旧字符集编码的表从 MySQL 8.0 迁移到 TiDB [#26226](https://github.com/pingcap/tidb/issues/26226) @[dveeden](https://github.com/dveeden) - 支持在 `UPDATE` 语句中使用 `:=` 进行赋值操作 [#44751](https://github.com/pingcap/tidb/issues/44751) @[CbcWestwolf](https://github.com/CbcWestwolf) - - + TiKV - 支持通过 `pd.retry-interval` 配置在连接请求失败等场景下 PD 连接的重试间隔 [#14964](https://github.com/tikv/tikv/issues/14964) @[rleungx](https://github.com/rleungx) @@ -226,8 +222,6 @@ TiDB 版本:7.2.0 - 为 `check_leader` 请求增加相关监控项 [#14658](https://github.com/tikv/tikv/issues/14658) @[you06](https://github.com/you06) - 详细记录 TiKV 处理写入命令过程中的时间信息 [#12362](https://github.com/tikv/tikv/issues/12362) @[cfzjywxk](https://github.com/cfzjywxk) - - + PD - PD Leader 选举使用单独的 gRPC 连接,防止受到其他请求的影响 [#6403](https://github.com/tikv/pd/issues/6403) @[rleungx](https://github.com/rleungx) @@ -235,21 +229,21 @@ TiDB 版本:7.2.0 + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - 为外部存储 Azure Blob Storage 提供 shared access signature (SAS) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) - + TiCDC + + TiCDC - 优化同步到对象存储场景下发生 DDL 时存放数据文件目录的结构 [#8891](https://github.com/pingcap/tiflow/issues/8891) @[CharlesCheung96](https://github.com/CharlesCheung96) - 在同步到 Kafka 场景下,支持 OAUTHBEARER 认证方式 [#8865](https://github.com/pingcap/tiflow/issues/8865) @[hi-rustin](https://github.com/hi-rustin) - 在同步到 Kafka 场景下,对于 `DELETE` 操作,支持选择只输出 Handle Key [#9143](https://github.com/pingcap/tiflow/issues/9143) @[3AceShowHand](https://github.com/3AceShowHand) - + TiDB Data Migration (DM) + + TiDB Data Migration (DM) - 支持读取 MySQL 8.0 中的压缩 binlog 作为增量同步的数据源 [#6381](https://github.com/pingcap/tiflow/issues/6381) @[dveeden](https://github.com/dveeden) - + TiDB Lightning + + TiDB Lightning - 优化导入数据过程中的重试机制,避免因 leader 切换而导致的错误 [#44478](https://github.com/pingcap/tidb/issues/44263) @[lance6716](https://github.com/lance6716) - 数据导入完成后使用 SQL 方式校验 checksum,提升数据校验的稳定性 [#41941](https://github.com/pingcap/tidb/issues/41941) @[GMHDBJD](https://github.com/GMHDBJD) @@ -257,16 +251,13 @@ TiDB 版本:7.2.0 ## 错误修复 - - + TiDB - (dup)- 修复使用 CTE 的查询导致 TiDB 卡住的问题 [#43749](https://github.com/pingcap/tidb/issues/43749) [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) - (dup)- 修复 `min, max` 查询结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43805) @[wshwsh12](https://github.com/wshwsh12) - (dup)- 修复 `SHOW PROCESSLIST` 语句无法显示子查询时间较长语句的事务的 TxnStart 的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) + - 修复使用 CTE 的查询导致 TiDB 卡住的问题 [#43749](https://github.com/pingcap/tidb/issues/43749) [#36896](https://github.com/pingcap/tidb/issues/36896) @[guo-shaoge](https://github.com/guo-shaoge) + - 修复 `min, max` 查询结果出错的问题 [#43805](https://github.com/pingcap/tidb/issues/43805) @[wshwsh12](https://github.com/wshwsh12) + - 修复 `SHOW PROCESSLIST` 语句无法显示子查询时间较长语句的事务的 TxnStart 的问题 [#40851](https://github.com/pingcap/tidb/issues/40851) @[crazycs520](https://github.com/crazycs520) - 修复由于 Coprocessor task 中 `TxnScope` 缺失导致 Stale Read 全局优化不生效的问题 [#43365](https://github.com/pingcap/tidb/issues/43365) @[you06](https://github.com/you06) - 修复 follower read 未处理 flashback 错误而进行重试,导致查询报错的问题 [#43673](https://github.com/pingcap/tidb/issues/43673) @[you06](https://github.com/you06) - - 修复 `ON UPDATE` 语句没有正确更新主键导致数据索引不一致的问题 [#44565](https://github.com/pingcap/tidb/issues/44565) @[zyguan](https://github.com/zyguan) - 修改 `UNIX_TIMESTAMP()` 函数的上限为 `3001-01-19 03:14:07.999999 UTC`,与 MySQL 8.0.28+ 保持一致 [#43987](https://github.com/pingcap/tidb/issues/43987) @[YangKeao](https://github.com/YangKeao) - 修复在 ingest 模式下创建索引失败的问题 [#44137](https://github.com/pingcap/tidb/issues/44137) @[tangenta](https://github.com/tangenta) @@ -282,8 +273,6 @@ TiDB 版本:7.2.0 - 修复 Join Reorder 可能会造成 Outer Join 结果错误的问题 [#44314](https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) - 修复了 `PREPARE stmt FROM "ANALYZE TABLE xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320](https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) - - + TiKV - 修复处理 stale 悲观锁冲突时事务返回值不正确的问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) @@ -291,27 +280,23 @@ TiDB 版本:7.2.0 - 修复处理过期请求时 fair lock 的正确性问题 [#13298](https://github.com/tikv/tikv/issues/13298) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 autocommit 和 point get replica read 可能破坏线性一致性的问题 [#14715](https://github.com/tikv/tikv/issues/14715) @[cfzjywxk](https://github.com/cfzjywxk) - - + PD - 修复在特殊情况下冗余副本无法自动修复的问题 [#6573](https://github.com/tikv/pd/issues/6573) @[nolouch](https://github.com/nolouch) - - + TiFlash - 修复查询在 Join build 侧数据非常大,且包含许多小型字符串类型列时,消耗的内存可能会超过实际需要的问题 [#7416](https://github.com/pingcap/tiflash/issues/7416) @[yibin87](https://github.com/yibin87) + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - 修复某些情况下误报 `checksum mismatch` 的问题 [#44472](https://github.com/pingcap/tidb/issues/44472) @[Leavrth](https://github.com/Leavrth) - 修复某些情况下误报 `resolved lock timeout` 的问题 [#43236](https://github.com/pingcap/tidb/issues/43236) @[YuJuncen](https://github.com/YuJuncen) - 修复在恢复统计信息的时候可能会 panic 的问题 [#44490](https://github.com/pingcap/tidb/issues/44490) @[tangenta](https://github.com/tangenta) - + TiCDC + + TiCDC - 修复在某些特殊情况下 Resolved TS 不能正常推进的问题 [#8963](https://github.com/pingcap/tiflow/issues/8963) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复使用 Avro 或 CSV 协议场景下 `UPDATE` 操作不能输出旧值的问题 [#9086](https://github.com/pingcap/tiflow/issues/9086) @[3AceShowHand](https://github.com/3AceShowHand) @@ -320,7 +305,7 @@ TiDB 版本:7.2.0 - 修复 PD 节点宕机导致 TiCDC 节点重启的问题 [#8868](https://github.com/pingcap/tiflow/issues/8868) @[asddongmen](https://github.com/asddongmen) - 修复 TiCDC 同步到 Kafka-on-Pulsar 时不能正确建立连接的问题 [#8892](https://github.com/pingcap/tiflow/issues/8892) @[hi-rustin](https://github.com/hi-rustin) - + TiDB Lightning + + TiDB Lightning - 修复开启 `experimental.allow-expression-index` 且默认值是 UUID 时导致 TiDB Lightning panic 的问题 [#44497](https://github.com/pingcap/tidb/issues/44497) @[lichunzhu](https://github.com/lichunzhu) - 修复划分数据文件时任务退出导致 TiDB Lightning panic 的问题 [#43195](https://github.com/pingcap/tidb/issues/43195) @[lance6716](https://github.com/lance6716) From 034713fdd1d711cc6d639f722a19eb1a7a3b04f0 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 28 Jun 2023 23:35:10 +0800 Subject: [PATCH 113/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 81b13a548123..a3ffb523b2b9 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -156,7 +156,7 @@ TiDB 版本:7.2.0 对于存储在 Amazon S3 或 GCS 的数据文件,在开启了[后端任务分布式框架](/tidb-distributed-execution-framework.md)后,`IMPORT INTO` 还支持将数据导入任务拆分成多个子任务,并将子任务调度到多个 TiDB 节点并行导入,进一步提升导入性能。 - 更多信息,请参考[用户文档](sql-statements/sql-statement-import-into.md)。 + 更多信息,请参考[用户文档](/sql-statements/sql-statement-import-into.md)。 * TiDB Lightning 支持将字符集为 latin1 的源文件导入到 TiDB 中 [#44434](https://github.com/pingcap/tidb/issues/44434) @[lance6716](https://github.com/lance6716) From ddc73b9da75b87fe7daf76a543054c7a4f72a7d6 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 29 Jun 2023 00:04:48 +0800 Subject: [PATCH 114/121] fix broken links --- releases/release-7.2.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index a3ffb523b2b9..0f5b7e125c7a 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -100,8 +100,8 @@ TiDB 版本:7.2.0 - [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop) - [`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop) - - [`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name) - - [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name) + - [`ORDER_INDEX`](/optimizer-hints.md#order_indext1_name-idx1_name--idx2_name- ) + - [`NO_ORDER_INDEX()`](/optimizer-hints.md#no_order_indext1_name-idx1_name--idx2_name-) 更多信息,请参考[用户文档](/sql-plan-management.md)。 @@ -177,7 +177,7 @@ TiDB 版本:7.2.0 | [`last_insert_id`](/system-variables.md#last_insert_id-从-v530-版本开始引入) | 修改 | 该变量的最大值从 `9223372036854775807` 修改为 `18446744073709551615`,和 MySQL 保持一致。 | | [`tidb_enable_non_prepared_plan_cache`](/system-variables.md#tidb_enable_non_prepared_plan_cache) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即默认开启非 Prepare 语句执行计划缓存。 | | [`tidb_remove_orderby_in_subquery`](/system-variables.md#tidb_remove_orderby_in_subquery-从-v610-版本开始引入) | 修改 | 经进一步的测试后,该变量默认值从 `OFF` 修改为 `ON`,即优化器改写会移除子查询中的 `ORDER BY` 子句。 | -| [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | +| [`tidb_analyze_skip_column_types`](/system-variables.md#tidb_analyze_skip_column_types-从-v720-版本开始引入) | 新增 | 这个变量表示在执行 `ANALYZE` 命令收集统计信息时,跳过哪些类型的列的统计信息收集。该变量仅适用于 [`tidb_analyze_version = 2`](/system-variables.md#tidb_analyze_version-从-v510-版本开始引入) 的情况。使用 `ANALYZE TABLE t COLUMNS c1, ..., cn` 语法时,如果指定的列的类型在 `tidb_analyze_skip_column_types` 中,则不会收集该列的统计信息。 | | [`tidb_enable_check_constraint`](/system-variables.md#tidb_enable_check_constraint-从-v720-版本开始引入) | 新增 | 这个变量用于控制 `CHECK` 约束功能是否开启。默认值 `OFF` 表示该功能默认关闭。 | | [`tidb_enable_fast_table_check`](/system-variables.md#tidb_enable_fast_table_check-从-v720-版本开始引入) | 新增 | 这个变量用于控制是否使用基于校验和的方式来快速检查表中数据和索引的一致性。默认值 `ON` 表示该功能默认开启。 | | [`tidb_enable_tiflash_pipeline_model`](/system-variables.md#tidb_enable_tiflash_pipeline_model-从-v720-版本开始引入) | 新增 | 这个变量用来控制是否启用 TiFlash 新的执行模型 [Pipeline Model](/tiflash/tiflash-pipeline-model.md),默认值为 `OFF`,即关闭 Pipeline Model。 | From 6b354e351f16f675906c8cc127cb42a8ef8a3a68 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 29 Jun 2023 10:11:02 +0800 Subject: [PATCH 115/121] Update releases/release-7.2.0.md Co-authored-by: Connor --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 0f5b7e125c7a..3d3b0aa4aae1 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -88,7 +88,7 @@ TiDB 版本:7.2.0 突发的 SQL 性能问题引发数据库整体性能下降,是数据库稳定性最常见的挑战。造成 SQL 性能问题的原因有很多,例如未经充分测试的新 SQL、数据量剧烈变化、执行计划突变等,这些问题很难从源头上完全规避。TiDB v7.2.0 增加了对资源超出预期的查询的管理能力,在上述问题发生时,能够快速降低影响范围。 - 你可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。当查询的执行时间超过设置值时,自动降低查询的优先级或者取消查询。你还可以设置在一段时间内通过文本立即匹配已经识别出的查询,从而避免问题查询的并发度太高时,在识别阶段就造成大量资源消耗的情况。 + 你可以针对某个资源组 (Resource Group) 设置查询的最长执行时间。当查询的执行时间超过设置值时,自动降低查询的优先级或者取消查询。你还可以设置在一段时间内通过文本或者执行计划立即匹配已经识别出的查询,从而避免问题查询的并发度太高时,在识别阶段就造成大量资源消耗的情况。 对资源超出预期查询的自动管理能力,为你提供了有效的手段,快速应对突发的查询性能问题,降低对数据库整体性能的影响,从而提升数据库的稳定性。 From 43fa02a3a139fa760af08dda781755666c6f7fbd Mon Sep 17 00:00:00 2001 From: qiancai Date: Thu, 29 Jun 2023 10:18:27 +0800 Subject: [PATCH 116/121] add 7.2 to toc --- TOC.md | 4 +++- releases/release-notes.md | 4 ++++ releases/release-timeline.md | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/TOC.md b/TOC.md index 60540bcad325..0fb187d0a2ec 100644 --- a/TOC.md +++ b/TOC.md @@ -4,7 +4,7 @@ - [文档中心](https://docs.pingcap.com/zh) - 关于 TiDB - [TiDB 简介](/overview.md) - - [TiDB 7.1 Release Notes](/releases/release-7.1.0.md) + - [TiDB 7.2 Release Notes](/releases/release-7.2.0.md) - [功能概览](/basic-features.md) - [与 MySQL 的兼容性](/mysql-compatibility.md) - [使用限制](/tidb-limitations.md) @@ -997,6 +997,8 @@ - [版本发布时间线](/releases/release-timeline.md) - [TiDB 版本规则](/releases/versioning.md) - [TiDB 离线包](/binary-package.md) + - v7.2 + - [7.2.0-DMR](/releases/release-7.2.0.md) - v7.1 - [7.1.0](/releases/release-7.1.0.md) - v7.0 diff --git a/releases/release-notes.md b/releases/release-notes.md index 103d08f43e25..22020e95b42d 100644 --- a/releases/release-notes.md +++ b/releases/release-notes.md @@ -7,6 +7,10 @@ aliases: ['/docs-cn/dev/releases/release-notes/','/docs-cn/dev/releases/rn/'] TiDB 历史版本发布声明如下: +## 7.2 + +- [7.2.0](/releases/release-7.2.0.md): 2023-06-29 + ## 7.1 - [7.1.0](/releases/release-7.1.0.md): 2023-05-31 diff --git a/releases/release-timeline.md b/releases/release-timeline.md index 74396c60b91f..57ab39ac6416 100644 --- a/releases/release-timeline.md +++ b/releases/release-timeline.md @@ -9,6 +9,7 @@ summary: 了解 TiDB 的版本发布时间线。 | 版本 | 发布日期 | | :--- | :--- | +| [7.2.0](/releases/release-7.2.0.md) | 2023-06-29 | | [6.5.3](/releases/release-6.5.3.md) | 2023-06-14 | | [7.1.0](/releases/release-7.1.0.md) | 2023-05-31 | | [6.5.2](/releases/release-6.5.2.md) | 2023-04-21 | From 4b1120f07a01680bfcd8b8f4a4c135eccc5bfb7c Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 29 Jun 2023 10:37:08 +0800 Subject: [PATCH 117/121] add DMR for 7.2 --- releases/release-notes.md | 2 +- releases/release-timeline.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-notes.md b/releases/release-notes.md index 22020e95b42d..a132f4a08be0 100644 --- a/releases/release-notes.md +++ b/releases/release-notes.md @@ -9,7 +9,7 @@ TiDB 历史版本发布声明如下: ## 7.2 -- [7.2.0](/releases/release-7.2.0.md): 2023-06-29 +- [7.2.0-DMR](/releases/release-7.2.0.md): 2023-06-29 ## 7.1 diff --git a/releases/release-timeline.md b/releases/release-timeline.md index 57ab39ac6416..52130a2bee77 100644 --- a/releases/release-timeline.md +++ b/releases/release-timeline.md @@ -9,7 +9,7 @@ summary: 了解 TiDB 的版本发布时间线。 | 版本 | 发布日期 | | :--- | :--- | -| [7.2.0](/releases/release-7.2.0.md) | 2023-06-29 | +| [7.2.0-DMR](/releases/release-7.2.0.md) | 2023-06-29 | | [6.5.3](/releases/release-6.5.3.md) | 2023-06-14 | | [7.1.0](/releases/release-7.1.0.md) | 2023-05-31 | | [6.5.2](/releases/release-6.5.2.md) | 2023-04-21 | From b84eebb94a517b1873adba7226851c6904b165f2 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 29 Jun 2023 10:37:43 +0800 Subject: [PATCH 118/121] Update releases/release-7.2.0.md Co-authored-by: xixirangrang --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 3d3b0aa4aae1..67b4cc981982 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -199,7 +199,7 @@ TiDB 版本:7.2.0 | TiDB Lightning | [`send-kv-size`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 用于设置单次发送到 TiKV 的键值对的大小。当键值对的大小达到设定的阈值时,它们将被 TiDB Lightning 立即发送到 TiKV,避免在导入大宽表的时候由于 TiDB Lightning 节点内存积累键值对过多导致 OOM 的问题。通过调整该参数,你可以在内存使用和导入速度之间找到平衡,提高导入过程的稳定性和效率。| | Data Migration | [`strict-optimistic-shard-mode`](/dm/feature-shard-merge-optimistic.md) | 新增 | 用于兼容历史版本 TiDB Data Migration v2.0 的分库分表同步 DDL 的行为。当用户选择乐观模式时,可以启用该参数,开启后,乐观模式下,同步任务遇到二类 DDL 时,整个任务会中断。在多个表的 DDL 变更有依赖关系的场景,可以及时中断同步,在用户手动处理完各表的 DDL 后,再继续同步数据,保障上下游数据的一致性。| | TiCDC | [`sink.protocol`](/ticdc/ticdc-changefeed-config.md) | 修改 | 扩展下游类型是 Kafka 时的可选值范围:增加 `"open-protocol"`。用于指定编码消息时使用的格式协议。| -| TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 Delete 事件的输出内容,只对 canal-json 和 open-protocol 协议有效。默认值为 false,即输出所有列的内容。当设置为 true 时,只输出主键列,或唯一索引列的内容。 | +| TiCDC | [`sink.delete-only-output-handle-key-columns`](/ticdc/ticdc-changefeed-config.md) | 新增 | 指定 DELETE 事件的输出内容,只对 `"canal-json"` 和 `"open-protocol"` 协议有效。默认值为 `false`,即输出所有列的内容。当设置为 `true` 时,只输出主键列,或唯一索引列的内容。 | ## 改进提升 From 46953e271b0679b2490fdc5df881970adfd262f1 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 29 Jun 2023 11:16:34 +0800 Subject: [PATCH 119/121] Apply suggestions from code review Co-authored-by: Aolin --- releases/release-7.2.0.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 67b4cc981982..52814f5172cf 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -35,7 +35,7 @@ TiDB 版本:7.2.0 SQL 支持新的 SQL 语句 IMPORT INTO,可以通过 TiDB 进行数据导入(实验特性) - TiDB 引入了一个新的 SQL 语句 IMPORT INTO。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 或 Google Cloud Storage(GCS)远程导入数据到 TiDB 中。 + TiDB 引入了一个新的 SQL 语句 IMPORT INTO。该语句集成了 TiDB Lightning 的物理导入模式的能力,使你无需单独部署和管理 TiDB Lightning 即可导入数据文件到 TiDB 中。例如,通过该语句,你可以直接从 Amazon S3 或 Google Cloud Storage (GCS) 远程导入数据到 TiDB 中。 数据库管理与可观测性 @@ -49,7 +49,7 @@ TiDB 版本:7.2.0 ### 性能 -* 新增支持下推以下两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md) 到 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) +* 新增支持下推以下两个[窗口函数](/tiflash/tiflash-supported-pushdown-calculations.md)到 TiFlash [#7427](https://github.com/pingcap/tiflash/issues/7427) @[xzhangxian1008](https://github.com/xzhangxian1008) * `FIRST_VALUE` * `LAST_VALUE` @@ -96,7 +96,7 @@ TiDB 版本:7.2.0 * 增强根据历史执行计划创建绑定的能力 [#39199](https://github.com/pingcap/tidb/issues/39199) @[qw4990](https://github.com/qw4990) - TiDB v7.2.0 进一步增强[根据历史执行计划创建绑定](/sql-plan-management.md#根据历史执行计划创建绑定)的能力,加强对复杂语句的解析和绑定,使绑定更稳固,并新增支持对以下 Hint 的绑定。 + TiDB v7.2.0 进一步增强[根据历史执行计划创建绑定](/sql-plan-management.md#根据历史执行计划创建绑定)的能力,加强对复杂语句的解析和绑定,使绑定更稳固,并新增支持对以下 Hint 的绑定: - [`AGG_TO_COP()`](/optimizer-hints.md#agg_to_cop) - [`LIMIT_TO_COP()`](/optimizer-hints.md#limit_to_cop) @@ -231,7 +231,7 @@ TiDB 版本:7.2.0 + Backup & Restore (BR) - - 为外部存储 Azure Blob Storage 提供 shared access signature (SAS) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) + - 为外部存储 Azure Blob Storage 提供共享访问签名 (SAS) 的访问方式 [#44199](https://github.com/pingcap/tidb/issues/44199) @[Leavrth](https://github.com/Leavrth) + TiCDC @@ -266,12 +266,12 @@ TiDB 版本:7.2.0 - 修复删除数据库导致 GC 推进慢的问题 [#33069](https://github.com/pingcap/tidb/issues/33069) @[tiancaiamao](https://github.com/tiancaiamao) - 修复分区表在 Index Join 的 probe 阶段找不到对应行而报错的问题 [#43686](https://github.com/pingcap/tidb/issues/43686) @[AilinKid](https://github.com/AilinKid) @[mjonss](https://github.com/mjonss) - 修复在创建分区表时使用 `SUBPARTITION` 没有警告提醒的问题 [#41198](https://github.com/pingcap/tidb/issues/41198) [#41200](https://github.com/pingcap/tidb/issues/41200) @[mjonss](https://github.com/mjonss) - - 修复了执行时间超过 `MAX_EXECUTION_TIME` 的 query 被 kill 时的报错信息和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) - - 修复了 `LEADING` hint 不支持查询块别名 (query block alias) 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) + - 修复执行时间超过 `MAX_EXECUTION_TIME` 的 query 被 kill 时的报错信息和 MySQL 不一致的问题 [#43031](https://github.com/pingcap/tidb/issues/43031) @[dveeden](https://github.com/dveeden) + - 修复 `LEADING` hint 不支持查询块别名 (query block alias) 的问题 [#44645](https://github.com/pingcap/tidb/issues/44645) @[qw4990](https://github.com/qw4990) - 修复 `LAST_INSERT_ID()` 函数的返回类型,从 VARCHAR 变更为 LONGLONG,与 MySQL 一致 [#44574](https://github.com/pingcap/tidb/issues/44574) @[Defined2014](https://github.com/Defined2014) - 修复在带有非关联子查询的语句中使用公共表表达式 (CTE) 可能导致结果错误的问题 [#44051](https://github.com/pingcap/tidb/issues/44051) @[winoros](https://github.com/winoros) - 修复 Join Reorder 可能会造成 Outer Join 结果错误的问题 [#44314](https://github.com/pingcap/tidb/issues/44314) @[AilinKid](https://github.com/AilinKid) - - 修复了 `PREPARE stmt FROM "ANALYZE TABLE xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320](https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + - 修复 `PREPARE stmt FROM "ANALYZE TABLE xxx"` 会被 `tidb_mem_quota_query` kill 掉的问题 [#44320](https://github.com/pingcap/tidb/issues/44320) @[chrysan](https://github.com/chrysan) + TiKV From f365960c2a0d187baeffd26bd65ca5e9a86a5e32 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 29 Jun 2023 12:10:22 +0800 Subject: [PATCH 120/121] Update releases/release-7.2.0.md --- releases/release-7.2.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.2.0.md b/releases/release-7.2.0.md index 52814f5172cf..aa049790268e 100644 --- a/releases/release-7.2.0.md +++ b/releases/release-7.2.0.md @@ -146,7 +146,7 @@ TiDB 版本:7.2.0 ADMIN RESUME DDL JOBS 1,2; ``` - 更多信息,请参考[用户文档](/ddl-introduction.md#ddl-相关的命令介绍)。 + 更多信息,请参考[用户文档](/ddl-introduction.md#ddl-相关的命令介绍)。 ### 数据迁移 From 5e63f5e49d8bcb957a744b17c847f5c72fadab9e Mon Sep 17 00:00:00 2001 From: qiancai Date: Thu, 29 Jun 2023 12:14:59 +0800 Subject: [PATCH 121/121] Update upgrade-tidb-using-tiup.md --- upgrade-tidb-using-tiup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upgrade-tidb-using-tiup.md b/upgrade-tidb-using-tiup.md index 39e5313cc351..c287053c49db 100644 --- a/upgrade-tidb-using-tiup.md +++ b/upgrade-tidb-using-tiup.md @@ -44,7 +44,7 @@ aliases: ['/docs-cn/dev/upgrade-tidb-using-tiup/','/docs-cn/dev/how-to/upgrade/u ### 2.1 查阅兼容性变更 -查阅 TiDB v7.1.0 release notes 中的[兼容性变更](/releases/release-7.1.0.md#兼容性变更)。如果有任何变更影响到了你的升级,请采取相应的措施。 +查阅 TiDB v7.2.0 release notes 中的[兼容性变更](/releases/release-7.2.0.md#兼容性变更)。如果有任何变更影响到了你的升级,请采取相应的措施。 ### 2.2 升级 TiUP 或更新 TiUP 离线镜像