From 332ba0a54ab235c49ec8a46ccfe88f59fac425ae Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 18 Jul 2023 13:44:25 +0800 Subject: [PATCH 001/114] add release note template Signed-off-by: Ran --- releases/release-7.3.0.md | 232 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 232 insertions(+) create mode 100644 releases/release-7.3.0.md diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md new file mode 100644 index 000000000000..8ef1a40576ee --- /dev/null +++ b/releases/release-7.3.0.md @@ -0,0 +1,232 @@ +--- +title: TiDB 7.3.0 Release Notes +summary: 了解 TiDB 7.3.0 版本的新功能、兼容性变更、改进提升,以及错误修复。 +--- + +# TiDB 7.3.0 Release Notes + +发版日期:2023 年 x 月 x 日 + +TiDB 版本:7.3.0 + +试用链接:[快速体验](https://docs.pingcap.com/zh/tidb/v7.3/quick-start-with-tidb) | [下载离线包](https://cn.pingcap.com/product-community/) + +在 7.3.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.2.0 升级至当前版本 (v7.3.0) 所需兼容性变更信息。如果从 v7.1.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 社区的贡献者们: + ++ [Contributor 1]() From df3e2f649569c484964645a7b61885c5f26143b6 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Thu, 20 Jul 2023 00:33:42 +0800 Subject: [PATCH 002/114] Update release-7.3.0.md --- releases/release-7.3.0.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 8ef1a40576ee..c18ec35b9706 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -36,6 +36,12 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 +* TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@qiancai** + + 在 v7.3.0 版本之前,TiFlash 尽量使用所有节点的副本进行数据扫描及 MPP 计算,以提供最强大的性能。在 v7.3.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** @@ -60,6 +66,12 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 +* List、List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@caiqian** + + List、List COLUMNS 分区表需要为分区指定分区条件。如果 INSERT 语句要插入的数据不匹配任何分区条件,则该语句将执行失败或不符合分区条件的数据被忽略。在 v7.3.0 版本,TiDB 为 List、List COLUMNS 分区表引入默认分区。在创建默认分区后,如果 INSERT 语句插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区的数据导致 INSERT 语句执行失败或者数据被忽略的情况。该功能自动开启。 + + 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 + ### 数据库管理 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -146,6 +158,8 @@ TiDB 版本:7.3.0 + TiFlash + - 支持新的 DTFile 格式版本,减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) **tw@caiqian** + - 提升 TiFlash 在存算分离架构下的性能和稳定性(实验特性) [#6882](https://github.com/pingcap/tiflash/issues/6882) @[JaySon-Huang](https://github.com/JaySon-Huang) @[breezewish](https://github.com/breezewish) @[JinheLin](https://github.com/JinheLin) **tw@caiqian** - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From 76d6ce27bd902024aa0ffe49835112616cc28d45 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 20 Jul 2023 11:17:07 +0800 Subject: [PATCH 003/114] add a section for deprecation --- releases/release-7.3.0.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index c18ec35b9706..4a03570e0c4b 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -139,6 +139,11 @@ TiDB 版本:7.3.0 | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | +## 废弃功能 + +- note +- note + ## 改进提升 + TiDB From 3e13edf424929792a5dafece925ef6877db8250a Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 21 Jul 2023 20:39:12 +0800 Subject: [PATCH 004/114] Label tidb workers to select eligible instances --- releases/release-7.3.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 4a03570e0c4b..e7f0663d4b7b 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -50,6 +50,12 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 +* 允许 DDL 任务运行在选中的 TiDB 实例上 [#issue号](链接) @[ywqzzy](https://github.com/ywqzzy) + + 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。 TiDB 在新版本提供了对 TiDB 节点添加标记的能力,借助标签把 DDL 任务制定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 + + 更多信息,请参考[用户文档](链接)。 + ### 高可用 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 45c57acd3aaab367b74f7afff3f927bb73dc923f Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 21 Jul 2023 20:44:37 +0800 Subject: [PATCH 005/114] CMD to show the progress of stats collection --- releases/release-7.3.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index e7f0663d4b7b..3837320e1a0b 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -94,6 +94,12 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 +* 显示统计信息收集的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) + + 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。在 v7.3.0 中,TiDB 加入了对统计信息收集进度的信息展示, 能够显示各个子任务的总体工作量,当前进度,以及对完成时间的预测。在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 + + 更多信息,请参考[用户文档](链接)。 + ### 安全 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 60d48a67023353299452772feca3a30b26ea4163 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 21 Jul 2023 20:47:13 +0800 Subject: [PATCH 006/114] fix title --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 3837320e1a0b..bdf891887fa6 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -50,7 +50,7 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 -* 允许 DDL 任务运行在选中的 TiDB 实例上 [#issue号](链接) @[ywqzzy](https://github.com/ywqzzy) +* 允许为 DDL 任务指定 TiDB 实例 [#issue号](链接) @[ywqzzy](https://github.com/ywqzzy) 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。 TiDB 在新版本提供了对 TiDB 节点添加标记的能力,借助标签把 DDL 任务制定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 From 5a20fa0c6089a1af236ee358190da49e9de2b663 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 21 Jul 2023 20:58:28 +0800 Subject: [PATCH 007/114] new optimizer hints --- releases/release-7.3.0.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index bdf891887fa6..bf15b16e5714 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -56,6 +56,16 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 +* 新增部分优化器提示 + + TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: + + - [INDEX_JOIN()]() 选择 Index Nested Loop Join,利用索引过滤并将结果集作为内表连接 + - [`NO_HASH_JOIN()`]() 选择哈希连接以外的连接方式。 + - [`NO_INDEX_HASH_JOIN()`]() 选择除 [Index Nested Loop Hash Join](/optimizer-hints#inl_hash_join) 以外的连接方式。 + + 更多信息,请参考[用户文档](/optimizer-hints)。 + ### 高可用 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 600321d7f41243eaf024463a30cb77bd60d8d00b Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 21 Jul 2023 21:01:56 +0800 Subject: [PATCH 008/114] include issue# and author --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index bf15b16e5714..cda3817d8cba 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -56,7 +56,7 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 -* 新增部分优化器提示 +* 新增部分优化器提示 [#issue号](链接) @[qw4990](https://github.com/qw4990) TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: From 79865ee5eb37c77ba1a484031a2279393f2de47e Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 21 Jul 2023 21:16:03 +0800 Subject: [PATCH 009/114] plan replayer with historical stats --- releases/release-7.3.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index cda3817d8cba..a60ef1c1d49a 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -110,6 +110,12 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 +* Plan Replayer 支持导出历史统计信息 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) + + 在新版本的 TiDB 中,通过新增的 [`dump with stats as of timestamp`]() 子句,[Plan Replayer](/sql-plan-replayer) 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出在问题发生时间点,执行计划是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 + + 更多信息,请参考[用户文档](链接)。 + ### 安全 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From f5ffc62fba93cc2c2f82be99fc01110f31801a46 Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 24 Jul 2023 10:08:26 +0800 Subject: [PATCH 010/114] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-7.3.0.md | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index a60ef1c1d49a..e8f28d56a692 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -126,10 +126,18 @@ TiDB 版本:7.3.0 ### 数据迁移 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - +* Lightning 引入新版冲突数据检测与处理的能力 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@lance6716** + 之前的版本 Lightning 逻辑导入和物理导入模式都有各自的冲突检测和处理的方式,配置较为复杂且不利于用户理解。同时使用物理导入模式,冲突的数据无法通过 replace 和 ignore 策略来处理。 + 新版的冲突检测和处理方式,逻辑导入和物理导入都是用同一套冲突检测和处理方式即遇到冲突数据报错,或者 replace 以及 ignore 掉冲突数据。同时还支持用户设置冲突记录的上限,如处理多少冲突记录后任务中断退出,用户也可以让程序记录哪些数据发生了冲突,方便用户排查。 + 在明确所需导入数据有较多的冲突数据时,推荐使用新版的冲突检测和处理策略,会有更好的性能。注意新、旧版冲突策略互斥使用,会在未来废弃掉旧版冲突检测和处理策略。 + 更多信息,请参考[用户文档](链接)。 + +* Lightning 支持 Partitioned Raft KV [#15069](https://github.com/tikv/tikv/pull/15069) @[GMHDBJD](https://github.com/GMHDBJD) **tw@GMHDBJD** + 该版本 Lightning 支持了 Partitioned Raft KV ,当用户使用了 Partitioned Raft KV 特性后,能提升 Lightning 导入数据的性能。 + 更多信息,请参考[用户文档](链接)。 + +* Lightning 引入新的参数"enable-diagnose-log" 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@D3Hunter** + 默认情况下,此功能未启用,只会打印包含 "lightning/main" 的日志。当启用时,将打印所有包(包括 "client-go" 和 "tidb")的日志,以帮助诊断与 "client-go" 和 "tidb" 相关的问题。 更多信息,请参考[用户文档](链接)。 ## 兼容性变更 @@ -142,7 +150,9 @@ TiDB 版本:7.3.0 -* 兼容性 1 +* TiDB Lightning + -逻辑导入模式插入冲突数据时执行的操作,默认配置从 on-duplicate = "replace" 改为 on-duplicate = "error" 即遇到冲突数据即报错。 + -TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的参数 "max-error" 不再包含导入数据冲突的上限。而是由新的参数 "conflict.threshold" 来控制可容忍的最大冲突的记录数。 * 兼容性 2 @@ -160,7 +170,12 @@ TiDB 版本:7.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | -| | | 新增/删除/修改 | | +|TiDB Lightning | conflict.strategy | 新增 |TiDB Lightning 新版冲突检测与处理的策略,包含”“, error,replace,ignore 四种策略,分别表示不做冲突检测,遇到冲突数据即报错并停止导入,遇到冲突记录 replace 掉已有的冲突记录,遇到冲突记录 ignore 掉需要插入的该条冲突记录。默认值为 ” “, 即不做冲突检测 | +|TiDB Lightning | conflict.threshold | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,onflict.strategy="error" 时默认值为 0,当onflict.strategy="replace”/“ignore" 时默认值为 maxint | +|TiDB Lightning | conflict.max-record-rows | 新增 |TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 100 | +|TiDB Lightning | tikv-importer.parallel-import | 新增 |TiDB Lightning 并行导入的参数名,因为旧的参数名 tikv-importer.incremental-import 会被误认为是增量导入的参数而误用,因此使用该新的参数名代替 | +|TiDB Lightning | tikv-importer.incremental-import | 删除 | TiDB Lightning 并行导入参数的旧名称,因为该参数名会被误认为增量导入的参数而误用,因此用新的参数名 tikv-importer.parallel-import 代替,且如果用户传入旧的参数会被自动转成新的参数名| + | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | From c2f2f934f0882f8bd9bbc37d8219e0f64f9a1c72 Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 24 Jul 2023 10:08:36 +0800 Subject: [PATCH 011/114] Update releases/release-7.3.0.md Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index e8f28d56a692..b07e3c421d6c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -230,7 +230,7 @@ TiDB 版本:7.3.0 + TiDB Lightning - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 更新 TiDB Lightning 并行导入的参数名称从 "tikv-importer.incremental-import" 变更为 “tikv-importer.parallel-import” ,避免用户误认为是增量导入而误用该参数。 [#45501](https://github.com/pingcap/tidb/issues/45501) @[lyzx2001](https://github.com/lyzx2001) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiUP From 99efe5c7ca1f06a6fc503a722d9a8ab266090c1e Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 24 Jul 2023 12:24:49 +0800 Subject: [PATCH 012/114] Apply suggestions from code review --- releases/release-7.3.0.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index b07e3c421d6c..fb83d3e9b248 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -50,13 +50,13 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 -* 允许为 DDL 任务指定 TiDB 实例 [#issue号](链接) @[ywqzzy](https://github.com/ywqzzy) +* 允许为 DDL 任务指定 TiDB 实例 [#issue号](链接) @[ywqzzy](https://github.com/ywqzzy) **tw@ran-huang** 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。 TiDB 在新版本提供了对 TiDB 节点添加标记的能力,借助标签把 DDL 任务制定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 更多信息,请参考[用户文档](链接)。 -* 新增部分优化器提示 [#issue号](链接) @[qw4990](https://github.com/qw4990) +* 新增部分优化器提示 [#issue号](链接) @[qw4990](https://github.com/qw4990) **tw@ran-huang** TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: @@ -82,7 +82,7 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 -* List、List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@caiqian** +* List、List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@caiqian** List、List COLUMNS 分区表需要为分区指定分区条件。如果 INSERT 语句要插入的数据不匹配任何分区条件,则该语句将执行失败或不符合分区条件的数据被忽略。在 v7.3.0 版本,TiDB 为 List、List COLUMNS 分区表引入默认分区。在创建默认分区后,如果 INSERT 语句插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区的数据导致 INSERT 语句执行失败或者数据被忽略的情况。该功能自动开启。 @@ -104,13 +104,13 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 -* 显示统计信息收集的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) +* 显示统计信息收集的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。在 v7.3.0 中,TiDB 加入了对统计信息收集进度的信息展示, 能够显示各个子任务的总体工作量,当前进度,以及对完成时间的预测。在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 更多信息,请参考[用户文档](链接)。 -* Plan Replayer 支持导出历史统计信息 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) +* Plan Replayer 支持导出历史统计信息 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** 在新版本的 TiDB 中,通过新增的 [`dump with stats as of timestamp`]() 子句,[Plan Replayer](/sql-plan-replayer) 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出在问题发生时间点,执行计划是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 @@ -206,8 +206,8 @@ TiDB 版本:7.3.0 + TiFlash - - 支持新的 DTFile 格式版本,减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) **tw@caiqian** - - 提升 TiFlash 在存算分离架构下的性能和稳定性(实验特性) [#6882](https://github.com/pingcap/tiflash/issues/6882) @[JaySon-Huang](https://github.com/JaySon-Huang) @[breezewish](https://github.com/breezewish) @[JinheLin](https://github.com/JinheLin) **tw@caiqian** + - 支持新的 DTFile 格式版本,减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) **tw@caiqian** + - 提升 TiFlash 在存算分离架构下的性能和稳定性(实验特性) [#6882](https://github.com/pingcap/tiflash/issues/6882) @[JaySon-Huang](https://github.com/JaySon-Huang) @[breezewish](https://github.com/breezewish) @[JinheLin](https://github.com/JinheLin) **tw@caiqian** - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From 0b2a70827ab167109a7cae20597ef8a6d1290985 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Mon, 24 Jul 2023 18:21:55 +0800 Subject: [PATCH 013/114] local runtime filter --- releases/release-7.3.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index fb83d3e9b248..984ed345a79a 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -42,6 +42,12 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 +* TiFlash 支持节点内 `Runtime Filter` [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) + + `Runtime Filter` 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 `Runtime Filter`,提升了数据分析类查询的性能,部分 TPC-H 查询有接近 30% 的性能提升。 + + 更多信息,请参考[用户文档](/runtime-filter)。 + ### 稳定性 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 991d8421ed44419dbda3459cf1a4ccf8999f22e4 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Mon, 24 Jul 2023 18:34:06 +0800 Subject: [PATCH 014/114] local runtime filter --- releases/release-7.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 984ed345a79a..edd388fc5d40 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -44,7 +44,7 @@ TiDB 版本:7.3.0 * TiFlash 支持节点内 `Runtime Filter` [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) - `Runtime Filter` 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 `Runtime Filter`,提升了数据分析类查询的性能,部分 TPC-H 查询有接近 30% 的性能提升。 + `Runtime Filter` 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 `Runtime Filter`,提升了数据分析类查询的性能,部分 TPC-H 查询有接近 30% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 更多信息,请参考[用户文档](/runtime-filter)。 @@ -166,7 +166,7 @@ TiDB 版本:7.3.0 | 变量名 | 修改类型 | 描述 | |---|----|------| -| | 新增/删除/修改 | | +| [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) | 新增 | 控制是否启用 [`Runtime Filter`](/runtime-filter) 。 `OFF`,关闭`Runtime Filter`; `LOCAL`,在节点内启用 `Runtime Filter`。| | | 新增/删除/修改 | | | | 新增/删除/修改 | | | | 新增/删除/修改 | | From be9cee9f200876def0ed1acb36c5f832d9a020d1 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 25 Jul 2023 11:43:33 +0800 Subject: [PATCH 015/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index edd388fc5d40..442b13c2d526 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -42,7 +42,7 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 -* TiFlash 支持节点内 `Runtime Filter` [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) +* TiFlash 支持节点内 `Runtime Filter` [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** `Runtime Filter` 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 `Runtime Filter`,提升了数据分析类查询的性能,部分 TPC-H 查询有接近 30% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 From f82914c88e936bfc58ba001b5f9512ddde721037 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 25 Jul 2023 11:46:44 +0800 Subject: [PATCH 016/114] Apply suggestions from code review --- releases/release-7.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 442b13c2d526..96ad42af46b0 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -138,11 +138,11 @@ TiDB 版本:7.3.0 在明确所需导入数据有较多的冲突数据时,推荐使用新版的冲突检测和处理策略,会有更好的性能。注意新、旧版冲突策略互斥使用,会在未来废弃掉旧版冲突检测和处理策略。 更多信息,请参考[用户文档](链接)。 -* Lightning 支持 Partitioned Raft KV [#15069](https://github.com/tikv/tikv/pull/15069) @[GMHDBJD](https://github.com/GMHDBJD) **tw@GMHDBJD** +* Lightning 支持 Partitioned Raft KV [#15069](https://github.com/tikv/tikv/pull/15069) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** 该版本 Lightning 支持了 Partitioned Raft KV ,当用户使用了 Partitioned Raft KV 特性后,能提升 Lightning 导入数据的性能。 更多信息,请参考[用户文档](链接)。 -* Lightning 引入新的参数"enable-diagnose-log" 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@D3Hunter** +* Lightning 引入新的参数"enable-diagnose-log" 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** 默认情况下,此功能未启用,只会打印包含 "lightning/main" 的日志。当启用时,将打印所有包(包括 "client-go" 和 "tidb")的日志,以帮助诊断与 "client-go" 和 "tidb" 相关的问题。 更多信息,请参考[用户文档](链接)。 From 3dcb8c81bf852ef8badcefabb280753442403d68 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 25 Jul 2023 13:47:55 +0800 Subject: [PATCH 017/114] cleanup format --- releases/release-7.3.0.md | 97 +++++++++++---------------------------- 1 file changed, 27 insertions(+), 70 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 96ad42af46b0..c9d4ef9424ff 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -20,45 +20,25 @@ TiDB 版本:7.3.0 ### 可扩展性 - - -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### 性能 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@qiancai** - 在 v7.3.0 版本之前,TiFlash 尽量使用所有节点的副本进行数据扫描及 MPP 计算,以提供最强大的性能。在 v7.3.0 版本中,TiFlash 引入副本选择策略,可以根据节点区域属性,选择特定的副本,并调度部分节点进行数据扫描及 MPP 计算。当集群部署在超过一个机房,并且每个机房都拥有完整的 TiFlash 数据副本时,可以只选择当前机房的 TiFlash 副本,在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,避免大量跨机房的网络数据传输。新增系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read) 用于设定节点选择策略。 + 在 v7.3.0 版本之前,TiFlash 尽量使用所有节点的副本进行数据扫描和 MPP 计算,以提供最强大的性能。在 v7.3.0 版本中,TiFlash 引入副本选择策略,该策略可以根据节点区域属性选择特定的副本,并调度部分节点进行数据扫描及 MPP 计算。当集群部署在多个机房且每个机房都拥有完整的 TiFlash 数据副本时,可以只选择当前机房的 TiFlash 副本,在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,从而避免大量跨机房的网络数据传输。新增系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read) 用于设定节点选择策略。 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 -* TiFlash 支持节点内 `Runtime Filter` [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** +* TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** - `Runtime Filter` 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 `Runtime Filter`,提升了数据分析类查询的性能,部分 TPC-H 查询有接近 30% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 + Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的性能,在部分 TPC-H 查询中可达到接近 30% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 更多信息,请参考[用户文档](/runtime-filter)。 ### 稳定性 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 允许为 DDL 任务指定 TiDB 实例 [#issue号](链接) @[ywqzzy](https://github.com/ywqzzy) **tw@ran-huang** - 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。 TiDB 在新版本提供了对 TiDB 节点添加标记的能力,借助标签把 DDL 任务制定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 + 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。TiDB 在 v7.3.0 中提供了对 TiDB 节点添加标记的能力,通过使用标签把 DDL 任务指定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 更多信息,请参考[用户文档](链接)。 @@ -66,53 +46,29 @@ TiDB 版本:7.3.0 TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: - - [INDEX_JOIN()]() 选择 Index Nested Loop Join,利用索引过滤并将结果集作为内表连接 - - [`NO_HASH_JOIN()`]() 选择哈希连接以外的连接方式。 - - [`NO_INDEX_HASH_JOIN()`]() 选择除 [Index Nested Loop Hash Join](/optimizer-hints#inl_hash_join) 以外的连接方式。 + - [INDEX_JOIN()](链接) 选择 Index Nested Loop Join,利用索引过滤并将结果集作为内表连接。 + - [`NO_HASH_JOIN()`](链接) 选择哈希连接以外的连接方式。 + - [`NO_INDEX_HASH_JOIN()`](链接) 选择除 [Index Nested Loop Hash Join](/optimizer-hints#inl_hash_join) 以外的连接方式。 更多信息,请参考[用户文档](/optimizer-hints)。 ### 高可用 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### SQL 功能 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - -* List、List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@caiqian** +* List、List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@qiancai** - List、List COLUMNS 分区表需要为分区指定分区条件。如果 INSERT 语句要插入的数据不匹配任何分区条件,则该语句将执行失败或不符合分区条件的数据被忽略。在 v7.3.0 版本,TiDB 为 List、List COLUMNS 分区表引入默认分区。在创建默认分区后,如果 INSERT 语句插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区的数据导致 INSERT 语句执行失败或者数据被忽略的情况。该功能自动开启。 + List、List COLUMNS 分区表需要为分区指定分区条件。如果 `INSERT` 语句要插入的数据不匹配任何分区条件,则该语句将执行失败或不符合分区条件的数据被忽略。在 v7.3.0 中,TiDB 为 List、List COLUMNS 分区表引入默认分区。在创建默认分区后,如果 `INSERT` 语句插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区的数据导致 INSERT 语句执行失败或者数据被忽略的情况。该功能自动开启。 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 ### 数据库管理 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### 可观测性 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 显示统计信息收集的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** - 对大表的统计信息收集经常会持续比较长的时间。 在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。在 v7.3.0 中,TiDB 加入了对统计信息收集进度的信息展示, 能够显示各个子任务的总体工作量,当前进度,以及对完成时间的预测。在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 + 对大表的统计信息收集经常会持续比较长的时间。在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。在 v7.3.0 中,TiDB 加入了对统计信息收集进度的信息展示,能够显示各个子任务的总体工作量、当前进度、以及对完成时间的预测。在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 更多信息,请参考[用户文档](链接)。 @@ -124,26 +80,26 @@ TiDB 版本:7.3.0 ### 安全 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### 数据迁移 -* Lightning 引入新版冲突数据检测与处理的能力 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@lance6716** - 之前的版本 Lightning 逻辑导入和物理导入模式都有各自的冲突检测和处理的方式,配置较为复杂且不利于用户理解。同时使用物理导入模式,冲突的数据无法通过 replace 和 ignore 策略来处理。 - 新版的冲突检测和处理方式,逻辑导入和物理导入都是用同一套冲突检测和处理方式即遇到冲突数据报错,或者 replace 以及 ignore 掉冲突数据。同时还支持用户设置冲突记录的上限,如处理多少冲突记录后任务中断退出,用户也可以让程序记录哪些数据发生了冲突,方便用户排查。 +* Lightning 引入新版冲突数据检测与处理的能力 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@hfxsd** + + 之前的版本 Lightning 逻辑导入和物理导入模式都有各自的冲突检测和处理的方式,配置较为复杂且不利于用户理解。同时使用物理导入模式,冲突的数据无法通过 replace 和 ignore 策略来处理。新版的冲突检测和处理方式,逻辑导入和物理导入都是用同一套冲突检测和处理方式即遇到冲突数据报错,或者 replace 以及 ignore 掉冲突数据。同时还支持用户设置冲突记录的上限,如处理多少冲突记录后任务中断退出,用户也可以让程序记录哪些数据发生了冲突,方便用户排查。 + 在明确所需导入数据有较多的冲突数据时,推荐使用新版的冲突检测和处理策略,会有更好的性能。注意新、旧版冲突策略互斥使用,会在未来废弃掉旧版冲突检测和处理策略。 + 更多信息,请参考[用户文档](链接)。 * Lightning 支持 Partitioned Raft KV [#15069](https://github.com/tikv/tikv/pull/15069) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** + 该版本 Lightning 支持了 Partitioned Raft KV ,当用户使用了 Partitioned Raft KV 特性后,能提升 Lightning 导入数据的性能。 + 更多信息,请参考[用户文档](链接)。 * Lightning 引入新的参数"enable-diagnose-log" 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - 默认情况下,此功能未启用,只会打印包含 "lightning/main" 的日志。当启用时,将打印所有包(包括 "client-go" 和 "tidb")的日志,以帮助诊断与 "client-go" 和 "tidb" 相关的问题。 + + 默认情况下,此功能未启用,只会打印包含 "lightning/main" 的日志。当启用时,将打印所有包(包括 "client-go" 和 "tidb")的日志,以帮助诊断与 "client-go" 和 "tidb" 相关的问题。 + 更多信息,请参考[用户文档](链接)。 ## 兼容性变更 @@ -156,9 +112,10 @@ TiDB 版本:7.3.0 -* TiDB Lightning - -逻辑导入模式插入冲突数据时执行的操作,默认配置从 on-duplicate = "replace" 改为 on-duplicate = "error" 即遇到冲突数据即报错。 - -TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的参数 "max-error" 不再包含导入数据冲突的上限。而是由新的参数 "conflict.threshold" 来控制可容忍的最大冲突的记录数。 +* TiDB Lightning **tw@hfxsd** + + - 逻辑导入模式插入冲突数据时执行的操作,默认配置从 on-duplicate = "replace" 改为 on-duplicate = "error" 即遇到冲突数据即报错。 + - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的参数 "max-error" 不再包含导入数据冲突的上限。而是由新的参数 "conflict.threshold" 来控制可容忍的最大冲突的记录数。 * 兼容性 2 @@ -212,8 +169,8 @@ TiDB 版本:7.3.0 + TiFlash - - 支持新的 DTFile 格式版本,减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) **tw@caiqian** - - 提升 TiFlash 在存算分离架构下的性能和稳定性(实验特性) [#6882](https://github.com/pingcap/tiflash/issues/6882) @[JaySon-Huang](https://github.com/JaySon-Huang) @[breezewish](https://github.com/breezewish) @[JinheLin](https://github.com/JinheLin) **tw@caiqian** + - 支持新的 DTFile 格式版本,减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** + - 提升 TiFlash 在存算分离架构下的性能和稳定性(实验特性) [#6882](https://github.com/pingcap/tiflash/issues/6882) @[JaySon-Huang](https://github.com/JaySon-Huang) @[breezewish](https://github.com/breezewish) @[JinheLin](https://github.com/JinheLin) **tw@qiancai** - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -236,7 +193,7 @@ TiDB 版本:7.3.0 + TiDB Lightning - - 更新 TiDB Lightning 并行导入的参数名称从 "tikv-importer.incremental-import" 变更为 “tikv-importer.parallel-import” ,避免用户误认为是增量导入而误用该参数。 [#45501](https://github.com/pingcap/tidb/issues/45501) @[lyzx2001](https://github.com/lyzx2001) + - 更新 TiDB Lightning 并行导入的参数名称从 "tikv-importer.incremental-import" 变更为 “tikv-importer.parallel-import” ,避免用户误认为是增量导入而误用该参数。 [#45501](https://github.com/pingcap/tidb/issues/45501) @[lyzx2001](https://github.com/lyzx2001) **tw@hfxsd** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiUP From f20542c1bb2af3840f0377c657bf95dcb5b505f6 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Tue, 25 Jul 2023 14:23:14 +0800 Subject: [PATCH 018/114] manual management of runaway queries --- releases/release-7.3.0.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index edd388fc5d40..d610edb17011 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -72,6 +72,14 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](/optimizer-hints)。 +* 手工标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) + + 在 v7.2.0 中,TiDB 对资源使用超出预期的查询 (Runaway Queries) 实施自动管理,运行时间超过预期的查询能够被自动降级或取消。在实际运行时,只依靠规则无法筛覆盖所有情况。 因此,在 v7.2.0 中,TiDB 补充了手工标记查询的能力。 利用新增的命令 [`QUERY WATCH`](),用户可以根据 SQL 的文本、SQL Digest、或者执行计划对查询进行标记,命中的查询可以被降级或取消。 + + 手工标记 Runaway Queries 的能力,为数据库中突发的性能问题提供了有效的干预手段。针对由查询引发的性能问题,在找到问题根本原因之前,能够快速缓解其对整体性能的影响,提升系统服务质量。 + + 更多信息,请参考[用户文档](/tidb-resource-control#管理资源消耗超出预期的查询-runaway-queries)。 + ### 高可用 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 20149036c58a8885c0d17b8b47bff417b18a49d8 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 25 Jul 2023 14:25:10 +0800 Subject: [PATCH 019/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 87160125659e..1046f3eb2848 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -52,7 +52,7 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](/optimizer-hints)。 -* 手工标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) +* 手工标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** 在 v7.2.0 中,TiDB 对资源使用超出预期的查询 (Runaway Queries) 实施自动管理,运行时间超过预期的查询能够被自动降级或取消。在实际运行时,只依靠规则无法筛覆盖所有情况。 因此,在 v7.2.0 中,TiDB 补充了手工标记查询的能力。 利用新增的命令 [`QUERY WATCH`](),用户可以根据 SQL 的文本、SQL Digest、或者执行计划对查询进行标记,命中的查询可以被降级或取消。 From 64c6ee3a338b2b6ddeb0a50cbc4f28736af16aef Mon Sep 17 00:00:00 2001 From: Roger Song Date: Tue, 25 Jul 2023 14:37:30 +0800 Subject: [PATCH 020/114] Refine the design of cursorFetch to avoid OOM --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 1046f3eb2848..985904635781 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -162,7 +162,7 @@ TiDB 版本:7.3.0 + TiDB - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV From 6b1514f7090b3922241c1aa7dc68f3419b44289a Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 25 Jul 2023 14:40:43 +0800 Subject: [PATCH 021/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 985904635781..59c4540cd6bb 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -162,7 +162,7 @@ TiDB 版本:7.3.0 + TiDB - - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) + - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV From 8263c269eb0fa28c44f11bddad42f305d238105f Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 26 Jul 2023 17:04:18 +0800 Subject: [PATCH 022/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 59c4540cd6bb..1eb95d61ed1d 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -144,7 +144,7 @@ TiDB 版本:7.3.0 |TiDB Lightning | conflict.strategy | 新增 |TiDB Lightning 新版冲突检测与处理的策略,包含”“, error,replace,ignore 四种策略,分别表示不做冲突检测,遇到冲突数据即报错并停止导入,遇到冲突记录 replace 掉已有的冲突记录,遇到冲突记录 ignore 掉需要插入的该条冲突记录。默认值为 ” “, 即不做冲突检测 | |TiDB Lightning | conflict.threshold | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,onflict.strategy="error" 时默认值为 0,当onflict.strategy="replace”/“ignore" 时默认值为 maxint | |TiDB Lightning | conflict.max-record-rows | 新增 |TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 100 | -|TiDB Lightning | tikv-importer.parallel-import | 新增 |TiDB Lightning 并行导入的参数名,因为旧的参数名 tikv-importer.incremental-import 会被误认为是增量导入的参数而误用,因此使用该新的参数名代替 | +|TiDB Lightning | tikv-importer.parallel-import | 新增 |TiDB Lightning 并行导入的参数名,因为旧的参数名 tikv-importer.incremental-import 会被误认为是增量导入的参数而误用,因此使用该新的参数名代替 **tw:qiancai** | |TiDB Lightning | tikv-importer.incremental-import | 删除 | TiDB Lightning 并行导入参数的旧名称,因为该参数名会被误认为增量导入的参数而误用,因此用新的参数名 tikv-importer.parallel-import 代替,且如果用户传入旧的参数会被自动转成新的参数名| | | | 新增/删除/修改 | | From 124c6613286fe4d7643ed8e655467a74e6652ed2 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 27 Jul 2023 10:27:15 +0800 Subject: [PATCH 023/114] Apply suggestions from code review Co-authored-by: Yiding Cui Co-authored-by: EasonBall <592838129@qq.com> Co-authored-by: Connor Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> Co-authored-by: Roger Song Co-authored-by: Jianjun Liao <36503113+Leavrth@users.noreply.github.com> --- releases/release-7.3.0.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 1eb95d61ed1d..5429c239dca4 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -32,13 +32,16 @@ TiDB 版本:7.3.0 Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的性能,在部分 TPC-H 查询中可达到接近 30% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 +* TiFlash 支持 CTE 执行(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) + + 在 v7.3.0 版本之前,TiFlash 的 MPP 默认无法执行包含 CTE 的查询,需要通过系统变量 [tidb_opt_force_inline_cte](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_force_inline_cte-new-in-v630) 将 CTE inline 展开来达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 版本中,TiFlash MPP 支持了 CTE 的执行,在不需要将 CTE inline 的情况下也可以将包含 CTE 的查询尽可能的放在 MPP 框架下执行。TPC-DS 中包含 CTE 的查询总耗时相比 inline 的执行方式相比,该功能可以将总执行时间提速 20%。该功能由变量 [tidb_opt_enable_mpp_shared_cte_execution](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_enable_mpp_shared_cte_execution-new-in-v720) 控制。 更多信息,请参考[用户文档](/runtime-filter)。 ### 稳定性 -* 允许为 DDL 任务指定 TiDB 实例 [#issue号](链接) @[ywqzzy](https://github.com/ywqzzy) **tw@ran-huang** +* 允许为后端分布式框架 DDL 任务指定 TiDB 实例(实验特性) [#45430](https://github.com/pingcap/tidb/issues/45430) @[ywqzzy](https://github.com/ywqzzy) **tw@ran-huang** - 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。TiDB 在 v7.3.0 中提供了对 TiDB 节点添加标记的能力,通过使用标签把 DDL 任务指定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 + 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。TiDB 在 v7.3.0 中为后端分布式框架提供了对 TiDB 节点添加标记的能力,通过使用标签把 DDL 任务指定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 本功能仅在分布式框架中有效。 更多信息,请参考[用户文档](链接)。 @@ -54,7 +57,7 @@ TiDB 版本:7.3.0 * 手工标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** - 在 v7.2.0 中,TiDB 对资源使用超出预期的查询 (Runaway Queries) 实施自动管理,运行时间超过预期的查询能够被自动降级或取消。在实际运行时,只依靠规则无法筛覆盖所有情况。 因此,在 v7.2.0 中,TiDB 补充了手工标记查询的能力。 利用新增的命令 [`QUERY WATCH`](),用户可以根据 SQL 的文本、SQL Digest、或者执行计划对查询进行标记,命中的查询可以被降级或取消。 + 在 v7.2.0 中,TiDB 对资源使用超出预期的查询 (Runaway Queries) 实施自动管理,运行时间超过预期的查询能够被自动降级或取消。在实际运行时,只依靠规则无法筛覆盖所有情况。 因此,在 v7.3.0 中,TiDB 补充了手工标记查询的能力。 利用新增的命令 [`QUERY WATCH`](),用户可以根据 SQL 的文本、SQL Digest、或者执行计划对查询进行标记,命中的查询可以被降级或取消。 手工标记 Runaway Queries 的能力,为数据库中突发的性能问题提供了有效的干预手段。针对由查询引发的性能问题,在找到问题根本原因之前,能够快速缓解其对整体性能的影响,提升系统服务质量。 @@ -98,7 +101,7 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 -* Lightning 支持 Partitioned Raft KV [#15069](https://github.com/tikv/tikv/pull/15069) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** +* Lightning 支持 Partitioned Raft KV(实验特性) [#15069](https://github.com/tikv/tikv/pull/15069) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** 该版本 Lightning 支持了 Partitioned Raft KV ,当用户使用了 Partitioned Raft KV 特性后,能提升 Lightning 导入数据的性能。 @@ -131,7 +134,6 @@ TiDB 版本:7.3.0 | 变量名 | 修改类型 | 描述 | |---|----|------| -| [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) | 新增 | 控制是否启用 [`Runtime Filter`](/runtime-filter) 。 `OFF`,关闭`Runtime Filter`; `LOCAL`,在节点内启用 `Runtime Filter`。| | | 新增/删除/修改 | | | | 新增/删除/修改 | | | | 新增/删除/修改 | | @@ -163,6 +165,7 @@ TiDB 版本:7.3.0 + TiDB - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) + - EXPLAIN 新增开关用以展示在优化期间被执行的子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros] - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV @@ -186,7 +189,7 @@ TiDB 版本:7.3.0 + Backup & Restore (BR) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 为外部存储 Azure Blob Storage 提供加密范围和加密密钥的支持 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC From 8b52808e557b0a76aaaf92a7638eb1b1002d058a Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 27 Jul 2023 10:28:20 +0800 Subject: [PATCH 024/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 5429c239dca4..37f40f7411ec 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -39,12 +39,6 @@ TiDB 版本:7.3.0 ### 稳定性 -* 允许为后端分布式框架 DDL 任务指定 TiDB 实例(实验特性) [#45430](https://github.com/pingcap/tidb/issues/45430) @[ywqzzy](https://github.com/ywqzzy) **tw@ran-huang** - - 在繁忙的系统中,运行繁重的 DDL 工作会消耗大量计算资源,从而影响在线业务的服务质量。TiDB 在 v7.3.0 中为后端分布式框架提供了对 TiDB 节点添加标记的能力,通过使用标签把 DDL 任务指定到部分 TiDB 节点,从而能够将 DDL 操作与在线业务的 TiDB 节点分离,提升在线业务的稳定性,保证业务的响应时间。 本功能仅在分布式框架中有效。 - - 更多信息,请参考[用户文档](链接)。 - * 新增部分优化器提示 [#issue号](链接) @[qw4990](https://github.com/qw4990) **tw@ran-huang** TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: From afd67c35122bafef7eb3ba59fae75f8e37659eb2 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 27 Jul 2023 11:10:00 +0800 Subject: [PATCH 025/114] Update releases/release-7.3.0.md Co-authored-by: Roger Song --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 37f40f7411ec..8034b367bc60 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -30,7 +30,7 @@ TiDB 版本:7.3.0 * TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** - Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的性能,在部分 TPC-H 查询中可达到接近 30% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 + Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,部分 TPC-DS 查询可达到 10% ~ 50% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 * TiFlash 支持 CTE 执行(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) From 6073876ee3ae422f49d203cad7182b7c86f4a324 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 27 Jul 2023 12:32:00 +0800 Subject: [PATCH 026/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 8034b367bc60..70e6a4150b4c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -32,7 +32,7 @@ TiDB 版本:7.3.0 Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,部分 TPC-DS 查询可达到 10% ~ 50% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 -* TiFlash 支持 CTE 执行(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) +* TiFlash 支持 CTE 执行(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw:ran-huang** 在 v7.3.0 版本之前,TiFlash 的 MPP 默认无法执行包含 CTE 的查询,需要通过系统变量 [tidb_opt_force_inline_cte](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_force_inline_cte-new-in-v630) 将 CTE inline 展开来达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 版本中,TiFlash MPP 支持了 CTE 的执行,在不需要将 CTE inline 的情况下也可以将包含 CTE 的查询尽可能的放在 MPP 框架下执行。TPC-DS 中包含 CTE 的查询总耗时相比 inline 的执行方式相比,该功能可以将总执行时间提速 20%。该功能由变量 [tidb_opt_enable_mpp_shared_cte_execution](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_enable_mpp_shared_cte_execution-new-in-v720) 控制。 更多信息,请参考[用户文档](/runtime-filter)。 From e1086a50345c05eaa85aa3d2ac917726fa80ffd9 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 27 Jul 2023 16:15:06 +0800 Subject: [PATCH 027/114] Update releases/release-7.3.0.md Co-authored-by: Roger Song --- releases/release-7.3.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 70e6a4150b4c..64aab2440a5a 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -160,6 +160,7 @@ TiDB 版本:7.3.0 - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - EXPLAIN 新增开关用以展示在优化期间被执行的子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros] + - 在启用 [`Global Kill`](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Ctrl+C 终止当前会话。 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV From 098b6234e0854a1e3806aec59ec6a82cb9cc0699 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 27 Jul 2023 17:20:09 +0800 Subject: [PATCH 028/114] Update releases/release-7.3.0.md Co-authored-by: Elsa <111482174+elsa0520@users.noreply.github.com> --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 64aab2440a5a..eb1a8334ba0e 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -30,7 +30,7 @@ TiDB 版本:7.3.0 * TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** - Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,部分 TPC-DS 查询可达到 10% ~ 50% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v730-版本开始引入) 为 `LOCAL` 打开。 + Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,部分 TPC-DS 查询可达到 10% ~ 50% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v720-版本开始引入) 为 `LOCAL` 打开。 * TiFlash 支持 CTE 执行(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw:ran-huang** From 4824b05d75a54896f1dd63f4c694b8c014a01df3 Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 28 Jul 2023 09:56:13 +0800 Subject: [PATCH 029/114] Apply suggestions from code review Co-authored-by: Jianjun Liao <36503113+Leavrth@users.noreply.github.com> --- releases/release-7.3.0.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index eb1a8334ba0e..95fd7b3121a2 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -32,10 +32,11 @@ TiDB 版本:7.3.0 Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,部分 TPC-DS 查询可达到 10% ~ 50% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v720-版本开始引入) 为 `LOCAL` 打开。 + 更多信息,请参考[用户文档](/runtime-filter)。 + * TiFlash 支持 CTE 执行(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw:ran-huang** 在 v7.3.0 版本之前,TiFlash 的 MPP 默认无法执行包含 CTE 的查询,需要通过系统变量 [tidb_opt_force_inline_cte](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_force_inline_cte-new-in-v630) 将 CTE inline 展开来达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 版本中,TiFlash MPP 支持了 CTE 的执行,在不需要将 CTE inline 的情况下也可以将包含 CTE 的查询尽可能的放在 MPP 框架下执行。TPC-DS 中包含 CTE 的查询总耗时相比 inline 的执行方式相比,该功能可以将总执行时间提速 20%。该功能由变量 [tidb_opt_enable_mpp_shared_cte_execution](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_enable_mpp_shared_cte_execution-new-in-v720) 控制。 - 更多信息,请参考[用户文档](/runtime-filter)。 ### 稳定性 @@ -142,6 +143,8 @@ TiDB 版本:7.3.0 |TiDB Lightning | conflict.max-record-rows | 新增 |TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 100 | |TiDB Lightning | tikv-importer.parallel-import | 新增 |TiDB Lightning 并行导入的参数名,因为旧的参数名 tikv-importer.incremental-import 会被误认为是增量导入的参数而误用,因此使用该新的参数名代替 **tw:qiancai** | |TiDB Lightning | tikv-importer.incremental-import | 删除 | TiDB Lightning 并行导入参数的旧名称,因为该参数名会被误认为增量导入的参数而误用,因此用新的参数名 tikv-importer.parallel-import 代替,且如果用户传入旧的参数会被自动转成新的参数名| +|BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | +|BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | From 9a133a4feaa8be8e82d195affa500761d950afb4 Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 28 Jul 2023 12:33:00 +0800 Subject: [PATCH 030/114] Apply suggestions from code review --- releases/release-7.3.0.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 95fd7b3121a2..f3a5577da3ce 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -30,13 +30,17 @@ TiDB 版本:7.3.0 * TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** - Runtime Filter 是一种在查询规划时生成的动态取值的谓词,在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。TiFlash 在 v7.3.0 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,部分 TPC-DS 查询可达到 10% ~ 50% 的性能提升。此特性在 v7.3.0 默认关闭,通过设置变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v720-版本开始引入) 为 `LOCAL` 打开。 + Runtime Filter 是一种在查询规划时生成的动态取值的谓词。在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。自 v7.3.0 起,TiFlash 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,在部分 TPC-DS 查询中可达到 10% ~ 50% 的性能提升。 - 更多信息,请参考[用户文档](/runtime-filter)。 + 该特性在 v7.3.0 默认关闭。要启用此功能,需将变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v720-版本开始引入) 设置为 `LOCAL`。 -* TiFlash 支持 CTE 执行(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw:ran-huang** + 更多信息,请参考[用户文档](/runtime-filter.md)。 - 在 v7.3.0 版本之前,TiFlash 的 MPP 默认无法执行包含 CTE 的查询,需要通过系统变量 [tidb_opt_force_inline_cte](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_force_inline_cte-new-in-v630) 将 CTE inline 展开来达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 版本中,TiFlash MPP 支持了 CTE 的执行,在不需要将 CTE inline 的情况下也可以将包含 CTE 的查询尽可能的放在 MPP 框架下执行。TPC-DS 中包含 CTE 的查询总耗时相比 inline 的执行方式相比,该功能可以将总执行时间提速 20%。该功能由变量 [tidb_opt_enable_mpp_shared_cte_execution](https://docs.pingcap.com/tidb/dev/system-variables#tidb_opt_enable_mpp_shared_cte_execution-new-in-v720) 控制。 +* TiFlash 支持执行公共表表达式 (CTE)(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw@ran-huang** + + 在 v7.3.0 版本之前,TiFlash 的 MPP 引擎默认无法执行包含 CTE 的查询,你需要通过系统变量 [`tidb_opt_force_inline_cte`](/system-variables.md#tidb_opt_force_inline_cte-从-v630-版本开始引入) 将 CTE inline 展开,达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 中,TiFlash MPP 引擎支持执行包含 CTE 的查询,无需将 CTE inline 展开也可以尽可能地在 MPP 框架中执行查询。在 TPC-DS 基准测试中,与 inline 的执行方式相比,该功能可以将包含 CTE 的查询的总执行速度提升 20%。 + + 该功能为实验特性,默认关闭,由变量 [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) 控制。 ### 稳定性 @@ -44,7 +48,7 @@ TiDB 版本:7.3.0 TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: - - [INDEX_JOIN()](链接) 选择 Index Nested Loop Join,利用索引过滤并将结果集作为内表连接。 + - [`INDEX_JOIN()`](链接) 选择 Index Nested Loop Join,利用索引过滤并将结果集作为内表连接。 - [`NO_HASH_JOIN()`](链接) 选择哈希连接以外的连接方式。 - [`NO_INDEX_HASH_JOIN()`](链接) 选择除 [Index Nested Loop Hash Join](/optimizer-hints#inl_hash_join) 以外的连接方式。 @@ -80,9 +84,9 @@ TiDB 版本:7.3.0 * Plan Replayer 支持导出历史统计信息 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** - 在新版本的 TiDB 中,通过新增的 [`dump with stats as of timestamp`]() 子句,[Plan Replayer](/sql-plan-replayer) 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出在问题发生时间点,执行计划是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 + 自 v7.3.0 起,通过新增的 [`dump with stats as of timestamp`](/sql-plan-replayer.md) 子句,Plan Replayer 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出执行计划在问题发生的时间点是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 - 更多信息,请参考[用户文档](链接)。 + 更多信息,请参考[用户文档](/sql-plan-replayer.md)。 ### 安全 From de0cc5ba5a30c6f1ca56743ad8048906e6551a77 Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 28 Jul 2023 15:54:29 +0800 Subject: [PATCH 031/114] Apply suggestions from code review Co-authored-by: Ling Jin <7138436+3AceShowHand@users.noreply.github.com> --- releases/release-7.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index f3a5577da3ce..7b1ccb20bcdd 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -166,7 +166,7 @@ TiDB 版本:7.3.0 + TiDB - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - - EXPLAIN 新增开关用以展示在优化期间被执行的子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros] + - EXPLAIN 新增开关用以展示在优化期间被执行的子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros] **tw@Oreoxmt** - 在启用 [`Global Kill`](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Ctrl+C 终止当前会话。 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -191,12 +191,12 @@ TiDB 版本:7.3.0 + Backup & Restore (BR) - - 为外部存储 Azure Blob Storage 提供加密范围和加密密钥的支持 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) + - 为外部存储 Azure Blob Storage 提供加密范围和加密密钥的支持 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - Kafka 支持消息过大时只发送 Handle Key 数据,减少数据大小 [#issue](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiDB Data Migration (DM) From 51bf54510fc8d812065227ff39c7597dff02c419 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Mon, 31 Jul 2023 11:24:30 +0800 Subject: [PATCH 032/114] Update releases/release-7.3.0.md Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 7b1ccb20bcdd..2d8ff983ac0d 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -24,9 +24,11 @@ TiDB 版本:7.3.0 * TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@qiancai** - 在 v7.3.0 版本之前,TiFlash 尽量使用所有节点的副本进行数据扫描和 MPP 计算,以提供最强大的性能。在 v7.3.0 版本中,TiFlash 引入副本选择策略,该策略可以根据节点区域属性选择特定的副本,并调度部分节点进行数据扫描及 MPP 计算。当集群部署在多个机房且每个机房都拥有完整的 TiFlash 数据副本时,可以只选择当前机房的 TiFlash 副本,在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,从而避免大量跨机房的网络数据传输。新增系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read) 用于设定节点选择策略。 + 在 v7.3.0 之前,当 TiFlash 进行数据扫描和 MPP 计算时,会尽可能使用其所有节点的副本,以提供最强大的性能。从 v7.3.0 起,TiFlash 引入副本选择策略,该策略由系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) 控制,可以根据节点的[区域属性](/schedule-replicas-by-topology-labels.md#设置-tidb-的-labels可选)选择特定的副本,调度部分节点进行数据扫描及 MPP 计算。 - 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read)。 + 当集群部署在多个机房且每个机房都拥有完整的 TiFlash 数据副本时,你可以设置该策略只选择使用当前机房的 TiFlash 副本,即在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,从而避免大量跨机房的网络数据传输。 + + 更多信息,请参考[用户文档](/system-variables.md/system-variables.md#tiflash_replica_read-从-v730-版本开始引入)。 * TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** From f6b3fe09e93541593514ea90a34c4d20eea11a98 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Mon, 31 Jul 2023 11:26:15 +0800 Subject: [PATCH 033/114] Update releases/release-7.3.0.md Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 2d8ff983ac0d..fb5bbaa9f7e4 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -68,9 +68,11 @@ TiDB 版本:7.3.0 ### SQL 功能 -* List、List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@qiancai** +* List 和 List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@qiancai** - List、List COLUMNS 分区表需要为分区指定分区条件。如果 `INSERT` 语句要插入的数据不匹配任何分区条件,则该语句将执行失败或不符合分区条件的数据被忽略。在 v7.3.0 中,TiDB 为 List、List COLUMNS 分区表引入默认分区。在创建默认分区后,如果 `INSERT` 语句插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区的数据导致 INSERT 语句执行失败或者数据被忽略的情况。该功能自动开启。 + 当使用 `INSERT` 语句向 List 或 List COLUMNS 分区表插入数据时,这些数据需要满足分区表指定的分区条件。如果要插入的数据不匹配任何分区条件,该语句将执行失败或不符合分区条件的数据被忽略。 + + 在 v7.3.0 中,List 和 List COLUMNS 分区表支持默认分区功能。在创建默认分区后,如果要插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区条件的数据导致 `INSERT` 语句执行失败或者数据被忽略。该功能默认关闭,可通过 [`tidb_enable_default_list_partition`](/system-variables.md#tidb_enable_default_list_partition-new-in-v730) 变量开启。 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 From b6ef31dcb435be62550299485377207c873331f9 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Mon, 31 Jul 2023 11:26:28 +0800 Subject: [PATCH 034/114] Update releases/release-7.3.0.md Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 1 - 1 file changed, 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index fb5bbaa9f7e4..3184b6cdcac9 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -187,7 +187,6 @@ TiDB 版本:7.3.0 + TiFlash - 支持新的 DTFile 格式版本,减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** - - 提升 TiFlash 在存算分离架构下的性能和稳定性(实验特性) [#6882](https://github.com/pingcap/tiflash/issues/6882) @[JaySon-Huang](https://github.com/JaySon-Huang) @[breezewish](https://github.com/breezewish) @[JinheLin](https://github.com/JinheLin) **tw@qiancai** - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From 1c53048190d28c9638275576681d051bb6d3982f Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 31 Jul 2023 18:10:40 +0800 Subject: [PATCH 035/114] Apply suggestions from code review --- releases/release-7.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 3184b6cdcac9..c2adfa550721 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -46,7 +46,7 @@ TiDB 版本:7.3.0 ### 稳定性 -* 新增部分优化器提示 [#issue号](链接) @[qw4990](https://github.com/qw4990) **tw@ran-huang** +* 新增部分优化器提示 [#45520](https://github.com/pingcap/tidb/issues/45520) @[qw4990](https://github.com/qw4990) **tw@ran-huang** TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: @@ -86,7 +86,7 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](链接)。 -* Plan Replayer 支持导出历史统计信息 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** +* Plan Replayer 支持导出历史统计信息 [#45038](https://github.com/pingcap/tidb/issues/45038) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** 自 v7.3.0 起,通过新增的 [`dump with stats as of timestamp`](/sql-plan-replayer.md) 子句,Plan Replayer 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出执行计划在问题发生的时间点是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 @@ -199,7 +199,7 @@ TiDB 版本:7.3.0 + TiCDC - - Kafka 支持消息过大时只发送 Handle Key 数据,减少数据大小 [#issue](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** + - Kafka Sink 支持在消息过大时只发送 Handle Key 数据,减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiDB Data Migration (DM) From db9d7482ac2c98586c7885d69e2d88f421528338 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 1 Aug 2023 09:59:09 +0800 Subject: [PATCH 036/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index c2adfa550721..469061df18bf 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -149,7 +149,7 @@ TiDB 版本:7.3.0 |TiDB Lightning | conflict.strategy | 新增 |TiDB Lightning 新版冲突检测与处理的策略,包含”“, error,replace,ignore 四种策略,分别表示不做冲突检测,遇到冲突数据即报错并停止导入,遇到冲突记录 replace 掉已有的冲突记录,遇到冲突记录 ignore 掉需要插入的该条冲突记录。默认值为 ” “, 即不做冲突检测 | |TiDB Lightning | conflict.threshold | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,onflict.strategy="error" 时默认值为 0,当onflict.strategy="replace”/“ignore" 时默认值为 maxint | |TiDB Lightning | conflict.max-record-rows | 新增 |TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 100 | -|TiDB Lightning | tikv-importer.parallel-import | 新增 |TiDB Lightning 并行导入的参数名,因为旧的参数名 tikv-importer.incremental-import 会被误认为是增量导入的参数而误用,因此使用该新的参数名代替 **tw:qiancai** | +|TiDB Lightning | `tikv-importer.parallel-import` | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有的参数容易被误认为是增量导入的参数而导致误用。 **tw:qiancai** | |TiDB Lightning | tikv-importer.incremental-import | 删除 | TiDB Lightning 并行导入参数的旧名称,因为该参数名会被误认为增量导入的参数而误用,因此用新的参数名 tikv-importer.parallel-import 代替,且如果用户传入旧的参数会被自动转成新的参数名| |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | From 8d0473083889d2160542ad5468f5b456cf991121 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 1 Aug 2023 10:00:29 +0800 Subject: [PATCH 037/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 469061df18bf..e59bc925ef37 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -72,7 +72,7 @@ TiDB 版本:7.3.0 当使用 `INSERT` 语句向 List 或 List COLUMNS 分区表插入数据时,这些数据需要满足分区表指定的分区条件。如果要插入的数据不匹配任何分区条件,该语句将执行失败或不符合分区条件的数据被忽略。 - 在 v7.3.0 中,List 和 List COLUMNS 分区表支持默认分区功能。在创建默认分区后,如果要插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区条件的数据导致 `INSERT` 语句执行失败或者数据被忽略。该功能默认关闭,可通过 [`tidb_enable_default_list_partition`](/system-variables.md#tidb_enable_default_list_partition-new-in-v730) 变量开启。 + 在 v7.3.0 中,List 和 List COLUMNS 分区表支持默认分区功能。在创建默认分区后,如果要插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区条件的数据导致 `INSERT` 语句执行失败或者数据被忽略。 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 From d8dd50207b5ad8d4264af3f91444c04c530e6bf2 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 1 Aug 2023 10:47:28 +0800 Subject: [PATCH 038/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index e59bc925ef37..7f702b6984ce 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -51,10 +51,10 @@ TiDB 版本:7.3.0 TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: - [`INDEX_JOIN()`](链接) 选择 Index Nested Loop Join,利用索引过滤并将结果集作为内表连接。 - - [`NO_HASH_JOIN()`](链接) 选择哈希连接以外的连接方式。 - - [`NO_INDEX_HASH_JOIN()`](链接) 选择除 [Index Nested Loop Hash Join](/optimizer-hints#inl_hash_join) 以外的连接方式。 + - [`NO_HASH_JOIN()`](/optimizer-hints.md#no_hash_joint1_name--tl_name-) 选择哈希连接以外的连接方式。 + - [`NO_INDEX_HASH_JOIN()`](/optimizer-hints.md#no_index_hash_joint1_name--tl_name-) 选择除 [Index Nested Loop Hash Join](/optimizer-hints.md#inl_hash_join) 以外的连接方式。 - 更多信息,请参考[用户文档](/optimizer-hints)。 + 更多信息,请参考[用户文档](/optimizer-hints.md)。 * 手工标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** From 86059933eaca65eb13037c65cea822c7e0032306 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Tue, 1 Aug 2023 10:48:29 +0800 Subject: [PATCH 039/114] Update releases/release-7.3.0.md Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 7f702b6984ce..18dd17cad8cb 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -74,6 +74,8 @@ TiDB 版本:7.3.0 在 v7.3.0 中,List 和 List COLUMNS 分区表支持默认分区功能。在创建默认分区后,如果要插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区条件的数据导致 `INSERT` 语句执行失败或者数据被忽略。 +需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 + 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 ### 数据库管理 From 156d39f2fb79771cd239af08a55ab8d0e5541cdb Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Tue, 1 Aug 2023 13:51:33 +0800 Subject: [PATCH 040/114] Update releases/release-7.3.0.md Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 18dd17cad8cb..4afbb3102931 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -74,6 +74,8 @@ TiDB 版本:7.3.0 在 v7.3.0 中,List 和 List COLUMNS 分区表支持默认分区功能。在创建默认分区后,如果要插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区条件的数据导致 `INSERT` 语句执行失败或者数据被忽略。 +需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 + 需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 From 14a1751e1abf060d82cf20aa0b229edea7de5877 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Tue, 1 Aug 2023 13:51:49 +0800 Subject: [PATCH 041/114] Update releases/release-7.3.0.md Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 4afbb3102931..51d704ef54a2 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -74,7 +74,7 @@ TiDB 版本:7.3.0 在 v7.3.0 中,List 和 List COLUMNS 分区表支持默认分区功能。在创建默认分区后,如果要插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区条件的数据导致 `INSERT` 语句执行失败或者数据被忽略。 -需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 + 需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 From d3107b365a20cea7358c4eed3a3aa9cb3c2ef469 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 1 Aug 2023 14:20:16 +0800 Subject: [PATCH 042/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 51d704ef54a2..abe35ac59194 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -76,8 +76,6 @@ TiDB 版本:7.3.0 需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 -需要注意的是,该功能是 TiDB 对 MySQL 语法的扩展。创建默认分区后,该分区表的数据无法直接同步到 MySQL 中。 - 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 ### 数据库管理 From 7228b6237686f913db6814c31832d9196b30e57f Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 1 Aug 2023 16:18:41 +0800 Subject: [PATCH 043/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index abe35ac59194..0d3da493954d 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -151,8 +151,8 @@ TiDB 版本:7.3.0 |TiDB Lightning | conflict.strategy | 新增 |TiDB Lightning 新版冲突检测与处理的策略,包含”“, error,replace,ignore 四种策略,分别表示不做冲突检测,遇到冲突数据即报错并停止导入,遇到冲突记录 replace 掉已有的冲突记录,遇到冲突记录 ignore 掉需要插入的该条冲突记录。默认值为 ” “, 即不做冲突检测 | |TiDB Lightning | conflict.threshold | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,onflict.strategy="error" 时默认值为 0,当onflict.strategy="replace”/“ignore" 时默认值为 maxint | |TiDB Lightning | conflict.max-record-rows | 新增 |TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 100 | -|TiDB Lightning | `tikv-importer.parallel-import` | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有的参数容易被误认为是增量导入的参数而导致误用。 **tw:qiancai** | -|TiDB Lightning | tikv-importer.incremental-import | 删除 | TiDB Lightning 并行导入参数的旧名称,因为该参数名会被误认为增量导入的参数而误用,因此用新的参数名 tikv-importer.parallel-import 代替,且如果用户传入旧的参数会被自动转成新的参数名| +|TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 **tw:qiancai** | +|TiDB Lightning | `tikv-importer.incremental-import` | 删除 | TiDB Lightning 并行导入参数。因为该参数名容易被误认为是增量导入的参数,因此更名为 `tikv-importer.parallel-import`。如果用户传入旧的参数名,会被自动转成新的参数名。| |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | From 81aa1ace356fa5639f6b393b17126bda8347e9d7 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 1 Aug 2023 16:27:30 +0800 Subject: [PATCH 044/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 0d3da493954d..e45373c3bed3 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -155,7 +155,7 @@ TiDB 版本:7.3.0 |TiDB Lightning | `tikv-importer.incremental-import` | 删除 | TiDB Lightning 并行导入参数。因为该参数名容易被误认为是增量导入的参数,因此更名为 `tikv-importer.parallel-import`。如果用户传入旧的参数名,会被自动转成新的参数名。| |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | - +| TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | From 2bb77472c8c8506bdfe69254d9d8dba39ea422c6 Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 2 Aug 2023 11:30:18 +0800 Subject: [PATCH 045/114] Apply suggestions from code review --- releases/release-7.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index e45373c3bed3..2d381fceb777 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -172,8 +172,8 @@ TiDB 版本:7.3.0 + TiDB - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - - EXPLAIN 新增开关用以展示在优化期间被执行的子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros] **tw@Oreoxmt** - - 在启用 [`Global Kill`](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Ctrl+C 终止当前会话。 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) + - 新增 `tidb_opt_enable_non_eval_scalar_subquery` 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** + - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiKV @@ -196,7 +196,7 @@ TiDB 版本:7.3.0 + Backup & Restore (BR) - - 为外部存储 Azure Blob Storage 提供加密范围和加密密钥的支持 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** + - 使用 BR 备份数据到 Azure Blob Storage 时,支持使用加密范围或加密密钥进行数据的服务端加密 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC From ed749a62d4de9536357e3514af2b984700b778cd Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 2 Aug 2023 13:54:59 +0800 Subject: [PATCH 046/114] Apply suggestions from code review --- releases/release-7.3.0.md | 44 +++++++++++++++++---------------------- 1 file changed, 19 insertions(+), 25 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 2d381fceb777..5c9c80608a7f 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -56,13 +56,13 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](/optimizer-hints.md)。 -* 手工标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** +* 手动标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** - 在 v7.2.0 中,TiDB 对资源使用超出预期的查询 (Runaway Queries) 实施自动管理,运行时间超过预期的查询能够被自动降级或取消。在实际运行时,只依靠规则无法筛覆盖所有情况。 因此,在 v7.3.0 中,TiDB 补充了手工标记查询的能力。 利用新增的命令 [`QUERY WATCH`](),用户可以根据 SQL 的文本、SQL Digest、或者执行计划对查询进行标记,命中的查询可以被降级或取消。 + 在 v7.2.0 中,TiDB 对资源使用超出预期的查询 (Runaway Queries) 实施自动管理,运行时间超过预期的查询能够被自动降级或取消。在实际运行时,只依靠规则无法筛覆盖所有情况。因此,在 v7.3.0 中,补充了手动标记查询的能力。利用新增的命令 [`QUERY WATCH`](/sql-statements/sql-statement-query-watch.md),你可以根据 SQL 的文本、SQL Digest、或者执行计划对查询进行标记,命中的查询可以被降级或取消。 - 手工标记 Runaway Queries 的能力,为数据库中突发的性能问题提供了有效的干预手段。针对由查询引发的性能问题,在找到问题根本原因之前,能够快速缓解其对整体性能的影响,提升系统服务质量。 + 手动标记 Runaway Queries 的能力,为数据库中突发的性能问题提供了有效的干预手段。针对由查询引发的性能问题,在找到问题根本原因之前,能够快速缓解其对整体性能的影响,提升系统服务质量。 - 更多信息,请参考[用户文档](/tidb-resource-control#管理资源消耗超出预期的查询-runaway-queries)。 + 更多信息,请参考[用户文档](/tidb-resource-control.md#query-watch-语句说明)。 ### 高可用 @@ -98,25 +98,19 @@ TiDB 版本:7.3.0 ### 数据迁移 -* Lightning 引入新版冲突数据检测与处理的能力 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@hfxsd** +* TiDB Lightning 引入新版冲突数据检测与处理的能力 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@hfxsd** - 之前的版本 Lightning 逻辑导入和物理导入模式都有各自的冲突检测和处理的方式,配置较为复杂且不利于用户理解。同时使用物理导入模式,冲突的数据无法通过 replace 和 ignore 策略来处理。新版的冲突检测和处理方式,逻辑导入和物理导入都是用同一套冲突检测和处理方式即遇到冲突数据报错,或者 replace 以及 ignore 掉冲突数据。同时还支持用户设置冲突记录的上限,如处理多少冲突记录后任务中断退出,用户也可以让程序记录哪些数据发生了冲突,方便用户排查。 + 在之前的版本中,TiDB Lightning 逻辑导入模式和物理导入模式都有各自的冲突检测和处理的方式,配置较为复杂且不易理解。另外使用物理导入模式,冲突的数据无法通过替换 (`replace`) 或忽略 (`ignore`) 策略来处理。新版的冲突检测和处理方式,逻辑导入模式和物理导入模式都使用同一套冲突检测和处理方式,即遇到冲突数据报错 (`error`)、替换 (`replace`) 或忽略 (`ignore`) 冲突数据。同时还支持设置冲突记录的上限,如处理多少冲突记录后任务中断退出,你也可以让程序记录哪些数据发生了冲突,方便排查。 - 在明确所需导入数据有较多的冲突数据时,推荐使用新版的冲突检测和处理策略,会有更好的性能。注意新、旧版冲突策略互斥使用,会在未来废弃掉旧版冲突检测和处理策略。 + 如果导入数据有较多的冲突数据,推荐使用新版的冲突检测和处理策略,以获得更好的性能。注意新版和旧版冲突策略互斥,不能同时使用。未来将废弃旧版冲突检测和处理策略。 - 更多信息,请参考[用户文档](链接)。 - -* Lightning 支持 Partitioned Raft KV(实验特性) [#15069](https://github.com/tikv/tikv/pull/15069) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** - - 该版本 Lightning 支持了 Partitioned Raft KV ,当用户使用了 Partitioned Raft KV 特性后,能提升 Lightning 导入数据的性能。 - - 更多信息,请参考[用户文档](链接)。 - -* Lightning 引入新的参数"enable-diagnose-log" 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** + 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#冲突数据检测)。 + +* TiDB Lightning 引入新的参数 `enable-diagnose-log` 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - 默认情况下,此功能未启用,只会打印包含 "lightning/main" 的日志。当启用时,将打印所有包(包括 "client-go" 和 "tidb")的日志,以帮助诊断与 "client-go" 和 "tidb" 相关的问题。 + 默认情况下,此功能未启用,只会打印包含 `lightning/main` 的日志。当启用时,将打印所有包(包括 `client-go` 和 `tidb`)的日志,以帮助诊断与 `client-go` 和 `tidb` 相关的问题。 - 更多信息,请参考[用户文档](链接)。 + 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-全局配置)。 ## 兼容性变更 @@ -130,8 +124,8 @@ TiDB 版本:7.3.0 * TiDB Lightning **tw@hfxsd** - - 逻辑导入模式插入冲突数据时执行的操作,默认配置从 on-duplicate = "replace" 改为 on-duplicate = "error" 即遇到冲突数据即报错。 - - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的参数 "max-error" 不再包含导入数据冲突的上限。而是由新的参数 "conflict.threshold" 来控制可容忍的最大冲突的记录数。 + - `tikv-importer.on-duplicate` 废弃,由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。 + - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的参数 `max-error` 不再包含导入数据冲突的上限,而是由新的参数 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 来控制可容忍的最大冲突的记录数。 * 兼容性 2 @@ -148,11 +142,11 @@ TiDB 版本:7.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | -|TiDB Lightning | conflict.strategy | 新增 |TiDB Lightning 新版冲突检测与处理的策略,包含”“, error,replace,ignore 四种策略,分别表示不做冲突检测,遇到冲突数据即报错并停止导入,遇到冲突记录 replace 掉已有的冲突记录,遇到冲突记录 ignore 掉需要插入的该条冲突记录。默认值为 ” “, 即不做冲突检测 | -|TiDB Lightning | conflict.threshold | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,onflict.strategy="error" 时默认值为 0,当onflict.strategy="replace”/“ignore" 时默认值为 maxint | -|TiDB Lightning | conflict.max-record-rows | 新增 |TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 100 | -|TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 **tw:qiancai** | -|TiDB Lightning | `tikv-importer.incremental-import` | 删除 | TiDB Lightning 并行导入参数。因为该参数名容易被误认为是增量导入的参数,因此更名为 `tikv-importer.parallel-import`。如果用户传入旧的参数名,会被自动转成新的参数名。| +|TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | +|TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 ""(不做冲突检测),`error`(遇到冲突数据即报错并停止导入),`replace`(遇到冲突记录替换已有的冲突记录),`ignore`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 "", 即不做冲突检测。 | +|TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | +|TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | +|TiDB Lightning | `tikv-importer.on-duplicate` | 废弃 | TiDB Lightning 逻辑导入模式插入冲突数据时执行的操作。从 v7.3.0 起,该参数由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。| |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | From ae3c955f852f00e217cbb901aed5cb012d6cafbe Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 2 Aug 2023 14:21:00 +0800 Subject: [PATCH 047/114] Apply suggestions from code review Co-authored-by: xixirangrang --- releases/release-7.3.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 5c9c80608a7f..6f62064e39cd 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -82,11 +82,11 @@ TiDB 版本:7.3.0 ### 可观测性 -* 显示统计信息收集的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** +* 显示统计信息收集的进度 [#44033](https://github.com/pingcap/tidb/issues/44033) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** - 对大表的统计信息收集经常会持续比较长的时间。在过去的版本里,用户无从得知统计信息收集的进度,进而没法预测完成时间。在 v7.3.0 中,TiDB 加入了对统计信息收集进度的信息展示,能够显示各个子任务的总体工作量、当前进度、以及对完成时间的预测。在大规模数据导入、SQL 性能优化等场景下,用户能够了解整体任务进展,提升用户体验。 + 收集大表的统计信息经常会持续较长时间。在之前的版本中,无法了解统计信息收集的进度,进而无法预测完成时间。TiDB v7.3.0 新增显示统计信息收集进度的功能。你可以通过系统表 `mysql.analyze_jobs` 或者 `SHOW ANALYZE STATUS` 查看各个子任务的总体工作量、当前进度以及预计的完成时间。在大规模数据导入、SQL 性能优化等场景下,该功能有助于了解整体任务进度,提升用户体验。 - 更多信息,请参考[用户文档](链接)。 + 更多信息,请参考[用户文档](/sql-statements/sql-statement-show-analyze-status.md)。 * Plan Replayer 支持导出历史统计信息 [#45038](https://github.com/pingcap/tidb/issues/45038) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** @@ -190,7 +190,7 @@ TiDB 版本:7.3.0 + Backup & Restore (BR) - - 使用 BR 备份数据到 Azure Blob Storage 时,支持使用加密范围或加密密钥进行数据的服务端加密 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** + - 使用 BR 备份数据到 Azure Blob Storage 时,支持使用加密范围或加密密钥对数据进行服务端加密 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC From 0ab316e803119e41eda97a5a51941d5ba0982ee4 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 2 Aug 2023 14:48:40 +0800 Subject: [PATCH 048/114] Apply suggestions from code review Co-authored-by: Ran --- releases/release-7.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 6f62064e39cd..bf7ecc5c2429 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -26,7 +26,7 @@ TiDB 版本:7.3.0 在 v7.3.0 之前,当 TiFlash 进行数据扫描和 MPP 计算时,会尽可能使用其所有节点的副本,以提供最强大的性能。从 v7.3.0 起,TiFlash 引入副本选择策略,该策略由系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) 控制,可以根据节点的[区域属性](/schedule-replicas-by-topology-labels.md#设置-tidb-的-labels可选)选择特定的副本,调度部分节点进行数据扫描及 MPP 计算。 - 当集群部署在多个机房且每个机房都拥有完整的 TiFlash 数据副本时,你可以设置该策略只选择使用当前机房的 TiFlash 副本,即在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,从而避免大量跨机房的网络数据传输。 + 当集群部署在多个机房且每个机房都拥有完整的 TiFlash 数据副本时,你可以设置该策略只选择使用当前机房的 TiFlash 副本,即只在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,从而避免大量跨机房的网络数据传输。 更多信息,请参考[用户文档](/system-variables.md/system-variables.md#tiflash_replica_read-从-v730-版本开始引入)。 @@ -70,7 +70,7 @@ TiDB 版本:7.3.0 * List 和 List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@qiancai** - 当使用 `INSERT` 语句向 List 或 List COLUMNS 分区表插入数据时,这些数据需要满足分区表指定的分区条件。如果要插入的数据不匹配任何分区条件,该语句将执行失败或不符合分区条件的数据被忽略。 + 在 v7.3.0 以前,当使用 `INSERT` 语句向 List 或 List COLUMNS 分区表插入数据时,这些数据需要满足分区表指定的分区条件。如果要插入的数据不匹配任何分区条件,该语句将执行失败或忽略不符合分区条件的数据。 在 v7.3.0 中,List 和 List COLUMNS 分区表支持默认分区功能。在创建默认分区后,如果要插入的数据不匹配任何分区条件,则数据将被写入默认分区。默认分区功能可以提升 List 分区和 List COLUMNS 分区的使用便捷性,避免不符合分区条件的数据导致 `INSERT` 语句执行失败或者数据被忽略。 @@ -133,7 +133,7 @@ TiDB 版本:7.3.0 | 变量名 | 修改类型 | 描述 | |---|----|------| -| | 新增/删除/修改 | | +| [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | | | 新增/删除/修改 | | | | 新增/删除/修改 | | | | 新增/删除/修改 | | From b2455dcad40319fcc5abf8be0adf8059f876f4ea Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 2 Aug 2023 15:13:54 +0800 Subject: [PATCH 049/114] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index bf7ecc5c2429..755e1115c05c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -32,9 +32,9 @@ TiDB 版本:7.3.0 * TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** - Runtime Filter 是一种在查询规划时生成的动态取值的谓词。在表连接的过程中,这些动态谓词能够进一步过滤掉不满足条件的行,减少扫描时间和网络开销,提升表连接的效率。自 v7.3.0 起,TiFlash 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,在部分 TPC-DS 查询中可达到 10% ~ 50% 的性能提升。 + Runtime Filter 是在查询规划阶段生成的一种**动态取值谓词**。在表连接的过程中,这些动态谓词能够有效过滤掉不满足连接条件的行,减少扫描时间和网络开销,提升表连接的效率。自 v7.3.0 起,TiFlash 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,在部分 TPC-DS 数据集的查询中可达到 10% ~ 50% 的性能提升。 - 该特性在 v7.3.0 默认关闭。要启用此功能,需将变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v720-版本开始引入) 设置为 `LOCAL`。 + 该功能在 v7.3.0 默认关闭。要启用此功能,需将变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v720-版本开始引入) 设置为 `LOCAL`。 更多信息,请参考[用户文档](/runtime-filter.md)。 From 0b12b2709b7c52ad7dcbc366185a806de4deead3 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 2 Aug 2023 16:11:34 +0800 Subject: [PATCH 050/114] add `tikv-importer.parallel-import` --- releases/release-7.3.0.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 755e1115c05c..d68276805a72 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -147,6 +147,8 @@ TiDB 版本:7.3.0 |TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | |TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | |TiDB Lightning | `tikv-importer.on-duplicate` | 废弃 | TiDB Lightning 逻辑导入模式插入冲突数据时执行的操作。从 v7.3.0 起,该参数由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。| +| TiDB Lightning | `tikv-importer.incremental-import` | 删除 | TiDB Lightning 并行导入参数。因为该参数名容易被误认为是增量导入的参数,因此更名为 `tikv-importer.parallel-import`。如果用户传入旧的参数名,会被自动转成新的参数名。| +| TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 **tw:qiancai** | |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | From b3674ec0f0c39591d8a89aa2191eed510b29d4bc Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 2 Aug 2023 16:23:08 +0800 Subject: [PATCH 051/114] add compatibility changes Signed-off-by: Aolin --- releases/release-7.3.0.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index d68276805a72..322101adbfbe 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -133,7 +133,10 @@ TiDB 版本:7.3.0 | 变量名 | 修改类型 | 描述 | |---|----|------| +| [`enable-32bits-connection-id`](/system-variables.md#enable-32bits-connection-id-从-v730-版本开始引入) | 新增 | 这个变量用于控制是否开启生成 32 位 connection ID 的功能。 | +| [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) | 新增 | 这个变量用于控制 `EXPLAIN` 语句是否禁止提前执行可以在优化阶段展开的常量子查询。 | | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | +| [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | | | 新增/删除/修改 | | | | 新增/删除/修改 | | | | 新增/删除/修改 | | @@ -142,6 +145,14 @@ TiDB 版本:7.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | +| TiKV | [`compaction-guard-min-output-file-size`](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 默认值从 `"1MB"` 修改为 `"8MB"`。 | +| TiKV | [`format-version`](/tikv-configuration-file.md#format-version-从-v620-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `2` 修改为 `5`。 | +| TiKV | [`format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `2` 修改为 `5`。 | +| TiKV | [`max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `"4GB"` 修改为 `1`。 | +| TiKV | [`stats-dump-period`](/tikv-configuration-file.md#stats-dump-period) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `"10m"` 修改为 `"0"`。| +| TiKV | [`storage.block-cache.capacity`](/tikv-configuration-file.md#capacity) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从系统总内存大小的 45% 修改为系统总内存大小的 30%。 | +| TiKV | [`write-buffer-limit`](/tikv-configuration-file.md#write-buffer-limit-从-v660-版本开始引入) | 修改 | 当 `storage.engine="raft-kv"` 时,默认值从本机内存的 25% 修改为 `0`,即不限制。当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从本机内存的 25% 修改为本机内存的 20%。 | +| TiKV | [`write-buffer-size`](/tikv-configuration-file.md#write-buffer-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `"32MB"` 修改为 `"4MB"`。 | |TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | |TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 ""(不做冲突检测),`error`(遇到冲突数据即报错并停止导入),`replace`(遇到冲突记录替换已有的冲突记录),`ignore`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 "", 即不做冲突检测。 | |TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | From 07fd2a935b6613cd824af28d21154e9280f36368 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 2 Aug 2023 16:30:20 +0800 Subject: [PATCH 052/114] Apply suggestions from code review Co-authored-by: Aolin --- releases/release-7.3.0.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 322101adbfbe..91ae25375855 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -56,11 +56,11 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](/optimizer-hints.md)。 -* 手动标记资源使用超出预期的查询 (实验特性) [#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** +* 手动标记资源使用超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** - 在 v7.2.0 中,TiDB 对资源使用超出预期的查询 (Runaway Queries) 实施自动管理,运行时间超过预期的查询能够被自动降级或取消。在实际运行时,只依靠规则无法筛覆盖所有情况。因此,在 v7.3.0 中,补充了手动标记查询的能力。利用新增的命令 [`QUERY WATCH`](/sql-statements/sql-statement-query-watch.md),你可以根据 SQL 的文本、SQL Digest、或者执行计划对查询进行标记,命中的查询可以被降级或取消。 + 在 v7.2.0 中,TiDB 自动管理资源使用超出预期的查询 (Runaway Query),即自动降级或取消运行时间超出预期的查询。在实际运行时,只依靠规则无法覆盖所有情况。因此,TiDB v7.3.0 新增手动标记查询的功能。利用新增的命令 [`QUERY WATCH`](/sql-statements/sql-statement-query-watch.md),你可以根据 SQL 的文本、SQL Digest 或执行计划标记查询,命中的查询可以被降级或取消。 - 手动标记 Runaway Queries 的能力,为数据库中突发的性能问题提供了有效的干预手段。针对由查询引发的性能问题,在找到问题根本原因之前,能够快速缓解其对整体性能的影响,提升系统服务质量。 + 手动标记 Runaway Query 的功能为数据库中突发的性能问题提供了有效的干预手段。针对由查询引发的性能问题,在定位根本原因之前,该功能可以快速缓解其对整体性能的影响,从而提升系统服务质量。 更多信息,请参考[用户文档](/tidb-resource-control.md#query-watch-语句说明)。 @@ -98,17 +98,17 @@ TiDB 版本:7.3.0 ### 数据迁移 -* TiDB Lightning 引入新版冲突数据检测与处理的能力 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@hfxsd** - - 在之前的版本中,TiDB Lightning 逻辑导入模式和物理导入模式都有各自的冲突检测和处理的方式,配置较为复杂且不易理解。另外使用物理导入模式,冲突的数据无法通过替换 (`replace`) 或忽略 (`ignore`) 策略来处理。新版的冲突检测和处理方式,逻辑导入模式和物理导入模式都使用同一套冲突检测和处理方式,即遇到冲突数据报错 (`error`)、替换 (`replace`) 或忽略 (`ignore`) 冲突数据。同时还支持设置冲突记录的上限,如处理多少冲突记录后任务中断退出,你也可以让程序记录哪些数据发生了冲突,方便排查。 +* TiDB Lightning 引入新版冲突数据检测和处理机制 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@hfxsd** - 如果导入数据有较多的冲突数据,推荐使用新版的冲突检测和处理策略,以获得更好的性能。注意新版和旧版冲突策略互斥,不能同时使用。未来将废弃旧版冲突检测和处理策略。 + 在之前的版本中,TiDB Lightning 的逻辑导入模式和物理导入模式各自使用独立的冲突检测和处理方式,其配置较为复杂且不易理解。另外,在物理导入模式下,无法通过替换 (`replace`) 或忽略 (`ignore`) 策略处理冲突的数据。从 v7.3.0 开始,TiDB Lightning 引入新版冲突检测和处理机制,逻辑导入模式和物理导入模式都使用相同的冲突检测和处理方式,即可以选择在遇到冲突数据时报错 (`error`)、替换 (`replace`) 或忽略 (`ignore`)。同时还支持设置冲突记录的上限,例如在处理指定数量冲突记录后任务中断退出,也可以记录哪些数据发生了冲突,以便后续排查。 + + 当导入数据存在大量冲突时,推荐使用新版冲突检测和处理机制,以获得更好的性能。注意新版和旧版冲突处理机制不能同时使用。未来将废弃旧版冲突检测和处理机制。 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#冲突数据检测)。 * TiDB Lightning 引入新的参数 `enable-diagnose-log` 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - 默认情况下,此功能未启用,只会打印包含 `lightning/main` 的日志。当启用时,将打印所有包(包括 `client-go` 和 `tidb`)的日志,以帮助诊断与 `client-go` 和 `tidb` 相关的问题。 + 默认情况下,该功能未启用,即只打印包含 `lightning/main` 的日志。开启该功能后,将打印所有包(包括 `client-go` 和 `tidb`)的日志,以帮助诊断与 `client-go` 和 `tidb` 相关的问题。 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-全局配置)。 @@ -124,8 +124,8 @@ TiDB 版本:7.3.0 * TiDB Lightning **tw@hfxsd** - - `tikv-importer.on-duplicate` 废弃,由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。 - - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的参数 `max-error` 不再包含导入数据冲突的上限,而是由新的参数 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 来控制可容忍的最大冲突的记录数。 + - 废弃 `tikv-importer.on-duplicate`,由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 替代。 + - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的配置项 `max-error` 不再包含导入数据冲突记录的上限,由 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 控制可容忍的最大冲突的记录数。 * 兼容性 2 From 0cb98515043875543ffda04011414bea13600f16 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 2 Aug 2023 16:42:22 +0800 Subject: [PATCH 053/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 91ae25375855..50c836be83bd 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -40,7 +40,7 @@ TiDB 版本:7.3.0 * TiFlash 支持执行公共表表达式 (CTE)(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw@ran-huang** - 在 v7.3.0 版本之前,TiFlash 的 MPP 引擎默认无法执行包含 CTE 的查询,你需要通过系统变量 [`tidb_opt_force_inline_cte`](/system-variables.md#tidb_opt_force_inline_cte-从-v630-版本开始引入) 将 CTE inline 展开,达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 中,TiFlash MPP 引擎支持执行包含 CTE 的查询,无需将 CTE inline 展开也可以尽可能地在 MPP 框架中执行查询。在 TPC-DS 基准测试中,与 inline 的执行方式相比,该功能可以将包含 CTE 的查询的总执行速度提升 20%。 + 在 v7.3.0 版本之前,TiFlash 的 MPP 引擎默认无法执行包含 CTE 的查询,你需要通过系统变量 [`tidb_opt_force_inline_cte`](/system-variables.md#tidb_opt_force_inline_cte-从-v630-版本开始引入) 强制 inline CTE,达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 中,TiFlash MPP 引擎支持执行包含 CTE 的查询,无需强制 inline CTE 也可以尽可能地在 MPP 框架中执行查询。在 TPC-DS 基准测试中,与强制 inline 的执行方式相比,该功能可以将包含 CTE 的查询的总执行速度提升 20%。 该功能为实验特性,默认关闭,由变量 [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) 控制。 From 84c94a54862053a78a03d203ac2e553cdc80b222 Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 2 Aug 2023 17:16:19 +0800 Subject: [PATCH 054/114] Apply suggestions from code review --- releases/release-7.3.0.md | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 50c836be83bd..ddc38f91f059 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -145,14 +145,15 @@ TiDB 版本:7.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | -| TiKV | [`compaction-guard-min-output-file-size`](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 默认值从 `"1MB"` 修改为 `"8MB"`。 | -| TiKV | [`format-version`](/tikv-configuration-file.md#format-version-从-v620-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `2` 修改为 `5`。 | -| TiKV | [`format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `2` 修改为 `5`。 | -| TiKV | [`max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `"4GB"` 修改为 `1`。 | -| TiKV | [`stats-dump-period`](/tikv-configuration-file.md#stats-dump-period) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `"10m"` 修改为 `"0"`。| -| TiKV | [`storage.block-cache.capacity`](/tikv-configuration-file.md#capacity) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从系统总内存大小的 45% 修改为系统总内存大小的 30%。 | -| TiKV | [`write-buffer-limit`](/tikv-configuration-file.md#write-buffer-limit-从-v660-版本开始引入) | 修改 | 当 `storage.engine="raft-kv"` 时,默认值从本机内存的 25% 修改为 `0`,即不限制。当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从本机内存的 25% 修改为本机内存的 20%。 | -| TiKV | [`write-buffer-size`](/tikv-configuration-file.md#write-buffer-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从 `"32MB"` 修改为 `"4MB"`。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为解决大数据写入情况下 compaction 速度跟不上写入速度的问题,默认值从 `"1MB"` 修改为 `"8MB"`。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].format-version](/tikv-configuration-file.md#format-version-从-v620-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | +| TiKV | [`raft-engine.format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | +| TiKV | [`raftdb.max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size-1) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,TiKV 会跳过写 WAL,因此默认值从 `"4GB"` 修改为 `1`,即禁用 WAL。 | +| TiKV | [`rocksdb.max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,TiKV 会跳过写 WAL,因此默认值从 `"4GB"` 修改为 `1`,即禁用 WAL。 | +| TiKV | [`rocksdb.stats-dump-period`](/tikv-configuration-file.md#stats-dump-period) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为关闭冗余日志的打印,默认值从 `"10m"` 修改为 `"0"`。| +| TiKV | [`storage.block-cache.capacity`](/tikv-configuration-file.md#capacity) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为弥补 memtable 的内存开销,将默认值从系统总内存大小的 45% 修改为系统总内存大小的 30%。 | +| TiKV | [`rocksdb.write-buffer-limit`](/tikv-configuration-file.md#write-buffer-limit-从-v660-版本开始引入) | 修改 | 为减小 memtable 的内存开销,当 `storage.engine="raft-kv"` 时,默认值从本机内存的 25% 修改为 `0`,即不限制。当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从本机内存的 25% 修改为本机内存的 20%。 | +| TiKV | [`rocksdb.lockcf.write-buffer-size`](/tikv-configuration-file.md#write-buffer-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为加快 lockcf 上 compaction 的速度,默认值从 `"32MB"` 修改为 `"4MB"`。 | |TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | |TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 ""(不做冲突检测),`error`(遇到冲突数据即报错并停止导入),`replace`(遇到冲突记录替换已有的冲突记录),`ignore`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 "", 即不做冲突检测。 | |TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | @@ -179,7 +180,7 @@ TiDB 版本:7.3.0 + TiDB - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - - 新增 `tidb_opt_enable_non_eval_scalar_subquery` 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** + - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** - note [#issue](链接) @[贡献者 GitHub ID](链接) From aab5bd7697891b12a9707adc5de947189fd77991 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 2 Aug 2023 17:48:00 +0800 Subject: [PATCH 055/114] Update releases/release-7.3.0.md Co-authored-by: Ling Jin <7138436+3AceShowHand@users.noreply.github.com> --- releases/release-7.3.0.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index ddc38f91f059..b3dbe5848083 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -127,7 +127,9 @@ TiDB 版本:7.3.0 - 废弃 `tikv-importer.on-duplicate`,由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 替代。 - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的配置项 `max-error` 不再包含导入数据冲突记录的上限,由 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 控制可容忍的最大冲突的记录数。 -* 兼容性 2 +* TiCDC **tw@ran-huang** + - 当 Kafka sink 使用 Avro 协议时,如果开启了 `force-replicate` 参数,创建 changefeed 会报错。 + - 由于 `delete-only-output-handle-key-columns` 和 `force-replicate` 参数不兼容,同时开启两个参数时,创建 changefeed 会报错。 ### 系统变量 From 8b8c0a8d6489c7c99189a0356abcb31f5bb8adbd Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 2 Aug 2023 17:51:19 +0800 Subject: [PATCH 056/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index b3dbe5848083..9b5a941c0611 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -128,8 +128,9 @@ TiDB 版本:7.3.0 - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的配置项 `max-error` 不再包含导入数据冲突记录的上限,由 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 控制可容忍的最大冲突的记录数。 * TiCDC **tw@ran-huang** - - 当 Kafka sink 使用 Avro 协议时,如果开启了 `force-replicate` 参数,创建 changefeed 会报错。 - - 由于 `delete-only-output-handle-key-columns` 和 `force-replicate` 参数不兼容,同时开启两个参数时,创建 changefeed 会报错。 + + - 当 Kafka sink 使用 Avro 协议时,如果开启了 `force-replicate` 参数,创建 changefeed 会报错。 + - 由于 `delete-only-output-handle-key-columns` 和 `force-replicate` 参数不兼容,同时开启两个参数时,创建 changefeed 会报错。 ### 系统变量 From ec89b02bf41a9e1eacae36ab58c838fda5fbbd68 Mon Sep 17 00:00:00 2001 From: Flowyi Date: Thu, 3 Aug 2023 11:41:20 +0800 Subject: [PATCH 057/114] Apply suggestions from code review --- releases/release-7.3.0.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 9b5a941c0611..facd3503dedf 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -199,7 +199,7 @@ TiDB 版本:7.3.0 + TiFlash - - 支持新的 DTFile 格式版本,减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) **tw@qiancai** + - 支持新的 DTFile 格式版本,把小文件合并成大文件,从而减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -249,7 +249,8 @@ TiDB 版本:7.3.0 + TiFlash - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复了由于死锁导致 TiFlash 无法成功同步分区表的问题 [#7758](https://github.com/pingcap/tiflash/issues/7758) @[hongyunyan](https://github.com/hongyunyan) + - 修复了系统表 information_schema.tiflash_replica 泄露了用户没有访问权限的表的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - note [#issue](链接) @[贡献者 GitHub ID](链接) + Tools From 7c5f96c8792d72b2281c975d395c70874da27b87 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 3 Aug 2023 14:02:49 +0800 Subject: [PATCH 058/114] Update releases/release-7.3.0.md Co-authored-by: Yuanjia Zhang --- releases/release-7.3.0.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index facd3503dedf..c352a8a223c8 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -50,7 +50,9 @@ TiDB 版本:7.3.0 TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: - - [`INDEX_JOIN()`](链接) 选择 Index Nested Loop Join,利用索引过滤并将结果集作为内表连接。 + - [`NO_MERGE_JOIN()`](/optimizer-hints.md#no_merge_joint1_name--tl_name-) 选择除 Merge Join 以外的连接方式。 + - [`NO_INDEX_JOIN()`](/optimizer-hints.md#no_index_joint1_name--tl_name-) 选择除 Index Nested Loop Join 以外的连接方式。 + - [`NO_INDEX_MERGE_JOIN()`](/optimizer-hints.md#no_index_merge_joint1_name--tl_name-) 选择除 Index Nested Loop Merge Join 以外的连接方式。 - [`NO_HASH_JOIN()`](/optimizer-hints.md#no_hash_joint1_name--tl_name-) 选择哈希连接以外的连接方式。 - [`NO_INDEX_HASH_JOIN()`](/optimizer-hints.md#no_index_hash_joint1_name--tl_name-) 选择除 [Index Nested Loop Hash Join](/optimizer-hints.md#inl_hash_join) 以外的连接方式。 From 604227894b32f50feb893e7cfc24cc4c1cb0dbff Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 3 Aug 2023 15:35:19 +0800 Subject: [PATCH 059/114] Apply suggestions from code review Co-authored-by: dongmen <20351731+asddongmen@users.noreply.github.com> --- releases/release-7.3.0.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index c352a8a223c8..60674bb55eca 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -214,6 +214,9 @@ TiDB 版本:7.3.0 + TiCDC + - 优化了 Open Protocol 输出的消息大小,在发送 update 类型事件时仅输出被更新的列值 [#9336](https://github.com/pingcap/tiflow/issues/9336) @[3AceShowHand](https://github.com/3AceShowHand) + - Storage Sink 支持对 hex 格式数据进行十六进制编码输出,使其兼容 AWS DMS 的格式规范[#9373](https://github.com/pingcap/tiflow/issues/9373) @[CharlesCheung96](https://github.com/CharlesCheung96) + - 优化了 TiCDC 获取下游 Kafka 集群元信息过于频繁导致的性能问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) @[hi-rustin](https://github.com/hi-rustin) - Kafka Sink 支持在消息过大时只发送 Handle Key 数据,减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -264,6 +267,11 @@ TiDB 版本:7.3.0 + TiCDC + - 修复了一个由于 PD 短暂不可用而导致的同步任务报错的问题 [#9294](https://github.com/pingcap/tiflow/issues/9294) @[asddongmen](https://github.com/asddongmen) + - 修复了 TiCDC 部分节点发生网络隔离时有可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) + - 修复了一个当 Kafka Sink 遇到错误时可能会无限阻塞同步任务推进的问题 [#9309](https://github.com/pingcap/tiflow/issues/9309) @[hicqu](https://github.com/hicqu) + - 修复了一个在 TiCDC 节点状态发生改变时有可能引发的 panic 问题 [#9354](https://github.com/pingcap/tiflow/issues/9354) @[sdojjy](https://github.com/sdojjy) + - 修复了对默认 enum 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) From 6e13dc4664347cd04098e2140a3f7483636667bc Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 3 Aug 2023 15:35:57 +0800 Subject: [PATCH 060/114] Update releases/release-7.3.0.md Co-authored-by: dongmen <20351731+asddongmen@users.noreply.github.com> --- releases/release-7.3.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 60674bb55eca..994f9f0c96d4 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -133,6 +133,7 @@ TiDB 版本:7.3.0 - 当 Kafka sink 使用 Avro 协议时,如果开启了 `force-replicate` 参数,创建 changefeed 会报错。 - 由于 `delete-only-output-handle-key-columns` 和 `force-replicate` 参数不兼容,同时开启两个参数时,创建 changefeed 会报错。 + - 当使用 `Open Protocol` 作为输出协议时, update 类型的事件将仅输出变更的列。 ### 系统变量 From 2c5acedffd577bc934d91d1bf20ca7909df0f1c9 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 3 Aug 2023 16:41:13 +0800 Subject: [PATCH 061/114] add sink.csv.binary-encoding-method Co-authored-by: CharlesCheung <61726649+CharlesCheung96@users.noreply.github.com> --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 994f9f0c96d4..cb9502ead99b 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -170,7 +170,7 @@ TiDB 版本:7.3.0 |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | -| | | 新增/删除/修改 | | +| TiCDC | `sink.csv.binary-encoding-method` | 新增 | CSV 协议中二进制类型数据的编码方式,可选 `base64` 与 `hex`。默认值为 `base64`。 | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | From 5ddfd88e0a39c2f8dabd1c483e734450505f64a8 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 3 Aug 2023 17:20:37 +0800 Subject: [PATCH 062/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index cb9502ead99b..2efaf9b12c34 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -170,7 +170,7 @@ TiDB 版本:7.3.0 |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | -| TiCDC | `sink.csv.binary-encoding-method` | 新增 | CSV 协议中二进制类型数据的编码方式,可选 `base64` 与 `hex`。默认值为 `base64`。 | +| TiCDC | [`sink.csv.binary-encoding-method`](/ticdc/ticdc-changefeed-config.md#ticdc-changefeed-配置文件说明) | 新增 | CSV 协议中二进制类型数据的编码方式,可选 `'base64'` 与 `'hex'`。默认值为 `'base64'`。 | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | From 94572674532acc4bd8e8e1e76865903347ecdaad Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 3 Aug 2023 20:09:04 +0800 Subject: [PATCH 063/114] Apply suggestions from code review Co-authored-by: MyonKeminta <9948422+MyonKeminta@users.noreply.github.com> Co-authored-by: xufei Co-authored-by: GMHDBJD <35025882+GMHDBJD@users.noreply.github.com> --- releases/release-7.3.0.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 2efaf9b12c34..1cf45a9999bf 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -143,6 +143,7 @@ TiDB 版本:7.3.0 | [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) | 新增 | 这个变量用于控制 `EXPLAIN` 语句是否禁止提前执行可以在优化阶段展开的常量子查询。 | | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | | [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | +| [`tidb_lock_unchanged_keys`](/system-variables.md#tiflash_replica_read-从-v730v711-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁 | | | 新增/删除/修改 | | | | 新增/删除/修改 | | | | 新增/删除/修改 | | @@ -192,6 +193,7 @@ TiDB 版本:7.3.0 + TiKV + - 添加了 `Max gap of safe-ts`、`Min safe ts region` 监控和 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) [@ekexium](https://github.com/ekexium) - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -240,11 +242,15 @@ TiDB 版本:7.3.0 + TiDB - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复了一个 data race 导致 TiDB crash 的问题 [#45563](https://github.com/pingcap/tidb/pull/45563) @[genliqi](https://github.com/gengliqi) + - 修复了一个 index merge 被 kill 可能会导致 hang 住的问题 [#45284](https://github.com/pingcap/tidb/pull/45284) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复了 parallel apply 开启 MPP 情况下 query 结果错误的问题 [#45302](https://github.com/pingcap/tidb/pull/45302) @[windtalker](https://github.com/windtalker) + - 修复了一个时钟漂移可能导致 resolve lock 长时间卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) [@zyguan](https://github.com/zyguan) + - 修复了一个 GC resolve lock 可能遗漏未清理 primary 悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) [@MyonKeminta](https://github.com/MyonKeminta) + TiKV + - 修复了一个在某些罕见的情况下,在 GC 的同时读数据有可能发生 panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) [@MyonKeminta](https://github.com/MyonKeminta) - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -257,7 +263,7 @@ TiDB 版本:7.3.0 - 修复了由于死锁导致 TiFlash 无法成功同步分区表的问题 [#7758](https://github.com/pingcap/tiflash/issues/7758) @[hongyunyan](https://github.com/hongyunyan) - 修复了系统表 information_schema.tiflash_replica 泄露了用户没有访问权限的表的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复了多个 HashAgg 在同一个 MPPTask 内部时,可能导致 MPPTask 编译时间过长而严重影响 query 性能的问题 [#7810](https://github.com/pingcap/tiflash/issues/7810) @[SeaRise](https://github.com/SeaRise) + Tools @@ -283,7 +289,7 @@ TiDB 版本:7.3.0 + TiDB Lightning - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复了 lighting 导入完成后执行 checksum 可能遇到 ssl 错误的 bug [#45462](https://github.com/pingcap/tidb/issues/45462) @[D3Hunter](https://github.com/D3Hunter) - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiUP From ddf36358514ffbed10be13275adcd757a2a19a37 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 3 Aug 2023 20:10:33 +0800 Subject: [PATCH 064/114] Apply suggestions from code review Co-authored-by: xixirangrang Co-authored-by: 3pointer --- releases/release-7.3.0.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 1cf45a9999bf..371eb0d29f5c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -108,6 +108,10 @@ TiDB 版本:7.3.0 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#冲突数据检测)。 +* TiDB Lightning 支持 Partitioned Raft KV(实验特性)[#14916](https://github.com/tikv/tikv/issues/14916) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** + + TiDB Lightning 支持 Partitioned Raft KV,该功能可以提升 TiDB Lightning 导入数据的性能。 + * TiDB Lightning 引入新的参数 `enable-diagnose-log` 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** 默认情况下,该功能未启用,即只打印包含 `lightning/main` 的日志。开启该功能后,将打印所有包(包括 `client-go` 和 `tidb`)的日志,以帮助诊断与 `client-go` 和 `tidb` 相关的问题。 @@ -124,6 +128,10 @@ TiDB 版本:7.3.0 +* Backup & Restore (BR) + + - 全量恢复前增加了空集群检查,默认不支持恢复到非空集群。如果强制恢复,可以使用 `--filter` 指定对应表名。 + * TiDB Lightning **tw@hfxsd** - 废弃 `tikv-importer.on-duplicate`,由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 替代。 From 9fc93066824916dd658169ad65c53e079b156a8a Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 3 Aug 2023 22:03:21 +0800 Subject: [PATCH 065/114] Update releases/release-7.3.0.md Co-authored-by: Hu# --- releases/release-7.3.0.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 371eb0d29f5c..139bc86bde83 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -207,8 +207,14 @@ TiDB 版本:7.3.0 + PD - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6785](https://github.com/tikv/pd/pull/6785) @[bufferflies](https://github.com/bufferflies) + - 修复了当重启 PD 时,可能会导致 default resource group 重新初始化的问题 [#6788](https://github.com/tikv/pd/pull/6788) @[glorv](https://github.com/glorv) + - 修复了当 etcd 已经启动,但 client 还未连接上去时,调用 client 会 panic 的问题 [#6866](https://github.com/tikv/pd/pull/6866) @[HuSharp](https://github.com/HuSharp) + - 修复了 region health-check 输出可能与通过 ID 所查 region 信息不一致的问题 [#6812](https://github.com/tikv/pd/pull/6812) @[JmPotato](https://github.com/JmPotato) + - 修复了 unsafe recovery 中失败的 learner peer 在 auto-detect 模式中被忽略的问题 [#6691](https://github.com/tikv/pd/pull/6691) @[v01dstar](https://github.com/v01dstar) + - 修复了 palcement rule 在选定没有满足 rule 的 tiflash learner 问题 [#6660](https://github.com/tikv/pd/pull/6660) @[rleungx](https://github.com/rleungx) + - 提升 etcd 高可用性 [#6577](https://github.com/tikv/pd/pull/6577) @[lhy1024](https://github.com/lhy1024) + - 减少 GetRegions 内存占用 [#6838](https://github.com/tikv/pd/pull/6838) @[lhy1024](https://github.com/lhy1024) + TiFlash From 027b62142b8c0028cd9a3481fa99d46abc1bc700 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 3 Aug 2023 22:04:53 +0800 Subject: [PATCH 066/114] Apply suggestions from code review --- releases/release-7.3.0.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 139bc86bde83..e56d1e4da229 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -208,11 +208,6 @@ TiDB 版本:7.3.0 + PD - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6785](https://github.com/tikv/pd/pull/6785) @[bufferflies](https://github.com/bufferflies) - - 修复了当重启 PD 时,可能会导致 default resource group 重新初始化的问题 [#6788](https://github.com/tikv/pd/pull/6788) @[glorv](https://github.com/glorv) - - 修复了当 etcd 已经启动,但 client 还未连接上去时,调用 client 会 panic 的问题 [#6866](https://github.com/tikv/pd/pull/6866) @[HuSharp](https://github.com/HuSharp) - - 修复了 region health-check 输出可能与通过 ID 所查 region 信息不一致的问题 [#6812](https://github.com/tikv/pd/pull/6812) @[JmPotato](https://github.com/JmPotato) - - 修复了 unsafe recovery 中失败的 learner peer 在 auto-detect 模式中被忽略的问题 [#6691](https://github.com/tikv/pd/pull/6691) @[v01dstar](https://github.com/v01dstar) - - 修复了 palcement rule 在选定没有满足 rule 的 tiflash learner 问题 [#6660](https://github.com/tikv/pd/pull/6660) @[rleungx](https://github.com/rleungx) - 提升 etcd 高可用性 [#6577](https://github.com/tikv/pd/pull/6577) @[lhy1024](https://github.com/lhy1024) - 减少 GetRegions 内存占用 [#6838](https://github.com/tikv/pd/pull/6838) @[lhy1024](https://github.com/lhy1024) @@ -270,8 +265,11 @@ TiDB 版本:7.3.0 + PD - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 修复了当重启 PD 时,可能会导致 default resource group 重新初始化的问题 [#6788](https://github.com/tikv/pd/pull/6788) @[glorv](https://github.com/glorv) + - 修复了当 etcd 已经启动,但 client 还未连接上去时,调用 client 会 panic 的问题 [#6866](https://github.com/tikv/pd/pull/6866) @[HuSharp](https://github.com/HuSharp) + - 修复了 region health-check 输出可能与通过 ID 所查 region 信息不一致的问题 [#6812](https://github.com/tikv/pd/pull/6812) @[JmPotato](https://github.com/JmPotato) + - 修复了 unsafe recovery 中失败的 learner peer 在 auto-detect 模式中被忽略的问题 [#6691](https://github.com/tikv/pd/pull/6691) @[v01dstar](https://github.com/v01dstar) + - 修复了 palcement rule 在选定没有满足 rule 的 tiflash learner 问题 [#6660](https://github.com/tikv/pd/pull/6660) @[rleungx](https://github.com/rleungx) + TiFlash From 37f02a9f9a8750e2727fb4beed09a86271f4c325 Mon Sep 17 00:00:00 2001 From: Aolin Date: Fri, 4 Aug 2023 09:56:47 +0800 Subject: [PATCH 067/114] Apply suggestions from code review --- releases/release-7.3.0.md | 1 - 1 file changed, 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index e56d1e4da229..d02fe70c29b7 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -239,7 +239,6 @@ TiDB 版本:7.3.0 + TiDB Lightning - - 更新 TiDB Lightning 并行导入的参数名称从 "tikv-importer.incremental-import" 变更为 “tikv-importer.parallel-import” ,避免用户误认为是增量导入而误用该参数。 [#45501](https://github.com/pingcap/tidb/issues/45501) @[lyzx2001](https://github.com/lyzx2001) **tw@hfxsd** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiUP From afc911463966cc335c7470780039939efd01a120 Mon Sep 17 00:00:00 2001 From: Aolin Date: Fri, 4 Aug 2023 10:13:04 +0800 Subject: [PATCH 068/114] fix ci Signed-off-by: Aolin --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index d02fe70c29b7..a3d033ad3cd4 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -147,7 +147,6 @@ TiDB 版本:7.3.0 | 变量名 | 修改类型 | 描述 | |---|----|------| -| [`enable-32bits-connection-id`](/system-variables.md#enable-32bits-connection-id-从-v730-版本开始引入) | 新增 | 这个变量用于控制是否开启生成 32 位 connection ID 的功能。 | | [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) | 新增 | 这个变量用于控制 `EXPLAIN` 语句是否禁止提前执行可以在优化阶段展开的常量子查询。 | | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | | [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | @@ -160,6 +159,7 @@ TiDB 版本:7.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | +| TiDB | [`enable-32bits-connection-id`](/tidb-configuration-file.md#enable-32bits-connection-id-从-v730-版本开始引入) | 新增 | 这个变量用于控制是否开启生成 32 位 connection ID 的功能。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为解决大数据写入情况下 compaction 速度跟不上写入速度的问题,默认值从 `"1MB"` 修改为 `"8MB"`。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].format-version](/tikv-configuration-file.md#format-version-从-v620-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | | TiKV | [`raft-engine.format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | From 1eb4d87d01a9eef5ec1febdd892f7432fb76930d Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 4 Aug 2023 11:09:46 +0800 Subject: [PATCH 069/114] Apply suggestions from code review Co-authored-by: Lynn --- releases/release-7.3.0.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index a3d033ad3cd4..973b68231385 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -207,8 +207,8 @@ TiDB 版本:7.3.0 + PD - - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6785](https://github.com/tikv/pd/pull/6785) @[bufferflies](https://github.com/bufferflies) - - 提升 etcd 高可用性 [#6577](https://github.com/tikv/pd/pull/6577) @[lhy1024](https://github.com/lhy1024) + - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6786](https://github.com/tikv/pd/issues/6786) @[bufferflies](https://github.com/bufferflies) + - 提升 etcd 高可用性 [#6554](https://github.com/tikv/pd/issues/6554) [#6442](https://github.com/tikv/pd/issues/6442) @[lhy1024](https://github.com/lhy1024) - 减少 GetRegions 内存占用 [#6838](https://github.com/tikv/pd/pull/6838) @[lhy1024](https://github.com/lhy1024) + TiFlash @@ -250,9 +250,9 @@ TiDB 版本:7.3.0 + TiDB - - 修复了一个 data race 导致 TiDB crash 的问题 [#45563](https://github.com/pingcap/tidb/pull/45563) @[genliqi](https://github.com/gengliqi) - - 修复了一个 index merge 被 kill 可能会导致 hang 住的问题 [#45284](https://github.com/pingcap/tidb/pull/45284) @[xzhangxian1008](https://github.com/xzhangxian1008) - - 修复了 parallel apply 开启 MPP 情况下 query 结果错误的问题 [#45302](https://github.com/pingcap/tidb/pull/45302) @[windtalker](https://github.com/windtalker) + - 修复了一个 data race 导致 TiDB crash 的问题 [#45561](https://github.com/pingcap/tidb/issues/45561) @[genliqi](https://github.com/gengliqi) + - 修复了一个 index merge 被 kill 可能会导致 hang 住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复了 parallel apply 开启 MPP 情况下 query 结果错误的问题 [#45299](https://github.com/pingcap/tidb/issues/45299) @[windtalker](https://github.com/windtalker) - 修复了一个时钟漂移可能导致 resolve lock 长时间卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) [@zyguan](https://github.com/zyguan) - 修复了一个 GC resolve lock 可能遗漏未清理 primary 悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) [@MyonKeminta](https://github.com/MyonKeminta) From 1aa418456ff5fb14f1d6ed77b4842bec5b98c7c7 Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 4 Aug 2023 11:42:09 +0800 Subject: [PATCH 070/114] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: 王超 Co-authored-by: Lynn --- releases/release-7.3.0.md | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 973b68231385..1c17de766309 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -185,6 +185,10 @@ TiDB 版本:7.3.0 | | | 新增/删除/修改 | | | | | 新增/删除/修改 | | +### 系统表 + +- 新增系统表 `mysql.tidb_timers` 用来存储系统内部定时器的元信息。 + ## 废弃功能 - note @@ -197,7 +201,8 @@ TiDB 版本:7.3.0 - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 支持新的函数 `IS_USED_LOCK` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) + - 提高了读取落盘数据的速度 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) + TiKV @@ -255,6 +260,20 @@ TiDB 版本:7.3.0 - 修复了 parallel apply 开启 MPP 情况下 query 结果错误的问题 [#45299](https://github.com/pingcap/tidb/issues/45299) @[windtalker](https://github.com/windtalker) - 修复了一个时钟漂移可能导致 resolve lock 长时间卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) [@zyguan](https://github.com/zyguan) - 修复了一个 GC resolve lock 可能遗漏未清理 primary 悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) [@MyonKeminta](https://github.com/MyonKeminta) + - 修复了在开启了动态裁剪的情况下,使用了排序的查询返回的结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) + - 修复了列定义中,AUTO_INCREMENT 与默认值不能共存的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) + - 修复了某些情况下查询系统表 `information_schema.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) + - 修复了某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) + - 修复了 truncate 分区表的某个分区时,全局索引无法清除的问题 [#42435](https://github.com/pingcap/tidb/issues/42435) @[L-maple](https://github.com/L-maple) + - 修复了某些情况下未完成的 TTL 任务在 TiDB 重启后无法被重新执行的问题 [#](https://github.com/pingcap/tidb/issues/45022) @[lcwangchao](https://github.com/lcwangchao) + - 修复了 TTL 运行过程中一些内存泄漏的问题 [#](https://github.com/pingcap/tidb/issues/45510) @[lcwangchao](https://github.com/lcwangchao) + - 修复了向分区表插入数据时又些报错信息不准确的问题 [#44966](https://github.com/pingcap/tidb/issues/44966) @[lilinghai](https://github.com/lilinghai) + - 修复了对 `information_schema.tiflash_replica` 表的读取权限问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) + - 修复了使用错误分区表名时报错。 [#44967](https://github.com/pingcap/tidb/issues/44967) @[River2000i](https://github.com/River2000i) + - 修复了某些情况下,打开 `tidb_enable_dist_task` 开关时,创建索引卡住的问题 [#](https://github.com/pingcap/tidb/issues/44440) @[tangenta](https://github.com/tangenta) + - 修复了用 BR 恢复设置了 `AUTO_ID_CACHE = 1`的表导致 `Duplicate entry` 错误的问题 [#44716](https://github.com/pingcap/tidb/issues/44716) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复了 `truncate table` 执行消耗的时间和 `admin show DDL jobs` 结果中显示的任务执行时间不一致的问题 [#44785](https://github.com/pingcap/tidb/issues/44785) @[tangenta](https://github.com/tangenta) + - 修复了读取元数据时间超过一个 DDL lease 导致的升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) + TiKV From 1b8bdfb44dbc7f012e6028292a153036193f1f9c Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 4 Aug 2023 11:54:51 +0800 Subject: [PATCH 071/114] add assignment Signed-off-by: Ran --- releases/release-7.3.0.md | 74 ++++++++++++--------------------------- 1 file changed, 23 insertions(+), 51 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 1c17de766309..c8243da259bd 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -41,7 +41,7 @@ TiDB 版本:7.3.0 * TiFlash 支持执行公共表表达式 (CTE)(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw@ran-huang** 在 v7.3.0 版本之前,TiFlash 的 MPP 引擎默认无法执行包含 CTE 的查询,你需要通过系统变量 [`tidb_opt_force_inline_cte`](/system-variables.md#tidb_opt_force_inline_cte-从-v630-版本开始引入) 强制 inline CTE,达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 中,TiFlash MPP 引擎支持执行包含 CTE 的查询,无需强制 inline CTE 也可以尽可能地在 MPP 框架中执行查询。在 TPC-DS 基准测试中,与强制 inline 的执行方式相比,该功能可以将包含 CTE 的查询的总执行速度提升 20%。 - + 该功能为实验特性,默认关闭,由变量 [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) 控制。 ### 稳定性 @@ -49,7 +49,7 @@ TiDB 版本:7.3.0 * 新增部分优化器提示 [#45520](https://github.com/pingcap/tidb/issues/45520) @[qw4990](https://github.com/qw4990) **tw@ran-huang** TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: - + - [`NO_MERGE_JOIN()`](/optimizer-hints.md#no_merge_joint1_name--tl_name-) 选择除 Merge Join 以外的连接方式。 - [`NO_INDEX_JOIN()`](/optimizer-hints.md#no_index_joint1_name--tl_name-) 选择除 Index Nested Loop Join 以外的连接方式。 - [`NO_INDEX_MERGE_JOIN()`](/optimizer-hints.md#no_index_merge_joint1_name--tl_name-) 选择除 Index Nested Loop Merge Join 以外的连接方式。 @@ -92,7 +92,7 @@ TiDB 版本:7.3.0 * Plan Replayer 支持导出历史统计信息 [#45038](https://github.com/pingcap/tidb/issues/45038) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** - 自 v7.3.0 起,通过新增的 [`dump with stats as of timestamp`](/sql-plan-replayer.md) 子句,Plan Replayer 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出执行计划在问题发生的时间点是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 + 自 v7.3.0 起,通过新增的 [`dump with stats as of timestamp`](/sql-plan-replayer.md) 子句,Plan Replayer 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出执行计划在问题发生的时间点是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 更多信息,请参考[用户文档](/sql-plan-replayer.md)。 @@ -105,17 +105,17 @@ TiDB 版本:7.3.0 在之前的版本中,TiDB Lightning 的逻辑导入模式和物理导入模式各自使用独立的冲突检测和处理方式,其配置较为复杂且不易理解。另外,在物理导入模式下,无法通过替换 (`replace`) 或忽略 (`ignore`) 策略处理冲突的数据。从 v7.3.0 开始,TiDB Lightning 引入新版冲突检测和处理机制,逻辑导入模式和物理导入模式都使用相同的冲突检测和处理方式,即可以选择在遇到冲突数据时报错 (`error`)、替换 (`replace`) 或忽略 (`ignore`)。同时还支持设置冲突记录的上限,例如在处理指定数量冲突记录后任务中断退出,也可以记录哪些数据发生了冲突,以便后续排查。 当导入数据存在大量冲突时,推荐使用新版冲突检测和处理机制,以获得更好的性能。注意新版和旧版冲突处理机制不能同时使用。未来将废弃旧版冲突检测和处理机制。 - - 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#冲突数据检测)。 + + 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#冲突数据检测)。 * TiDB Lightning 支持 Partitioned Raft KV(实验特性)[#14916](https://github.com/tikv/tikv/issues/14916) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** TiDB Lightning 支持 Partitioned Raft KV,该功能可以提升 TiDB Lightning 导入数据的性能。 * TiDB Lightning 引入新的参数 `enable-diagnose-log` 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - + 默认情况下,该功能未启用,即只打印包含 `lightning/main` 的日志。开启该功能后,将打印所有包(包括 `client-go` 和 `tidb`)的日志,以帮助诊断与 `client-go` 和 `tidb` 相关的问题。 - + 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-全局配置)。 ## 兼容性变更 @@ -128,7 +128,7 @@ TiDB 版本:7.3.0 -* Backup & Restore (BR) +* Backup & Restore (BR) - 全量恢复前增加了空集群检查,默认不支持恢复到非空集群。如果强制恢复,可以使用 `--filter` 指定对应表名。 @@ -198,6 +198,7 @@ TiDB 版本:7.3.0 + TiDB + - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** @@ -206,61 +207,47 @@ TiDB 版本:7.3.0 + TiKV + - 添加了 `Max gap of safe-ts`、`Min safe ts region` 监控和 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) [@ekexium](https://github.com/ekexium) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + PD + - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6786](https://github.com/tikv/pd/issues/6786) @[bufferflies](https://github.com/bufferflies) - 提升 etcd 高可用性 [#6554](https://github.com/tikv/pd/issues/6554) [#6442](https://github.com/tikv/pd/issues/6442) @[lhy1024](https://github.com/lhy1024) - 减少 GetRegions 内存占用 [#6838](https://github.com/tikv/pd/pull/6838) @[lhy1024](https://github.com/lhy1024) + TiFlash - - 支持新的 DTFile 格式版本,把小文件合并成大文件,从而减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + + - 支持新的 DTFile 格式版本,把小文件合并成大文件,从而减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) + Tools + Backup & Restore (BR) - 使用 BR 备份数据到 Azure Blob Storage 时,支持使用加密范围或加密密钥对数据进行服务端加密 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** - - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC + - 优化了 Open Protocol 输出的消息大小,在发送 update 类型事件时仅输出被更新的列值 [#9336](https://github.com/pingcap/tiflow/issues/9336) @[3AceShowHand](https://github.com/3AceShowHand) - Storage Sink 支持对 hex 格式数据进行十六进制编码输出,使其兼容 AWS DMS 的格式规范[#9373](https://github.com/pingcap/tiflow/issues/9373) @[CharlesCheung96](https://github.com/CharlesCheung96) - 优化了 TiCDC 获取下游 Kafka 集群元信息过于频繁导致的性能问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) @[hi-rustin](https://github.com/hi-rustin) - Kafka Sink 支持在消息过大时只发送 Handle Key 数据,减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - + TiDB Data Migration (DM) - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - + TiDB Lightning - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - + TiUP - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) ## 错误修复 + TiDB + - 修复了一个 data race 导致 TiDB crash 的问题 [#45561](https://github.com/pingcap/tidb/issues/45561) @[genliqi](https://github.com/gengliqi) - 修复了一个 index merge 被 kill 可能会导致 hang 住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) - 修复了 parallel apply 开启 MPP 情况下 query 结果错误的问题 [#45299](https://github.com/pingcap/tidb/issues/45299) @[windtalker](https://github.com/windtalker) - 修复了一个时钟漂移可能导致 resolve lock 长时间卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) [@zyguan](https://github.com/zyguan) - 修复了一个 GC resolve lock 可能遗漏未清理 primary 悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) [@MyonKeminta](https://github.com/MyonKeminta) - 修复了在开启了动态裁剪的情况下,使用了排序的查询返回的结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) + - 修复了列定义中,AUTO_INCREMENT 与默认值不能共存的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) - 修复了某些情况下查询系统表 `information_schema.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) - 修复了某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) @@ -277,12 +264,12 @@ TiDB 版本:7.3.0 + TiKV + - 修复了一个在某些罕见的情况下,在 GC 的同时读数据有可能发生 panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) [@MyonKeminta](https://github.com/MyonKeminta) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + PD + - 修复了当重启 PD 时,可能会导致 default resource group 重新初始化的问题 [#6788](https://github.com/tikv/pd/pull/6788) @[glorv](https://github.com/glorv) - 修复了当 etcd 已经启动,但 client 还未连接上去时,调用 client 会 panic 的问题 [#6866](https://github.com/tikv/pd/pull/6866) @[HuSharp](https://github.com/HuSharp) - 修复了 region health-check 输出可能与通过 ID 所查 region 信息不一致的问题 [#6812](https://github.com/tikv/pd/pull/6812) @[JmPotato](https://github.com/JmPotato) @@ -291,41 +278,26 @@ TiDB 版本:7.3.0 + TiFlash + - 修复了由于死锁导致 TiFlash 无法成功同步分区表的问题 [#7758](https://github.com/pingcap/tiflash/issues/7758) @[hongyunyan](https://github.com/hongyunyan) - 修复了系统表 information_schema.tiflash_replica 泄露了用户没有访问权限的表的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - 修复了多个 HashAgg 在同一个 MPPTask 内部时,可能导致 MPPTask 编译时间过长而严重影响 query 性能的问题 [#7810](https://github.com/pingcap/tiflash/issues/7810) @[SeaRise](https://github.com/SeaRise) + Tools - + Backup & Restore (BR) - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - + TiCDC - - 修复了一个由于 PD 短暂不可用而导致的同步任务报错的问题 [#9294](https://github.com/pingcap/tiflow/issues/9294) @[asddongmen](https://github.com/asddongmen) - - 修复了 TiCDC 部分节点发生网络隔离时有可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) + + - 修复了一个由于 PD 短暂不可用而导致的同步任务报错的问题 [#9294](https://github.com/pingcap/tiflow/issues/9294) @[asddongmen](https://github.com/asddongmen) + - 修复了 TiCDC 部分节点发生网络隔离时有可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复了一个当 Kafka Sink 遇到错误时可能会无限阻塞同步任务推进的问题 [#9309](https://github.com/pingcap/tiflow/issues/9309) @[hicqu](https://github.com/hicqu) - 修复了一个在 TiCDC 节点状态发生改变时有可能引发的 panic 问题 [#9354](https://github.com/pingcap/tiflow/issues/9354) @[sdojjy](https://github.com/sdojjy) - 修复了对默认 enum 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - + TiDB Data Migration (DM) - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiDB Lightning + - 修复了 lighting 导入完成后执行 checksum 可能遇到 ssl 错误的 bug [#45462](https://github.com/pingcap/tidb/issues/45462) @[D3Hunter](https://github.com/D3Hunter) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - + TiUP - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) ## 贡献者 From 7b103f7daccbde87b10ec7c4e83b04e78399d179 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 4 Aug 2023 18:59:29 +0800 Subject: [PATCH 072/114] Apply suggestions from code review --- releases/release-7.3.0.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index c8243da259bd..feed1e7520d2 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -214,8 +214,8 @@ TiDB 版本:7.3.0 - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6786](https://github.com/tikv/pd/issues/6786) @[bufferflies](https://github.com/bufferflies) - - 提升 etcd 高可用性 [#6554](https://github.com/tikv/pd/issues/6554) [#6442](https://github.com/tikv/pd/issues/6442) @[lhy1024](https://github.com/lhy1024) - - 减少 GetRegions 内存占用 [#6838](https://github.com/tikv/pd/pull/6838) @[lhy1024](https://github.com/lhy1024) + - 提升 etcd 的高可用性 [#6554](https://github.com/tikv/pd/issues/6554) [#6442](https://github.com/tikv/pd/issues/6442) @[lhy1024](https://github.com/lhy1024) + - 减少 `GetRegions` 请求的内存占用 [#6835](https://github.com/tikv/pd/issues/6835) @[lhy1024](https://github.com/lhy1024) + TiFlash @@ -270,18 +270,18 @@ TiDB 版本:7.3.0 + PD - - 修复了当重启 PD 时,可能会导致 default resource group 重新初始化的问题 [#6788](https://github.com/tikv/pd/pull/6788) @[glorv](https://github.com/glorv) - - 修复了当 etcd 已经启动,但 client 还未连接上去时,调用 client 会 panic 的问题 [#6866](https://github.com/tikv/pd/pull/6866) @[HuSharp](https://github.com/HuSharp) - - 修复了 region health-check 输出可能与通过 ID 所查 region 信息不一致的问题 [#6812](https://github.com/tikv/pd/pull/6812) @[JmPotato](https://github.com/JmPotato) - - 修复了 unsafe recovery 中失败的 learner peer 在 auto-detect 模式中被忽略的问题 [#6691](https://github.com/tikv/pd/pull/6691) @[v01dstar](https://github.com/v01dstar) - - 修复了 palcement rule 在选定没有满足 rule 的 tiflash learner 问题 [#6660](https://github.com/tikv/pd/pull/6660) @[rleungx](https://github.com/rleungx) + - 修复重启 PD 可能导致 `default` 资源组被重新初始化的问题 [#6787](https://github.com/tikv/pd/issues/6787) @[glorv](https://github.com/glorv) + - 修复当 etcd 已经启动,但 client 尚未连接上 etcd 时,调用 client 会导致 PD panic 的问题 [#6860](https://github.com/tikv/pd/issues/6860) @[HuSharp](https://github.com/HuSharp) + - 修复 Region 的 `health-check` 输出可能与通过 ID 所查到的 Region 信息不一致的问题 [#6560](https://github.com/tikv/pd/issues/6560) @[JmPotato](https://github.com/JmPotato) + - 修复 `unsafe recovery` 中失败的 learner peer 在 `auto-detect` 模式中被忽略的问题 [#6690](https://github.com/tikv/pd/issues/6690) @[v01dstar](https://github.com/v01dstar) + - 修复 Placement Rules 选择了不满足规则的 TiFlash learner 的问题 [#6662](https://github.com/tikv/pd/issues/6662) @[rleungx](https://github.com/rleungx) + TiFlash - - 修复了由于死锁导致 TiFlash 无法成功同步分区表的问题 [#7758](https://github.com/pingcap/tiflash/issues/7758) @[hongyunyan](https://github.com/hongyunyan) - - 修复了系统表 information_schema.tiflash_replica 泄露了用户没有访问权限的表的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - - 修复了多个 HashAgg 在同一个 MPPTask 内部时,可能导致 MPPTask 编译时间过长而严重影响 query 性能的问题 [#7810](https://github.com/pingcap/tiflash/issues/7810) @[SeaRise](https://github.com/SeaRise) + - 修复由于死锁导致 TiFlash 无法成功同步分区表的问题 [#7758](https://github.com/pingcap/tiflash/issues/7758) @[hongyunyan](https://github.com/hongyunyan) + - 修复系统表 `INFORMATION_SCHEMA.TIFLASH_REPLICA` 包含用户没有访问权限的表的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) + - 修复当同一个 MPP Task 内有多个 HashAgg 算子时,可能导致 MPP Task 编译时间过长而严重影响查询性能的问题 [#7810](https://github.com/pingcap/tiflash/issues/7810) @[SeaRise](https://github.com/SeaRise) + Tools From a429fd935597000cfc54c1e37465c308d3c11454 Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 7 Aug 2023 12:55:58 +0800 Subject: [PATCH 073/114] improvements and bug fixes: update TiDB and TiKV part --- releases/release-7.3.0.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index feed1e7520d2..b574e3a73bee 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -199,16 +199,15 @@ TiDB 版本:7.3.0 + TiDB - - 游标 (Cursor) 结果过大时,写入 TiDB 临时磁盘空间从而避免OOM [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** - - 支持新的函数 `IS_USED_LOCK` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) - - 提高了读取落盘数据的速度 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) + - 支持锁函数 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) + - 优化与落盘相关的 chunk 读取的性能 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) + TiKV - - 添加了 `Max gap of safe-ts`、`Min safe ts region` 监控和 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) [@ekexium](https://github.com/ekexium) + - 添加 `Max gap of safe-ts` 和 `Min safe ts region` 监控项以及 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) [@ekexium](https://github.com/ekexium) + PD @@ -241,12 +240,13 @@ TiDB 版本:7.3.0 + TiDB - - 修复了一个 data race 导致 TiDB crash 的问题 [#45561](https://github.com/pingcap/tidb/issues/45561) @[genliqi](https://github.com/gengliqi) - - 修复了一个 index merge 被 kill 可能会导致 hang 住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) - - 修复了 parallel apply 开启 MPP 情况下 query 结果错误的问题 [#45299](https://github.com/pingcap/tidb/issues/45299) @[windtalker](https://github.com/windtalker) - - 修复了一个时钟漂移可能导致 resolve lock 长时间卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) [@zyguan](https://github.com/zyguan) - - 修复了一个 GC resolve lock 可能遗漏未清理 primary 悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) [@MyonKeminta](https://github.com/MyonKeminta) - - 修复了在开启了动态裁剪的情况下,使用了排序的查询返回的结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) + - 修复当使用 MySQL 的 Cursor Fetch 协议时,结果集占用的内存超过 `tidb_mem_quota_query` 的限制导致 TiDB OOM 的问题。修复后,TiDB 会自动将结果集写入磁盘以释放内存资源 [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) + - 修复数据争用导致 TiDB panic 的问题 [#45561](https://github.com/pingcap/tidb/issues/45561) @[genliqi](https://github.com/gengliqi) + - 修复带 `indexMerge` 的查询被 kill 时可能会 hang 住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复当开启 `tidb_enable_parallel_apply` 时,MPP 模式下的查询结果出错的问题 [#45299](https://github.com/pingcap/tidb/issues/45299) @[windtalker](https://github.com/windtalker) + - 修复 resolve lock 在 PD 时间跳变的情况下可能 hang 住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) @[zyguan](https://github.com/zyguan) + - 修复 GC resolve lock 可能错过一些悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) @[MyonKeminta](https://github.com/MyonKeminta) + - 修复动态裁剪模式下使用了排序的查询返回结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) - 修复了列定义中,AUTO_INCREMENT 与默认值不能共存的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) - 修复了某些情况下查询系统表 `information_schema.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) @@ -265,7 +265,7 @@ TiDB 版本:7.3.0 + TiKV - - 修复了一个在某些罕见的情况下,在 GC 的同时读数据有可能发生 panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) [@MyonKeminta](https://github.com/MyonKeminta) + - 修复在一些罕见的情况下,在 GC 的同时读取数据可能导致 TiKV panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) [@MyonKeminta](https://github.com/MyonKeminta) + PD From 8aacc52c71d755a65d355820c2b6cb0bf4aaa5d0 Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 7 Aug 2023 13:43:51 +0800 Subject: [PATCH 074/114] add highlight Signed-off-by: Ran --- releases/release-7.3.0.md | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index feed1e7520d2..9357f5ce984c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -13,8 +13,43 @@ TiDB 版本:7.3.0 在 7.3.0 版本中,你可以获得以下关键特性: - - +v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在增强 TiDB 和 TiFlash 的查询稳定性,不直接面向用户,因此不包含在下表的发布亮点中。 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
分类功能描述
可扩展性与性能TiDB Lightning 支持 Partitioned Raft KV TiDB Lightning 的数据导入服务现在支持新的 Partitioned Raft KV 架构,该改进将作为近期 Partitioned Raft KV GA 的一部分。 +
稳定性与高可用TiDB Lightning 引入冲突数据的自动检测和处理机制TiDB Lightning 物理导入模式支持新版本的冲突检测,并在遇到冲突时实现替换 (`replace`) 或忽略 (`ignore`) 冲突数据的语义。TiDB Lightning 会自动处理冲突数据,同时提高了冲突处理的性能。
手动标记资源使用超出预期的查询(实验特性)查询超时存在于每个 TiKV 节点上,现在资源组可以通过全局并行执行时间来管理查询,并且允许降低查询的优先级或终止查询。允许算子通过 SQL 的文本、SQL Digest 或执行计划标记查询,以及在资源组级别对这些查询进行处理,从而更好地控制非预期的大型查询可能对集群产生的影响。
SQL添加更多优化器提示,加强对算子的控制,提升查询稳定性新增优化器提示:NO_HASH_JOIN()INDEX_JOIN()NO_INDEX_HASH_JOIN() +
数据库管理与可观测性显示统计信息收集的进度支持使用 SHOW ANALYZE STATUS 或通过系统表 mysql.analyze_jobs 查看 ANALYZE 任务的进度
## 功能详情 From 97036aa6fb469f61ae602b7587843d3947769c4a Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 7 Aug 2023 13:54:23 +0800 Subject: [PATCH 075/114] add region-bucket-size --- releases/release-7.3.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index f9c391c233e0..719d4a19c177 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -195,6 +195,7 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | | TiDB | [`enable-32bits-connection-id`](/tidb-configuration-file.md#enable-32bits-connection-id-从-v730-版本开始引入) | 新增 | 这个变量用于控制是否开启生成 32 位 connection ID 的功能。 | +| TiKV | [`coprocessor.region-bucket-size`](/tikv-configuration-file.md#region-bucket-size-从-v610-版本开始引入) | 修改 | 为降低客户端超时的可能性,默认值从 `96MiB` 修改为 `50MiB`。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为解决大数据写入情况下 compaction 速度跟不上写入速度的问题,默认值从 `"1MB"` 修改为 `"8MB"`。 | | TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].format-version](/tikv-configuration-file.md#format-version-从-v620-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | | TiKV | [`raft-engine.format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | From ac95ddeb3ee0a2ea350345c5b784a2e05b3fafaa Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 7 Aug 2023 14:37:15 +0800 Subject: [PATCH 076/114] cdc+lighting improvement+bugfixes Signed-off-by: Ran --- releases/release-7.3.0.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index f9c391c233e0..c77dc1a14185 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -265,10 +265,9 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 + TiCDC - - 优化了 Open Protocol 输出的消息大小,在发送 update 类型事件时仅输出被更新的列值 [#9336](https://github.com/pingcap/tiflow/issues/9336) @[3AceShowHand](https://github.com/3AceShowHand) - - Storage Sink 支持对 hex 格式数据进行十六进制编码输出,使其兼容 AWS DMS 的格式规范[#9373](https://github.com/pingcap/tiflow/issues/9373) @[CharlesCheung96](https://github.com/CharlesCheung96) - - 优化了 TiCDC 获取下游 Kafka 集群元信息过于频繁导致的性能问题 [#8959](https://github.com/pingcap/tiflow/issues/8959) @[hi-rustin](https://github.com/hi-rustin) - - Kafka Sink 支持在消息过大时只发送 Handle Key 数据,减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** + - 优化了 Open Protocol 输出的消息大小,在发送 `UPDATE` 类型事件时仅输出被更新的列值 [#9336](https://github.com/pingcap/tiflow/issues/9336) @[3AceShowHand](https://github.com/3AceShowHand) + - Storage Sink 支持对 HEX 格式的数据进行十六进制编码输出,使其兼容 AWS DMS 的格式规范 [#9373](https://github.com/pingcap/tiflow/issues/9373) @[CharlesCheung96](https://github.com/CharlesCheung96) + - Kafka Sink 支持在消息过大时[只发送 Handle Key 数据](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息),减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** ## 错误修复 @@ -323,16 +322,16 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 + TiCDC - - 修复了一个由于 PD 短暂不可用而导致的同步任务报错的问题 [#9294](https://github.com/pingcap/tiflow/issues/9294) @[asddongmen](https://github.com/asddongmen) - - 修复了 TiCDC 部分节点发生网络隔离时有可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) - - 修复了一个当 Kafka Sink 遇到错误时可能会无限阻塞同步任务推进的问题 [#9309](https://github.com/pingcap/tiflow/issues/9309) @[hicqu](https://github.com/hicqu) - - 修复了一个在 TiCDC 节点状态发生改变时有可能引发的 panic 问题 [#9354](https://github.com/pingcap/tiflow/issues/9354) @[sdojjy](https://github.com/sdojjy) - - 修复了对默认 enum 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) + - 修复由于 PD 短暂不可用而导致同步任务报错的问题 [#9294](https://github.com/pingcap/tiflow/issues/9294) @[asddongmen](https://github.com/asddongmen) + - 修复 TiCDC 部分节点发生网络隔离时可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) + - 修复当 Kafka Sink 遇到错误时可能会无限阻塞同步任务推进的问题 [#9309](https://github.com/pingcap/tiflow/issues/9309) @[hicqu](https://github.com/hicqu) + - 修复在 TiCDC 节点状态发生改变时可能引发的 panic 问题 [#9354](https://github.com/pingcap/tiflow/issues/9354) @[sdojjy](https://github.com/sdojjy) + - 修复对默认 ENUM 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) + TiDB Lightning - - 修复了 lighting 导入完成后执行 checksum 可能遇到 ssl 错误的 bug [#45462](https://github.com/pingcap/tidb/issues/45462) @[D3Hunter](https://github.com/D3Hunter) + - 修复 TiDB Lightning 导入完成后执行 checksum 可能遇到 SSL 错误的问题 [#45462](https://github.com/pingcap/tidb/issues/45462) @[D3Hunter](https://github.com/D3Hunter) ## 贡献者 From 04ed45b5fc7dfd6c5370e39991fb76d36c198179 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 7 Aug 2023 14:43:16 +0800 Subject: [PATCH 077/114] Update releases/release-7.3.0.md Co-authored-by: Aolin --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 5e84e1c63d73..654d18de39b7 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -139,7 +139,7 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 在之前的版本中,TiDB Lightning 的逻辑导入模式和物理导入模式各自使用独立的冲突检测和处理方式,其配置较为复杂且不易理解。另外,在物理导入模式下,无法通过替换 (`replace`) 或忽略 (`ignore`) 策略处理冲突的数据。从 v7.3.0 开始,TiDB Lightning 引入新版冲突检测和处理机制,逻辑导入模式和物理导入模式都使用相同的冲突检测和处理方式,即可以选择在遇到冲突数据时报错 (`error`)、替换 (`replace`) 或忽略 (`ignore`)。同时还支持设置冲突记录的上限,例如在处理指定数量冲突记录后任务中断退出,也可以记录哪些数据发生了冲突,以便后续排查。 - 当导入数据存在大量冲突时,推荐使用新版冲突检测和处理机制,以获得更好的性能。注意新版和旧版冲突处理机制不能同时使用。未来将废弃旧版冲突检测和处理机制。 + 当导入数据存在大量冲突时,推荐使用新版冲突检测和处理机制,以获得更好的性能。在实验环境下,相比旧版,新版机制最高可将冲突检测和处理的性能提升 3 倍。该性能数据仅供参考,实际性能会受到环境配置、表结构、冲突数据的占比等因素影响。注意新版和旧版冲突处理机制不能同时使用。未来将废弃旧版冲突检测和处理机制。 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#冲突数据检测)。 From 345b920e8dfb19f617f455bdc7f6cf3da4e0c466 Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 7 Aug 2023 15:11:55 +0800 Subject: [PATCH 078/114] support IS_FREE_LOCK --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 654d18de39b7..0270d97b8294 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -237,7 +237,7 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** - - 支持锁函数 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) + - 支持锁函数 `IS_FREE_LOCK() 和 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) - 优化与落盘相关的 chunk 读取的性能 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) + TiKV From 769d9b40a4701c8e27b9ec3d0667d85cb94dbf8d Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 7 Aug 2023 16:03:36 +0800 Subject: [PATCH 079/114] add contributors Signed-off-by: Ran --- releases/release-7.3.0.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 0270d97b8294..94587d40ce2b 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -338,4 +338,16 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 感谢来自 TiDB 社区的贡献者们: -+ [Contributor 1]() +- [charleszheng44](https://github.com/charleszheng44) +- [dhysum](https://github.com/dhysum) +- [haiyux](https://github.com/haiyux) +- [Jiang-Hua](https://github.com/Jiang-Hua) +- [Jille](https://github.com/Jille) +- [jiyfhust](https://github.com/jiyfhust) +- [krishnaduttPanchagnula](https://github.com/krishnaduttPanchagnula) +- [L-maple](https://github.com/L-maple) +- [pingandb](https://github.com/pingandb) +- [testwill](https://github.com/testwill) +- [tisonkun](https://github.com/tisonkun) +- [xuyifangreeneyes](https://github.com/xuyifangreeneyes) +- [yumchina](https://github.com/yumchina) From 03c760ab6526bd57174cf8b30c381dc8053f80e7 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 8 Aug 2023 08:53:15 +0800 Subject: [PATCH 080/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 94587d40ce2b..6a8f79a9822c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -283,19 +283,19 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 - 修复 GC resolve lock 可能错过一些悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) @[MyonKeminta](https://github.com/MyonKeminta) - 修复动态裁剪模式下使用了排序的查询返回结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) - - 修复了列定义中,AUTO_INCREMENT 与默认值不能共存的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) - - 修复了某些情况下查询系统表 `information_schema.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) - - 修复了某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) - - 修复了 truncate 分区表的某个分区时,全局索引无法清除的问题 [#42435](https://github.com/pingcap/tidb/issues/42435) @[L-maple](https://github.com/L-maple) - - 修复了某些情况下未完成的 TTL 任务在 TiDB 重启后无法被重新执行的问题 [#](https://github.com/pingcap/tidb/issues/45022) @[lcwangchao](https://github.com/lcwangchao) - - 修复了 TTL 运行过程中一些内存泄漏的问题 [#](https://github.com/pingcap/tidb/issues/45510) @[lcwangchao](https://github.com/lcwangchao) - - 修复了向分区表插入数据时又些报错信息不准确的问题 [#44966](https://github.com/pingcap/tidb/issues/44966) @[lilinghai](https://github.com/lilinghai) - - 修复了对 `information_schema.tiflash_replica` 表的读取权限问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - - 修复了使用错误分区表名时报错。 [#44967](https://github.com/pingcap/tidb/issues/44967) @[River2000i](https://github.com/River2000i) - - 修复了某些情况下,打开 `tidb_enable_dist_task` 开关时,创建索引卡住的问题 [#](https://github.com/pingcap/tidb/issues/44440) @[tangenta](https://github.com/tangenta) - - 修复了用 BR 恢复设置了 `AUTO_ID_CACHE = 1`的表导致 `Duplicate entry` 错误的问题 [#44716](https://github.com/pingcap/tidb/issues/44716) @[tiancaiamao](https://github.com/tiancaiamao) - - 修复了 `truncate table` 执行消耗的时间和 `admin show DDL jobs` 结果中显示的任务执行时间不一致的问题 [#44785](https://github.com/pingcap/tidb/issues/44785) @[tangenta](https://github.com/tangenta) - - 修复了读取元数据时间超过一个 DDL lease 导致的升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) + - 修复列定义中 `AUTO_INCREMENT` 与默认值不能共存的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) + - 修复某些情况下查询系统表 `information_schema.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) + - 修复某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) + - 修复 `TRUNCATE` 分区表的某个分区时,全局索引无法清除的问题 [#42435](https://github.com/pingcap/tidb/issues/42435) @[L-maple](https://github.com/L-maple) + - 修复某些情况下未完成的 TTL 任务在 TiDB 重启后无法被重新执行的问题 [#45022](https://github.com/pingcap/tidb/issues/45022) @[lcwangchao](https://github.com/lcwangchao) + - 修复 TTL 运行过程中内存泄漏的问题 [#45510](https://github.com/pingcap/tidb/issues/45510) @[lcwangchao](https://github.com/lcwangchao) + - 修复向分区表插入数据时某些报错信息不准确的问题 [#44966](https://github.com/pingcap/tidb/issues/44966) @[lilinghai](https://github.com/lilinghai) + - 修复 `information_schema.tiflash_replica` 表的读取权限有误的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) + - 修复使用错误分区表名时报错的问题 [#44967](https://github.com/pingcap/tidb/issues/44967) @[River2000i](https://github.com/River2000i) + - 修复某些情况下启用 `tidb_enable_dist_task` 时,创建索引卡住的问题 [#44440](https://github.com/pingcap/tidb/issues/44440) @[tangenta](https://github.com/tangenta) + - 修复用 BR 恢复设置了 `AUTO_ID_CACHE = 1` 的表导致 `Duplicate entry` 错误的问题 [#44716](https://github.com/pingcap/tidb/issues/44716) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复执行 `TRUNCATE TABLE` 消耗的时间和 `ADMIN SHOW DDL JOBS` 结果中显示的任务执行时间不一致的问题 [#44785](https://github.com/pingcap/tidb/issues/44785) @[tangenta](https://github.com/tangenta) + - 修复读取元数据时间超过一个 DDL lease 导致升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) + TiKV From 2912c498c7afa8c6dee4c9dad88ccc99fc445cf5 Mon Sep 17 00:00:00 2001 From: Hangjie Mo Date: Tue, 8 Aug 2023 11:23:34 +0800 Subject: [PATCH 081/114] Update releases/release-7.3.0.md Co-authored-by: Aolin --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 6a8f79a9822c..9c6bf64c1003 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -283,7 +283,7 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 - 修复 GC resolve lock 可能错过一些悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) @[MyonKeminta](https://github.com/MyonKeminta) - 修复动态裁剪模式下使用了排序的查询返回结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) - - 修复列定义中 `AUTO_INCREMENT` 与默认值不能共存的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) + - 修复 `AUTO_INCREMENT` 与列的默认值 `DEFAULT` 可以指定在同一列上的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) - 修复某些情况下查询系统表 `information_schema.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) - 修复某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) - 修复 `TRUNCATE` 分区表的某个分区时,全局索引无法清除的问题 [#42435](https://github.com/pingcap/tidb/issues/42435) @[L-maple](https://github.com/L-maple) From f2ec135a7529499db8ce9b06550a1dc3eab6e01c Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 8 Aug 2023 11:30:44 +0800 Subject: [PATCH 082/114] Apply suggestions from code review Co-authored-by: xixirangrang --- releases/release-7.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 9c6bf64c1003..bdbd16d44e75 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -277,10 +277,10 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 - 修复当使用 MySQL 的 Cursor Fetch 协议时,结果集占用的内存超过 `tidb_mem_quota_query` 的限制导致 TiDB OOM 的问题。修复后,TiDB 会自动将结果集写入磁盘以释放内存资源 [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - 修复数据争用导致 TiDB panic 的问题 [#45561](https://github.com/pingcap/tidb/issues/45561) @[genliqi](https://github.com/gengliqi) - - 修复带 `indexMerge` 的查询被 kill 时可能会 hang 住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复带 `indexMerge` 的查询被 kill 时可能会卡住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) - 修复当开启 `tidb_enable_parallel_apply` 时,MPP 模式下的查询结果出错的问题 [#45299](https://github.com/pingcap/tidb/issues/45299) @[windtalker](https://github.com/windtalker) - - 修复 resolve lock 在 PD 时间跳变的情况下可能 hang 住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) @[zyguan](https://github.com/zyguan) - - 修复 GC resolve lock 可能错过一些悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) @[MyonKeminta](https://github.com/MyonKeminta) + - 修复 resolve lock 在 PD 时间跳变的情况下可能卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) @[zyguan](https://github.com/zyguan) + - 修复 GC resolve lock 可能错过一些悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) @[MyonKeminta](https://github.com/MyonKeminta) - 修复动态裁剪模式下使用了排序的查询返回结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) - 修复 `AUTO_INCREMENT` 与列的默认值 `DEFAULT` 可以指定在同一列上的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) From 666396801481a116a7c2933458b631b65cf3bdcf Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 8 Aug 2023 12:12:44 +0800 Subject: [PATCH 083/114] Update releases/release-7.3.0.md Co-authored-by: Aolin --- releases/release-7.3.0.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index bdbd16d44e75..ecca84a269b1 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -284,17 +284,17 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 - 修复动态裁剪模式下使用了排序的查询返回结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) - 修复 `AUTO_INCREMENT` 与列的默认值 `DEFAULT` 可以指定在同一列上的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) - - 修复某些情况下查询系统表 `information_schema.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) + - 修复某些情况下查询系统表 `INFORMATION_SCHEMA.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) - 修复某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) - 修复 `TRUNCATE` 分区表的某个分区时,全局索引无法清除的问题 [#42435](https://github.com/pingcap/tidb/issues/42435) @[L-maple](https://github.com/L-maple) - - 修复某些情况下未完成的 TTL 任务在 TiDB 重启后无法被重新执行的问题 [#45022](https://github.com/pingcap/tidb/issues/45022) @[lcwangchao](https://github.com/lcwangchao) + - 修复在 TiDB 节点故障后其它 TiDB 节点没有接管 TTL 任务的问题 [#45022](https://github.com/pingcap/tidb/issues/45022) @[lcwangchao](https://github.com/lcwangchao) - 修复 TTL 运行过程中内存泄漏的问题 [#45510](https://github.com/pingcap/tidb/issues/45510) @[lcwangchao](https://github.com/lcwangchao) - 修复向分区表插入数据时某些报错信息不准确的问题 [#44966](https://github.com/pingcap/tidb/issues/44966) @[lilinghai](https://github.com/lilinghai) - - 修复 `information_schema.tiflash_replica` 表的读取权限有误的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) + - 修复 `INFORMATION_SCHEMA.TIFLASH_REPLICA` 表的读取权限有误的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - 修复使用错误分区表名时报错的问题 [#44967](https://github.com/pingcap/tidb/issues/44967) @[River2000i](https://github.com/River2000i) - 修复某些情况下启用 `tidb_enable_dist_task` 时,创建索引卡住的问题 [#44440](https://github.com/pingcap/tidb/issues/44440) @[tangenta](https://github.com/tangenta) - - 修复用 BR 恢复设置了 `AUTO_ID_CACHE = 1` 的表导致 `Duplicate entry` 错误的问题 [#44716](https://github.com/pingcap/tidb/issues/44716) @[tiancaiamao](https://github.com/tiancaiamao) - - 修复执行 `TRUNCATE TABLE` 消耗的时间和 `ADMIN SHOW DDL JOBS` 结果中显示的任务执行时间不一致的问题 [#44785](https://github.com/pingcap/tidb/issues/44785) @[tangenta](https://github.com/tangenta) + - 修复通过 BR 恢复 `AUTO_ID_CACHE=1` 的表时,会遇到 `duplicate entry` 报错的问题 [#44716](https://github.com/pingcap/tidb/issues/44716) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复执行 `TRUNCATE TABLE` 消耗的时间和 `ADMIN SHOW DDL JOBS` 显示的任务执行时间不一致的问题 [#44785](https://github.com/pingcap/tidb/issues/44785) @[tangenta](https://github.com/tangenta) - 修复读取元数据时间超过一个 DDL lease 导致升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) + TiKV From 8527db2e949d3b17f33184f50a6044a09f0d85c2 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 8 Aug 2023 14:17:16 +0800 Subject: [PATCH 084/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index ecca84a269b1..ebf090af2376 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -310,6 +310,7 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 - 修复 Region 的 `health-check` 输出可能与通过 ID 所查到的 Region 信息不一致的问题 [#6560](https://github.com/tikv/pd/issues/6560) @[JmPotato](https://github.com/JmPotato) - 修复 `unsafe recovery` 中失败的 learner peer 在 `auto-detect` 模式中被忽略的问题 [#6690](https://github.com/tikv/pd/issues/6690) @[v01dstar](https://github.com/v01dstar) - 修复 Placement Rules 选择了不满足规则的 TiFlash learner 的问题 [#6662](https://github.com/tikv/pd/issues/6662) @[rleungx](https://github.com/rleungx) + - 修复在 rule checker 选定 peer 时,unhealthy peer 无法被移除的问题 [#6559](https://github.com/tikv/pd/issues/6559) [nolouch](https://github.com/nolouch) + TiFlash From 4f24a192413b6959eb64979790b80457e34307c9 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 8 Aug 2023 14:52:18 +0800 Subject: [PATCH 085/114] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index ebf090af2376..bbc4cb262495 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -11,9 +11,7 @@ TiDB 版本:7.3.0 试用链接:[快速体验](https://docs.pingcap.com/zh/tidb/v7.3/quick-start-with-tidb) | [下载离线包](https://cn.pingcap.com/product-community/) -在 7.3.0 版本中,你可以获得以下关键特性: - -v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在增强 TiDB 和 TiFlash 的查询稳定性,不直接面向用户,因此不包含在下表的发布亮点中。 +v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的部分功能旨在增强 TiDB 和 TiFlash 的查询稳定性,不直接面向用户,因此未包含在下表中。 @@ -27,26 +25,26 @@ v7.3.0 引入了以下主要功能。功能详情中列出的部分更新旨在 - - - + + - - + + - - + - - + +
可扩展性与性能 TiDB Lightning 支持 Partitioned Raft KV TiDB Lightning 的数据导入服务现在支持新的 Partitioned Raft KV 架构,该改进将作为近期 Partitioned Raft KV GA 的一部分。 + TiDB Lightning 的数据导入服务支持新的 [Partitioned Raft KV](https://docs.pingcap.com/zh/tidb/v7.3/partitioned-raft-kv) 架构,为 Partitioned Raft KV 在 TiDB 后续版本中 GA 做好准备。
稳定性与高可用TiDB Lightning 引入冲突数据的自动检测和处理机制TiDB Lightning 物理导入模式支持新版本的冲突检测,并在遇到冲突时实现替换 (`replace`) 或忽略 (`ignore`) 冲突数据的语义。TiDB Lightning 会自动处理冲突数据,同时提高了冲突处理的性能。TiDB Lightning 引入冲突数据的自动检测和处理机制TiDB Lightning 物理导入模式支持新版本的冲突检测机制,支持在遇到数据冲突时替换 (`replace`) 或忽略 (`ignore`) 冲突数据的语义。TiDB Lightning 会自动处理冲突数据,同时提高了冲突处理的性能。
手动标记资源使用超出预期的查询(实验特性)查询超时存在于每个 TiKV 节点上,现在资源组可以通过全局并行执行时间来管理查询,并且允许降低查询的优先级或终止查询。允许算子通过 SQL 的文本、SQL Digest 或执行计划标记查询,以及在资源组级别对这些查询进行处理,从而更好地控制非预期的大型查询可能对集群产生的影响。手动标记资源使用超出预期的查询(实验特性)查询超时可能发生在任一 TiKV 节点上,现在资源组可以通过全局并行执行时间来管理查询,并且允许降低查询的优先级或终止查询。该功能允许算子在资源组级别通过匹配 SQL 文本、SQL digest 或执行计划标记查询,并对这些查询进行处理,从而更好地控制非预期的大型查询可能对集群产生的影响。
SQL添加更多优化器提示,加强对算子的控制,提升查询稳定性新增优化器提示:NO_HASH_JOIN()INDEX_JOIN()NO_INDEX_HASH_JOIN() + 添加更多优化器提示,加强对算子的控制,提升查询稳定性新增优化器提示:NO_INDEX_JOIN()NO_MERGE_JOIN()NO_INDEX_MERGE_JOIN()NO_HASH_JOIN()NO_INDEX_HASH_JOIN()
数据库管理与可观测性显示统计信息收集的进度支持使用 SHOW ANALYZE STATUS 或通过系统表 mysql.analyze_jobs 查看 ANALYZE 任务的进度显示统计信息收集的进度支持使用 SHOW ANALYZE STATUS 语句或通过mysql.analyze_jobs 系统表查看 ANALYZE 任务的进度。
From 5fdab747b4f47c9cd4568d62125a61176e24460a Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 8 Aug 2023 15:18:00 +0800 Subject: [PATCH 086/114] add `tidb_skip_missing_partition_stats` --- releases/release-7.3.0.md | 1 + 1 file changed, 1 insertion(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index bbc4cb262495..eca0ace129a3 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -181,6 +181,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | 变量名 | 修改类型 | 描述 | |---|----|------| | [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) | 新增 | 这个变量用于控制 `EXPLAIN` 语句是否禁止提前执行可以在优化阶段展开的常量子查询。 | +| [`tidb_skip_missing_partition_stats`](/system-variables.md#tidb_skip_missing_partition_stats-从-v730-版本开始引入) | 新增 | 这个变量用于控制当分区统计信息缺失时生成 GlobalStats 的行为。 | | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | | [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | | [`tidb_lock_unchanged_keys`](/system-variables.md#tiflash_replica_read-从-v730v711-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁 | From 34caf921e443943fb70ebde0605481cdf81e2548 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 8 Aug 2023 17:00:09 +0800 Subject: [PATCH 087/114] Apply suggestions from code review --- releases/release-7.3.0.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index eca0ace129a3..892f58620dae 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -204,6 +204,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | TiKV | [`storage.block-cache.capacity`](/tikv-configuration-file.md#capacity) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为弥补 memtable 的内存开销,将默认值从系统总内存大小的 45% 修改为系统总内存大小的 30%。 | | TiKV | [`rocksdb.write-buffer-limit`](/tikv-configuration-file.md#write-buffer-limit-从-v660-版本开始引入) | 修改 | 为减小 memtable 的内存开销,当 `storage.engine="raft-kv"` 时,默认值从本机内存的 25% 修改为 `0`,即不限制。当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从本机内存的 25% 修改为本机内存的 20%。 | | TiKV | [`rocksdb.lockcf.write-buffer-size`](/tikv-configuration-file.md#write-buffer-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为加快 lockcf 上 compaction 的速度,默认值从 `"32MB"` 修改为 `"4MB"`。 | +| TiFlash | [`storage.format_version`](/tiflash/tiflash-configuration.md) | 修改 | 引入新的 DTFile 储存文件格式 `format_version = 5`,该格式可以合并小文件从而减少物理文件数量。注意该格式目前为实验特性,默认未启用。 | |TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | |TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 ""(不做冲突检测),`error`(遇到冲突数据即报错并停止导入),`replace`(遇到冲突记录替换已有的冲突记录),`ignore`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 "", 即不做冲突检测。 | |TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | @@ -254,7 +255,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 + TiFlash - - 支持新的 DTFile 格式版本,把小文件合并成大文件,从而减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) + - 支持新的 DTFile 格式版本 [`storage.format_version = 5`](/tiflash/tiflash-configuration.md),可以合并小文件从而减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) + Tools From 7dd3c316ff32713a87f5ec6caa25a9b13fef87ed Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 8 Aug 2023 17:12:58 +0800 Subject: [PATCH 088/114] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 892f58620dae..3b77d59382e7 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -25,7 +25,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 可扩展性与性能 TiDB Lightning 支持 Partitioned Raft KV - TiDB Lightning 的数据导入服务支持新的 [Partitioned Raft KV](https://docs.pingcap.com/zh/tidb/v7.3/partitioned-raft-kv) 架构,为 Partitioned Raft KV 在 TiDB 后续版本中 GA 做好准备。 + TiDB Lightning 的数据导入服务支持新的 Partitioned Raft KV 架构,为 Partitioned Raft KV 在 TiDB 后续版本中 GA 做好准备。 From a103f63ed94a9985c29dc2d9983a8dfea6703374 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 8 Aug 2023 17:17:30 +0800 Subject: [PATCH 089/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 3b77d59382e7..612a8864cf7f 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -40,7 +40,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 SQL 添加更多优化器提示,加强对算子的控制,提升查询稳定性 - 新增优化器提示:NO_INDEX_JOIN()NO_MERGE_JOIN()NO_INDEX_MERGE_JOIN()NO_HASH_JOIN()NO_INDEX_HASH_JOIN() + 新增优化器提示:NO_INDEX_JOIN()NO_MERGE_JOIN()NO_INDEX_MERGE_JOIN()NO_HASH_JOIN()NO_INDEX_HASH_JOIN() + 数据库管理与可观测性 显示统计信息收集的进度 From 5686637c4d644fcb9fd1aba5f0f41f98fa7ecdc1 Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 8 Aug 2023 18:01:56 +0800 Subject: [PATCH 090/114] fix build failure Signed-off-by: Ran --- releases/release-7.3.0.md | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 612a8864cf7f..130fb06366ff 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -233,29 +233,25 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ## 改进提升 -+ TiDB ++ TiDB - - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** - 支持锁函数 `IS_FREE_LOCK() 和 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) - 优化与落盘相关的 chunk 读取的性能 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) -+ TiKV ++ TiKV - - 添加 `Max gap of safe-ts` 和 `Min safe ts region` 监控项以及 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) [@ekexium](https://github.com/ekexium) -+ PD ++ PD - - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6786](https://github.com/tikv/pd/issues/6786) @[bufferflies](https://github.com/bufferflies) - 提升 etcd 的高可用性 [#6554](https://github.com/tikv/pd/issues/6554) [#6442](https://github.com/tikv/pd/issues/6442) @[lhy1024](https://github.com/lhy1024) - 减少 `GetRegions` 请求的内存占用 [#6835](https://github.com/tikv/pd/issues/6835) @[lhy1024](https://github.com/lhy1024) -+ TiFlash ++ TiFlash - - 支持新的 DTFile 格式版本 [`storage.format_version = 5`](/tiflash/tiflash-configuration.md),可以合并小文件从而减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) + Tools @@ -264,18 +260,16 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 使用 BR 备份数据到 Azure Blob Storage 时,支持使用加密范围或加密密钥对数据进行服务端加密 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** - + TiCDC + + TiCDC - - 优化了 Open Protocol 输出的消息大小,在发送 `UPDATE` 类型事件时仅输出被更新的列值 [#9336](https://github.com/pingcap/tiflow/issues/9336) @[3AceShowHand](https://github.com/3AceShowHand) - Storage Sink 支持对 HEX 格式的数据进行十六进制编码输出,使其兼容 AWS DMS 的格式规范 [#9373](https://github.com/pingcap/tiflow/issues/9373) @[CharlesCheung96](https://github.com/CharlesCheung96) - Kafka Sink 支持在消息过大时[只发送 Handle Key 数据](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息),减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** ## 错误修复 -+ TiDB ++ TiDB - - 修复当使用 MySQL 的 Cursor Fetch 协议时,结果集占用的内存超过 `tidb_mem_quota_query` 的限制导致 TiDB OOM 的问题。修复后,TiDB 会自动将结果集写入磁盘以释放内存资源 [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - 修复数据争用导致 TiDB panic 的问题 [#45561](https://github.com/pingcap/tidb/issues/45561) @[genliqi](https://github.com/gengliqi) - 修复带 `indexMerge` 的查询被 kill 时可能会卡住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) @@ -298,14 +292,12 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复执行 `TRUNCATE TABLE` 消耗的时间和 `ADMIN SHOW DDL JOBS` 显示的任务执行时间不一致的问题 [#44785](https://github.com/pingcap/tidb/issues/44785) @[tangenta](https://github.com/tangenta) - 修复读取元数据时间超过一个 DDL lease 导致升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) -+ TiKV ++ TiKV - - 修复在一些罕见的情况下,在 GC 的同时读取数据可能导致 TiKV panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) [@MyonKeminta](https://github.com/MyonKeminta) -+ PD ++ PD - - 修复重启 PD 可能导致 `default` 资源组被重新初始化的问题 [#6787](https://github.com/tikv/pd/issues/6787) @[glorv](https://github.com/glorv) - 修复当 etcd 已经启动,但 client 尚未连接上 etcd 时,调用 client 会导致 PD panic 的问题 [#6860](https://github.com/tikv/pd/issues/6860) @[HuSharp](https://github.com/HuSharp) - 修复 Region 的 `health-check` 输出可能与通过 ID 所查到的 Region 信息不一致的问题 [#6560](https://github.com/tikv/pd/issues/6560) @[JmPotato](https://github.com/JmPotato) @@ -313,27 +305,24 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复 Placement Rules 选择了不满足规则的 TiFlash learner 的问题 [#6662](https://github.com/tikv/pd/issues/6662) @[rleungx](https://github.com/rleungx) - 修复在 rule checker 选定 peer 时,unhealthy peer 无法被移除的问题 [#6559](https://github.com/tikv/pd/issues/6559) [nolouch](https://github.com/nolouch) -+ TiFlash ++ TiFlash - - 修复由于死锁导致 TiFlash 无法成功同步分区表的问题 [#7758](https://github.com/pingcap/tiflash/issues/7758) @[hongyunyan](https://github.com/hongyunyan) - 修复系统表 `INFORMATION_SCHEMA.TIFLASH_REPLICA` 包含用户没有访问权限的表的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - 修复当同一个 MPP Task 内有多个 HashAgg 算子时,可能导致 MPP Task 编译时间过长而严重影响查询性能的问题 [#7810](https://github.com/pingcap/tiflash/issues/7810) @[SeaRise](https://github.com/SeaRise) + Tools - + TiCDC + + TiCDC - - 修复由于 PD 短暂不可用而导致同步任务报错的问题 [#9294](https://github.com/pingcap/tiflow/issues/9294) @[asddongmen](https://github.com/asddongmen) - 修复 TiCDC 部分节点发生网络隔离时可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复当 Kafka Sink 遇到错误时可能会无限阻塞同步任务推进的问题 [#9309](https://github.com/pingcap/tiflow/issues/9309) @[hicqu](https://github.com/hicqu) - 修复在 TiCDC 节点状态发生改变时可能引发的 panic 问题 [#9354](https://github.com/pingcap/tiflow/issues/9354) @[sdojjy](https://github.com/sdojjy) - 修复对默认 ENUM 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) - + TiDB Lightning + + TiDB Lightning - - 修复 TiDB Lightning 导入完成后执行 checksum 可能遇到 SSL 错误的问题 [#45462](https://github.com/pingcap/tidb/issues/45462) @[D3Hunter](https://github.com/D3Hunter) ## 贡献者 From afc572f5394ad755ed19337590601864fbaf362e Mon Sep 17 00:00:00 2001 From: Ran Date: Tue, 8 Aug 2023 18:39:19 +0800 Subject: [PATCH 091/114] Apply suggestions from code review --- releases/release-7.3.0.md | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 130fb06366ff..465f49f7ca08 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -186,9 +186,6 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | | [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | | [`tidb_lock_unchanged_keys`](/system-variables.md#tiflash_replica_read-从-v730v711-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁 | -| | 新增/删除/修改 | | -| | 新增/删除/修改 | | -| | 新增/删除/修改 | | ### 配置文件参数 @@ -217,20 +214,11 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | | TiCDC | [`sink.csv.binary-encoding-method`](/ticdc/ticdc-changefeed-config.md#ticdc-changefeed-配置文件说明) | 新增 | CSV 协议中二进制类型数据的编码方式,可选 `'base64'` 与 `'hex'`。默认值为 `'base64'`。 | -| | | 新增/删除/修改 | | -| | | 新增/删除/修改 | | -| | | 新增/删除/修改 | | -| | | 新增/删除/修改 | | ### 系统表 - 新增系统表 `mysql.tidb_timers` 用来存储系统内部定时器的元信息。 -## 废弃功能 - -- note -- note - ## 改进提升 + TiDB From 410838fbcab123531adb9a3094e2ace991340172 Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 8 Aug 2023 18:58:28 +0800 Subject: [PATCH 092/114] Apply suggestions from code review --- releases/release-7.3.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 465f49f7ca08..87f561f2900a 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -225,12 +225,12 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** - - 支持锁函数 `IS_FREE_LOCK() 和 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) + - 支持锁函数 `IS_FREE_LOCK()` 和 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) - 优化与落盘相关的 chunk 读取的性能 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) + TiKV - - 添加 `Max gap of safe-ts` 和 `Min safe ts region` 监控项以及 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) [@ekexium](https://github.com/ekexium) + - 添加 `Max gap of safe-ts` 和 `Min safe ts region` 监控项以及 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) @[ekexium](https://github.com/ekexium) + PD @@ -282,7 +282,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 + TiKV - - 修复在一些罕见的情况下,在 GC 的同时读取数据可能导致 TiKV panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) [@MyonKeminta](https://github.com/MyonKeminta) + - 修复在一些罕见的情况下,在 GC 的同时读取数据可能导致 TiKV panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) @[MyonKeminta](https://github.com/MyonKeminta) + PD @@ -291,7 +291,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复 Region 的 `health-check` 输出可能与通过 ID 所查到的 Region 信息不一致的问题 [#6560](https://github.com/tikv/pd/issues/6560) @[JmPotato](https://github.com/JmPotato) - 修复 `unsafe recovery` 中失败的 learner peer 在 `auto-detect` 模式中被忽略的问题 [#6690](https://github.com/tikv/pd/issues/6690) @[v01dstar](https://github.com/v01dstar) - 修复 Placement Rules 选择了不满足规则的 TiFlash learner 的问题 [#6662](https://github.com/tikv/pd/issues/6662) @[rleungx](https://github.com/rleungx) - - 修复在 rule checker 选定 peer 时,unhealthy peer 无法被移除的问题 [#6559](https://github.com/tikv/pd/issues/6559) [nolouch](https://github.com/nolouch) + - 修复在 rule checker 选定 peer 时,unhealthy peer 无法被移除的问题 [#6559](https://github.com/tikv/pd/issues/6559) @[nolouch](https://github.com/nolouch) + TiFlash From 1418aca658cdb0d3edbe89bd5e008a3848a4f01e Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 9 Aug 2023 09:53:11 +0800 Subject: [PATCH 093/114] Update releases/release-7.3.0.md Co-authored-by: Aolin --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 87f561f2900a..7c7a7404fa66 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -31,7 +31,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 稳定性与高可用 TiDB Lightning 引入冲突数据的自动检测和处理机制 - TiDB Lightning 物理导入模式支持新版本的冲突检测机制,支持在遇到数据冲突时替换 (`replace`) 或忽略 (`ignore`) 冲突数据的语义。TiDB Lightning 会自动处理冲突数据,同时提高了冲突处理的性能。 + TiDB Lightning 物理导入模式支持新版本的冲突检测机制,支持在遇到数据冲突时替换 (replace) 或忽略 (ignore) 冲突数据的语义。TiDB Lightning 会自动处理冲突数据,同时提高了冲突处理的性能。 手动标记资源使用超出预期的查询(实验特性) From 58153ad5e28ae0fdb862a7377521b0211b1639f2 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 9 Aug 2023 09:54:40 +0800 Subject: [PATCH 094/114] Update releases/release-7.3.0.md Co-authored-by: Aolin --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 7c7a7404fa66..fa0a68646afb 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -204,7 +204,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | TiKV | [`rocksdb.lockcf.write-buffer-size`](/tikv-configuration-file.md#write-buffer-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为加快 lockcf 上 compaction 的速度,默认值从 `"32MB"` 修改为 `"4MB"`。 | | TiFlash | [`storage.format_version`](/tiflash/tiflash-configuration.md) | 修改 | 引入新的 DTFile 储存文件格式 `format_version = 5`,该格式可以合并小文件从而减少物理文件数量。注意该格式目前为实验特性,默认未启用。 | |TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | -|TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 ""(不做冲突检测),`error`(遇到冲突数据即报错并停止导入),`replace`(遇到冲突记录替换已有的冲突记录),`ignore`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 "", 即不做冲突检测。 | +|TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 `""`(不做冲突检测),`"error"`(遇到冲突数据即报错并停止导入),`"replace"`(遇到冲突记录替换已有的冲突记录),`"ignore"`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 `""`,即不做冲突检测。 | |TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | |TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | |TiDB Lightning | `tikv-importer.on-duplicate` | 废弃 | TiDB Lightning 逻辑导入模式插入冲突数据时执行的操作。从 v7.3.0 起,该参数由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。| From 36f1acdb96233c4d927412d4109c4855b6bca70e Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 10:54:35 +0800 Subject: [PATCH 095/114] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index fa0a68646afb..969a8b001fd5 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -307,7 +307,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复 TiCDC 部分节点发生网络隔离时可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) - 修复当 Kafka Sink 遇到错误时可能会无限阻塞同步任务推进的问题 [#9309](https://github.com/pingcap/tiflow/issues/9309) @[hicqu](https://github.com/hicqu) - 修复在 TiCDC 节点状态发生改变时可能引发的 panic 问题 [#9354](https://github.com/pingcap/tiflow/issues/9354) @[sdojjy](https://github.com/sdojjy) - - 修复对默认 ENUM 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) + - 修复对默认 `ENUM` 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) + TiDB Lightning From 42705dd3890871f7a1519d92ca986ebe77f66ea4 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 9 Aug 2023 10:55:46 +0800 Subject: [PATCH 096/114] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 969a8b001fd5..74acc7fc6c85 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -24,8 +24,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 可扩展性与性能 - TiDB Lightning 支持 Partitioned Raft KV - TiDB Lightning 的数据导入服务支持新的 Partitioned Raft KV 架构,为 Partitioned Raft KV 在 TiDB 后续版本中 GA 做好准备。 + TiDB Lightning 支持 Partitioned Raft KV(实验特性) + TiDB Lightning 的数据导入服务支持新的 Partitioned Raft KV 架构,为 Partitioned Raft KV 在 TiDB 后续版本中 GA 做好准备。 From 640b120f0842f9e09a484c5d3bee129c43ab4993 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 14:19:38 +0800 Subject: [PATCH 097/114] Apply suggestions from code review Co-authored-by: Grace Cai Co-authored-by: Aolin --- releases/release-7.3.0.md | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 74acc7fc6c85..0af1393fbf9c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -35,7 +35,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 手动标记资源使用超出预期的查询(实验特性) - 查询超时可能发生在任一 TiKV 节点上,现在资源组可以通过全局并行执行时间来管理查询,并且允许降低查询的优先级或终止查询。该功能允许算子在资源组级别通过匹配 SQL 文本、SQL digest 或执行计划标记查询,并对这些查询进行处理,从而更好地控制非预期的大型查询可能对集群产生的影响。 + 查询耗费的时间有时会超出预期。通过资源组新增的 Runaway Queries 监控列表,你可以设置降低 Runaway Queries 的优先级或终止查询,从而更有效地管理查询。该功能允许算子在资源组级别通过匹配 SQL 文本、SQL digest 或执行计划标记查询,并对这些查询进行处理,从而更好地控制非预期的大型查询可能对集群产生的影响。 SQL @@ -44,7 +44,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 数据库管理与可观测性 - 显示统计信息收集的进度 + 显示统计信息收集的进度 支持使用 SHOW ANALYZE STATUS 语句或通过mysql.analyze_jobs 系统表查看 ANALYZE 任务的进度。 @@ -52,8 +52,6 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ## 功能详情 -### 可扩展性 - ### 性能 * TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@qiancai** @@ -100,8 +98,6 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 更多信息,请参考[用户文档](/tidb-resource-control.md#query-watch-语句说明)。 -### 高可用 - ### SQL 功能 * List 和 List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@qiancai** @@ -114,8 +110,6 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 更多信息,请参考[用户文档](/partitioned-table.md#list-分区)。 -### 数据库管理 - ### 可观测性 * 显示统计信息收集的进度 [#44033](https://github.com/pingcap/tidb/issues/44033) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** @@ -126,7 +120,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 * Plan Replayer 支持导出历史统计信息 [#45038](https://github.com/pingcap/tidb/issues/45038) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** - 自 v7.3.0 起,通过新增的 [`dump with stats as of timestamp`](/sql-plan-replayer.md) 子句,Plan Replayer 能够导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出执行计划在问题发生的时间点是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 + 自 v7.3.0 起,通过新增的 [`dump with stats as of timestamp`](/sql-plan-replayer.md) 子句,你可以使用 Plan Replayer 导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出执行计划在问题发生的时间点是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 更多信息,请参考[用户文档](/sql-plan-replayer.md)。 @@ -175,7 +169,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 当 Kafka sink 使用 Avro 协议时,如果开启了 `force-replicate` 参数,创建 changefeed 会报错。 - 由于 `delete-only-output-handle-key-columns` 和 `force-replicate` 参数不兼容,同时开启两个参数时,创建 changefeed 会报错。 - - 当使用 `Open Protocol` 作为输出协议时, update 类型的事件将仅输出变更的列。 + - 当使用 `Open Protocol` 作为输出协议时,`UPDATE` 类型的事件将仅输出变更的列。 ### 系统变量 From 919f3dfbf33e9fd965463615074c3b7962e45376 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 16:15:26 +0800 Subject: [PATCH 098/114] add dup notes --- releases/release-7.3.0.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 0af1393fbf9c..925720f0acda 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -273,6 +273,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复通过 BR 恢复 `AUTO_ID_CACHE=1` 的表时,会遇到 `duplicate entry` 报错的问题 [#44716](https://github.com/pingcap/tidb/issues/44716) @[tiancaiamao](https://github.com/tiancaiamao) - 修复执行 `TRUNCATE TABLE` 消耗的时间和 `ADMIN SHOW DDL JOBS` 显示的任务执行时间不一致的问题 [#44785](https://github.com/pingcap/tidb/issues/44785) @[tangenta](https://github.com/tangenta) - 修复读取元数据时间超过一个 DDL lease 导致升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) + - 修复 `SELECT CAST(n AS CHAR)` 语句中的 `n` 为负数时,查询结果出错的问题 [#44786](https://github.com/pingcap/tidb/issues/44786) @[xhebox](https://github.com/xhebox) + - 修复开启 `tidb_opt_agg_push_down` 时查询可能返回错误结果的问题 [#44795](https://github.com/pingcap/tidb/issues/44795) @[AilinKid](https://github.com/AilinKid) + TiKV @@ -306,6 +308,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 + TiDB Lightning - 修复 TiDB Lightning 导入完成后执行 checksum 可能遇到 SSL 错误的问题 [#45462](https://github.com/pingcap/tidb/issues/45462) @[D3Hunter](https://github.com/D3Hunter) + - 修复逻辑导入模式下,导入期间下游删除表可能导致 TiDB Lightning 元信息未及时更新的问题 [#44614](https://github.com/pingcap/tidb/issues/44614) @[dsdashun](https://github.com/dsdashun) ## 贡献者 From 4c06368201773af0a3df694e45603a6e653681d2 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 16:21:22 +0800 Subject: [PATCH 099/114] clean up comments Signed-off-by: Ran --- releases/release-7.3.0.md | 64 +++++++++++++++++++-------------------- 1 file changed, 31 insertions(+), 33 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 925720f0acda..faeaa652ae20 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -54,7 +54,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ### 性能 -* TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) **tw@qiancai** +* TiFlash 支持副本选择策略 [#44106](https://github.com/pingcap/tidb/issues/44106) @[XuHuaiyu](https://github.com/XuHuaiyu) 在 v7.3.0 之前,当 TiFlash 进行数据扫描和 MPP 计算时,会尽可能使用其所有节点的副本,以提供最强大的性能。从 v7.3.0 起,TiFlash 引入副本选择策略,该策略由系统变量 [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) 控制,可以根据节点的[区域属性](/schedule-replicas-by-topology-labels.md#设置-tidb-的-labels可选)选择特定的副本,调度部分节点进行数据扫描及 MPP 计算。 @@ -62,7 +62,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 更多信息,请参考[用户文档](/system-variables.md/system-variables.md#tiflash_replica_read-从-v730-版本开始引入)。 -* TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) **tw@ran-huang** +* TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) Runtime Filter 是在查询规划阶段生成的一种**动态取值谓词**。在表连接的过程中,这些动态谓词能够有效过滤掉不满足连接条件的行,减少扫描时间和网络开销,提升表连接的效率。自 v7.3.0 起,TiFlash 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,在部分 TPC-DS 数据集的查询中可达到 10% ~ 50% 的性能提升。 @@ -70,7 +70,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 更多信息,请参考[用户文档](/runtime-filter.md)。 -* TiFlash 支持执行公共表表达式 (CTE)(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) **tw@ran-huang** +* TiFlash 支持执行公共表表达式 (CTE)(实验特性)[#43333](https://github.com/pingcap/tidb/issues/43333) @[winoros](https://github.com/winoros) 在 v7.3.0 版本之前,TiFlash 的 MPP 引擎默认无法执行包含 CTE 的查询,你需要通过系统变量 [`tidb_opt_force_inline_cte`](/system-variables.md#tidb_opt_force_inline_cte-从-v630-版本开始引入) 强制 inline CTE,达到让查询尽可能在 MPP 框架下执行的效果。在 v7.3.0 中,TiFlash MPP 引擎支持执行包含 CTE 的查询,无需强制 inline CTE 也可以尽可能地在 MPP 框架中执行查询。在 TPC-DS 基准测试中,与强制 inline 的执行方式相比,该功能可以将包含 CTE 的查询的总执行速度提升 20%。 @@ -78,7 +78,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ### 稳定性 -* 新增部分优化器提示 [#45520](https://github.com/pingcap/tidb/issues/45520) @[qw4990](https://github.com/qw4990) **tw@ran-huang** +* 新增部分优化器提示 [#45520](https://github.com/pingcap/tidb/issues/45520) @[qw4990](https://github.com/qw4990) TiDB 在 v7.3.0 新增了几个优化器提示,用来控制表之间的连接方式,包括: @@ -90,7 +90,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 更多信息,请参考[用户文档](/optimizer-hints.md)。 -* 手动标记资源使用超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) **tw@hfxsd** +* 手动标记资源使用超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) 在 v7.2.0 中,TiDB 自动管理资源使用超出预期的查询 (Runaway Query),即自动降级或取消运行时间超出预期的查询。在实际运行时,只依靠规则无法覆盖所有情况。因此,TiDB v7.3.0 新增手动标记查询的功能。利用新增的命令 [`QUERY WATCH`](/sql-statements/sql-statement-query-watch.md),你可以根据 SQL 的文本、SQL Digest 或执行计划标记查询,命中的查询可以被降级或取消。 @@ -100,7 +100,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ### SQL 功能 -* List 和 List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) **tw@qiancai** +* List 和 List COLUMNS 分区表支持默认分区 [#20679](https://github.com/pingcap/tidb/issues/20679) @[mjonss](https://github.com/mjonss) @[bb7133](https://github.com/bb7133) 在 v7.3.0 以前,当使用 `INSERT` 语句向 List 或 List COLUMNS 分区表插入数据时,这些数据需要满足分区表指定的分区条件。如果要插入的数据不匹配任何分区条件,该语句将执行失败或忽略不符合分区条件的数据。 @@ -112,13 +112,13 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ### 可观测性 -* 显示统计信息收集的进度 [#44033](https://github.com/pingcap/tidb/issues/44033) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** +* 显示统计信息收集的进度 [#44033](https://github.com/pingcap/tidb/issues/44033) @[hawkingrei](https://github.com/hawkingrei) 收集大表的统计信息经常会持续较长时间。在之前的版本中,无法了解统计信息收集的进度,进而无法预测完成时间。TiDB v7.3.0 新增显示统计信息收集进度的功能。你可以通过系统表 `mysql.analyze_jobs` 或者 `SHOW ANALYZE STATUS` 查看各个子任务的总体工作量、当前进度以及预计的完成时间。在大规模数据导入、SQL 性能优化等场景下,该功能有助于了解整体任务进度,提升用户体验。 更多信息,请参考[用户文档](/sql-statements/sql-statement-show-analyze-status.md)。 -* Plan Replayer 支持导出历史统计信息 [#45038](https://github.com/pingcap/tidb/issues/45038) @[time-and-fate](https://github.com/time-and-fate) **tw@ran-huang** +* Plan Replayer 支持导出历史统计信息 [#45038](https://github.com/pingcap/tidb/issues/45038) @[time-and-fate](https://github.com/time-and-fate) 自 v7.3.0 起,通过新增的 [`dump with stats as of timestamp`](/sql-plan-replayer.md) 子句,你可以使用 Plan Replayer 导出指定 SQL 相关对象在指定时间点的统计信息。在执行计划问题的诊断过程中,通过对历史统计信息的准确抓取,能够更精确地分析出执行计划在问题发生的时间点是如何生成的,从而找到问题的根本原因,大大提升执行计划问题的诊断效率。 @@ -128,7 +128,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ### 数据迁移 -* TiDB Lightning 引入新版冲突数据检测和处理机制 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) **tw@hfxsd** +* TiDB Lightning 引入新版冲突数据检测和处理机制 [#41629](https://github.com/pingcap/tidb/issues/41629) @[lance6716](https://github.com/lance6716) 在之前的版本中,TiDB Lightning 的逻辑导入模式和物理导入模式各自使用独立的冲突检测和处理方式,其配置较为复杂且不易理解。另外,在物理导入模式下,无法通过替换 (`replace`) 或忽略 (`ignore`) 策略处理冲突的数据。从 v7.3.0 开始,TiDB Lightning 引入新版冲突检测和处理机制,逻辑导入模式和物理导入模式都使用相同的冲突检测和处理方式,即可以选择在遇到冲突数据时报错 (`error`)、替换 (`replace`) 或忽略 (`ignore`)。同时还支持设置冲突记录的上限,例如在处理指定数量冲突记录后任务中断退出,也可以记录哪些数据发生了冲突,以便后续排查。 @@ -136,11 +136,11 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 更多信息,请参考[用户文档](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#冲突数据检测)。 -* TiDB Lightning 支持 Partitioned Raft KV(实验特性)[#14916](https://github.com/tikv/tikv/issues/14916) @[GMHDBJD](https://github.com/GMHDBJD) **tw@hfxsd** +* TiDB Lightning 支持 Partitioned Raft KV(实验特性)[#14916](https://github.com/tikv/tikv/issues/14916) @[GMHDBJD](https://github.com/GMHDBJD) TiDB Lightning 支持 Partitioned Raft KV,该功能可以提升 TiDB Lightning 导入数据的性能。 -* TiDB Lightning 引入新的参数 `enable-diagnose-log` 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** +* TiDB Lightning 引入新的参数 `enable-diagnose-log` 用于打印更多的诊断日志,方便定位问题 [#45497](https://github.com/pingcap/tidb/issues/45497) @[D3Hunter](https://github.com/D3Hunter) 默认情况下,该功能未启用,即只打印包含 `lightning/main` 的日志。开启该功能后,将打印所有包(包括 `client-go` 和 `tidb`)的日志,以帮助诊断与 `client-go` 和 `tidb` 相关的问题。 @@ -154,18 +154,16 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ### 行为变更 - - * Backup & Restore (BR) - 全量恢复前增加了空集群检查,默认不支持恢复到非空集群。如果强制恢复,可以使用 `--filter` 指定对应表名。 -* TiDB Lightning **tw@hfxsd** +* TiDB Lightning - 废弃 `tikv-importer.on-duplicate`,由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 替代。 - TiDB Lightning 停止迁移任务之前能容忍的最大非严重 (non-fatal errors) 错误数的配置项 `max-error` 不再包含导入数据冲突记录的上限,由 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 控制可容忍的最大冲突的记录数。 -* TiCDC **tw@ran-huang** +* TiCDC - 当 Kafka sink 使用 Avro 协议时,如果开启了 `force-replicate` 参数,创建 changefeed 会报错。 - 由于 `delete-only-output-handle-key-columns` 和 `force-replicate` 参数不兼容,同时开启两个参数时,创建 changefeed 会报错。 @@ -203,7 +201,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 |TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | |TiDB Lightning | `tikv-importer.on-duplicate` | 废弃 | TiDB Lightning 逻辑导入模式插入冲突数据时执行的操作。从 v7.3.0 起,该参数由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。| | TiDB Lightning | `tikv-importer.incremental-import` | 删除 | TiDB Lightning 并行导入参数。因为该参数名容易被误认为是增量导入的参数,因此更名为 `tikv-importer.parallel-import`。如果用户传入旧的参数名,会被自动转成新的参数名。| -| TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 **tw:qiancai** | +| TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 | |BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | |BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | @@ -215,24 +213,24 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 ## 改进提升 -+ TiDB ++ TiDB - - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) **tw@Oreoxmt** + - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) + - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) - 支持锁函数 `IS_FREE_LOCK()` 和 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) - 优化与落盘相关的 chunk 读取的性能 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) -+ TiKV ++ TiKV - 添加 `Max gap of safe-ts` 和 `Min safe ts region` 监控项以及 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) @[ekexium](https://github.com/ekexium) -+ PD ++ PD - 未开启 Swagger server 时,PD 默认屏蔽 Swagger API [#6786](https://github.com/tikv/pd/issues/6786) @[bufferflies](https://github.com/bufferflies) - 提升 etcd 的高可用性 [#6554](https://github.com/tikv/pd/issues/6554) [#6442](https://github.com/tikv/pd/issues/6442) @[lhy1024](https://github.com/lhy1024) - 减少 `GetRegions` 请求的内存占用 [#6835](https://github.com/tikv/pd/issues/6835) @[lhy1024](https://github.com/lhy1024) -+ TiFlash ++ TiFlash - 支持新的 DTFile 格式版本 [`storage.format_version = 5`](/tiflash/tiflash-configuration.md),可以合并小文件从而减少物理文件数量(实验特性) [#7595](https://github.com/pingcap/tiflash/issues/7595) @[hongyunyan](https://github.com/hongyunyan) @@ -240,26 +238,26 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 + Backup & Restore (BR) - - 使用 BR 备份数据到 Azure Blob Storage 时,支持使用加密范围或加密密钥对数据进行服务端加密 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** + - 使用 BR 备份数据到 Azure Blob Storage 时,支持使用加密范围或加密密钥对数据进行服务端加密 [#45025](https://github.com/pingcap/tidb/issues/45025) @[Leavrth](https://github.com/Leavrth) - + TiCDC + + TiCDC - 优化了 Open Protocol 输出的消息大小,在发送 `UPDATE` 类型事件时仅输出被更新的列值 [#9336](https://github.com/pingcap/tiflow/issues/9336) @[3AceShowHand](https://github.com/3AceShowHand) - Storage Sink 支持对 HEX 格式的数据进行十六进制编码输出,使其兼容 AWS DMS 的格式规范 [#9373](https://github.com/pingcap/tiflow/issues/9373) @[CharlesCheung96](https://github.com/CharlesCheung96) - - Kafka Sink 支持在消息过大时[只发送 Handle Key 数据](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息),减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) **tw@ran-huang** + - Kafka Sink 支持在消息过大时[只发送 Handle Key 数据](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息),减少数据大小 [#9382](https://github.com/pingcap/tiflow/issues/9382) @[3AceShowHand](https://github.com/3AceShowHand) ## 错误修复 -+ TiDB ++ TiDB - - 修复当使用 MySQL 的 Cursor Fetch 协议时,结果集占用的内存超过 `tidb_mem_quota_query` 的限制导致 TiDB OOM 的问题。修复后,TiDB 会自动将结果集写入磁盘以释放内存资源 [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) + - 修复当使用 MySQL 的 Cursor Fetch 协议时,结果集占用的内存超过 `tidb_mem_quota_query` 的限制导致 TiDB OOM 的问题。修复后,TiDB 会自动将结果集写入磁盘以释放内存资源 [#43233](https://github.com/pingcap/tidb/issues/43233) @[YangKeao](https://github.com/YangKeao) - 修复数据争用导致 TiDB panic 的问题 [#45561](https://github.com/pingcap/tidb/issues/45561) @[genliqi](https://github.com/gengliqi) - 修复带 `indexMerge` 的查询被 kill 时可能会卡住的问题 [#45279](https://github.com/pingcap/tidb/issues/45279) @[xzhangxian1008](https://github.com/xzhangxian1008) - 修复当开启 `tidb_enable_parallel_apply` 时,MPP 模式下的查询结果出错的问题 [#45299](https://github.com/pingcap/tidb/issues/45299) @[windtalker](https://github.com/windtalker) - 修复 resolve lock 在 PD 时间跳变的情况下可能卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) @[zyguan](https://github.com/zyguan) - 修复 GC resolve lock 可能错过一些悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) @[MyonKeminta](https://github.com/MyonKeminta) - 修复动态裁剪模式下使用了排序的查询返回结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) - + - 修复 `AUTO_INCREMENT` 与列的默认值 `DEFAULT` 可以指定在同一列上的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) - 修复某些情况下查询系统表 `INFORMATION_SCHEMA.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) - 修复某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) @@ -276,11 +274,11 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复 `SELECT CAST(n AS CHAR)` 语句中的 `n` 为负数时,查询结果出错的问题 [#44786](https://github.com/pingcap/tidb/issues/44786) @[xhebox](https://github.com/xhebox) - 修复开启 `tidb_opt_agg_push_down` 时查询可能返回错误结果的问题 [#44795](https://github.com/pingcap/tidb/issues/44795) @[AilinKid](https://github.com/AilinKid) -+ TiKV ++ TiKV - 修复在一些罕见的情况下,在 GC 的同时读取数据可能导致 TiKV panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) @[MyonKeminta](https://github.com/MyonKeminta) -+ PD ++ PD - 修复重启 PD 可能导致 `default` 资源组被重新初始化的问题 [#6787](https://github.com/tikv/pd/issues/6787) @[glorv](https://github.com/glorv) - 修复当 etcd 已经启动,但 client 尚未连接上 etcd 时,调用 client 会导致 PD panic 的问题 [#6860](https://github.com/tikv/pd/issues/6860) @[HuSharp](https://github.com/HuSharp) @@ -289,7 +287,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复 Placement Rules 选择了不满足规则的 TiFlash learner 的问题 [#6662](https://github.com/tikv/pd/issues/6662) @[rleungx](https://github.com/rleungx) - 修复在 rule checker 选定 peer 时,unhealthy peer 无法被移除的问题 [#6559](https://github.com/tikv/pd/issues/6559) @[nolouch](https://github.com/nolouch) -+ TiFlash ++ TiFlash - 修复由于死锁导致 TiFlash 无法成功同步分区表的问题 [#7758](https://github.com/pingcap/tiflash/issues/7758) @[hongyunyan](https://github.com/hongyunyan) - 修复系统表 `INFORMATION_SCHEMA.TIFLASH_REPLICA` 包含用户没有访问权限的表的问题 [#7795](https://github.com/pingcap/tiflash/issues/7795) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) @@ -297,7 +295,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 + Tools - + TiCDC + + TiCDC - 修复由于 PD 短暂不可用而导致同步任务报错的问题 [#9294](https://github.com/pingcap/tiflow/issues/9294) @[asddongmen](https://github.com/asddongmen) - 修复 TiCDC 部分节点发生网络隔离时可能引发的数据不一致问题 [#9344](https://github.com/pingcap/tiflow/issues/9344) @[CharlesCheung96](https://github.com/CharlesCheung96) @@ -305,7 +303,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复在 TiCDC 节点状态发生改变时可能引发的 panic 问题 [#9354](https://github.com/pingcap/tiflow/issues/9354) @[sdojjy](https://github.com/sdojjy) - 修复对默认 `ENUM` 值编码错误的问题 [#9259](https://github.com/pingcap/tiflow/issues/9259) @[3AceShowHand](https://github.com/3AceShowHand) - + TiDB Lightning + + TiDB Lightning - 修复 TiDB Lightning 导入完成后执行 checksum 可能遇到 SSL 错误的问题 [#45462](https://github.com/pingcap/tidb/issues/45462) @[D3Hunter](https://github.com/D3Hunter) - 修复逻辑导入模式下,导入期间下游删除表可能导致 TiDB Lightning 元信息未及时更新的问题 [#44614](https://github.com/pingcap/tidb/issues/44614) @[dsdashun](https://github.com/dsdashun) From cd5f93ec41f60d2cbe93ab88423c0b7cfc22f4a6 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 16:32:42 +0800 Subject: [PATCH 100/114] fix dead links Signed-off-by: Ran --- releases/release-7.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index faeaa652ae20..bce1910208d8 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -60,7 +60,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 当集群部署在多个机房且每个机房都拥有完整的 TiFlash 数据副本时,你可以设置该策略只选择使用当前机房的 TiFlash 副本,即只在当前机房的 TiFlash 节点中进行数据扫描和 MPP 计算,从而避免大量跨机房的网络数据传输。 - 更多信息,请参考[用户文档](/system-variables.md/system-variables.md#tiflash_replica_read-从-v730-版本开始引入)。 + 更多信息,请参考[用户文档](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入)。 * TiFlash 支持节点内的 Runtime Filter [#40220](https://github.com/pingcap/tidb/issues/40220) @[elsa0520](https://github.com/elsa0520) @@ -216,7 +216,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 + TiDB - 新增 [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) 系统变量用于控制 `EXPLAIN` 语句是否在优化阶段提前执行子查询 [#22076](https://github.com/pingcap/tidb/issues/22076) @[winoros](https://github.com/winoros) - - 在启用 [Global Kill](/tidb-configuration-file#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) + - 在启用 [Global Kill](/tidb-configuration-file.md#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) - 支持锁函数 `IS_FREE_LOCK()` 和 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) - 优化与落盘相关的 chunk 读取的性能 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) From 5444e4478a47cfc63d315f1edfe14a2987051551 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 16:38:43 +0800 Subject: [PATCH 101/114] add toc and other files --- TOC.md | 4 +++- releases/release-7.3.0.md | 2 +- releases/release-notes.md | 4 ++++ releases/release-timeline.md | 1 + 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/TOC.md b/TOC.md index 86b69327261d..bed6b2af06bf 100644 --- a/TOC.md +++ b/TOC.md @@ -4,7 +4,7 @@ - [文档中心](https://docs.pingcap.com/zh) - 关于 TiDB - [TiDB 简介](/overview.md) - - [TiDB 7.2 Release Notes](/releases/release-7.2.0.md) + - [TiDB 7.3 Release Notes](/releases/release-7.3.0.md) - [功能概览](/basic-features.md) - [与 MySQL 的兼容性](/mysql-compatibility.md) - [使用限制](/tidb-limitations.md) @@ -1014,6 +1014,8 @@ - [版本发布时间线](/releases/release-timeline.md) - [TiDB 版本规则](/releases/versioning.md) - [TiDB 离线包](/binary-package.md) + - v7.3 + - [7.3.0-DMR](/releases/release-7.3.0.md) - v7.2 - [7.2.0-DMR](/releases/release-7.2.0.md) - v7.1 diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index bce1910208d8..b2be97702b00 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -5,7 +5,7 @@ summary: 了解 TiDB 7.3.0 版本的新功能、兼容性变更、改进提升 # TiDB 7.3.0 Release Notes -发版日期:2023 年 x 月 x 日 +发版日期:2023 年 8 月 10 日 TiDB 版本:7.3.0 diff --git a/releases/release-notes.md b/releases/release-notes.md index 1ae7272f3b00..090d7ddbd6b6 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.3 + +- [7.3.0-DMR](/releases/release-7.3.0.md): 2023-08-10 + ## 7.2 - [7.2.0-DMR](/releases/release-7.2.0.md): 2023-06-29 diff --git a/releases/release-timeline.md b/releases/release-timeline.md index b64782802671..f360bc70886a 100644 --- a/releases/release-timeline.md +++ b/releases/release-timeline.md @@ -9,6 +9,7 @@ summary: 了解 TiDB 的版本发布时间线。 | 版本 | 发布日期 | | :--- | :--- | +| [7.3.0-DMR](/releases/release-7.3.0.md) | 2023-08-10 | | [7.1.1](/releases/release-7.1.1.md) | 2023-07-24 | | [6.1.7](/releases/release-6.1.7.md) | 2023-07-12 | | [7.2.0-DMR](/releases/release-7.2.0.md) | 2023-06-29 | From f4d6d673602bd9d83944de7e53c455a429a0bd30 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 16:52:00 +0800 Subject: [PATCH 102/114] fix anchors Signed-off-by: Ran --- releases/release-7.3.0.md | 4 ++-- system-variables.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index b2be97702b00..cc58f4c957dd 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -66,7 +66,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 Runtime Filter 是在查询规划阶段生成的一种**动态取值谓词**。在表连接的过程中,这些动态谓词能够有效过滤掉不满足连接条件的行,减少扫描时间和网络开销,提升表连接的效率。自 v7.3.0 起,TiFlash 支持节点内的 Runtime Filter,提升了数据分析类查询的整体性能,在部分 TPC-DS 数据集的查询中可达到 10% ~ 50% 的性能提升。 - 该功能在 v7.3.0 默认关闭。要启用此功能,需将变量 [`tidb_runtime_filter_mode`](#tidb_runtime_filter_mode-从-v720-版本开始引入) 设置为 `LOCAL`。 + 该功能在 v7.3.0 默认关闭。要启用此功能,需将变量 [`tidb_runtime_filter_mode`](/system-variables.md#tidb_runtime_filter_mode-从-v720-版本开始引入) 设置为 `LOCAL`。 更多信息,请参考[用户文档](/runtime-filter.md)。 @@ -177,7 +177,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | [`tidb_skip_missing_partition_stats`](/system-variables.md#tidb_skip_missing_partition_stats-从-v730-版本开始引入) | 新增 | 这个变量用于控制当分区统计信息缺失时生成 GlobalStats 的行为。 | | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | | [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | -| [`tidb_lock_unchanged_keys`](/system-variables.md#tiflash_replica_read-从-v730v711-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁 | +| [`tidb_lock_unchanged_keys`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁 | ### 配置文件参数 diff --git a/system-variables.md b/system-variables.md index fe07f144eca1..ef3633e6c3a4 100644 --- a/system-variables.md +++ b/system-variables.md @@ -4351,7 +4351,7 @@ Query OK, 0 rows affected, 1 warning (0.00 sec) - `closest_replicas` 表示仅使用与发起当前查询请求的 TiDB 节点相同区域的 TiFlash 副本进行分析计算。如果此区域的 TiFlash 副本未包含查询所需的全部数据,则查询将报错。 > **注意:** -> +> > - 如果 TiDB 节点未设置[区域属性](/schedule-replicas-by-topology-labels.md#设置-tidb-的-labels可选),并且 TiFlash 副本选择策略不是 `all_replicas` 时,TiFlash 引擎将忽略 TiFlash 副本选择策略,使用所有 TiFlash 副本进行 TiFlash 查询,并且返回警告 `The variable tiflash_replica_read is ignored`。 > - 如果 TiFlash 节点未设置[区域属性](/schedule-replicas-by-topology-labels.md#设置-tikv-和-tiflash-的-labels),则将其视为不属于任何区域的节点。 From dfbebfd851e0b4432d3c2999ffd97fa80165e826 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 18:06:19 +0800 Subject: [PATCH 103/114] Apply suggestions from code review Co-authored-by: Aolin --- releases/release-7.3.0.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index cc58f4c957dd..15ed9bfb5d25 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -88,7 +88,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - [`NO_HASH_JOIN()`](/optimizer-hints.md#no_hash_joint1_name--tl_name-) 选择哈希连接以外的连接方式。 - [`NO_INDEX_HASH_JOIN()`](/optimizer-hints.md#no_index_hash_joint1_name--tl_name-) 选择除 [Index Nested Loop Hash Join](/optimizer-hints.md#inl_hash_join) 以外的连接方式。 - 更多信息,请参考[用户文档](/optimizer-hints.md)。 + 更多信息,请参考[用户文档](/optimizer-hints.md)。 * 手动标记资源使用超出预期的查询(实验特性)[#43691](https://github.com/pingcap/tidb/issues/43691) @[Connor1996](https://github.com/Connor1996) @[CabinfeverB](https://github.com/CabinfeverB) @@ -176,8 +176,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) | 新增 | 这个变量用于控制 `EXPLAIN` 语句是否禁止提前执行可以在优化阶段展开的常量子查询。 | | [`tidb_skip_missing_partition_stats`](/system-variables.md#tidb_skip_missing_partition_stats-从-v730-版本开始引入) | 新增 | 这个变量用于控制当分区统计信息缺失时生成 GlobalStats 的行为。 | | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | +| [`tidb_lock_unchanged_keys`](/system-variables.md#tidb_lock_unchanged_keys-从-v711-和-v730-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁。 | | [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | -| [`tidb_lock_unchanged_keys`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁 | ### 配置文件参数 @@ -257,7 +257,6 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复 resolve lock 在 PD 时间跳变的情况下可能卡住的问题 [#44822](https://github.com/pingcap/tidb/issues/44822) @[zyguan](https://github.com/zyguan) - 修复 GC resolve lock 可能错过一些悲观锁的问题 [#45134](https://github.com/pingcap/tidb/issues/45134) @[MyonKeminta](https://github.com/MyonKeminta) - 修复动态裁剪模式下使用了排序的查询返回结果错误的问题 [#45007](https://github.com/pingcap/tidb/issues/45007) @[Defined2014](https://github.com/Defined2014) - - 修复 `AUTO_INCREMENT` 与列的默认值 `DEFAULT` 可以指定在同一列上的问题 [#45136](https://github.com/pingcap/tidb/issues/45136) @[Defined2014](https://github.com/Defined2014) - 修复某些情况下查询系统表 `INFORMATION_SCHEMA.TIKV_REGION_STATUS` 返回结果错误的问题 [#45531](https://github.com/pingcap/tidb/issues/45531) @[Defined2014](https://github.com/Defined2014) - 修复某些情况下分区表分区裁剪不正确的问题 [#42273](https://github.com/pingcap/tidb/issues/42273) @[jiyfhust](https://github.com/jiyfhust) From 8f9f1716ad08bf6729303d68cbe3565490e9fe66 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 18:12:02 +0800 Subject: [PATCH 104/114] adjust order of sysvar and configs Signed-off-by: Ran --- releases/release-7.3.0.md | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 15ed9bfb5d25..78999aa6d883 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -173,11 +173,11 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | 变量名 | 修改类型 | 描述 | |---|----|------| +| [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | +| [`tidb_lock_unchanged_keys`](/system-variables.md#tidb_lock_unchanged_keys-从-v711-和-v730-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁。 | | [`tidb_opt_enable_non_eval_scalar_subquery`](/system-variables.md#tidb_opt_enable_non_eval_scalar_subquery-从-v730-版本开始引入) | 新增 | 这个变量用于控制 `EXPLAIN` 语句是否禁止提前执行可以在优化阶段展开的常量子查询。 | | [`tidb_skip_missing_partition_stats`](/system-variables.md#tidb_skip_missing_partition_stats-从-v730-版本开始引入) | 新增 | 这个变量用于控制当分区统计信息缺失时生成 GlobalStats 的行为。 | | [`tiflash_replica_read`](/system-variables.md#tiflash_replica_read-从-v730-版本开始引入) | 新增 | 这个变量用于设置当查询需要使用 TiFlash 引擎时,TiFlash 副本的选择策略。 | -| [`tidb_lock_unchanged_keys`](/system-variables.md#tidb_lock_unchanged_keys-从-v711-和-v730-版本开始引入) | 新增 | 用于控制部分场景下,对于事务中涉及但并未修改值的 key 是否进行上锁。 | -| [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-从-v720-版本开始引入) | 修改 | 该变量从 v7.3.0 开始生效,用于控制非递归的公共表表达式 (CTE) 是否可以在 TiFlash MPP 执行。 | ### 配置文件参数 @@ -185,25 +185,25 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | -------- | -------- | -------- | -------- | | TiDB | [`enable-32bits-connection-id`](/tidb-configuration-file.md#enable-32bits-connection-id-从-v730-版本开始引入) | 新增 | 这个变量用于控制是否开启生成 32 位 connection ID 的功能。 | | TiKV | [`coprocessor.region-bucket-size`](/tikv-configuration-file.md#region-bucket-size-从-v610-版本开始引入) | 修改 | 为降低客户端超时的可能性,默认值从 `96MiB` 修改为 `50MiB`。 | -| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为解决大数据写入情况下 compaction 速度跟不上写入速度的问题,默认值从 `"1MB"` 修改为 `"8MB"`。 | -| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].format-version](/tikv-configuration-file.md#format-version-从-v620-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | | TiKV | [`raft-engine.format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | | TiKV | [`raftdb.max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size-1) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,TiKV 会跳过写 WAL,因此默认值从 `"4GB"` 修改为 `1`,即禁用 WAL。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].compaction-guard-min-output-file-size](/tikv-configuration-file.md#compaction-guard-min-output-file-size) | 修改 | 为解决大数据写入情况下 compaction 速度跟不上写入速度的问题,默认值从 `"1MB"` 修改为 `"8MB"`。 | +| TiKV | [rocksdb.\[defaultcf\|writecf\|lockcf\].format-version](/tikv-configuration-file.md#format-version-从-v620-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | +| TiKV | [`rocksdb.lockcf.write-buffer-size`](/tikv-configuration-file.md#write-buffer-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为加快 lockcf 上 compaction 的速度,默认值从 `"32MB"` 修改为 `"4MB"`。 | | TiKV | [`rocksdb.max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,TiKV 会跳过写 WAL,因此默认值从 `"4GB"` 修改为 `1`,即禁用 WAL。 | | TiKV | [`rocksdb.stats-dump-period`](/tikv-configuration-file.md#stats-dump-period) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为关闭冗余日志的打印,默认值从 `"10m"` 修改为 `"0"`。| -| TiKV | [`storage.block-cache.capacity`](/tikv-configuration-file.md#capacity) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为弥补 memtable 的内存开销,将默认值从系统总内存大小的 45% 修改为系统总内存大小的 30%。 | | TiKV | [`rocksdb.write-buffer-limit`](/tikv-configuration-file.md#write-buffer-limit-从-v660-版本开始引入) | 修改 | 为减小 memtable 的内存开销,当 `storage.engine="raft-kv"` 时,默认值从本机内存的 25% 修改为 `0`,即不限制。当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,默认值从本机内存的 25% 修改为本机内存的 20%。 | -| TiKV | [`rocksdb.lockcf.write-buffer-size`](/tikv-configuration-file.md#write-buffer-size) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为加快 lockcf 上 compaction 的速度,默认值从 `"32MB"` 修改为 `"4MB"`。 | +| TiKV | [`storage.block-cache.capacity`](/tikv-configuration-file.md#capacity) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,为弥补 memtable 的内存开销,将默认值从系统总内存大小的 45% 修改为系统总内存大小的 30%。 | | TiFlash | [`storage.format_version`](/tiflash/tiflash-configuration.md) | 修改 | 引入新的 DTFile 储存文件格式 `format_version = 5`,该格式可以合并小文件从而减少物理文件数量。注意该格式目前为实验特性,默认未启用。 | -|TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | -|TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 `""`(不做冲突检测),`"error"`(遇到冲突数据即报错并停止导入),`"replace"`(遇到冲突记录替换已有的冲突记录),`"ignore"`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 `""`,即不做冲突检测。 | -|TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | -|TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | -|TiDB Lightning | `tikv-importer.on-duplicate` | 废弃 | TiDB Lightning 逻辑导入模式插入冲突数据时执行的操作。从 v7.3.0 起,该参数由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。| | TiDB Lightning | `tikv-importer.incremental-import` | 删除 | TiDB Lightning 并行导入参数。因为该参数名容易被误认为是增量导入的参数,因此更名为 `tikv-importer.parallel-import`。如果用户传入旧的参数名,会被自动转成新的参数名。| +|TiDB Lightning | `tikv-importer.on-duplicate` | 废弃 | TiDB Lightning 逻辑导入模式插入冲突数据时执行的操作。从 v7.3.0 起,该参数由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。| +| TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | +| TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 `""`(不做冲突检测),`"error"`(遇到冲突数据即报错并停止导入),`"replace"`(遇到冲突记录替换已有的冲突记录),`"ignore"`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 `""`,即不做冲突检测。 | +| TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | +| TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | | TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 | -|BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | -|BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | +| BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | +| BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | | TiCDC | [`sink.csv.binary-encoding-method`](/ticdc/ticdc-changefeed-config.md#ticdc-changefeed-配置文件说明) | 新增 | CSV 协议中二进制类型数据的编码方式,可选 `'base64'` 与 `'hex'`。默认值为 `'base64'`。 | From 75683e18b1f22e885908f5ead771f03855f5dd8c Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 18:17:43 +0800 Subject: [PATCH 105/114] update format Signed-off-by: Ran --- releases/release-7.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 78999aa6d883..52474496160b 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -202,8 +202,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | | TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | | TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 | -| BR | azblob.encryption-key | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | -| BR | azblob.encryption-scope | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | +| BR | `azblob.encryption-key` | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | +| BR | `azblob.encryption-scope` | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | | TiCDC | [`large-message-handle-option`](/ticdc/ticdc-sink-to-kafka.md#处理超过-kafka-topic-限制的消息) | 新增 | 默认为空,即消息大小超过 Kafka Topic 的限制后,同步任务失败。设置为 "handle-key-only" 时,如果消息超过大小,只发送 handle key 以减少消息的大小;如果依旧超过大小,则同步任务失败。 | | TiCDC | [`sink.csv.binary-encoding-method`](/ticdc/ticdc-changefeed-config.md#ticdc-changefeed-配置文件说明) | 新增 | CSV 协议中二进制类型数据的编码方式,可选 `'base64'` 与 `'hex'`。默认值为 `'base64'`。 | From 889d76c20145dc16a1bef4614ea3c8de45123040 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 18:18:15 +0800 Subject: [PATCH 106/114] Update releases/release-7.3.0.md Co-authored-by: Aolin --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 52474496160b..fe694f762cc1 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -167,7 +167,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 当 Kafka sink 使用 Avro 协议时,如果开启了 `force-replicate` 参数,创建 changefeed 会报错。 - 由于 `delete-only-output-handle-key-columns` 和 `force-replicate` 参数不兼容,同时开启两个参数时,创建 changefeed 会报错。 - - 当使用 `Open Protocol` 作为输出协议时,`UPDATE` 类型的事件将仅输出变更的列。 + - 当使用 Open Protocol 作为输出协议时,`UPDATE` 类型的事件将仅输出变更的列。 ### 系统变量 From e786f5c7b1f5d2ce30ac222d5bbdeb2c615f97f3 Mon Sep 17 00:00:00 2001 From: Ran Date: Wed, 9 Aug 2023 20:21:03 +0800 Subject: [PATCH 107/114] Update releases/release-7.3.0.md Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index fe694f762cc1..d65a832884e1 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -197,10 +197,10 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | TiFlash | [`storage.format_version`](/tiflash/tiflash-configuration.md) | 修改 | 引入新的 DTFile 储存文件格式 `format_version = 5`,该格式可以合并小文件从而减少物理文件数量。注意该格式目前为实验特性,默认未启用。 | | TiDB Lightning | `tikv-importer.incremental-import` | 删除 | TiDB Lightning 并行导入参数。因为该参数名容易被误认为是增量导入的参数,因此更名为 `tikv-importer.parallel-import`。如果用户传入旧的参数名,会被自动转成新的参数名。| |TiDB Lightning | `tikv-importer.on-duplicate` | 废弃 | TiDB Lightning 逻辑导入模式插入冲突数据时执行的操作。从 v7.3.0 起,该参数由 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 取代。| -| TiDB Lightning | `conflict.max-record-rows` | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | -| TiDB Lightning | `conflict.strategy` | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 `""`(不做冲突检测),`"error"`(遇到冲突数据即报错并停止导入),`"replace"`(遇到冲突记录替换已有的冲突记录),`"ignore"`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 `""`,即不做冲突检测。 | -| TiDB Lightning | `conflict.threshold` | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | -| TiDB Lightning | `enable-diagnose-logs` | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | +| TiDB Lightning | [`conflict.max-record-rows`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 新版冲突检测与处理策略,用于记录在数据导入过程中遇到的冲突记录,并允许设置最大上限,默认值为 `100`。 | +| TiDB Lightning | [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 新版冲突检测与处理的策略,包含 `""`(不做冲突检测),`"error"`(遇到冲突数据即报错并停止导入),`"replace"`(遇到冲突记录替换已有的冲突记录),`"ignore"`(遇到冲突记录忽略需要插入的该条冲突记录)四种策略。默认值为 `""`,即不做冲突检测。 | +| TiDB Lightning | [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 |TiDB Lightning 新版冲突检测与处理策略允许的冲突上限,`conflict.strategy="error"` 时默认值为 `0`,当 `conflict.strategy="replace"` 或 `conflict.strategy="ignore"` 时默认值为 maxint。 | +| TiDB Lightning | [`enable-diagnose-logs`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | 是否开启诊断日志。默认为 `false`,即只输出和导入有关的日志,不会输出依赖的其他组件的日志。设置为 `true` 后,既输出和导入相关的日志,也输出依赖的其他组件的日志,并开启 GRPC debug,可用于问题诊断。 | | TiDB Lightning | [`tikv-importer.parallel-import`](/tidb-lightning/tidb-lightning-configuration.md) | 新增 | TiDB Lightning 并行导入参数。用于替代原有的 `tikv-importer.incremental-import` 参数,因为原有参数会被误认为是增量导入的参数而误用。 | | BR | `azblob.encryption-key` | 新增 |BR 为外部存储 Azure Blob Storage 提供加密密钥支持 | | BR | `azblob.encryption-scope` | 新增 |BR 为外部存储 Azure Blob Storage 提供加密范围支持 | From 76e437b279ee81fc9fa7c85bc0be2e9af288fb81 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 10 Aug 2023 10:45:46 +0800 Subject: [PATCH 108/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index d65a832884e1..016d726a36f4 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -45,7 +45,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 数据库管理与可观测性 显示统计信息收集的进度 - 支持使用 SHOW ANALYZE STATUS 语句或通过mysql.analyze_jobs 系统表查看 ANALYZE 任务的进度。 + 支持使用 SHOW ANALYZE STATUS 语句或通过 mysql.analyze_jobs 系统表查看 ANALYZE 任务的进度。 From c5d7867689f3ca1aa333fdeab709c05ac066e700 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E6=89=8B=E6=8E=89=E5=8C=85=E5=B7=A5=E7=A8=8B?= =?UTF-8?q?=E5=B8=88?= Date: Thu, 10 Aug 2023 15:25:38 +0800 Subject: [PATCH 109/114] Update releases/release-7.3.0.md Co-authored-by: Ran --- releases/release-7.3.0.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 016d726a36f4..013cf3b67302 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -211,6 +211,14 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 新增系统表 `mysql.tidb_timers` 用来存储系统内部定时器的元信息。 +## 废弃功能 + +* TiDB + + - 统计信息的[快速分析](/system-variables.md#tidb_enable_fast_analyze)(实验特性)计划在 v7.5.0 中废弃。 + - 统计信息的[增量收集](/statistics.md#增量收集)(实验特性)计划在 v7.5.0 中废弃。 + - 统计信息的 Feedback 机制计划在 v7.5.0 中废弃。系统表 `mysql.stats_feedback` 和 TiDB Dashboard 中的 `Significant Feedback` 页面将被删除。 + ## 改进提升 + TiDB From b62c10a91fa28bce4b554548283b64419595edfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E6=89=8B=E6=8E=89=E5=8C=85=E5=B7=A5=E7=A8=8B?= =?UTF-8?q?=E5=B8=88?= Date: Thu, 10 Aug 2023 16:47:42 +0800 Subject: [PATCH 110/114] Update releases/release-7.3.0.md --- releases/release-7.3.0.md | 1 - 1 file changed, 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 013cf3b67302..e217e1558ce3 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -217,7 +217,6 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 统计信息的[快速分析](/system-variables.md#tidb_enable_fast_analyze)(实验特性)计划在 v7.5.0 中废弃。 - 统计信息的[增量收集](/statistics.md#增量收集)(实验特性)计划在 v7.5.0 中废弃。 - - 统计信息的 Feedback 机制计划在 v7.5.0 中废弃。系统表 `mysql.stats_feedback` 和 TiDB Dashboard 中的 `Significant Feedback` 页面将被删除。 ## 改进提升 From 106b7cd3d944266142b31a6d8478cfeb8922c3e6 Mon Sep 17 00:00:00 2001 From: Ran Date: Thu, 10 Aug 2023 19:04:23 +0800 Subject: [PATCH 111/114] Apply suggestions from code review Co-authored-by: Xiaoju Wu --- releases/release-7.3.0.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index e217e1558ce3..265e3467599c 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -184,6 +184,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | | TiDB | [`enable-32bits-connection-id`](/tidb-configuration-file.md#enable-32bits-connection-id-从-v730-版本开始引入) | 新增 | 这个变量用于控制是否开启生成 32 位 connection ID 的功能。 | +| TiDB | [`in-mem-slow-query-topn-num`](/tidb-configuration-file.md#in-mem-slow-query-topn-num-从-v730-版本开始引入) | 新增 | 这个变量用于控制缓存在内存中的最慢的 slow query 个数。 | +| TiDB | [`in-mem-slow-query-recent-num`](/tidb-configuration-file.md#in-mem-slow-query-recent-num-从-v730-版本开始引入) | 新增 | 这个变量用于控制缓存在内存中的最近使用的 slow query 个数。 | | TiKV | [`coprocessor.region-bucket-size`](/tikv-configuration-file.md#region-bucket-size-从-v610-版本开始引入) | 修改 | 为降低客户端超时的可能性,默认值从 `96MiB` 修改为 `50MiB`。 | | TiKV | [`raft-engine.format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | | TiKV | [`raftdb.max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size-1) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,TiKV 会跳过写 WAL,因此默认值从 `"4GB"` 修改为 `1`,即禁用 WAL。 | @@ -226,7 +228,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 在启用 [Global Kill](/tidb-configuration-file.md#enable-global-kill-从-v610-版本开始引入) 的情况下,可以通过 Control+C 终止当前会话 [#8854](https://github.com/pingcap/tidb/issues/8854) @[pingyu](https://github.com/pingyu) - 支持锁函数 `IS_FREE_LOCK()` 和 `IS_USED_LOCK()` [#44493](https://github.com/pingcap/tidb/issues/44493) @[dveeden](https://github.com/dveeden) - 优化与落盘相关的 chunk 读取的性能 [#45125](https://github.com/pingcap/tidb/issues/45125) @[YangKeao](https://github.com/YangKeao) - + - 以 Optimizer Fix Controls 的方式改进了 Index Join 内表的高估问题 [#44855](https://github.com/pingcap/tidb/issues/44855) @[time-and-fate](https://github.com/time-and-fate) + + TiKV - 添加 `Max gap of safe-ts` 和 `Min safe ts region` 监控项以及 `tikv-ctl get_region_read_progress` 命令,用于更好地观测和诊断 resolved-ts 和 safe-ts 的状态 [#15082](https://github.com/tikv/tikv/issues/15082) @[ekexium](https://github.com/ekexium) @@ -279,7 +282,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复读取元数据时间超过一个 DDL lease 导致升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) - 修复 `SELECT CAST(n AS CHAR)` 语句中的 `n` 为负数时,查询结果出错的问题 [#44786](https://github.com/pingcap/tidb/issues/44786) @[xhebox](https://github.com/xhebox) - 修复开启 `tidb_opt_agg_push_down` 时查询可能返回错误结果的问题 [#44795](https://github.com/pingcap/tidb/issues/44795) @[AilinKid](https://github.com/AilinKid) - + - 修复了带有 `current_date()` 的查询使用 Plan Cache 导致的结果正确性问题 [#45086](https://github.com/pingcap/tidb/issues/45086) @[qw4990](https://github.com/qw4990) + + TiKV - 修复在一些罕见的情况下,在 GC 的同时读取数据可能导致 TiKV panic 的问题 [#15109](https://github.com/tikv/tikv/issues/15109) @[MyonKeminta](https://github.com/MyonKeminta) From 7ce4bf2369767e0b6661778d5946f7c26f96d494 Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 11 Aug 2023 10:01:56 +0800 Subject: [PATCH 112/114] Update releases/release-7.3.0.md Co-authored-by: xixirangrang --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 265e3467599c..5dd1a80bb382 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -184,8 +184,8 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 | 配置文件 | 配置项 | 修改类型 | 描述 | | -------- | -------- | -------- | -------- | | TiDB | [`enable-32bits-connection-id`](/tidb-configuration-file.md#enable-32bits-connection-id-从-v730-版本开始引入) | 新增 | 这个变量用于控制是否开启生成 32 位 connection ID 的功能。 | -| TiDB | [`in-mem-slow-query-topn-num`](/tidb-configuration-file.md#in-mem-slow-query-topn-num-从-v730-版本开始引入) | 新增 | 这个变量用于控制缓存在内存中的最慢的 slow query 个数。 | | TiDB | [`in-mem-slow-query-recent-num`](/tidb-configuration-file.md#in-mem-slow-query-recent-num-从-v730-版本开始引入) | 新增 | 这个变量用于控制缓存在内存中的最近使用的 slow query 个数。 | +| TiDB | [`in-mem-slow-query-topn-num`](/tidb-configuration-file.md#in-mem-slow-query-topn-num-从-v730-版本开始引入) | 新增 | 这个变量用于控制缓存在内存中的最慢的 slow query 个数。 | | TiKV | [`coprocessor.region-bucket-size`](/tikv-configuration-file.md#region-bucket-size-从-v610-版本开始引入) | 修改 | 为降低客户端超时的可能性,默认值从 `96MiB` 修改为 `50MiB`。 | | TiKV | [`raft-engine.format-version`](/tikv-configuration-file.md#format-version-从-v630-版本开始引入) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,会引入 Ribbon filter,因此将默认值从 `2` 修改为 `5`。 | | TiKV | [`raftdb.max-total-wal-size`](/tikv-configuration-file.md#max-total-wal-size-1) | 修改 | 当使用 Partitioned Raft KV (`storage.engine="partitioned-raft-kv"`) 时,TiKV 会跳过写 WAL,因此默认值从 `"4GB"` 修改为 `1`,即禁用 WAL。 | From 8c123e8fd92fccb26cceffa7c575e8f75a03b71c Mon Sep 17 00:00:00 2001 From: Ran Date: Fri, 11 Aug 2023 10:02:05 +0800 Subject: [PATCH 113/114] Update releases/release-7.3.0.md Co-authored-by: xixirangrang --- releases/release-7.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index 5dd1a80bb382..a4ebf2cc5cfa 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -282,7 +282,7 @@ v7.3.0 引入了以下主要功能。[功能详情](#功能详情)中列出的 - 修复读取元数据时间超过一个 DDL lease 导致升级 TiDB 卡住的问题 [#45176](https://github.com/pingcap/tidb/issues/45176) @[zimulala](https://github.com/zimulala) - 修复 `SELECT CAST(n AS CHAR)` 语句中的 `n` 为负数时,查询结果出错的问题 [#44786](https://github.com/pingcap/tidb/issues/44786) @[xhebox](https://github.com/xhebox) - 修复开启 `tidb_opt_agg_push_down` 时查询可能返回错误结果的问题 [#44795](https://github.com/pingcap/tidb/issues/44795) @[AilinKid](https://github.com/AilinKid) - - 修复了带有 `current_date()` 的查询使用 Plan Cache 导致的结果正确性问题 [#45086](https://github.com/pingcap/tidb/issues/45086) @[qw4990](https://github.com/qw4990) + - 修复带有 `current_date()` 的查询使用 Plan Cache 导致结果错误的问题 [#45086](https://github.com/pingcap/tidb/issues/45086) @[qw4990](https://github.com/qw4990) + TiKV From c2cf219a9fc3686039dd74b39aebff106cf92383 Mon Sep 17 00:00:00 2001 From: Ran Date: Mon, 14 Aug 2023 13:54:56 +0800 Subject: [PATCH 114/114] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-7.3.0.md | 2 +- releases/release-notes.md | 2 +- releases/release-timeline.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-7.3.0.md b/releases/release-7.3.0.md index a4ebf2cc5cfa..b5de89b5058e 100644 --- a/releases/release-7.3.0.md +++ b/releases/release-7.3.0.md @@ -5,7 +5,7 @@ summary: 了解 TiDB 7.3.0 版本的新功能、兼容性变更、改进提升 # TiDB 7.3.0 Release Notes -发版日期:2023 年 8 月 10 日 +发版日期:2023 年 8 月 14 日 TiDB 版本:7.3.0 diff --git a/releases/release-notes.md b/releases/release-notes.md index 090d7ddbd6b6..bbb6fcc8456e 100644 --- a/releases/release-notes.md +++ b/releases/release-notes.md @@ -9,7 +9,7 @@ TiDB 历史版本发布声明如下: ## 7.3 -- [7.3.0-DMR](/releases/release-7.3.0.md): 2023-08-10 +- [7.3.0-DMR](/releases/release-7.3.0.md): 2023-08-14 ## 7.2 diff --git a/releases/release-timeline.md b/releases/release-timeline.md index f360bc70886a..64e0056632d1 100644 --- a/releases/release-timeline.md +++ b/releases/release-timeline.md @@ -9,7 +9,7 @@ summary: 了解 TiDB 的版本发布时间线。 | 版本 | 发布日期 | | :--- | :--- | -| [7.3.0-DMR](/releases/release-7.3.0.md) | 2023-08-10 | +| [7.3.0-DMR](/releases/release-7.3.0.md) | 2023-08-14 | | [7.1.1](/releases/release-7.1.1.md) | 2023-07-24 | | [6.1.7](/releases/release-6.1.7.md) | 2023-07-12 | | [7.2.0-DMR](/releases/release-7.2.0.md) | 2023-06-29 |