From bb393f96927c19dc0f7a0b75c31ef293dc82289a Mon Sep 17 00:00:00 2001 From: houfaxin Date: Wed, 24 Jul 2024 17:07:32 +0800 Subject: [PATCH 001/103] Create release-8.3.0.md --- releases/release-8.3.0.md | 229 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 229 insertions(+) create mode 100644 releases/release-8.3.0.md diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md new file mode 100644 index 000000000000..76637a7015d2 --- /dev/null +++ b/releases/release-8.3.0.md @@ -0,0 +1,229 @@ +--- +title: TiDB 8.2.0 Release Notes +summary: 了解 TiDB 8.2.0 版本的新功能、兼容性变更、改进提升,以及错误修复。 +--- + +# TiDB 8.2.0 Release Notes + +发版日期:2024 年 x 月 x 日 + +TiDB 版本:8.2.0 + +试用链接:[快速体验](https://docs.pingcap.com/zh/tidb/v8.2/quick-start-with-tidb) | [下载离线包](https://cn.pingcap.com/product-community/?version=v8.2.0-DMR#version-list) + +在 8.2.0 版本中,你可以获得以下关键特性: + +## 功能详情 + +### 可扩展性 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 性能 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 稳定性 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 高可用 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### SQL 功能 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 数据库管理 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 可观测性 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 安全 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +### 数据迁移 + +* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** + + 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + + 更多信息,请参考[用户文档](链接)。 + +## 兼容性变更 + +> **注意:** +> +> 以下为从 v7.5.0 升级至当前版本 (v8.2.0) 所需兼容性变更信息。如果从 v7.4.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 Release Notes 中提到的兼容性变更信息。 +### 行为变更 + +* 行为变更 1 +* 行为变更 2 + +### MySQL 兼容性 + +* 兼容性 1 + +* 兼容性 2 + +### 系统变量 + +| 变量名 | 修改类型(包括新增/修改/删除) | 描述 | +|--------|------------------------------|------| +| | | | +| | | | +| | | | +| | | | + +### 系统表 + +### 其他 + +## 离线包变更 + +## 废弃功能 + +* 废弃功能 1 + +* 废弃功能 2 + +## 改进提升 + ++ TiDB + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiKV + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ PD + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiFlash + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ Tools + + + Backup & Restore (BR) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiCDC + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Data Migration (DM) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Lightning + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiUP + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + +## 错误修复 + ++ TiDB + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiKV + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ PD + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ TiFlash + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + ++ Tools + + + Backup & Restore (BR) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiCDC + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Data Migration (DM) + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiDB Lightning + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + + + TiUP + + - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](链接) @[贡献者 GitHub ID](链接) + +## 贡献者 + +感谢来自 TiDB 社区的贡献者们: + +- [贡献者 GitHub ID]() \ No newline at end of file From 052289e4dc2f4d5b5bdab4ef1e3d8e14959a42aa Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 29 Jul 2024 10:24:13 +0800 Subject: [PATCH 002/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 76637a7015d2..32273bc3317f 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -1,17 +1,17 @@ --- -title: TiDB 8.2.0 Release Notes -summary: 了解 TiDB 8.2.0 版本的新功能、兼容性变更、改进提升,以及错误修复。 +title: TiDB 8.3.0 Release Notes +summary: 了解 TiDB 8.3.0 版本的新功能、兼容性变更、改进提升,以及错误修复。 --- -# TiDB 8.2.0 Release Notes +# TiDB 8.3.0 Release Notes 发版日期:2024 年 x 月 x 日 -TiDB 版本:8.2.0 +TiDB 版本:8.3.0 -试用链接:[快速体验](https://docs.pingcap.com/zh/tidb/v8.2/quick-start-with-tidb) | [下载离线包](https://cn.pingcap.com/product-community/?version=v8.2.0-DMR#version-list) +试用链接:[快速体验](https://docs.pingcap.com/zh/tidb/v8.3/quick-start-with-tidb) | [下载离线包](https://cn.pingcap.com/product-community/?version=v8.3.0-DMR#version-list) -在 8.2.0 版本中,你可以获得以下关键特性: +在 8.3.0 版本中,你可以获得以下关键特性: ## 功能详情 @@ -91,7 +91,8 @@ TiDB 版本:8.2.0 > **注意:** > -> 以下为从 v7.5.0 升级至当前版本 (v8.2.0) 所需兼容性变更信息。如果从 v7.4.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 Release Notes 中提到的兼容性变更信息。 +> 以下为从 v8.2.0 升级至当前版本 (v8.3.0) 所需兼容性变更信息。如果从 v8.1.0 或之前版本升级到当前版本,可能也需要考虑和查看中间版本 Release Notes 中提到的兼容性变更信息。 + ### 行为变更 * 行为变更 1 @@ -226,4 +227,4 @@ TiDB 版本:8.2.0 感谢来自 TiDB 社区的贡献者们: -- [贡献者 GitHub ID]() \ No newline at end of file +- [贡献者 GitHub ID]() From e2c6ad69ab66fcfa94b8fcaadbb0484db37e21b3 Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Wed, 31 Jul 2024 18:13:37 +0800 Subject: [PATCH 003/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 43 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 32273bc3317f..6d50eaf3e51c 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -31,6 +31,32 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 +* Projection 下推功能正式发布 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** + + 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的传输的数据量,特别是对 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md),效果更加显著。在 v8.3.0 版本中,TiDB 正式发布 Projection 下推功能。在该功能启用时,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推至存储引擎。 + + 变量 [tidb_opt_projection_push_down](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 控制是否启用 Projection 下推功能。该变量的默认值将调整为 `ON`,表示默认启用该功能。 + + 更多信息,请参考[用户文档](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入)。 + +* 优化 KV 请求的批处理策略 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** + + TiDB 读取数据需要通过 KV 请求进行。通过将 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 版本之前,TiDB 批处理策略的效率不高。在 v8.3.0 版本,TiDB 在现有的基础 KV 请求批处理策略基础上,引入更加高效的策略。通过新增的配置项 [`tikv-client.batch-policy·](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设定不同的批处理策略。 + + 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 + +* 增加获取 TSO 的 RPC 模式,降低获取 TSO 的延迟 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[MyonKeminta](https://github.com/MyonKeminta) **tw@qiancai** + + TiDB 在向 PD 请求 TSO 时,会汇总一定时间段的请求并以同步的方式进行批处理以减少 RPC 请求数量、降低 PD 负载。对于延迟敏感的场景,这种模式的性能并不理想。在 v8.3.0 版本中,TiDB 新增 TSO 请求的异步批处理模式,并提供不同的并发能力,以增加相应的 PD 负载为代价,降低获取 TSO 的延迟。通过新增的变量 [tidb_tso_client_rpc_mode](/system-variables.md#tidb_tso_client_rpc_mode-从-v830-版本开始引入) 设定获取 TSO 的 RPC 模式。 + + 更多信息,请参考[用户文档](/system-variables.md#tidb_tso_client_rpc_mode-从-v830-版本开始引入)。 + +* TiFlash 新增 Hashagg 聚合计算模式,提升高 NDV 数据的聚集计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** + + TiFlash 的 Hashagg 聚合计算中,第一阶段也会进行聚集计算。对于高 NDV 数据,这种模式效率较低。在 v8.3.0 版本中,TiFlash 引入多种 Hashagg 聚合计算模式,提升不同特征数据的聚集计算性能。通过新增的变量 [tiflash_hashagg_preaggregation_mode](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设定 Hashagg 聚合计算模式。 + + 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 + ### 稳定性 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -39,6 +65,14 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 +* TiProxy 支持虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** + + 在 v8.3.0 版本之前,使用主从模式保证高可用时,TiProxy 还需要额外的组件管理虚拟 IP 功能。在 v8.3.0 版本,TiProxy 支持虚拟 IP 管理功能。在主动模式下,当出现主从节点切换时,主节点自动绑定指定的虚拟 IP,保证客户端的正常访问。 + + 通过设定 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP。如果未指定,则表示不启用该功能。 + + 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 + ### 高可用 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -55,6 +89,10 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 +* 支持 `Shared Lock` 升级为 `Exclusive Lock` [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** + + TiDB 暂不支持 `Shared Lock`. 在 v8.3.0 版本中,TiDB 支持将 `Shared Lock` 升级为 `Exclusive Lock`,实现对 `Shared Lock` 语法的支持。通过新增的变量 [tidb_enable_shared_lock_upgrade](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) 控制是否启用该功能。 + ### 数据库管理 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -131,6 +169,11 @@ TiDB 版本:8.3.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) + - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** + - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** + - 变量 `tidb_low_resolution_tso` 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** + - 优化 MemDB 实现,降低写事务延迟 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[you06](https://github.com/you06) **tw@hfxsd** + - GC 支持并发删除 Range,提升 GC 效率 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[ekexium](https://github.com/ekexium) **tw@qiancai** + TiKV From 9fa5bd3d7135c72409cdde434a961097d4b2bf0b Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Wed, 31 Jul 2024 18:22:07 +0800 Subject: [PATCH 004/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 6d50eaf3e51c..d11f396b9800 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -109,6 +109,12 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 +* 系统视图 `PROCESS LIST` 增加 `ROWS_AFFECTED` 字段 [#54486](https://github.com/pingcap/tidb/issues/54486) @[ekexium](https://github.com/ekexium) **tw@qiancai** + + TiDB 并不能显示当前 DML 语句已经处理的数据行数。在 v8.3.0 版本中,系统视图 `PROCESS LIST` 增加 `ROWS_AFFECTED` 字段,展示当前 DML 语句已经写入的数据行数。 + + 更多信息,请参考[用户文档](/information-schema/information-schema-processlist.md)。 + ### 安全 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -173,7 +179,7 @@ TiDB 版本:8.3.0 - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 变量 `tidb_low_resolution_tso` 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - 优化 MemDB 实现,降低写事务延迟 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[you06](https://github.com/you06) **tw@hfxsd** - - GC 支持并发删除 Range,提升 GC 效率 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[ekexium](https://github.com/ekexium) **tw@qiancai** + - GC 支持并发删除 Range 以提升处理效率 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[ekexium](https://github.com/ekexium) **tw@qiancai** + TiKV From 063327a2fb8465cf918b16a4db5f69c2dcef0c32 Mon Sep 17 00:00:00 2001 From: long0712 <87366891+ljun0712@users.noreply.github.com> Date: Wed, 31 Jul 2024 19:07:35 +0800 Subject: [PATCH 005/103] Update release-8.3.0.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充安全部分的内容 --- releases/release-8.3.0.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index d11f396b9800..507c73a7c249 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -117,11 +117,17 @@ TiDB 版本:8.3.0 ### 安全 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** +* 增强 PD 日志脱敏 [#51306](https://github.com/pingcap/tidb/issues/51306) @[xhe](https://github.com/xhebox) - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) + TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强,要使用该功能,可以将 PD 配置项 `security.redact_info_log` 的值设置为 `marker`。 - 更多信息,请参考[用户文档](链接)。 + 更多信息,请参考[用户文档](/log-redaction.md)。 + + * 增强 TiKV 日志脱敏 [#17206](https://github.com/tikv/tikv/issues/17206) @[lucasliang](https://github.com/LykxSassinator) + + TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强,要使用该功能,可以将 TiKV 配置项 `security.redact_info_log` 的值设置为 `marker`。 + + 更多信息,请参考[用户文档](/log-redaction.md)。 ### 数据迁移 From b86ad449daa1e6a92ac250a5519166f37ddb554e Mon Sep 17 00:00:00 2001 From: Roger Song Date: Thu, 1 Aug 2024 18:12:43 +0800 Subject: [PATCH 006/103] cursor fetch in streaming mode --- releases/release-8.3.0.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 507c73a7c249..2055b26d50cf 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -72,6 +72,12 @@ TiDB 版本:8.3.0 通过设定 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP。如果未指定,则表示不启用该功能。 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 + +* 新增以流式获取游标的结果集 (实验特性) [#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) **tw@lilin90** + + 当应用代码通过 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 获取结果集时,TiDB 通常会将完整结果保存至 TiDB ,再分批返回给客户端。如果结果集过大,可能会触发临时落盘。自 v8.3.0 开始,通过设置系统变量[`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) 为 `ON`,TiDB 不再把所有数据读取到 TiDB 节点,而是会随着客户端的读取逐步将数据传送至 TiDB 节点。在处理较大结果集时,这将会减少 TiDB 节点的内存使用,提升集群的稳定性。 + + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入)。 ### 高可用 From 2291aa0106f2f01b94f42381866c452b4bd9d8d3 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Thu, 1 Aug 2024 23:31:46 +0800 Subject: [PATCH 007/103] show progress of initial stats --- releases/release-8.3.0.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2055b26d50cf..754f70940182 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -120,6 +120,10 @@ TiDB 版本:8.3.0 TiDB 并不能显示当前 DML 语句已经处理的数据行数。在 v8.3.0 版本中,系统视图 `PROCESS LIST` 增加 `ROWS_AFFECTED` 字段,展示当前 DML 语句已经写入的数据行数。 更多信息,请参考[用户文档](/information-schema/information-schema-processlist.md)。 + +* 展示初始统计信息加载的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@lilin90** + + TiDB 在启动时要对基础统计信息进行加载,在表或者分区数量很多的情况下,这个过程要耗费一定时间,当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 为 `ON` 时,初始统计信息加载完成前 TiDB 不会对外提供服务。在这种情况下,用户需要对加载过程进行观测,从而能够预期服务开启时间。自 v8.3.0,TiDB 会在日志中分阶段打印初始统计信息加载的进度,让客户了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的监控 [API](/tidb-monitoring-api.md),能够在启动阶段随时获取初始统计信息的加载进度。 ### 安全 From 828a9740f3dac494ccf0813c14dfb8123c3d5151 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Thu, 1 Aug 2024 23:52:05 +0800 Subject: [PATCH 008/103] SPM enhancement --- releases/release-8.3.0.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 754f70940182..0895b93a24db 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -78,6 +78,16 @@ TiDB 版本:8.3.0 当应用代码通过 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 获取结果集时,TiDB 通常会将完整结果保存至 TiDB ,再分批返回给客户端。如果结果集过大,可能会触发临时落盘。自 v8.3.0 开始,通过设置系统变量[`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) 为 `ON`,TiDB 不再把所有数据读取到 TiDB 节点,而是会随着客户端的读取逐步将数据传送至 TiDB 节点。在处理较大结果集时,这将会减少 TiDB 节点的内存使用,提升集群的稳定性。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入)。 + +* SQL 绑定的增强 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** + + 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定的,因此对业务中的重要 SQL 实施执行计划绑定,可以减少执行计划变差的机会,提升系统稳定性。为了满足客户创建大量 SQL 绑定的需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: + + - 用单条 SQL 从多个历史执行计划中创建 SQL 绑定 + - 从历史执行计划创建绑定不再受表数量的限制 + - SQL 绑定支持更多的优化器提示,能够更稳定重现原执行计划 + + 更多信息,请参考[用户文档](/sql-plan-management.md)。 ### 高可用 From 70cb2a6bfc6b0582e3c955b1d33221bcad8b81aa Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 2 Aug 2024 16:24:49 +0800 Subject: [PATCH 009/103] stats collection with predicated columns --- releases/release-8.3.0.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 0895b93a24db..a93c483d824e 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -56,7 +56,17 @@ TiDB 版本:8.3.0 TiFlash 的 Hashagg 聚合计算中,第一阶段也会进行聚集计算。对于高 NDV 数据,这种模式效率较低。在 v8.3.0 版本中,TiFlash 引入多种 Hashagg 聚合计算模式,提升不同特征数据的聚集计算性能。通过新增的变量 [tiflash_hashagg_preaggregation_mode](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设定 Hashagg 聚合计算模式。 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 + +* 统计信息收集忽略不必要的列 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) **tw@lilin90** + + 当优化器生成执行计划时,只需要部分列的统计信息,例如过滤条件上的列,连接键上的列,聚合目标用到的列。从 v8.3.0 起,TiDB 会持续观测 SQL 语句对列的使用历史,默认只收集有索引的列,以及被观测到的有必要收集统计信息的列。这将会提升统计信息的收集速度,避免不必要的资源浪费。 + + 从旧版本升级到 v8.3.0 或更高版本的用户,默认保留原有行为,收集所有列的统计信息,需要手工设置变量 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 为 `PREDICATE` 来启用,新部署默认开启。 + 对于随机查询比较多的偏分析型系统,可以设置 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 为 `ALL` 收集所有列的统计信息,保证随机查询的性能。其余类型的系统推荐保留 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 为 `PREDICATE` 只收集必要的列。 + + 更多信息,请参考[用户文档](/statistics.md#收集部分列的统计信息)。 + ### 稳定性 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 16a3d8a5a7a589aeadd2bc285f5c2c2c2d7d5a21 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 2 Aug 2024 16:32:36 +0800 Subject: [PATCH 010/103] variable changes --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index a93c483d824e..4728d81d05a4 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -188,8 +188,8 @@ TiDB 版本:8.3.0 | 变量名 | 修改类型(包括新增/修改/删除) | 描述 | |--------|------------------------------|------| -| | | | -| | | | +| [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句默认收集的列。将其设置为 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | +| [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| | | | | | | | | From 36581d6e50f94c91861a78a0090e33d418089634 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 2 Aug 2024 16:39:00 +0800 Subject: [PATCH 011/103] features to be deprecated --- releases/release-8.3.0.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 4728d81d05a4..46530149da84 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -201,9 +201,11 @@ TiDB 版本:8.3.0 ## 废弃功能 -* 废弃功能 1 +* 以下为计划将在未来版本中废弃的功能: -* 废弃功能 2 + * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入),用于控制是否启用优先队列来优化自动收集统计信息任务的排序。在未来版本中,优先队列将成为自动收集统计信息任务的唯一排序方式,系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入) 将被废弃。 + * TiDB 在 v7.5.0 引入了系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入),用于设置 TiDB 使用异步方式合并分区统计信息,以避免 OOM 问题。在未来版本中,分区统计信息将统一使用异步方式进行合并,系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入) 将被废弃。 + * 计划在后续版本重新设计[执行计划绑定的自动演进](/sql-plan-management.md#自动演进绑定-baseline-evolution),相关的变量和行为会发生变化。 ## 改进提升 From f16f2f5af9dc1609b31f358401cbb8ef258c1923 Mon Sep 17 00:00:00 2001 From: Roger Song Date: Fri, 2 Aug 2024 19:17:56 +0800 Subject: [PATCH 012/103] draft highlights --- releases/release-8.3.0.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 46530149da84..cbfd8445a777 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -13,6 +13,40 @@ TiDB 版本:8.3.0 在 8.3.0 版本中,你可以获得以下关键特性: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
分类功能/增强描述
可扩展性和性能 分区表全局索引(实验特性)全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。
Projection 下推成为正式功能 Projection 下推能够尽可能将负载分散到存储节点,也可以减少节点间的数据传输,这能够降低一部分 SQL 的执行时间,提升数据库整体性能。
统计信息收集忽略不必要的列在保证优化器能够获取到必要信息的前提下,加快了统计信息收集的速度,提升统计信息的时效性,进而保证最优的执行计划的选择,提升集群性能。同时也降低的系统开销,改善资源利用率。
读写性能的细粒度优化通过优化 KV 请求的策略,增加获取 TSO 的模式等多重手段,进一步提升 TiDB 的读写性能,降低业务的执行时间,改善延迟。
稳定性与高可用TiProxy 管理虚拟 IP在 TiProxy 内实现了对连接地址的管理,支持自动的地址切换,而不依赖外部平台或工具。这能够简化 TiProxy 的部署形式,降低了数据库接入层的复杂度。
+ ## 功能详情 ### 可扩展性 From 3afc89008ab4a73f72f4a836e5ed935df1bf3279 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 5 Aug 2024 10:23:02 +0800 Subject: [PATCH 013/103] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-8.3.0.md | 45 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index cbfd8445a777..015383fcdd00 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -101,6 +101,44 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/statistics.md#收集部分列的统计信息)。 +* 提升了一些系统表的查询性能 [#]() @[tangenta](https://github.com/tangenta) **tw@hfxsd** + + 在之前的版本,当集群规模变大,表数量较多时,查询系统表性能较慢。 + + 在 v8.0.0 优化了以下 4 个系统表的查询性能: + + - INFORMATION_SCHEMA.TABLES + - INFORMATION_SCHEMA.STATISTICS + - INFORMATION_SCHEMA.KEY_COLUMN_USAGE + - INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS + + 在 v8.3.0 版本优化了以下系统表的查询性能,相比 v8.2.0 性能有数倍的提升: + + - INFORMATION_SCHEMA.CHECK_CONSTRAINTS + - INFORMATION_SCHEMA.COLUMNS + - INFORMATION_SCHEMA.PARTITIONS + - INFORMATION_SCHEMA.SCHEMATA + - INFORMATION_SCHEMA.SEQUENCES + - INFORMATION_SCHEMA.TABLE_CONSTRAINTS + - INFORMATION_SCHEMA.TIDB_CHECK_CONSTRAINTS + - INFORMATION_SCHEMA.TiDB_INDEXES + - INFORMATION_SCHEMA.TIDB_INDEX_USAGE + - INFORMATION_SCHEMA.VIEWS + + 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 + +* 分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,支持分区裁剪,提升查询性能 [#54209](https://github.com/pingcap/tidb/pull/54209) @[mjonss](https://github.com/mjonss) **tw@hfxsd** + + 之前的版本,当分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,不支持分区裁剪,导致查询性能较差。从 v8.3.0 开始,当分区表达式使用该函数时,支持分区裁剪,提升了查询性能。 + + 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 + +* 批量建库 (`CREATE DATABASE`) 的性能提升近 5 倍 [#54436 ](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** + + v8.0.0 引入了参数 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景提升建表的性能。从 v8.3.0 版本开始,该参数对批量建库的性能也有提升,相比 v8.2.0,性能有近 5 倍的提升。 + + 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 + ### 稳定性 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -153,6 +191,13 @@ TiDB 版本:8.3.0 TiDB 暂不支持 `Shared Lock`. 在 v8.3.0 版本中,TiDB 支持将 `Shared Lock` 升级为 `Exclusive Lock`,实现对 `Shared Lock` 语法的支持。通过新增的变量 [tidb_enable_shared_lock_upgrade](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) 控制是否启用该功能。 +* 分区表支持全局索引 (Global Index)(实验特性) [#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** + + 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区建,如果查询条件不带分区建,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了参数 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 + + 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你可以显式地创建全局索引,唯一键也不需要强制包含分区建,满足灵活的业务需求。同时基于全局索引也提升了不带分区建的索引的查询性能。 + + 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 ### 数据库管理 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 5c250332117b71102ca753911db7199d4a1371c8 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 5 Aug 2024 10:48:57 +0800 Subject: [PATCH 014/103] add tw owners to each highlight --- releases/release-8.3.0.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 015383fcdd00..9b0afd8c869e 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -24,24 +24,24 @@ TiDB 版本:8.3.0 可扩展性和性能 - 分区表全局索引(实验特性) + 分区表全局索引(实验特性) **tw@hfxsd** 全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 - Projection 下推成为正式功能 + Projection 下推成为正式功能**tw@Oreoxmt** Projection 下推能够尽可能将负载分散到存储节点,也可以减少节点间的数据传输,这能够降低一部分 SQL 的执行时间,提升数据库整体性能。 - 统计信息收集忽略不必要的列 + 统计信息收集忽略不必要的列**tw@lilin90** 在保证优化器能够获取到必要信息的前提下,加快了统计信息收集的速度,提升统计信息的时效性,进而保证最优的执行计划的选择,提升集群性能。同时也降低的系统开销,改善资源利用率。 - 读写性能的细粒度优化 + 读写性能的细粒度优化**tw@qiancai** 通过优化 KV 请求的策略,增加获取 TSO 的模式等多重手段,进一步提升 TiDB 的读写性能,降低业务的执行时间,改善延迟。 稳定性与高可用 - TiProxy 管理虚拟 IP + TiProxy 管理虚拟 IP**tw@Oreoxmt** 在 TiProxy 内实现了对连接地址的管理,支持自动的地址切换,而不依赖外部平台或工具。这能够简化 TiProxy 的部署形式,降低了数据库接入层的复杂度。 @@ -191,7 +191,7 @@ TiDB 版本:8.3.0 TiDB 暂不支持 `Shared Lock`. 在 v8.3.0 版本中,TiDB 支持将 `Shared Lock` 升级为 `Exclusive Lock`,实现对 `Shared Lock` 语法的支持。通过新增的变量 [tidb_enable_shared_lock_upgrade](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) 控制是否启用该功能。 -* 分区表支持全局索引 (Global Index)(实验特性) [#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** +* 分区表支持全局索引 (Global Index)(实验特性) [#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区建,如果查询条件不带分区建,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了参数 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 From a79995c036960f5a169ae0cfe662d5205d3f1886 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 5 Aug 2024 12:00:42 +0800 Subject: [PATCH 015/103] Update releases/release-8.3.0.md Co-authored-by: MyonKeminta <9948422+MyonKeminta@users.noreply.github.com> --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9b0afd8c869e..0a7902cbde80 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -79,7 +79,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 -* 增加获取 TSO 的 RPC 模式,降低获取 TSO 的延迟 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[MyonKeminta](https://github.com/MyonKeminta) **tw@qiancai** +* 增加获取 TSO 的 RPC 模式,降低获取 TSO 的延迟 [#54960](https://github.com/pingcap/tidb/issues/54960) @[MyonKeminta](https://github.com/MyonKeminta) **tw@qiancai** TiDB 在向 PD 请求 TSO 时,会汇总一定时间段的请求并以同步的方式进行批处理以减少 RPC 请求数量、降低 PD 负载。对于延迟敏感的场景,这种模式的性能并不理想。在 v8.3.0 版本中,TiDB 新增 TSO 请求的异步批处理模式,并提供不同的并发能力,以增加相应的 PD 负载为代价,降低获取 TSO 的延迟。通过新增的变量 [tidb_tso_client_rpc_mode](/system-variables.md#tidb_tso_client_rpc_mode-从-v830-版本开始引入) 设定获取 TSO 的 RPC 模式。 From 96a911b8302224399bb2024e0e4d1155052ad58f Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 5 Aug 2024 15:51:31 +0800 Subject: [PATCH 016/103] move the release note for #46889 to system tables --- releases/release-8.3.0.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 0a7902cbde80..9ccd24780626 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -214,12 +214,6 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 -* 系统视图 `PROCESS LIST` 增加 `ROWS_AFFECTED` 字段 [#54486](https://github.com/pingcap/tidb/issues/54486) @[ekexium](https://github.com/ekexium) **tw@qiancai** - - TiDB 并不能显示当前 DML 语句已经处理的数据行数。在 v8.3.0 版本中,系统视图 `PROCESS LIST` 增加 `ROWS_AFFECTED` 字段,展示当前 DML 语句已经写入的数据行数。 - - 更多信息,请参考[用户文档](/information-schema/information-schema-processlist.md)。 - * 展示初始统计信息加载的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@lilin90** TiDB 在启动时要对基础统计信息进行加载,在表或者分区数量很多的情况下,这个过程要耗费一定时间,当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 为 `ON` 时,初始统计信息加载完成前 TiDB 不会对外提供服务。在这种情况下,用户需要对加载过程进行观测,从而能够预期服务开启时间。自 v8.3.0,TiDB 会在日志中分阶段打印初始统计信息加载的进度,让客户了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的监控 [API](/tidb-monitoring-api.md),能够在启动阶段随时获取初始统计信息的加载进度。 @@ -274,6 +268,8 @@ TiDB 版本:8.3.0 ### 系统表 +* 在系统表 [`INFORMATION_SCHEMA.PROCESSLIST`](/information-schema/information-schema-processlist.md) 和 [`INFORMATION_SCHEMA.CLUSTER_PROCESSLIST`](/information-schema/information-schema-processlist.md#cluster_processlist) 中新增 `ROWS_AFFECTED` 字段,用于显示当前 DML 语句已经写入的数据行数。[#46889](https://github.com/pingcap/tidb/issues/46889) @[lcwangchao](https://github.com/lcwangchao) **tw@qiancai** + ### 其他 ## 离线包变更 From 9fda5e6822f0cafde110d0e48b2ce0132d3728cc Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 5 Aug 2024 17:42:41 +0800 Subject: [PATCH 017/103] Apply suggestions from code review Co-authored-by: djshow832 --- releases/release-8.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9ccd24780626..8ccdd699ef11 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -42,7 +42,7 @@ TiDB 版本:8.3.0 稳定性与高可用 TiProxy 管理虚拟 IP**tw@Oreoxmt** - 在 TiProxy 内实现了对连接地址的管理,支持自动的地址切换,而不依赖外部平台或工具。这能够简化 TiProxy 的部署形式,降低了数据库接入层的复杂度。 + 在 TiProxy 内实现了对虚拟 IP 的管理,支持自动的虚拟 IP 切换,而不依赖外部平台或工具。这能够简化 TiProxy 的部署形式,降低了数据库接入层的复杂度。 @@ -149,9 +149,9 @@ TiDB 版本:8.3.0 * TiProxy 支持虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** - 在 v8.3.0 版本之前,使用主从模式保证高可用时,TiProxy 还需要额外的组件管理虚拟 IP 功能。在 v8.3.0 版本,TiProxy 支持虚拟 IP 管理功能。在主动模式下,当出现主从节点切换时,主节点自动绑定指定的虚拟 IP,保证客户端的正常访问。 + 在 v8.3.0 版本之前,使用主从模式保证高可用时,TiProxy 还需要额外的组件管理虚拟 IP 功能。在 v8.3.0 版本,TiProxy 支持虚拟 IP 管理功能。在主从模式下,当出现主从节点切换时,新的主节点自动绑定指定的虚拟 IP,保证客户端的正常访问。 - 通过设定 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP。如果未指定,则表示不启用该功能。 + 通过设定 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP,[`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。如果未指定,则表示不启用该功能。 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 From 1fc6f0e15c63ea2c01fd206f42f089c8082d96a6 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 6 Aug 2024 10:12:33 +0800 Subject: [PATCH 018/103] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> Co-authored-by: Hangjie Mo --- releases/release-8.3.0.md | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 8ccdd699ef11..33506d04bfa8 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -133,11 +133,13 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 -* 批量建库 (`CREATE DATABASE`) 的性能提升近 5 倍 [#54436 ](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** +* 批量建表 (`CREATE TABLE`) 的性能提升了 2.75 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - v8.0.0 引入了参数 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景提升建表的性能。从 v8.3.0 版本开始,该参数对批量建库的性能也有提升,相比 v8.2.0,性能有近 5 倍的提升。 + v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 2.75 倍的提升。 + + 从 v8.3.0 开始,该变量也优化了批量建库的性能,相比 v8.2.0,通过 10 个 session 并发提交建库的 DDL ,性能有 2.1 倍的提升。 - 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 ### 稳定性 @@ -195,7 +197,7 @@ TiDB 版本:8.3.0 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区建,如果查询条件不带分区建,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了参数 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你可以显式地创建全局索引,唯一键也不需要强制包含分区建,满足灵活的业务需求。同时基于全局索引也提升了不带分区建的索引的查询性能。 + 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你在创建不包含全部分区建的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区建的索引的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 ### 数据库管理 @@ -220,17 +222,21 @@ TiDB 版本:8.3.0 ### 安全 -* 增强 PD 日志脱敏 [#51306](https://github.com/pingcap/tidb/issues/51306) @[xhe](https://github.com/xhebox) +* 增强 PD 日志脱敏 [#51306](https://github.com/pingcap/tidb/issues/51306) @[xhe](https://github.com/xhebox) **tw@hfxsd** - TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强,要使用该功能,可以将 PD 配置项 `security.redact_info_log` 的值设置为 `marker`。 + TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 + + 在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强,要使用该功能,可以将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`。 - 更多信息,请参考[用户文档](/log-redaction.md)。 + 更多信息,请参考[用户文档](/log-redaction.md#pd-组件日志脱敏)。 - * 增强 TiKV 日志脱敏 [#17206](https://github.com/tikv/tikv/issues/17206) @[lucasliang](https://github.com/LykxSassinator) +* 增强 TiKV 日志脱敏 [#17206](https://github.com/tikv/tikv/issues/17206) @[lucasliang](https://github.com/LykxSassinator) **tw@hfxsd** - TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强,要使用该功能,可以将 TiKV 配置项 `security.redact_info_log` 的值设置为 `marker`。 + TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 + + 在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强,要使用该功能,可以将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`。 - 更多信息,请参考[用户文档](/log-redaction.md)。 + 更多信息,请参考[用户文档](/log-redaction.md#tikv-组件日志脱敏)。 ### 数据迁移 @@ -265,6 +271,18 @@ TiDB 版本:8.3.0 | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| | | | | | | | | +| [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | + + +### 配置文件参数 + +| 配置文件 | 配置项 | 修改类型 | 描述 | +|----------------|--------------------|------|------------------------------------| +| PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| | | | | ### 系统表 From 846705d0cdc00eeff107371ab2b3de19bee0a1fe Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 6 Aug 2024 14:23:54 +0800 Subject: [PATCH 019/103] Apply suggestions from code review --- releases/release-8.3.0.md | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 33506d04bfa8..749b7ff5bd9e 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -28,8 +28,8 @@ TiDB 版本:8.3.0 全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 - Projection 下推成为正式功能**tw@Oreoxmt** - Projection 下推能够尽可能将负载分散到存储节点,也可以减少节点间的数据传输,这能够降低一部分 SQL 的执行时间,提升数据库整体性能。 + 默认将 Projection 算子下推到存储引擎**tw@Oreoxmt** + Projection 算子下推可以将负载分散到存储节点,同时减少节点间的数据传输。这有助于降低部分 SQL 的执行时间,提升数据库的整体性能。 统计信息收集忽略不必要的列**tw@lilin90** @@ -41,8 +41,8 @@ TiDB 版本:8.3.0 稳定性与高可用 - TiProxy 管理虚拟 IP**tw@Oreoxmt** - 在 TiProxy 内实现了对虚拟 IP 的管理,支持自动的虚拟 IP 切换,而不依赖外部平台或工具。这能够简化 TiProxy 的部署形式,降低了数据库接入层的复杂度。 + TiProxy 内置虚拟 IP 管理**tw@Oreoxmt** + 在 v8.3.0 中,TiProxy 内置虚拟 IP 管理功能,支持自动切换虚拟 IP,而无需依赖外部平台或工具。这简化了 TiProxy 的部署,降低了数据库接入层的复杂度。 @@ -65,17 +65,15 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 -* Projection 下推功能正式发布 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** +* 优化器默认将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** - 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的传输的数据量,特别是对 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md),效果更加显著。在 v8.3.0 版本中,TiDB 正式发布 Projection 下推功能。在该功能启用时,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推至存储引擎。 - - 变量 [tidb_opt_projection_push_down](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 控制是否启用 Projection 下推功能。该变量的默认值将调整为 `ON`,表示默认启用该功能。 + 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的数据传输量。这在处理 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md)时尤其有效。从 v8.3.0 开始,TiDB 默认开启 `Projection` 算子下推功能,控制该功能的系统变量 [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 的默认值从 `OFF` 修改为 `ON`。启用该功能后,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推到存储引擎。 更多信息,请参考[用户文档](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入)。 -* 优化 KV 请求的批处理策略 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** +* 优化 KV 请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** - TiDB 读取数据需要通过 KV 请求进行。通过将 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 版本之前,TiDB 批处理策略的效率不高。在 v8.3.0 版本,TiDB 在现有的基础 KV 请求批处理策略基础上,引入更加高效的策略。通过新增的配置项 [`tikv-client.batch-policy·](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设定不同的批处理策略。 + TiDB 通过 KV 请求读取数据。将 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 @@ -85,9 +83,9 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_tso_client_rpc_mode-从-v830-版本开始引入)。 -* TiFlash 新增 Hashagg 聚合计算模式,提升高 NDV 数据的聚集计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** +* TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚集计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** - TiFlash 的 Hashagg 聚合计算中,第一阶段也会进行聚集计算。对于高 NDV 数据,这种模式效率较低。在 v8.3.0 版本中,TiFlash 引入多种 Hashagg 聚合计算模式,提升不同特征数据的聚集计算性能。通过新增的变量 [tiflash_hashagg_preaggregation_mode](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设定 Hashagg 聚合计算模式。 + 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct rows) 数据时,第一阶段的聚集计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算模式,以提升不同特征数据的聚集计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置 HashAgg 聚合计算模式。 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 @@ -149,11 +147,11 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 -* TiProxy 支持虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** +* TiProxy 内置虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** - 在 v8.3.0 版本之前,使用主从模式保证高可用时,TiProxy 还需要额外的组件管理虚拟 IP 功能。在 v8.3.0 版本,TiProxy 支持虚拟 IP 管理功能。在主从模式下,当出现主从节点切换时,新的主节点自动绑定指定的虚拟 IP,保证客户端的正常访问。 + 在 v8.3.0 之前,当使用主从模式以保证高可用性时,TiProxy 需要额外的组件管理虚拟 IP。从 v8.3.0 开始,TiProxy 内置虚拟 IP 管理功能。在主从模式下,当主节点发生切换时,新的主节点会自动绑定指定的虚拟 IP,确保客户端始终能通过虚拟 IP 连接到可用的 TiProxy。 - 通过设定 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP,[`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。如果未指定,则表示不启用该功能。 + 要启用虚拟 IP 管理功能,需要通过 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP 地址,以及 [`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。如果这两个配置项均未设置,则表示不启用该功能。 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 From 2d64871d3bf16d3f894907e85b706218dad0749e Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 6 Aug 2024 14:26:24 +0800 Subject: [PATCH 020/103] move TiProxy VIP from Reliability to Availability --- releases/release-8.3.0.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 749b7ff5bd9e..2e57a93a9e74 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -147,14 +147,6 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 -* TiProxy 内置虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** - - 在 v8.3.0 之前,当使用主从模式以保证高可用性时,TiProxy 需要额外的组件管理虚拟 IP。从 v8.3.0 开始,TiProxy 内置虚拟 IP 管理功能。在主从模式下,当主节点发生切换时,新的主节点会自动绑定指定的虚拟 IP,确保客户端始终能通过虚拟 IP 连接到可用的 TiProxy。 - - 要启用虚拟 IP 管理功能,需要通过 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP 地址,以及 [`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。如果这两个配置项均未设置,则表示不启用该功能。 - - 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 - * 新增以流式获取游标的结果集 (实验特性) [#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) **tw@lilin90** 当应用代码通过 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 获取结果集时,TiDB 通常会将完整结果保存至 TiDB ,再分批返回给客户端。如果结果集过大,可能会触发临时落盘。自 v8.3.0 开始,通过设置系统变量[`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) 为 `ON`,TiDB 不再把所有数据读取到 TiDB 节点,而是会随着客户端的读取逐步将数据传送至 TiDB 节点。在处理较大结果集时,这将会减少 TiDB 节点的内存使用,提升集群的稳定性。 @@ -179,6 +171,14 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 +* TiProxy 内置虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** + + 在 v8.3.0 之前,当使用主从模式以保证高可用性时,TiProxy 需要额外的组件管理虚拟 IP。从 v8.3.0 开始,TiProxy 内置虚拟 IP 管理功能。在主从模式下,当主节点发生切换时,新的主节点会自动绑定指定的虚拟 IP,确保客户端始终能通过虚拟 IP 连接到可用的 TiProxy。 + + 要启用虚拟 IP 管理功能,需要通过 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP 地址,以及 [`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。如果这两个配置项均未设置,则表示不启用该功能。 + + 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 + ### SQL 功能 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** From 8b48e799c93b30035b19232a64fa8ae70c6cd852 Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 6 Aug 2024 15:05:13 +0800 Subject: [PATCH 021/103] refine wording --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2e57a93a9e74..2c2f5adfcc23 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -83,9 +83,9 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_tso_client_rpc_mode-从-v830-版本开始引入)。 -* TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚集计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** +* TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚合计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** - 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct rows) 数据时,第一阶段的聚集计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算模式,以提升不同特征数据的聚集计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置 HashAgg 聚合计算模式。 + 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct rows) 数据时,第一阶段的聚合计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算模式,以提升不同特征数据的聚合计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置 HashAgg 聚合计算模式。 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 From a57592cde0bac87b3792ecb27a91a6d8825a43f2 Mon Sep 17 00:00:00 2001 From: D3Hunter Date: Tue, 6 Aug 2024 17:22:19 +0800 Subject: [PATCH 022/103] Update releases/release-8.3.0.md Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-8.3.0.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2c2f5adfcc23..d93438d34288 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -131,12 +131,9 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 -* 批量建表 (`CREATE TABLE`) 的性能提升了 2.75 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - +* 批量建表 (`CREATE TABLE`) 的性能提升了 2.75 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 10 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** + 除了 ADD INDEX 和 CREATE TABLE 之外的其他 General DDL 在批量执行时的性能相比 V8.2.0 均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 2.75 倍的提升。 - - 从 v8.3.0 开始,该变量也优化了批量建库的性能,相比 v8.2.0,通过 10 个 session 并发提交建库的 DDL ,性能有 2.1 倍的提升。 - 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 ### 稳定性 From 29348642eb0f7ef3b085ad4df5e519a7b76654dd Mon Sep 17 00:00:00 2001 From: Roger Song Date: Tue, 6 Aug 2024 18:14:21 +0800 Subject: [PATCH 023/103] update SPM enhancement --- releases/release-8.3.0.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index d93438d34288..b5386013e711 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -152,11 +152,10 @@ TiDB 版本:8.3.0 * SQL 绑定的增强 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** - 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定的,因此对业务中的重要 SQL 实施执行计划绑定,可以减少执行计划变差的机会,提升系统稳定性。为了满足客户创建大量 SQL 绑定的需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: + 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定不变的。对业务中的重要 SQL 实施执行计划绑定,可以减少执行计划变差的机会,提升系统稳定性。为了满足创建大量 SQL 绑定的场景需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: - - 用单条 SQL 从多个历史执行计划中创建 SQL 绑定 - - 从历史执行计划创建绑定不再受表数量的限制 - - SQL 绑定支持更多的优化器提示,能够更稳定重现原执行计划 + - 用单条 SQL 从多个历史执行计划中创建 SQL 绑定,提升创建绑定的效率。 + - SQL 绑定支持更多的优化器提示,并优化了对复杂执行计划的转换方法,使得 SQL 绑定能够更稳定地还原执行计划。 更多信息,请参考[用户文档](/sql-plan-management.md)。 From a12359d2c61df6b76fa3e6db4fcc09cc0d9fdc0a Mon Sep 17 00:00:00 2001 From: D3Hunter Date: Tue, 6 Aug 2024 18:29:56 +0800 Subject: [PATCH 024/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index b5386013e711..449e40687502 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -131,8 +131,8 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 -* 批量建表 (`CREATE TABLE`) 的性能提升了 2.75 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 10 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - 除了 ADD INDEX 和 CREATE TABLE 之外的其他 General DDL 在批量执行时的性能相比 V8.2.0 均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 +* 批量建表 (`CREATE TABLE`) 的性能提升了 2.75 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** + 除了 CREATE TABLE 之外的其他 General DDL 在批量执行时的性能相比 V8.2.0 均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 2.75 倍的提升。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 From f22facf93ad276fb27663ed500913723c72a7d5b Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 7 Aug 2024 11:34:51 +0800 Subject: [PATCH 025/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 449e40687502..f68084a2825f 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -304,7 +304,7 @@ TiDB 版本:8.3.0 - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 变量 `tidb_low_resolution_tso` 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - 优化 MemDB 实现,降低写事务延迟 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[you06](https://github.com/you06) **tw@hfxsd** - - GC 支持并发删除 Range 以提升处理效率 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[ekexium](https://github.com/ekexium) **tw@qiancai** + - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** + TiKV From 60e74aa9780a97323c6e90ceea47a6b3204f72f6 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Wed, 7 Aug 2024 11:42:12 +0800 Subject: [PATCH 026/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index f68084a2825f..0b35df046070 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -264,7 +264,7 @@ TiDB 版本:8.3.0 | [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句默认收集的列。将其设置为 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| | | | | -| | | | +| [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制 [GC(垃圾回收)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)] 和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间) 的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| | [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | From 4786eee0c6550ef1fcbad8a923fd1dfbc804458c Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 7 Aug 2024 14:48:31 +0800 Subject: [PATCH 027/103] compatibility changes: add tidb_opt_projection_push_down --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 0b35df046070..3593fa508cb1 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -266,7 +266,7 @@ TiDB 版本:8.3.0 | | | | | [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制 [GC(垃圾回收)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)] 和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间) 的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| | [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | - +| [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) | 修改 | 增加 GLOBAL 作用域,变量值可以持久化到集群。经进一步的测试,默认值从 `OFF` 修改为 `ON`,即默认允许优化器将 `Projection` 算子下推到 TiKV。| ### 配置文件参数 From 6ac059cac1f0e90d2df1649756c7bdc21dfc11a9 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 8 Aug 2024 08:54:27 +0800 Subject: [PATCH 028/103] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-8.3.0.md | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 3593fa508cb1..80b6e53de37e 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -99,18 +99,18 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/statistics.md#收集部分列的统计信息)。 -* 提升了一些系统表的查询性能 [#]() @[tangenta](https://github.com/tangenta) **tw@hfxsd** +* 提升了一些系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) **tw@hfxsd** 在之前的版本,当集群规模变大,表数量较多时,查询系统表性能较慢。 - 在 v8.0.0 优化了以下 4 个系统表的查询性能: + 在 v8.0.0 优化了以下 4 个系统表的查询性能: - INFORMATION_SCHEMA.TABLES - INFORMATION_SCHEMA.STATISTICS - INFORMATION_SCHEMA.KEY_COLUMN_USAGE - INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS - 在 v8.3.0 版本优化了以下系统表的查询性能,相比 v8.2.0 性能有数倍的提升: + 在 v8.3.0 版本优化了以下系统表的查询性能,相比 v8.2.0 性能有数倍的提升: - INFORMATION_SCHEMA.CHECK_CONSTRAINTS - INFORMATION_SCHEMA.COLUMNS @@ -123,17 +123,15 @@ TiDB 版本:8.3.0 - INFORMATION_SCHEMA.TIDB_INDEX_USAGE - INFORMATION_SCHEMA.VIEWS - 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 - * 分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,支持分区裁剪,提升查询性能 [#54209](https://github.com/pingcap/tidb/pull/54209) @[mjonss](https://github.com/mjonss) **tw@hfxsd** 之前的版本,当分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,不支持分区裁剪,导致查询性能较差。从 v8.3.0 开始,当分区表达式使用该函数时,支持分区裁剪,提升了查询性能。 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 -* 批量建表 (`CREATE TABLE`) 的性能提升了 2.75 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** +* 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** 除了 CREATE TABLE 之外的其他 General DDL 在批量执行时的性能相比 V8.2.0 均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 - v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 2.75 倍的提升。 + v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 1.4 倍的提升。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 ### 稳定性 @@ -183,17 +181,21 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 -* 支持 `Shared Lock` 升级为 `Exclusive Lock` [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** +* 支持 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - TiDB 暂不支持 `Shared Lock`. 在 v8.3.0 版本中,TiDB 支持将 `Shared Lock` 升级为 `Exclusive Lock`,实现对 `Shared Lock` 语法的支持。通过新增的变量 [tidb_enable_shared_lock_upgrade](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) 控制是否启用该功能。 + TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。通过新增的变量 [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) 控制是否启用该功能。 + + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入)。 + -* 分区表支持全局索引 (Global Index)(实验特性) [#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** +* 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** - 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区建,如果查询条件不带分区建,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了参数 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 + 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区键,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你在创建不包含全部分区建的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区建的索引的查询性能。 + 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你在创建不包含全部分区键的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的索引的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 + ### 数据库管理 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -302,7 +304,7 @@ TiDB 版本:8.3.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - - 变量 `tidb_low_resolution_tso` 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** + - 变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - 优化 MemDB 实现,降低写事务延迟 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[you06](https://github.com/you06) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** From acc1e1477532673f5f76c85a2a941ffa7f733002 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 8 Aug 2024 11:09:04 +0800 Subject: [PATCH 029/103] Apply suggestions from code review --- releases/release-8.3.0.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 80b6e53de37e..9f3105af89f8 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -130,8 +130,11 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 * 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - 除了 CREATE TABLE 之外的其他 General DDL 在批量执行时的性能相比 V8.2.0 均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 + v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 1.4 倍的提升。 + + 在 v8.3.0 中,逻辑 DDL (General DDL) 在批量执行时的性能相比 v8.2.0 也均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 ### 稳定性 @@ -186,7 +189,6 @@ TiDB 版本:8.3.0 TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。通过新增的变量 [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) 控制是否启用该功能。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入)。 - * 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** @@ -236,11 +238,13 @@ TiDB 版本:8.3.0 ### 数据迁移 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) +* TiCDC 支持通过双向复制模式 (Bi-Directional Replication, BDR) 同步 DDL 语句 (GA) [#10301](https://github.com/pingcap/tiflow/issues/10301) [#48519](https://github.com/pingcap/tidb/issues/48519) @okJiang @asddongmen **tw@hfxsd** - 更多信息,请参考[用户文档](链接)。 + 从 v7.6.0 开始,TiCDC 支持在配置了双向复制的情况下同步 DDL 语句。以前,TiCDC 不支持复制 DDL 语句,因此要使用 TiCDC 双向复制必须将 DDL 语句分别应用到两个 TiDB 集群。有了该特性,TiCDC 可以为一个集群分配 `PRIMARY` BDR role,并将该集群的 DDL 语句复制到下游集群。 + + 在 v8.3.0,该功能成为正式功能 (GA)。 + + 更多信息,请参考[用户文档](/ticdc-bidirectional-replication.md)。 ## 兼容性变更 @@ -304,8 +308,8 @@ TiDB 版本:8.3.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - - 变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - - 优化 MemDB 实现,降低写事务延迟 [#xxx](https://github.com/pingcap/tidb/issues/xxx) @[you06](https://github.com/you06) **tw@hfxsd** + - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** + - 优化 MemDB 实现,降低写事务延迟 [#55287](https://github.com/pingcap/tidb/issues/55287) @[you06](https://github.com/you06) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** + TiKV From 5c6076d988d65e00c2c5d2268d742a7ffe0ba1c6 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 8 Aug 2024 11:38:59 +0800 Subject: [PATCH 030/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9f3105af89f8..362f58909abe 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -278,10 +278,10 @@ TiDB 版本:8.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | |----------------|--------------------|------|------------------------------------| -| PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用单角形引号 `‹›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | | | | | ### 系统表 From 70a2fe676db85b9d7c8d58438fd2340d52ba2059 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 8 Aug 2024 14:49:52 +0800 Subject: [PATCH 031/103] remove notes for getting TSO asynchronously as it is now planned for the next release --- releases/release-8.3.0.md | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 362f58909abe..2aba8e8a08e3 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -23,7 +23,7 @@ TiDB 版本:8.3.0 - 可扩展性和性能 + 可扩展性和性能 分区表全局索引(实验特性) **tw@hfxsd** 全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 @@ -35,10 +35,6 @@ TiDB 版本:8.3.0 统计信息收集忽略不必要的列**tw@lilin90** 在保证优化器能够获取到必要信息的前提下,加快了统计信息收集的速度,提升统计信息的时效性,进而保证最优的执行计划的选择,提升集群性能。同时也降低的系统开销,改善资源利用率。 - - 读写性能的细粒度优化**tw@qiancai** - 通过优化 KV 请求的策略,增加获取 TSO 的模式等多重手段,进一步提升 TiDB 的读写性能,降低业务的执行时间,改善延迟。 - 稳定性与高可用 TiProxy 内置虚拟 IP 管理**tw@Oreoxmt** @@ -77,12 +73,6 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 -* 增加获取 TSO 的 RPC 模式,降低获取 TSO 的延迟 [#54960](https://github.com/pingcap/tidb/issues/54960) @[MyonKeminta](https://github.com/MyonKeminta) **tw@qiancai** - - TiDB 在向 PD 请求 TSO 时,会汇总一定时间段的请求并以同步的方式进行批处理以减少 RPC 请求数量、降低 PD 负载。对于延迟敏感的场景,这种模式的性能并不理想。在 v8.3.0 版本中,TiDB 新增 TSO 请求的异步批处理模式,并提供不同的并发能力,以增加相应的 PD 负载为代价,降低获取 TSO 的延迟。通过新增的变量 [tidb_tso_client_rpc_mode](/system-variables.md#tidb_tso_client_rpc_mode-从-v830-版本开始引入) 设定获取 TSO 的 RPC 模式。 - - 更多信息,请参考[用户文档](/system-variables.md#tidb_tso_client_rpc_mode-从-v830-版本开始引入)。 - * TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚合计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct rows) 数据时,第一阶段的聚合计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算模式,以提升不同特征数据的聚合计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置 HashAgg 聚合计算模式。 From 62f1589954a158962a98e3d9482f488afb0380dd Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 8 Aug 2024 18:04:06 +0800 Subject: [PATCH 032/103] Apply suggestions from code review --- releases/release-8.3.0.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2aba8e8a08e3..296a45abad1f 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -176,9 +176,9 @@ TiDB 版本:8.3.0 * 支持 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。通过新增的变量 [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) 控制是否启用该功能。 + TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。通过新增的变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 - 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入)。 + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入)。 * 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** @@ -299,7 +299,6 @@ TiDB 版本:8.3.0 - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - - 优化 MemDB 实现,降低写事务延迟 [#55287](https://github.com/pingcap/tidb/issues/55287) @[you06](https://github.com/you06) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** + TiKV From eeb617ad7366ea9e01854556d17a29388479e5a5 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Fri, 9 Aug 2024 10:23:11 +0800 Subject: [PATCH 033/103] Apply suggestions from code review --- releases/release-8.3.0.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 296a45abad1f..5ce2bc3caf8d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -89,7 +89,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/statistics.md#收集部分列的统计信息)。 -* 提升了一些系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) **tw@hfxsd** +* 提升部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) **tw@hfxsd** 在之前的版本,当集群规模变大,表数量较多时,查询系统表性能较慢。 @@ -115,15 +115,15 @@ TiDB 版本:8.3.0 * 分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,支持分区裁剪,提升查询性能 [#54209](https://github.com/pingcap/tidb/pull/54209) @[mjonss](https://github.com/mjonss) **tw@hfxsd** - 之前的版本,当分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,不支持分区裁剪,导致查询性能较差。从 v8.3.0 开始,当分区表达式使用该函数时,支持分区裁剪,提升了查询性能。 + 之前的版本中,当分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,不支持分区裁剪,导致查询性能较差。从 v8.3.0 开始,当分区表达式使用该函数时,支持分区裁剪,提升了查询性能。 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 -* 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** +* 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列 (`ADD COLUMN`) 的性能提升了 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 1.4 倍的提升。 - 在 v8.3.0 中,逻辑 DDL (General DDL) 在批量执行时的性能相比 v8.2.0 也均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 + 在 v8.3.0 中,逻辑 DDL (General DDL) 在批量执行时的性能相比 v8.2.0 也均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列 (`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 @@ -176,7 +176,7 @@ TiDB 版本:8.3.0 * 支持 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。通过新增的变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 + TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。你可以使用系统变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入)。 @@ -214,7 +214,7 @@ TiDB 版本:8.3.0 TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 - 在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强,要使用该功能,可以将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`。 + 在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强。要使用该功能,可以将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`。 更多信息,请参考[用户文档](/log-redaction.md#pd-组件日志脱敏)。 @@ -222,7 +222,7 @@ TiDB 版本:8.3.0 TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 - 在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强,要使用该功能,可以将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`。 + 在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强。要使用该功能,可以将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`。 更多信息,请参考[用户文档](/log-redaction.md#tikv-组件日志脱敏)。 From ec3c7549b654abe616992f01c54e0efe0fac956c Mon Sep 17 00:00:00 2001 From: lilin90 Date: Fri, 9 Aug 2024 10:23:11 +0800 Subject: [PATCH 034/103] Refine wording and format --- releases/release-8.3.0.md | 70 +++++++++++++++++++++------------------ 1 file changed, 37 insertions(+), 33 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 296a45abad1f..753949f38c47 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -33,7 +33,7 @@ TiDB 版本:8.3.0 统计信息收集忽略不必要的列**tw@lilin90** - 在保证优化器能够获取到必要信息的前提下,加快了统计信息收集的速度,提升统计信息的时效性,进而保证最优的执行计划的选择,提升集群性能。同时也降低的系统开销,改善资源利用率。 + 在保证优化器能够获取到必要信息的前提下,加快了统计信息收集的速度,提升统计信息的时效性,进而保证选择最优的执行计划,提升集群性能。同时也降低了系统开销,改善了资源利用率。 稳定性与高可用 @@ -66,26 +66,26 @@ TiDB 版本:8.3.0 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的数据传输量。这在处理 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md)时尤其有效。从 v8.3.0 开始,TiDB 默认开启 `Projection` 算子下推功能,控制该功能的系统变量 [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 的默认值从 `OFF` 修改为 `ON`。启用该功能后,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推到存储引擎。 更多信息,请参考[用户文档](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入)。 - + * 优化 KV 请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** TiDB 通过 KV 请求读取数据。将 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 - + 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 - + * TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚合计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct rows) 数据时,第一阶段的聚合计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算模式,以提升不同特征数据的聚合计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置 HashAgg 聚合计算模式。 - + 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 * 统计信息收集忽略不必要的列 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) **tw@lilin90** - 当优化器生成执行计划时,只需要部分列的统计信息,例如过滤条件上的列,连接键上的列,聚合目标用到的列。从 v8.3.0 起,TiDB 会持续观测 SQL 语句对列的使用历史,默认只收集有索引的列,以及被观测到的有必要收集统计信息的列。这将会提升统计信息的收集速度,避免不必要的资源浪费。 + 当优化器生成执行计划时,只需要部分列的统计信息,例如过滤条件上的列、连接键上的列、聚合目标用到的列。从 v8.3.0 起,TiDB 会持续观测 SQL 语句对列的使用历史,默认只收集有索引的列,以及被观测到的有必要收集统计信息的列。这将会提升统计信息的收集速度,避免不必要的资源浪费。 + + 从 v8.3.0 之前的版本升级到 v8.3.0 或更高版本时,TiDB 默认保留原有行为,即收集所有列的统计信息。如果要启用该功能,需要手动将系统变量 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 设置为 `PREDICATE`,新部署的集群默认开启该功能。 - 从旧版本升级到 v8.3.0 或更高版本的用户,默认保留原有行为,收集所有列的统计信息,需要手工设置变量 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 为 `PREDICATE` 来启用,新部署默认开启。 - - 对于随机查询比较多的偏分析型系统,可以设置 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 为 `ALL` 收集所有列的统计信息,保证随机查询的性能。其余类型的系统推荐保留 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 为 `PREDICATE` 只收集必要的列。 + 对于随机查询比较多的偏分析型系统,可以将系统变量 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 设置为 `ALL` 来收集所有列的统计信息,以保证随机查询的性能。对于其余类型的系统,推荐保留 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) 的默认设置 `PREDICATE`,只收集必要列的统计信息。 更多信息,请参考[用户文档](/statistics.md#收集部分列的统计信息)。 @@ -94,7 +94,7 @@ TiDB 版本:8.3.0 在之前的版本,当集群规模变大,表数量较多时,查询系统表性能较慢。 在 v8.0.0 优化了以下 4 个系统表的查询性能: - + - INFORMATION_SCHEMA.TABLES - INFORMATION_SCHEMA.STATISTICS - INFORMATION_SCHEMA.KEY_COLUMN_USAGE @@ -118,14 +118,14 @@ TiDB 版本:8.3.0 之前的版本,当分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,不支持分区裁剪,导致查询性能较差。从 v8.3.0 开始,当分区表达式使用该函数时,支持分区裁剪,提升了查询性能。 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 - + * 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列(`ADD COLUMN`) 性能提升 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 1.4 倍的提升。 - + 在 v8.3.0 中,逻辑 DDL (General DDL) 在批量执行时的性能相比 v8.2.0 也均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列(`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 - - 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 + + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 ### 稳定性 @@ -135,21 +135,23 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 -* 新增以流式获取游标的结果集 (实验特性) [#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) **tw@lilin90** +* 支持以流式获取游标的结果集(实验特性)[#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) **tw@lilin90** - 当应用代码通过 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 获取结果集时,TiDB 通常会将完整结果保存至 TiDB ,再分批返回给客户端。如果结果集过大,可能会触发临时落盘。自 v8.3.0 开始,通过设置系统变量[`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) 为 `ON`,TiDB 不再把所有数据读取到 TiDB 节点,而是会随着客户端的读取逐步将数据传送至 TiDB 节点。在处理较大结果集时,这将会减少 TiDB 节点的内存使用,提升集群的稳定性。 + 当应用代码通过 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 获取结果集时,TiDB 通常会先将完整结果保存至 TiDB 内存,再分批返回给客户端。如果结果集过大,可能会触发落盘临时将结果写入硬盘。 + + 从 v8.3.0 开始,如果将系统变量 [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) 设置为 `ON`,TiDB 不再把所有数据读取到 TiDB 节点,而是会随着客户端的读取逐步将数据读到 TiDB 节点。在处理较大的结果集时,这将减少 TiDB 节点的内存使用,提升集群的稳定性。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入)。 -* SQL 绑定的增强 [#issue号](链接) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** +* 增强 SQL 执行计划绑定 [#51347](https://github.com/pingcap/tidb/issues/51347) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** - 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定不变的。对业务中的重要 SQL 实施执行计划绑定,可以减少执行计划变差的机会,提升系统稳定性。为了满足创建大量 SQL 绑定的场景需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: + 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定不变的。对业务中的重要 SQL 实施执行计划绑定,可以降低执行计划变差的几率,提升系统稳定性。为了满足创建大量 SQL 执行计划绑定的场景需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: - - 用单条 SQL 从多个历史执行计划中创建 SQL 绑定,提升创建绑定的效率。 - - SQL 绑定支持更多的优化器提示,并优化了对复杂执行计划的转换方法,使得 SQL 绑定能够更稳定地还原执行计划。 + - 用单条 SQL 语句从多个历史执行计划中创建 SQL 执行计划绑定,提升创建绑定的效率。 + - SQL 执行计划绑定支持更多的优化器提示,并优化了对复杂执行计划的转换方法,使得绑定能够更稳定地还原执行计划。 更多信息,请参考[用户文档](/sql-plan-management.md)。 - + ### 高可用 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -161,9 +163,9 @@ TiDB 版本:8.3.0 * TiProxy 内置虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** 在 v8.3.0 之前,当使用主从模式以保证高可用性时,TiProxy 需要额外的组件管理虚拟 IP。从 v8.3.0 开始,TiProxy 内置虚拟 IP 管理功能。在主从模式下,当主节点发生切换时,新的主节点会自动绑定指定的虚拟 IP,确保客户端始终能通过虚拟 IP 连接到可用的 TiProxy。 - + 要启用虚拟 IP 管理功能,需要通过 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP 地址,以及 [`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。如果这两个配置项均未设置,则表示不启用该功能。 - + 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 ### SQL 功能 @@ -177,17 +179,17 @@ TiDB 版本:8.3.0 * 支持 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。通过新增的变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 - + 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入)。 * 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区键,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - + 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你在创建不包含全部分区键的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的索引的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 - + ### 数据库管理 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -204,16 +206,18 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](链接)。 -* 展示初始统计信息加载的进度 [#issue号](链接) @[hawkingrei](https://github.com/hawkingrei) **tw@lilin90** +* 展示初始统计信息的加载进度 [#53564](https://github.com/pingcap/tidb/issues/53564) @[hawkingrei](https://github.com/hawkingrei) **tw@lilin90** + + TiDB 在启动时要加载基础统计信息,在表或者分区数量很多的情况下,该过程要耗费一定时间。当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 设置为 `ON` 时,初始统计信息加载完成前,TiDB 不会对外提供服务。在这种情况下,你需要对加载过程进行观测,从而预期服务开启时间。 + + 从 v8.3.0 开始,TiDB 会在日志中分阶段打印初始统计信息的加载进度,以便了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的监控 [API](/tidb-monitoring-api.md),以便能够在启动阶段随时获取初始统计信息的加载进度。 - TiDB 在启动时要对基础统计信息进行加载,在表或者分区数量很多的情况下,这个过程要耗费一定时间,当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 为 `ON` 时,初始统计信息加载完成前 TiDB 不会对外提供服务。在这种情况下,用户需要对加载过程进行观测,从而能够预期服务开启时间。自 v8.3.0,TiDB 会在日志中分阶段打印初始统计信息加载的进度,让客户了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的监控 [API](/tidb-monitoring-api.md),能够在启动阶段随时获取初始统计信息的加载进度。 - ### 安全 * 增强 PD 日志脱敏 [#51306](https://github.com/pingcap/tidb/issues/51306) @[xhe](https://github.com/xhebox) **tw@hfxsd** TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 - + 在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强,要使用该功能,可以将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`。 更多信息,请参考[用户文档](/log-redaction.md#pd-组件日志脱敏)。 @@ -221,7 +225,7 @@ TiDB 版本:8.3.0 * 增强 TiKV 日志脱敏 [#17206](https://github.com/tikv/tikv/issues/17206) @[lucasliang](https://github.com/LykxSassinator) **tw@hfxsd** TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 - + 在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强,要使用该功能,可以将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`。 更多信息,请参考[用户文档](/log-redaction.md#tikv-组件日志脱敏)。 @@ -231,9 +235,9 @@ TiDB 版本:8.3.0 * TiCDC 支持通过双向复制模式 (Bi-Directional Replication, BDR) 同步 DDL 语句 (GA) [#10301](https://github.com/pingcap/tiflow/issues/10301) [#48519](https://github.com/pingcap/tidb/issues/48519) @okJiang @asddongmen **tw@hfxsd** 从 v7.6.0 开始,TiCDC 支持在配置了双向复制的情况下同步 DDL 语句。以前,TiCDC 不支持复制 DDL 语句,因此要使用 TiCDC 双向复制必须将 DDL 语句分别应用到两个 TiDB 集群。有了该特性,TiCDC 可以为一个集群分配 `PRIMARY` BDR role,并将该集群的 DDL 语句复制到下游集群。 - + 在 v8.3.0,该功能成为正式功能 (GA)。 - + 更多信息,请参考[用户文档](/ticdc-bidirectional-replication.md)。 ## 兼容性变更 From 5770662b20ccc0a838e45259c8ae7876bcb45454 Mon Sep 17 00:00:00 2001 From: lilin90 Date: Fri, 9 Aug 2024 16:54:48 +0800 Subject: [PATCH 035/103] Update issue link and wording --- releases/release-8.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 7e6951c804de..b5d3edab55d4 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -143,7 +143,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入)。 -* 增强 SQL 执行计划绑定 [#51347](https://github.com/pingcap/tidb/issues/51347) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** +* 增强 SQL 执行计划绑定 [#55280](https://github.com/pingcap/tidb/issues/55280) [#issue2](to-be-added) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定不变的。对业务中的重要 SQL 实施执行计划绑定,可以降低执行计划变差的几率,提升系统稳定性。为了满足创建大量 SQL 执行计划绑定的场景需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: @@ -208,9 +208,9 @@ TiDB 版本:8.3.0 * 展示初始统计信息的加载进度 [#53564](https://github.com/pingcap/tidb/issues/53564) @[hawkingrei](https://github.com/hawkingrei) **tw@lilin90** - TiDB 在启动时要加载基础统计信息,在表或者分区数量很多的情况下,该过程要耗费一定时间。当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 设置为 `ON` 时,初始统计信息加载完成前,TiDB 不会对外提供服务。在这种情况下,你需要对加载过程进行观测,从而预期服务开启时间。 + TiDB 在启动时要加载基础统计信息,在表或者分区数量很多的情况下,该过程要耗费一定时间。当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 设置为 `ON` 时,初始统计信息加载完成前,TiDB 不会对外提供服务。在这种情况下,你需要对加载过程进行观测,从而预估服务开启时间。 - 从 v8.3.0 开始,TiDB 会在日志中分阶段打印初始统计信息的加载进度,以便了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的监控 [API](/tidb-monitoring-api.md),以便能够在启动阶段随时获取初始统计信息的加载进度。 + 从 v8.3.0 开始,TiDB 会在日志中分阶段打印初始统计信息的加载进度,以便了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的[监控 API](/tidb-monitoring-api.md),以便能够在启动阶段随时获取初始统计信息的加载进度。 ### 安全 From addbffda6e13f793978c929bd27b15c45a29806d Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 9 Aug 2024 17:19:42 +0800 Subject: [PATCH 036/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index b5d3edab55d4..10d669986b6d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -324,7 +324,9 @@ TiDB 版本:8.3.0 + Backup & Restore (BR) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回报错 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** + - 在通过备份文件开始恢复操作之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** + - 在 TiKV 下载 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC From a294b367068336fa11423acaf3861cc56447d726 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 9 Aug 2024 17:30:24 +0800 Subject: [PATCH 037/103] Update releases/release-8.3.0.md Co-authored-by: BornChanger <97348524+BornChanger@users.noreply.github.com> --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 10d669986b6d..39b48cdc232b 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -325,7 +325,7 @@ TiDB 版本:8.3.0 + Backup & Restore (BR) - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回报错 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - - 在通过备份文件开始恢复操作之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** + - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - 在 TiKV 下载 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - note [#issue](链接) @[贡献者 GitHub ID](链接) From 053b9bdf25c791ee234396cee6b8777725fb9671 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Fri, 9 Aug 2024 17:43:27 +0800 Subject: [PATCH 038/103] Apply suggestions from code review Co-authored-by: Hangjie Mo --- releases/release-8.3.0.md | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 39b48cdc232b..0b63ea379ced 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -55,12 +55,6 @@ TiDB 版本:8.3.0 ### 性能 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 优化器默认将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的数据传输量。这在处理 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md)时尤其有效。从 v8.3.0 开始,TiDB 默认开启 `Projection` 算子下推功能,控制该功能的系统变量 [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 的默认值从 `OFF` 修改为 `ON`。启用该功能后,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推到存储引擎。 @@ -129,12 +123,6 @@ TiDB 版本:8.3.0 ### 稳定性 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 支持以流式获取游标的结果集(实验特性)[#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) **tw@lilin90** 当应用代码通过 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 获取结果集时,TiDB 通常会先将完整结果保存至 TiDB 内存,再分批返回给客户端。如果结果集过大,可能会触发落盘临时将结果写入硬盘。 @@ -170,12 +158,6 @@ TiDB 版本:8.3.0 ### SQL 功能 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 支持 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。你可以使用系统变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 @@ -186,7 +168,7 @@ TiDB 版本:8.3.0 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区键,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你在创建不包含全部分区键的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的索引的查询性能。 + 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你在创建不包含全部分区键的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 @@ -200,12 +182,6 @@ TiDB 版本:8.3.0 ### 可观测性 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * 展示初始统计信息的加载进度 [#53564](https://github.com/pingcap/tidb/issues/53564) @[hawkingrei](https://github.com/hawkingrei) **tw@lilin90** TiDB 在启动时要加载基础统计信息,在表或者分区数量很多的情况下,该过程要耗费一定时间。当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 设置为 `ON` 时,初始统计信息加载完成前,TiDB 不会对外提供服务。在这种情况下,你需要对加载过程进行观测,从而预估服务开启时间。 From ba9c9822d8b0504ef5a677aa8bb9e6309ccb4565 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 9 Aug 2024 17:58:53 +0800 Subject: [PATCH 039/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 0b63ea379ced..812c500308c3 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -301,8 +301,8 @@ TiDB 版本:8.3.0 + Backup & Restore (BR) - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回报错 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - - 在 TiKV 下载 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** + - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** + - 在 TiKV 下载 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC From fcfcafb8742ac592b396651d7a8b7fca3ba6ac45 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 12 Aug 2024 11:09:05 +0800 Subject: [PATCH 040/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 812c500308c3..6e57dbab45a2 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -300,9 +300,9 @@ TiDB 版本:8.3.0 + Backup & Restore (BR) - - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回报错 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - - 在 TiKV 下载 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回报错 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** + - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** + - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** + - 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - note [#issue](链接) @[贡献者 GitHub ID](链接) + TiCDC From 7e40a94ebd2f38ebc93e40b6d4b312e4764611be Mon Sep 17 00:00:00 2001 From: joey-yez <104608045+joey-yez@users.noreply.github.com> Date: Mon, 12 Aug 2024 11:13:11 +0800 Subject: [PATCH 041/103] Update releases/release-8.3.0.md Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 6e57dbab45a2..5806b1e5010d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -256,7 +256,7 @@ TiDB 版本:8.3.0 ### 系统表 -* 在系统表 [`INFORMATION_SCHEMA.PROCESSLIST`](/information-schema/information-schema-processlist.md) 和 [`INFORMATION_SCHEMA.CLUSTER_PROCESSLIST`](/information-schema/information-schema-processlist.md#cluster_processlist) 中新增 `ROWS_AFFECTED` 字段,用于显示当前 DML 语句已经写入的数据行数。[#46889](https://github.com/pingcap/tidb/issues/46889) @[lcwangchao](https://github.com/lcwangchao) **tw@qiancai** +* 在系统表 [`INFORMATION_SCHEMA.PROCESSLIST`](/information-schema/information-schema-processlist.md) 和 [`INFORMATION_SCHEMA.CLUSTER_PROCESSLIST`](/information-schema/information-schema-processlist.md#cluster_processlist) 中新增 `ROWS_AFFECTED` 字段,用于显示 DML 语句当前影响的数据行数。[#46889](https://github.com/pingcap/tidb/issues/46889) @[lcwangchao](https://github.com/lcwangchao) **tw@qiancai** ### 其他 From 6e45f9eddd59fc3d13a6de6eef84b706fadeeaba Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 12 Aug 2024 11:33:47 +0800 Subject: [PATCH 042/103] Compatibility changes: add tiflash_hashagg_preaggregation_mode and tikv-client.batch-policy --- releases/release-8.3.0.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 5806b1e5010d..60a5069f5065 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -239,6 +239,7 @@ TiDB 版本:8.3.0 |--------|------------------------------|------| | [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句默认收集的列。将其设置为 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| +| [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 的第一阶段采用哪种预聚合策略。 | | | | | | [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制 [GC(垃圾回收)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)] 和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间) 的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| | [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | @@ -248,6 +249,7 @@ TiDB 版本:8.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | |----------------|--------------------|------|------------------------------------| +| TiDB | [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) | 新增 | 控制 TiDB 向 TiKV 发送请求时的批处理策略。 | | PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | From a62515e6064cf771743217cc9562dbec44f11885 Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Mon, 12 Aug 2024 12:00:27 +0800 Subject: [PATCH 043/103] Apply suggestions from code review Co-authored-by: xixirangrang --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 60a5069f5065..b42ba64c2cb3 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -32,7 +32,7 @@ TiDB 版本:8.3.0 Projection 算子下推可以将负载分散到存储节点,同时减少节点间的数据传输。这有助于降低部分 SQL 的执行时间,提升数据库的整体性能。 - 统计信息收集忽略不必要的列**tw@lilin90** + 统计信息收集忽略不必要的列**tw@lilin90** 在保证优化器能够获取到必要信息的前提下,加快了统计信息收集的速度,提升统计信息的时效性,进而保证选择最优的执行计划,提升集群性能。同时也降低了系统开销,改善了资源利用率。 @@ -138,7 +138,7 @@ TiDB 版本:8.3.0 - 用单条 SQL 语句从多个历史执行计划中创建 SQL 执行计划绑定,提升创建绑定的效率。 - SQL 执行计划绑定支持更多的优化器提示,并优化了对复杂执行计划的转换方法,使得绑定能够更稳定地还原执行计划。 - 更多信息,请参考[用户文档](/sql-plan-management.md)。 + 更多信息,请参考[用户文档](/sql-plan-management.md)。 ### 高可用 From 3418e69dbf402e94def95aae1f2b63b3d48fcab8 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 12 Aug 2024 15:04:57 +0800 Subject: [PATCH 044/103] Apply suggestions from code review Co-authored-by: lucasliang --- releases/release-8.3.0.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index b42ba64c2cb3..88ff8a45997b 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -251,7 +251,12 @@ TiDB 版本:8.3.0 |----------------|--------------------|------|------------------------------------| | TiDB | [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) | 新增 | 控制 TiDB 向 TiKV 发送请求时的批处理策略。 | | PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| PD | [`schedule.max-merge-region-keys`](/pd-configuration-file.md#max-merge-region-keys) | 修改 | 将默认值从 `200000` 修改为 `540000`。 | +| PD | [`schedule.max-merge-region-size`](/pd-configuration-file.md#max-merge-region-size) | 修改 | 将默认值从 `20` MiB 修改为 `54` MiB。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 将默认值从 `96`MiB 修改为 `256`MiB。 | +| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 将默认值从 `144`MiB 修改为 `384`MiB。 | +| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 将默认值从 `144`MiB 修改为 `384`MiB。 | | TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | | | | | From ac9930cae1fcb65edfbafd807e13c749bb556429 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 12 Aug 2024 15:10:52 +0800 Subject: [PATCH 045/103] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-8.3.0.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 88ff8a45997b..dce64a40bc69 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -240,9 +240,11 @@ TiDB 版本:8.3.0 | [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句默认收集的列。将其设置为 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| | [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 的第一阶段采用哪种预聚合策略。 | -| | | | +| [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 之前该变量仅支持 `GLOBAL` 级别设置。从 v8.3.0 开始,该变量也支持 `SESSION`级别设置。 | +| [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 之前该变量仅支持 `GLOBAL` 级别设置。从 v8.3.0 开始,该变量也支持 `SESSION` 级别设置。 | | [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制 [GC(垃圾回收)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)] 和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间) 的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| | [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | +| [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) | 修改 | 增加 GLOBAL 作用域。| | [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) | 修改 | 增加 GLOBAL 作用域,变量值可以持久化到集群。经进一步的测试,默认值从 `OFF` 修改为 `ON`,即默认允许优化器将 `Projection` 算子下推到 TiKV。| ### 配置文件参数 @@ -259,7 +261,8 @@ TiDB 版本:8.3.0 | TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 将默认值从 `144`MiB 修改为 `384`MiB。 | | TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| | | | | +| BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) +) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | ### 系统表 From 29e1a8280ecb1b66923ede9a277425adfa8cdfad Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 12 Aug 2024 16:48:09 +0800 Subject: [PATCH 046/103] Apply suggestions from code review --- releases/release-8.3.0.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index dce64a40bc69..ec8b53b182bc 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -142,12 +142,6 @@ TiDB 版本:8.3.0 ### 高可用 -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - * TiProxy 内置虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** 在 v8.3.0 之前,当使用主从模式以保证高可用性时,TiProxy 需要额外的组件管理虚拟 IP。从 v8.3.0 开始,TiProxy 内置虚拟 IP 管理功能。在主从模式下,当主节点发生切换时,新的主节点会自动绑定指定的虚拟 IP,确保客户端始终能通过虚拟 IP 连接到可用的 TiProxy。 @@ -158,7 +152,7 @@ TiDB 版本:8.3.0 ### SQL 功能 -* 支持 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** +* 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。你可以使用系统变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 @@ -168,7 +162,7 @@ TiDB 版本:8.3.0 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区键,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - 从 v8.3.0 开始,全局索引作为实验特性正式发布了。你在创建不包含全部分区键的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 + 从 v8.3.0 开始,全局索引作为实验特性正式发布。你在创建不包含全部分区键的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 From 90ea88f1f69120a55ff6729a5436a859c0876051 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 12 Aug 2024 17:58:52 +0800 Subject: [PATCH 047/103] Apply suggestions from code review --- releases/release-8.3.0.md | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index ec8b53b182bc..5ce7e14c4347 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -121,6 +121,14 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 +* 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** + + 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区键,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 + + 从 v8.3.0 开始,全局索引作为实验特性正式发布。你可通过关键字 `Global` 为分区表显式创建一个 Global Index,从而去除分区表唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 + + 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 + ### 稳定性 * 支持以流式获取游标的结果集(实验特性)[#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) **tw@lilin90** @@ -158,14 +166,6 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入)。 -* 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** - - 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区键,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - - 从 v8.3.0 开始,全局索引作为实验特性正式发布。你在创建不包含全部分区键的唯一键时,TiDB 会隐式的创建全局索引,去除了唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 - - 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 - ### 数据库管理 * 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** @@ -278,8 +278,6 @@ TiDB 版本:8.3.0 + TiDB - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** From fb53a3ce2a13aefb1430da774f7fe53152c8a3b8 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Aug 2024 13:50:47 +0800 Subject: [PATCH 048/103] Apply suggestions from code review Co-authored-by: lucasliang --- releases/release-8.3.0.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 5ce7e14c4347..5ce2b199250d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -247,12 +247,12 @@ TiDB 版本:8.3.0 |----------------|--------------------|------|------------------------------------| | TiDB | [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) | 新增 | 控制 TiDB 向 TiKV 发送请求时的批处理策略。 | | PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| PD | [`schedule.max-merge-region-keys`](/pd-configuration-file.md#max-merge-region-keys) | 修改 | 将默认值从 `200000` 修改为 `540000`。 | -| PD | [`schedule.max-merge-region-size`](/pd-configuration-file.md#max-merge-region-size) | 修改 | 将默认值从 `20` MiB 修改为 `54` MiB。 | +| PD | [`schedule.max-merge-region-keys`](/pd-configuration-file.md#max-merge-region-keys) | 修改 | 默认值从 `200000` 修改为 `540000`,以兼容 `schedule.max-merge-region-size` 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | +| PD | [`schedule.max-merge-region-size`](/pd-configuration-file.md#max-merge-region-size) | 修改 | 将默认值从 `20` MiB 修改为 `54` MiB,以兼容 TiKV 侧默认 Region 大小扩大为 `256` MiB 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 将默认值从 `96`MiB 修改为 `256`MiB。 | -| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 将默认值从 `144`MiB 修改为 `384`MiB。 | -| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 将默认值从 `144`MiB 修改为 `384`MiB。 | +| TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 默认值从 `96`MiB 修改为 `256`MiB。 | +| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144`MiB 修改为 `384`MiB。 | +| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144`MiB 修改为 `384`MiB。 | | TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) From 6384cc0aadc9ff424bbfa5b047e005bd810b6e06 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Aug 2024 14:04:33 +0800 Subject: [PATCH 049/103] Update releases/release-8.3.0.md Co-authored-by: lucasliang --- releases/release-8.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 5ce2b199250d..4b886ccd0d52 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -250,9 +250,9 @@ TiDB 版本:8.3.0 | PD | [`schedule.max-merge-region-keys`](/pd-configuration-file.md#max-merge-region-keys) | 修改 | 默认值从 `200000` 修改为 `540000`,以兼容 `schedule.max-merge-region-size` 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | | PD | [`schedule.max-merge-region-size`](/pd-configuration-file.md#max-merge-region-size) | 修改 | 将默认值从 `20` MiB 修改为 `54` MiB,以兼容 TiKV 侧默认 Region 大小扩大为 `256` MiB 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 默认值从 `96`MiB 修改为 `256`MiB。 | -| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144`MiB 修改为 `384`MiB。 | -| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144`MiB 修改为 `384`MiB。 | +| TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 默认值从 `96` MiB 修改为 `256` MiB,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | +| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-split-size` 调整为 `256` MiB 的修改。 | +| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-max-size` 调整为 `384` MiB 的修改。 | | TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) From a5caecc88c936114e9d92c562b1b9db7125d49a6 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Aug 2024 14:17:37 +0800 Subject: [PATCH 050/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 4b886ccd0d52..342a6e294017 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -236,7 +236,7 @@ TiDB 版本:8.3.0 | [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 的第一阶段采用哪种预聚合策略。 | | [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 之前该变量仅支持 `GLOBAL` 级别设置。从 v8.3.0 开始,该变量也支持 `SESSION`级别设置。 | | [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 之前该变量仅支持 `GLOBAL` 级别设置。从 v8.3.0 开始,该变量也支持 `SESSION` 级别设置。 | -| [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制 [GC(垃圾回收)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)] 和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间) 的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| +| [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制[垃圾回收 (GC)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)](/garbage-collection-overview.md#resolve-locks清理锁)和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间)的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| | [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | | [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) | 修改 | 增加 GLOBAL 作用域。| | [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) | 修改 | 增加 GLOBAL 作用域,变量值可以持久化到集群。经进一步的测试,默认值从 `OFF` 修改为 `ON`,即默认允许优化器将 `Projection` 算子下推到 TiKV。| From 41fbc0240f5d888bb217acc908f55f6a85a540c3 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Aug 2024 15:21:37 +0800 Subject: [PATCH 051/103] Apply suggestions from code review --- releases/release-8.3.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 342a6e294017..59262803dc49 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -247,12 +247,12 @@ TiDB 版本:8.3.0 |----------------|--------------------|------|------------------------------------| | TiDB | [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) | 新增 | 控制 TiDB 向 TiKV 发送请求时的批处理策略。 | | PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| PD | [`schedule.max-merge-region-keys`](/pd-configuration-file.md#max-merge-region-keys) | 修改 | 默认值从 `200000` 修改为 `540000`,以兼容 `schedule.max-merge-region-size` 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | -| PD | [`schedule.max-merge-region-size`](/pd-configuration-file.md#max-merge-region-size) | 修改 | 将默认值从 `20` MiB 修改为 `54` MiB,以兼容 TiKV 侧默认 Region 大小扩大为 `256` MiB 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | +| PD | [`schedule.max-merge-region-keys`](/pd-configuration-file.md#max-merge-region-keys) | 修改 | 默认值从 `200000` 修改为 `540000`,以兼容 `schedule.max-merge-region-size` 的默认值调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | +| PD | [`schedule.max-merge-region-size`](/pd-configuration-file.md#max-merge-region-size) | 修改 | 将默认值从 `20` MiB 修改为 `54` MiB,以兼容 TiKV 侧默认 Region 大小扩大为 `256` MiB 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 默认值从 `96` MiB 修改为 `256` MiB,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | -| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-split-size` 调整为 `256` MiB 的修改。 | -| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-max-size` 调整为 `384` MiB 的修改。 | +| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-split-size` 扩大为 `256` MiB 的修改。 | +| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-max-size` 扩大为 `384` MiB 的修改。 | | TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) From 73eda1a2fa30fce830446df345dd7e67fc7d6184 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 13 Aug 2024 20:09:16 +0800 Subject: [PATCH 052/103] Apply suggestions from code review Co-authored-by: okJiang Co-authored-by: JaySon --- releases/release-8.3.0.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 59262803dc49..37f32dd374dd 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -123,9 +123,9 @@ TiDB 版本:8.3.0 * 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** - 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区键,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 + 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区表达式中用到的所有列,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - 从 v8.3.0 开始,全局索引作为实验特性正式发布。你可通过关键字 `Global` 为分区表显式创建一个 Global Index,从而去除分区表唯一建必须包含全部分区键的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 + 从 v8.3.0 开始,全局索引作为实验特性正式发布。你可通过关键字 `Global` 为分区表显式创建一个 Global Index,从而去除分区表唯一建必须包含分区表达式中用到的所有列的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 @@ -204,7 +204,7 @@ TiDB 版本:8.3.0 * TiCDC 支持通过双向复制模式 (Bi-Directional Replication, BDR) 同步 DDL 语句 (GA) [#10301](https://github.com/pingcap/tiflow/issues/10301) [#48519](https://github.com/pingcap/tidb/issues/48519) @okJiang @asddongmen **tw@hfxsd** - 从 v7.6.0 开始,TiCDC 支持在配置了双向复制的情况下同步 DDL 语句。以前,TiCDC 不支持复制 DDL 语句,因此要使用 TiCDC 双向复制必须将 DDL 语句分别应用到两个 TiDB 集群。有了该特性,TiCDC 可以为一个集群分配 `PRIMARY` BDR role,并将该集群的 DDL 语句复制到下游集群。 + 从 v7.6.0 开始,TiCDC 支持在配置了双向复制的情况下同步 DDL 语句。以前,TiCDC 不支持双向复制 DDL 语句,因此要使用 TiCDC 双向复制必须将 DDL 语句在两个 TiDB 集群分别执行。有了该特性,在为一个集群分配 `PRIMARY` BDR role 之后,TiCDC 可以将该集群的 DDL 语句复制到 `SECONDARY` 集群。 在 v8.3.0,该功能成为正式功能 (GA)。 @@ -253,7 +253,6 @@ TiDB 版本:8.3.0 | TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 默认值从 `96` MiB 修改为 `256` MiB,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | | TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-split-size` 扩大为 `256` MiB 的修改。 | | TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-max-size` 扩大为 `384` MiB 的修改。 | -| TiFlash | [`security.redact_info_log`](/tiflash/tiflash-configuration.md#配置文件-tiflashtoml) | 修改 | 支持将 TiFlash Server 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) ) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | From cd3f6b970dabb2c47b203cf68ff75e0a576c4be8 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Tue, 13 Aug 2024 20:18:06 +0800 Subject: [PATCH 053/103] added dup bugfix and improvements --- releases/release-8.3.0.md | 81 ++++++++++++++++++++++++++++++--------- 1 file changed, 62 insertions(+), 19 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 37f32dd374dd..a1425e46d717 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -281,6 +281,8 @@ TiDB 版本:8.3.0 - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** + - (dup): release-8.0.0.md > 改进提升> TiDB - 优化系统表 `INFORMATION_SCHEMA.TABLES`、`INFORMATION_SCHEMA.STATISTICS`、`INFORMATION_SCHEMA.KEY_COLUMN_USAGE`、`INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS` 的查询性能。相比之前版本,性能提升最高可达 100 倍 [#50305](https://github.com/pingcap/tidb/issues/50305) @[ywqzzy](https://github.com/ywqzzy) + - (dup): release-8.0.0.md > 改进提升> TiDB - DDL 创建表语句 `CREATE TABLE` 执行性能加速 10 倍,并且可线性扩展 [#50052](https://github.com/pingcap/tidb/issues/50052) @[GMHDBJD](https://github.com/GMHDBJD) + TiKV @@ -296,6 +298,7 @@ TiDB 版本:8.3.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) - note [#issue](链接) @[贡献者 GitHub ID](链接) + - (dup): release-7.6.0.md > 改进提升> TiFlash - 支持在存算分离架构下通过合并相同数据的读取操作,提升多并发下的数据扫描性能 [#6834](https://github.com/pingcap/tiflash/issues/6834) @[JinheLin](https://github.com/JinheLin) + Tools @@ -304,7 +307,8 @@ TiDB 版本:8.3.0 - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - (dup): release-7.5.3.md > 改进提升> Tools> Backup & Restore (BR) - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) + - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) + TiCDC @@ -330,50 +334,89 @@ TiDB 版本:8.3.0 + TiDB - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复事务占用的内存可能被多次重复统计的问题 [#53984](https://github.com/pingcap/tidb/issues/53984) @[ekexium](https://github.com/ekexium) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复使用 `SHOW WARNINGS;` 获取警告时可能导致 panic 的问题 [#48756](https://github.com/pingcap/tidb/issues/48756) @[xhebox](https://github.com/xhebox) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复加载索引统计信息可能会造成内存泄漏的问题 [#54022](https://github.com/pingcap/tidb/issues/54022) @[hi-rustin](https://github.com/hi-rustin) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当排序规则为 `utf8_bin` 或 `utf8mb4_bin` 时意外消除 `LENGTH()` 条件的错误 [#53730](https://github.com/pingcap/tidb/issues/53730) @[elsa0520](https://github.com/elsa0520) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复统计数据在遇到主键重复时没有更新 `stats_history` 表的问题 [#47539](https://github.com/pingcap/tidb/issues/47539) @[Defined2014](https://github.com/Defined2014) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复递归 CTE 查询可能导致无效指针的问题 [#54449](https://github.com/pingcap/tidb/issues/54449) @[hawkingrei](https://github.com/hawkingrei) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复某些连接在握手完成之前退出导致 Grafana 监控指标中的连接数 (Connection Count) 不正确的问题 [#54428](https://github.com/pingcap/tidb/issues/54428) @[YangKeao](https://github.com/YangKeao) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复使用 TiProxy 和资源组 (Resource Group) 功能时,每个资源组的连接数 (Connection Count) 显示不正确的问题 [#54545](https://github.com/pingcap/tidb/issues/54545) @[YangKeao](https://github.com/YangKeao) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当查询包含非关联子查询和 `LIMIT` 子句时,列剪裁可能不完善导致计划不优的问题 [#54213](https://github.com/pingcap/tidb/issues/54213) @[qw4990](https://github.com/qw4990) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复针对 `SELECT ... FOR UPDATE` 复用了错误点查询计划的问题 [#54652](https://github.com/pingcap/tidb/issues/54652) @[qw4990](https://github.com/qw4990) + - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当第一个参数是 `month` 并且第二个参数是负数时,`TIMESTAMPADD()` 函数会进入无限循环的问题 [#54908](https://github.com/pingcap/tidb/issues/54908) @[xzhangxian1008](https://github.com/xzhangxian1008) + TiKV - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/tikv/tikv/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/tikv/tikv/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + PD - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/tikv/pd/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/tikv/pd/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - (dup): release-7.5.3.md > 错误修复> PD - 修复将角色 (role) 绑定到资源组时未报错的问题 [#54417](https://github.com/pingcap/tidb/issues/54417) @[JmPotato](https://github.com/JmPotato) + - (dup): release-7.5.3.md > 错误修复> PD - 修复资源组在请求 token 超过 500 ms 时遇到超出配额限制的问题 [#8349](https://github.com/tikv/pd/issues/8349) @[nolouch](https://github.com/nolouch) + TiFlash - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/pingcap/tiflash/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tiflash/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) + - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,部分查询在执行时可能报列类型不匹配错误的问题 [#9175](https://github.com/pingcap/tiflash/issues/9175) @[JinheLin](https://github.com/JinheLin) + - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,带有虚拟生成列的查询可能返回错误结果的问题 [#9188](https://github.com/pingcap/tiflash/issues/9188) @[JinheLin](https://github.com/JinheLin) + - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复将 TiFlash 中 SSL 证书配置项设置为空字符串会错误开启 TLS 并导致 TiFlash 启动失败的问题 [#9235](https://github.com/pingcap/tiflash/issues/9235) @[JaySon-Huang](https://github.com/JaySon-Huang) + - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复数据库创建后短时间内被删除时,TiFlash 可能 panic 的问题 [#9266](https://github.com/pingcap/tiflash/issues/9266) @[JaySon-Huang](https://github.com/JaySon-Huang) + Tools + Backup & Restore (BR) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - (dup): release-7.5.3.md > 错误修复> Tools> Backup & Restore (BR) - 修复增量恢复过程中 `ADD INDEX`、`MODIFY COLUMN` 等需要回填的 DDL 可能无法正确恢复的问题 [#54426](https://github.com/pingcap/tidb/issues/54426) @[3pointer](https://github.com/3pointer) + TiCDC - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - (dup): release-7.5.3.md > 错误修复> Tools> TiCDC - 修复当下游 Kafka 无法访问时,Processor 模块可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) + - (dup): release-8.1.0.md > 错误修复> Tools> TiCDC - 修复 Grafana 监控中的 **Ownership history** 面板显示不稳定的问题 [#10796](https://github.com/pingcap/tiflow/issues/10796) @[hongyunyan](https://github.com/hongyunyan) + TiDB Data Migration (DM) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + TiDB Lightning - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + + + Dumpling + + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + TiUP - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - note [#issue](https://github.com/pingcap/tiup/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tiup/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + + + TiDB Binlog + + - note [#issue](https://github.com/pingcap/tidb-binlog/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - note [#issue](https://github.com/pingcap/tidb-binlog/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + +## Other dup notes + +- (dup): release-7.0.0.md > # 稳定性> 语句级别。通过 [`RESOURCE_GROUP()`](/optimizer-hints.md#resource_groupresource_group_name) 设置当前语句的资源组。 * 支持 Fast Online DDL 的检查点机制,提升容错性和自动恢复能力 [#42164](https://github.com/pingcap/tidb/issues/42164) @[tangenta](https://github.com/tangenta) +- (dup): release-8.0.0.md > # SQL 功能 * 支持处理大量数据的 DML 类型(实验特性)[#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) +- (dup): release-8.2.0.md > # 编译器版本 * 为了提升 TiFlash 的开发体验,编译和构建 TiDB 所需的 LLVM 的最低版本从 13.0 升级到了 17.0。如果你是 TiDB 开发者,为了保证顺利编译,请对应升级你的 LLVM 编译器版本。[#7193](https://github.com/pingcap/tiflash/issues/7193) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) +- (dup): release-8.2.0.md > # 数据迁移 * TiCDC Pulsar Sink 新增支持 `pulsar+http` 和 `pulsar+https` 连接协议 [#11336](https://github.com/pingcap/tiflow/issues/11336) @[SandeepPadhi](https://github.com/SandeepPadhi) +- (dup): release-5.4.0.md > 提升改进> PD - TiDB Dashboard 更新至 v2021.12.31 [#4257](https://github.com/tikv/pd/issues/4257) ## 贡献者 From b687a88ed58c46b0a22aa6c0c43da802b9ad7ead Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 14 Aug 2024 08:42:54 +0800 Subject: [PATCH 054/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index a1425e46d717..e9a5d9b20ba4 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -347,6 +347,13 @@ TiDB 版本:8.3.0 - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当查询包含非关联子查询和 `LIMIT` 子句时,列剪裁可能不完善导致计划不优的问题 [#54213](https://github.com/pingcap/tidb/issues/54213) @[qw4990](https://github.com/qw4990) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复针对 `SELECT ... FOR UPDATE` 复用了错误点查询计划的问题 [#54652](https://github.com/pingcap/tidb/issues/54652) @[qw4990](https://github.com/qw4990) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当第一个参数是 `month` 并且第二个参数是负数时,`TIMESTAMPADD()` 函数会进入无限循环的问题 [#54908](https://github.com/pingcap/tidb/issues/54908) @[xzhangxian1008](https://github.com/xzhangxian1008) + - (dup): release-8.1.1.md > 错误修复> TiDB - 修复慢日志中内部语句中的 SQL 默认被脱敏为空的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) [#52743](https://github.com/pingcap/tidb/issues/52743) [#53264](https://github.com/pingcap/tidb/issues/53264) @[lcwangchao](https://github.com/lcwangchao) + - (dup): release-8.1.1.md > 错误修复> TiDB - 修复可以生成 `_tidb_rowid` 的点查 (`PointGet`) 执行计划的问题 [#54583](https://github.com/pingcap/tidb/issues/54583) @[Defined2014](https://github.com/Defined2014) + - (dup): release-8.1.1.md > 错误修复> TiDB - 修复从 v7.1 升级后 `SHOW IMPORT JOBS` 报错 `Unknown column 'summary'` 的问题 [#54241](https://github.com/pingcap/tidb/issues/54241) @[tangenta](https://github.com/tangenta) + - (dup): release-8.1.1.md > 错误修复> TiDB - 修复当视图定义中使用子查询作为列定义时,通过 `information_schema.columns` 获取列信息返回告警 Warning 1356 的问题 [#54343](https://github.com/pingcap/tidb/issues/54343) @[lance6716](https://github.com/lance6716) + - (dup): release-8.1.1.md > 错误修复> TiDB - 修复可以创建非严格自增的 RANGE 分区表的问题 [#54829](https://github.com/pingcap/tidb/issues/54829) @[Defined2014](https://github.com/Defined2014) + - (dup): release-8.1.1.md > 错误修复> TiDB - 修复当 SQL 异常中断时,`INDEX_HASH_JOIN` 无法正常退出的问题 [#54688](https://github.com/pingcap/tidb/issues/54688) @[wshwsh12](https://github.com/wshwsh12) + - (dup): release-8.1.1.md > 错误修复> TiDB - 修复使用分布式框架添加索引期间出现网络分区可能导致数据索引不一致的问题 [#54897](https://github.com/pingcap/tidb/issues/54897) @[tangenta](https://github.com/tangenta) + TiKV @@ -359,6 +366,12 @@ TiDB 版本:8.3.0 - note [#issue](https://github.com/tikv/pd/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> PD - 修复将角色 (role) 绑定到资源组时未报错的问题 [#54417](https://github.com/pingcap/tidb/issues/54417) @[JmPotato](https://github.com/JmPotato) - (dup): release-7.5.3.md > 错误修复> PD - 修复资源组在请求 token 超过 500 ms 时遇到超出配额限制的问题 [#8349](https://github.com/tikv/pd/issues/8349) @[nolouch](https://github.com/nolouch) + - (dup): release-8.1.1.md > 错误修复> PD - 修复 `INFORMATION_SCHEMA.RUNAWAY_WATCHES` 表中时间类型不正确的问题 [#54770](https://github.com/pingcap/tidb/issues/54770) @[HuSharp](https://github.com/HuSharp) + - (dup): release-8.1.1.md > 错误修复> PD - 修复资源组 (Resource Group) 在高并发场景下无法有效限制资源使用的问题 [#8435](https://github.com/tikv/pd/issues/8435) @[nolouch](https://github.com/nolouch) + - (dup): release-8.1.1.md > 错误修复> PD - 修复获取表属性时错误调用 PD API 的问题 [#55188](https://github.com/pingcap/tidb/issues/55188) @[JmPotato](https://github.com/JmPotato) + - (dup): release-8.1.1.md > 错误修复> PD - 修复开启 `scheduling` 微服务后,扩缩容进度显示错误的问题 [#8331](https://github.com/tikv/pd/issues/8331) @[rleungx](https://github.com/rleungx) + - (dup): release-8.1.1.md > 错误修复> PD - 修复加密管理器在使用前未初始化的问题 [#8384](https://github.com/tikv/pd/issues/8384) @[rleungx](https://github.com/rleungx) + - (dup): release-8.1.1.md > 错误修复> PD - 修复部分日志未脱敏的问题 [#8419](https://github.com/tikv/pd/issues/8419) @[rleungx](https://github.com/rleungx) + TiFlash @@ -369,6 +382,7 @@ TiDB 版本:8.3.0 - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,带有虚拟生成列的查询可能返回错误结果的问题 [#9188](https://github.com/pingcap/tiflash/issues/9188) @[JinheLin](https://github.com/JinheLin) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复将 TiFlash 中 SSL 证书配置项设置为空字符串会错误开启 TLS 并导致 TiFlash 启动失败的问题 [#9235](https://github.com/pingcap/tiflash/issues/9235) @[JaySon-Huang](https://github.com/JaySon-Huang) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复数据库创建后短时间内被删除时,TiFlash 可能 panic 的问题 [#9266](https://github.com/pingcap/tiflash/issues/9266) @[JaySon-Huang](https://github.com/JaySon-Huang) + - (dup): release-8.1.1.md > 错误修复> TiFlash - 修复 TiFlash 与任意 PD 之间发生网络分区(即网络连接断开),可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) + Tools @@ -388,12 +402,13 @@ TiDB 版本:8.3.0 + TiDB Data Migration (DM) - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复 schema tracker 无法正确处理 LIST 分区表导致 DM 报错的问题 [#11408](https://github.com/pingcap/tiflow/issues/11408) @[lance6716](https://github.com/lance6716) + - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复当索引长度超过 `max-index-length` 默认值时数据同步中断的问题 [#11459](https://github.com/pingcap/tiflow/issues/11459) @[michaelmdeng](https://github.com/michaelmdeng) + TiDB Lightning - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Lightning - 修复 TiDB Lightning 获取 keyspace 失败时输出的 `WARN` 日志可能引起用户混淆的问题 [#54232](https://github.com/pingcap/tidb/issues/54232) @[kennytm](https://github.com/kennytm) + Dumpling From dbd948d0adceccf7c213a40f8604468d71a8a362 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 14 Aug 2024 13:43:49 +0800 Subject: [PATCH 055/103] Apply suggestions from code review Co-authored-by: ekexium Co-authored-by: JaySon Co-authored-by: cfzjywxk --- releases/release-8.3.0.md | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index e9a5d9b20ba4..2336cf7a9bdc 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -234,8 +234,8 @@ TiDB 版本:8.3.0 | [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句默认收集的列。将其设置为 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| | [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 的第一阶段采用哪种预聚合策略。 | -| [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 之前该变量仅支持 `GLOBAL` 级别设置。从 v8.3.0 开始,该变量也支持 `SESSION`级别设置。 | -| [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 之前该变量仅支持 `GLOBAL` 级别设置。从 v8.3.0 开始,该变量也支持 `SESSION` 级别设置。 | +| [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 增加 SESSION 作用域。 | +| [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 增加 SESSION 作用域。 | | [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制[垃圾回收 (GC)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)](/garbage-collection-overview.md#resolve-locks清理锁)和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间)的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| | [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | | [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) | 修改 | 增加 GLOBAL 作用域。| @@ -283,7 +283,8 @@ TiDB 版本:8.3.0 - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** - (dup): release-8.0.0.md > 改进提升> TiDB - 优化系统表 `INFORMATION_SCHEMA.TABLES`、`INFORMATION_SCHEMA.STATISTICS`、`INFORMATION_SCHEMA.KEY_COLUMN_USAGE`、`INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS` 的查询性能。相比之前版本,性能提升最高可达 100 倍 [#50305](https://github.com/pingcap/tidb/issues/50305) @[ywqzzy](https://github.com/ywqzzy) - (dup): release-8.0.0.md > 改进提升> TiDB - DDL 创建表语句 `CREATE TABLE` 执行性能加速 10 倍,并且可线性扩展 [#50052](https://github.com/pingcap/tidb/issues/50052) @[GMHDBJD](https://github.com/GMHDBJD) - + - (dup): release-8.0.0.md > - 提升了 bulk 模式 (Pipelined DML) 的性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) + - 系统表 `information_schema.processlist` 中新增了一列 `ROWS_AFFECTED` + TiKV - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -296,9 +297,8 @@ TiDB 版本:8.3.0 + TiFlash + - 支持生成 svg 格式的堆内存分析结果 [#9320](https://github.com/pingcap/tiflash/issues/9320) @[CalvinNeo](https://github.com/CalvinNeo) - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - (dup): release-7.6.0.md > 改进提升> TiFlash - 支持在存算分离架构下通过合并相同数据的读取操作,提升多并发下的数据扫描性能 [#6834](https://github.com/pingcap/tiflash/issues/6834) @[JinheLin](https://github.com/JinheLin) + Tools @@ -333,7 +333,7 @@ TiDB 版本:8.3.0 ## 错误修复 + TiDB - + - 修复 `tidb_low_resolution` 开启时,`select for update` 可以被执行的问题 [#54684](https://github.com/pingcap/tidb/issues/54684) @[cfzjywxk](https://github.com/cfzjywxk) - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复事务占用的内存可能被多次重复统计的问题 [#53984](https://github.com/pingcap/tidb/issues/53984) @[ekexium](https://github.com/ekexium) @@ -383,6 +383,8 @@ TiDB 版本:8.3.0 - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复将 TiFlash 中 SSL 证书配置项设置为空字符串会错误开启 TLS 并导致 TiFlash 启动失败的问题 [#9235](https://github.com/pingcap/tiflash/issues/9235) @[JaySon-Huang](https://github.com/JaySon-Huang) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复数据库创建后短时间内被删除时,TiFlash 可能 panic 的问题 [#9266](https://github.com/pingcap/tiflash/issues/9266) @[JaySon-Huang](https://github.com/JaySon-Huang) - (dup): release-8.1.1.md > 错误修复> TiFlash - 修复 TiFlash 与任意 PD 之间发生网络分区(即网络连接断开),可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) + - 修复在存算分离架构下,TiFlash 写节点可能重启失败的问题 [#9282](https://github.com/pingcap/tiflash/issues/9282) @[JaySon-Huang](https://github.com/JaySon-Huang) + - 修复在存算分离架构下,TiFlash 写节点的读快照可能没有被及时释放的问题 [#9298](https://github.com/pingcap/tiflash/issues/9298) @[JinheLin](https://github.com/JinheLin) + Tools @@ -397,7 +399,6 @@ TiDB 版本:8.3.0 - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> Tools> TiCDC - 修复当下游 Kafka 无法访问时,Processor 模块可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) - - (dup): release-8.1.0.md > 错误修复> Tools> TiCDC - 修复 Grafana 监控中的 **Ownership history** 面板显示不稳定的问题 [#10796](https://github.com/pingcap/tiflow/issues/10796) @[hongyunyan](https://github.com/hongyunyan) + TiDB Data Migration (DM) @@ -427,11 +428,6 @@ TiDB 版本:8.3.0 ## Other dup notes -- (dup): release-7.0.0.md > # 稳定性> 语句级别。通过 [`RESOURCE_GROUP()`](/optimizer-hints.md#resource_groupresource_group_name) 设置当前语句的资源组。 * 支持 Fast Online DDL 的检查点机制,提升容错性和自动恢复能力 [#42164](https://github.com/pingcap/tidb/issues/42164) @[tangenta](https://github.com/tangenta) -- (dup): release-8.0.0.md > # SQL 功能 * 支持处理大量数据的 DML 类型(实验特性)[#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) -- (dup): release-8.2.0.md > # 编译器版本 * 为了提升 TiFlash 的开发体验,编译和构建 TiDB 所需的 LLVM 的最低版本从 13.0 升级到了 17.0。如果你是 TiDB 开发者,为了保证顺利编译,请对应升级你的 LLVM 编译器版本。[#7193](https://github.com/pingcap/tiflash/issues/7193) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) -- (dup): release-8.2.0.md > # 数据迁移 * TiCDC Pulsar Sink 新增支持 `pulsar+http` 和 `pulsar+https` 连接协议 [#11336](https://github.com/pingcap/tiflow/issues/11336) @[SandeepPadhi](https://github.com/SandeepPadhi) -- (dup): release-5.4.0.md > 提升改进> PD - TiDB Dashboard 更新至 v2021.12.31 [#4257](https://github.com/tikv/pd/issues/4257) ## 贡献者 From a9d5334f653bbb9783a261ee5f48fe6c8db2c897 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 14 Aug 2024 15:01:23 +0800 Subject: [PATCH 056/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2336cf7a9bdc..536d524b25ff 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -281,8 +281,6 @@ TiDB 版本:8.3.0 - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** - - (dup): release-8.0.0.md > 改进提升> TiDB - 优化系统表 `INFORMATION_SCHEMA.TABLES`、`INFORMATION_SCHEMA.STATISTICS`、`INFORMATION_SCHEMA.KEY_COLUMN_USAGE`、`INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS` 的查询性能。相比之前版本,性能提升最高可达 100 倍 [#50305](https://github.com/pingcap/tidb/issues/50305) @[ywqzzy](https://github.com/ywqzzy) - - (dup): release-8.0.0.md > 改进提升> TiDB - DDL 创建表语句 `CREATE TABLE` 执行性能加速 10 倍,并且可线性扩展 [#50052](https://github.com/pingcap/tidb/issues/50052) @[GMHDBJD](https://github.com/GMHDBJD) - (dup): release-8.0.0.md > - 提升了 bulk 模式 (Pipelined DML) 的性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) - 系统表 `information_schema.processlist` 中新增了一列 `ROWS_AFFECTED` + TiKV From 20c2821522a00f5d9ff83681e51ec052802b8bd5 Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 14 Aug 2024 15:11:55 +0800 Subject: [PATCH 057/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 536d524b25ff..9e3872f24663 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -28,7 +28,7 @@ TiDB 版本:8.3.0 全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 - 默认将 Projection 算子下推到存储引擎**tw@Oreoxmt** + 默认允许将 Projection 算子下推到存储引擎**tw@Oreoxmt** Projection 算子下推可以将负载分散到存储节点,同时减少节点间的数据传输。这有助于降低部分 SQL 的执行时间,提升数据库的整体性能。 @@ -38,7 +38,7 @@ TiDB 版本:8.3.0 稳定性与高可用 TiProxy 内置虚拟 IP 管理**tw@Oreoxmt** - 在 v8.3.0 中,TiProxy 内置虚拟 IP 管理功能,支持自动切换虚拟 IP,而无需依赖外部平台或工具。这简化了 TiProxy 的部署,降低了数据库接入层的复杂度。 + TiProxy 内置了虚拟 IP 管理功能,配置后支持自动切换虚拟 IP,而无需依赖外部平台或工具。这简化了 TiProxy 的部署,降低了数据库接入层的复杂度。 @@ -55,7 +55,7 @@ TiDB 版本:8.3.0 ### 性能 -* 优化器默认将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** +* 优化器默认允许将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的数据传输量。这在处理 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md)时尤其有效。从 v8.3.0 开始,TiDB 默认开启 `Projection` 算子下推功能,控制该功能的系统变量 [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 的默认值从 `OFF` 修改为 `ON`。启用该功能后,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推到存储引擎。 @@ -63,13 +63,13 @@ TiDB 版本:8.3.0 * 优化 KV 请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** - TiDB 通过 KV 请求读取数据。将 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 + TiDB 通过 KV 请求读取数据。将多个 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 * TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚合计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** - 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct rows) 数据时,第一阶段的聚合计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算模式,以提升不同特征数据的聚合计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置 HashAgg 聚合计算模式。 + 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct values) 数据时,第一阶段的聚合计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算策略,以提升不同特征数据的聚合计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置所需的 HashAgg 聚合计算策略。 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 @@ -154,7 +154,7 @@ TiDB 版本:8.3.0 在 v8.3.0 之前,当使用主从模式以保证高可用性时,TiProxy 需要额外的组件管理虚拟 IP。从 v8.3.0 开始,TiProxy 内置虚拟 IP 管理功能。在主从模式下,当主节点发生切换时,新的主节点会自动绑定指定的虚拟 IP,确保客户端始终能通过虚拟 IP 连接到可用的 TiProxy。 - 要启用虚拟 IP 管理功能,需要通过 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP 地址,以及 [`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。如果这两个配置项均未设置,则表示不启用该功能。 + 要启用虚拟 IP 管理功能,需要通过 TiProxy 配置项 [`ha.virtual-ip`](/tiproxy/tiproxy-configuration.md#virtual-ip) 指定虚拟 IP 地址,并通过 [`ha.interface`](/tiproxy/tiproxy-configuration.md#interface) 指定绑定虚拟 IP 的网络接口。只有这两个配置项都设置时,TiProxy 实例才能绑定虚拟 IP。 更多信息,请参考[用户文档](/tiproxy/tiproxy-overview.md)。 From ed7809a7afbdc0298e91bc44f424dcdde4cb38f8 Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 14 Aug 2024 15:25:35 +0800 Subject: [PATCH 058/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9e3872f24663..d3090cbda97d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -61,7 +61,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入)。 -* 优化 KV 请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** +* 优化 KV(键值)请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** TiDB 通过 KV 请求读取数据。将多个 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 From e562dce6dc684efa23a4560c288d0c17548c12be Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 14 Aug 2024 16:50:46 +0800 Subject: [PATCH 059/103] Apply suggestions from code review Co-authored-by: Jianyuan Jiang --- releases/release-8.3.0.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index d3090cbda97d..2c0750679d6a 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -310,8 +310,7 @@ TiDB 版本:8.3.0 + TiCDC - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - kafka sink 的 claim check 功能支持将大 value 存储到外部存储系统 [#11396](https://github.com/pingcap/tiflow/issues/11396)) @[3AceShowHand](https://github.com/3AceShowHand) + TiDB Data Migration (DM) @@ -394,9 +393,7 @@ TiDB 版本:8.3.0 + TiCDC - - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - (dup): release-7.5.3.md > 错误修复> Tools> TiCDC - 修复当下游 Kafka 无法访问时,Processor 模块可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) + - 修复当下游 Kafka 无法访问时,Processor 模块可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) + TiDB Data Migration (DM) From 7a01c5768b0b00ae71bb5fcc420a7f9d777d238c Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 14 Aug 2024 16:53:05 +0800 Subject: [PATCH 060/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2c0750679d6a..2972806a2bd0 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -254,8 +254,7 @@ TiDB 版本:8.3.0 | TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-split-size` 扩大为 `256` MiB 的修改。 | | TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-max-size` 扩大为 `384` MiB 的修改。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) -) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | +| BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | ### 系统表 From 648fc3dded04b7e044068eb5090afa488e3b6fe6 Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Thu, 15 Aug 2024 12:05:28 +0800 Subject: [PATCH 061/103] Update releases/release-8.3.0.md Co-authored-by: xixirangrang --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2972806a2bd0..8909f8368de2 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -139,7 +139,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入)。 -* 增强 SQL 执行计划绑定 [#55280](https://github.com/pingcap/tidb/issues/55280) [#issue2](to-be-added) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** +* 增强 SQL 执行计划绑定 [#55280](https://github.com/pingcap/tidb/issues/55280) [#55343](https://github.com/pingcap/tidb/issues/55343) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定不变的。对业务中的重要 SQL 实施执行计划绑定,可以降低执行计划变差的几率,提升系统稳定性。为了满足创建大量 SQL 执行计划绑定的场景需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: From 9e83d3524d751de97a3c12e38c181b04c917656c Mon Sep 17 00:00:00 2001 From: lilin90 Date: Thu, 15 Aug 2024 14:54:26 +0800 Subject: [PATCH 062/103] Update compatibility and deprecation --- releases/release-8.3.0.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 8909f8368de2..208ed35d76cc 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -231,7 +231,7 @@ TiDB 版本:8.3.0 | 变量名 | 修改类型(包括新增/修改/删除) | 描述 | |--------|------------------------------|------| -| [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句默认收集的列。将其设置为 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | +| [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句的行为。将其设置为默认值 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| | [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 的第一阶段采用哪种预聚合策略。 | | [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 增加 SESSION 作用域。 | @@ -266,6 +266,10 @@ TiDB 版本:8.3.0 ## 废弃功能 +* 以下为从 v8.3.0 开始已废弃的功能: + + * 从 v8.3.0 开始,系统变量 [`tidb_enable_column_tracking`](/system-variables.md#tidb_enable_column_tracking-从-v540-版本开始引入) 被废弃。TiDB 默认收集 [predicate columns](/glossary.md#predicate-columns) 的统计信息。更多信息,参见 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入)。 + * 以下为计划将在未来版本中废弃的功能: * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入),用于控制是否启用优先队列来优化自动收集统计信息任务的排序。在未来版本中,优先队列将成为自动收集统计信息任务的唯一排序方式,系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入) 将被废弃。 From f357987e32e2c783cc2d0337857ade92fda25062 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 15 Aug 2024 20:02:05 +0800 Subject: [PATCH 063/103] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Zhou Kunqin <25057648+time-and-fate@users.noreply.github.com> Co-authored-by: Grace Cai Co-authored-by: tangenta Co-authored-by: okJiang Co-authored-by: Jianjun Liao <36503113+Leavrth@users.noreply.github.com> Co-authored-by: 王超 Co-authored-by: HuaiyuXu --- releases/release-8.3.0.md | 75 ++++++++++++++++++++++++++++++++++----- 1 file changed, 66 insertions(+), 9 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 208ed35d76cc..0e8572e38cd8 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -125,7 +125,7 @@ TiDB 版本:8.3.0 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区表达式中用到的所有列,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - 从 v8.3.0 开始,全局索引作为实验特性正式发布。你可通过关键字 `Global` 为分区表显式创建一个 Global Index,从而去除分区表唯一建必须包含分区表达式中用到的所有列的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 + 从 v8.3.0 开始,全局索引作为实验特性正式发布。你可通过关键字 `Global` 为分区表显式创建一个全局索引,从而去除分区表唯一建必须包含分区表达式中用到的所有列的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 @@ -184,7 +184,7 @@ TiDB 版本:8.3.0 ### 安全 -* 增强 PD 日志脱敏 [#51306](https://github.com/pingcap/tidb/issues/51306) @[xhe](https://github.com/xhebox) **tw@hfxsd** +* 增强 PD 日志脱敏 [#8305](https://github.com/tikv/pd/issues/8305) @[JmPotato](https://github.com/JmPotato) **tw@hfxsd** TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 @@ -279,13 +279,25 @@ TiDB 版本:8.3.0 ## 改进提升 + TiDB - + - 支持 `SELECT ... STRAIGHT_JOIN ... USING ( ... )` 语句 [#54162](https://github.com/pingcap/tidb/issues/54162) @[dveeden](https://github.com/dveeden) + - 支持为形如 `((idx_col_1 > 1) or (idx_col_1 = 1 and idx_col_2 > 10)) and ((idx_col_1 < 10) or (idx_col_1 = 10 and idx_col_2 < 20))` 的过滤条件构造更精准的索引访问 Range [#54337](https://github.com/pingcap/tidb/issues/54337) @[ghazalfamilyusa](https://github.com/ghazalfamilyusa) + - 支持形如 `WHERE idx_col_1 IS NULL ORDER BY idx_col_2` 的 SQL 查询利用索引的顺序而不需要额外的排序操作 [#54188](https://github.com/pingcap/tidb/issues/54188) @[ari-e](https://github.com/ari-e) + - 在 `analyze_jobs` 中显示被分析的索引 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) + - 为 `EXPLAIN` 支持 `tidb_redact_log` [#54565](https://github.com/pingcap/tidb/issues/54565) @[hawkingrei](https://github.com/hawkingrei) + - 支持备份和恢复 mysql.column_stats_usage 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) + - 支持在多值索引的 `IndexRangeScan` 上生成 `Selection` [#54876](https://github.com/pingcap/tidb/issues/54876) @[time-and-fate](https://github.com/time-and-fate) + - 支持在设定的自动 `ANALYZE` 时间窗口外 kill 正在执行的自动 `ANALYZE` [#55283](https://github.com/pingcap/tidb/issues/55283) @[hawkingrei](https://github.com/hawkingrei) + - 当某个统计信息完全由 TopN 构成,且对应表的统计信息中的修改行数不为 0 时,对于未命中 TopN 的等值条件,估算结果将从 0 变为 1 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - - TiDB 支持 `WITH ROLLUP` 修饰符和 `GROUPING` 函数 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** + - TiDB 节点支持执行包含 `WITH ROLLUP` 修饰符和 `GROUPING` 函数的查询 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** - (dup): release-8.0.0.md > - 提升了 bulk 模式 (Pipelined DML) 的性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) - 系统表 `information_schema.processlist` 中新增了一列 `ROWS_AFFECTED` + - 提升了 schema 信息缓存相关接口 `SchemaByID` 的性能 [#54074](https://github.com/pingcap/tidb/issues/54074) @[ywqzzy](https://github.com/ywqzzy) + - 提升了 schema 信息缓存开启时部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) + - 优化了添加唯一索引时冲突键的报错信息 [#53004](https://github.com/pingcap/tidb/issues/53004) @[lance6716](https://github.com/lance6716) + + TiKV - note [#issue](链接) @[贡献者 GitHub ID](链接) @@ -293,8 +305,15 @@ TiDB 版本:8.3.0 + PD - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 可以通过 pd-ctl 修改 evict-leader-scheduler 的 batch 配置,来提升 evict leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) + - Label distribution 面板新增了 store_id,可以看到不同的 label 对应的 store [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) + - 当指定的资源组不存在时,可回退到默认资源组 [#8388](https://github.com/tikv/pd/issues/8388) @[JmPotato](https://github.com/JmPotato) + - 使用 pd-ctl 展示 region 信息时,会展示 approximate_kv_size [#8412](https://github.com/tikv/pd/issues/8412) @[zeminzhou](https://github.com/zeminzhou) + - 优化调用 API 删除 ttl 配置时的输出信息 [#8450](https://github.com/tikv/pd/issues/8450) @[lhy1024](https://github.com/lhy1024) + - 优化大查询读请求消耗 RU 的行为,减少对其他请求的影响 [#8457](https://github.com/tikv/pd/issues/8457) @[nolouch](https://github.com/nolouch) + - 优化了 pd 微服务设置错误的报错信息 [#52912](https://github.com/pingcap/tidb/issues/52912) @[rleungx](https://github.com/rleungx) + - PD 微服务添加了 --name 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) + - 可以通过 region 数量动态调整 `PatrolRegionScanLimit`,减少扫描 region 需要的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) + TiFlash @@ -310,6 +329,10 @@ TiDB 版本:8.3.0 - 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - (dup): release-7.5.3.md > 改进提升> Tools> Backup & Restore (BR) - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) + - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置 GOMEMLIMIT,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) + - 修复了基于增量备份做时间点恢复的兼容性问题 [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) + - 修复备份恢复时进度条卡住的问题 [#54140](https://github.com/pingcap/tidb/issues/54140) @[Leavrth](https://github.com/Leavrth) + - 修复备份恢复断点路径在一些外部存储中不兼容的问题 [#55265](https://github.com/pingcap/tidb/issues/55265) @[Leavrth](https://github.com/Leavrth) + TiCDC @@ -331,9 +354,31 @@ TiDB 版本:8.3.0 - note [#issue](链接) @[贡献者 GitHub ID](链接) ## 错误修复 ++ TiDB + - 重置 pipelinedwindow 的 Open 方法中的参数,以避免当 pipelinedwindow 作为 apply 的子节点使用时,由于重复的打开和关闭操作导致重用先前的参数值而发生的意外错误 [#53600](https://github.com/pingcap/tidb/issues/53600) @[XuHuaiyu](https://github.com/XuHuaiyu) + - 修复了由于超出 tidb_mem_quota_query 而导致查询被终止时可能卡住的问题 [#55042](https://github.com/pingcap/tidb/issues/55042) @[yibin87](https://github.com/yibin87) + - 修复了触发 HashAgg 落盘时计算错误结果的问题 [#55290](https://github.com/pingcap/tidb/issues/55290) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复从 `YEAR` 转换为 JSON 格式时的 `json_type` 错误的问题 [#54027](https://github.com/pingcap/tidb/issues/54027) @[YangKeao](https://github.com/YangKeao) + - 修复系统变量 `tidb_schema_cache_size` 的取值范围错误的问题 [#54034](https://github.com/pingcap/tidb/issues/54034) @[lilinghai](https://github.com/lilinghai) + - 修复当分区表达式为 `EXTRACT(YEAR FROM col)` 时不会分区裁剪的问题 [#54210](https://github.com/pingcap/tidb/issues/54210) @[mjonss](https://github.com/mjonss) + - 修复了表数量较多情况下 `FLASHBACK DATABASE` 失败的问题 [#54415](https://github.com/pingcap/tidb/issues/54415) @[lance6716](https://github.com/lance6716) + - 修复了使用 fast_reorg 模式添加索引可能失败的问题 [#54568](https://github.com/pingcap/tidb/issues/54568) @[lance6716](https://github.com/lance6716) + - 修复了 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) + - 修复了库数量较多情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) + - 修复了来自 DM 同步的超过索引列最大长度的表时同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) + - 修复打开 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) + - 修复 TiDB 在统计信息初始化的过程中,无法通过 `CTRL+C` 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) + - 废弃 `inl_merge_join` Optimizer Hint. [#54064](https://github.com/pingcap/tidb/issues/54064) @[AilinKid](https://github.com/AilinKid) + - 修复关联子查询中包含 `WITH ROLLUP` 时可能 panic 并报错 `runtime error: index out of range` 的问题 [#54983](https://github.com/pingcap/tidb/issues/54983) @[AilinKid](https://github.com/AilinKid) + - 修复当 SQL 查询的过滤条件中包含虚拟列,且执行条件中包含 `UnionScan` 时,谓词无法正常下推的问题 [#54870](https://github.com/pingcap/tidb/issues/54870) @[qw4990](https://github.com/qw4990) + - 修复打开 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: invalid memory address or nil pointer dereference` 的问题 [#55169](https://github.com/pingcap/tidb/issues/55169) @[hawkingrei](https://github.com/hawkingrei) + - 修复包含 `UNION` 的查询语句结果可能错误的问题 [#52985](https://github.com/pingcap/tidb/issues/52985) @[XuHuaiyu](https://github.com/XuHuaiyu) + - 修复 `mysql.stats_histograms` 表的 `tot_col_size` 列可能为负数的潜在风险 [#55126](https://github.com/pingcap/tidb/issues/55126) @[qw4990](https://github.com/qw4990) + - 修复 `columnEvaluator` 无法识别输入 chunk 中的列引用,导致执行 SQL 报错 `runtime error: index out of range` 的问题。 [#53713](https://github.com/pingcap/tidb/issues/53713) @[AilinKid](https://github.com/AilinKid) + - `STATS_EXTENDED` 不再是保留关键字 [#39573](https://github.com/pingcap/tidb/issues/39573) @[wddevries](https://github.com/wddevries) + TiDB - - 修复 `tidb_low_resolution` 开启时,`select for update` 可以被执行的问题 [#54684](https://github.com/pingcap/tidb/issues/54684) @[cfzjywxk](https://github.com/cfzjywxk) + - 修复 `tidb_low_resolution` 开启时,`select for update` 可以被执行的问题 [#54684](https://github.com/pingcap/tidb/issues/54684) @[cfzjywxk](https://github.com/cfzjywxk) - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复事务占用的内存可能被多次重复统计的问题 [#53984](https://github.com/pingcap/tidb/issues/53984) @[ekexium](https://github.com/ekexium) @@ -354,6 +399,7 @@ TiDB 版本:8.3.0 - (dup): release-8.1.1.md > 错误修复> TiDB - 修复可以创建非严格自增的 RANGE 分区表的问题 [#54829](https://github.com/pingcap/tidb/issues/54829) @[Defined2014](https://github.com/Defined2014) - (dup): release-8.1.1.md > 错误修复> TiDB - 修复当 SQL 异常中断时,`INDEX_HASH_JOIN` 无法正常退出的问题 [#54688](https://github.com/pingcap/tidb/issues/54688) @[wshwsh12](https://github.com/wshwsh12) - (dup): release-8.1.1.md > 错误修复> TiDB - 修复使用分布式框架添加索引期间出现网络分区可能导致数据索引不一致的问题 [#54897](https://github.com/pingcap/tidb/issues/54897) @[tangenta](https://github.com/tangenta) +- 修复 `tidb_redact_log` 开启时,内部 SQL 在慢日志里无法显示的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) @[lcwangchao](https://github.com/lcwangchao) + TiKV @@ -372,10 +418,17 @@ TiDB 版本:8.3.0 - (dup): release-8.1.1.md > 错误修复> PD - 修复开启 `scheduling` 微服务后,扩缩容进度显示错误的问题 [#8331](https://github.com/tikv/pd/issues/8331) @[rleungx](https://github.com/rleungx) - (dup): release-8.1.1.md > 错误修复> PD - 修复加密管理器在使用前未初始化的问题 [#8384](https://github.com/tikv/pd/issues/8384) @[rleungx](https://github.com/rleungx) - (dup): release-8.1.1.md > 错误修复> PD - 修复部分日志未脱敏的问题 [#8419](https://github.com/tikv/pd/issues/8419) @[rleungx](https://github.com/rleungx) - + - 修复在 PD 开启微服务时,重定向可能发生 panic 的问题 [#8406](https://github.com/tikv/pd/issues/8406) @[HuSharp](https://github.com/HuSharp) + - 修复了 split-merge-interval 不生效的问题 [#8404](https://github.com/tikv/pd/issues/8404) @[lhy1024](https://github.com/lhy1024) + - 修复了开启 replication.strictly-match-label=true 时启动 TiFlash 失败的问题 [#8480](https://github.com/tikv/pd/issues/8480) @[rleungx](https://github.com/rleungx) + - 修复极端场景下可能导致获取 TSO 慢的问题 [#8500](https://github.com/tikv/pd/issues/8500) @[rleungx](https://github.com/rleungx) + - 修复了大规模集群下可能发生数据竞争的问题 [#8386](https://github.com/tikv/pd/issues/8386) @[rleungx](https://github.com/rleungx) + - 修复 runaway 只统计 coprocessor 过程时间消耗的 bug,增加 TiDB 侧的时间统计 [#51325](https://github.com/pingcap/tidb/issues/51325) @[HuSharp](https://github.com/HuSharp) + + TiFlash - - note [#issue](https://github.com/pingcap/tiflash/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - 修复了将字符串转换为带时区或非法字符的日期时间时产生错误结果的漏洞 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) + - 修复 TiFlash 与任意 PD 发生网络分区后,可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - note [#issue](https://github.com/pingcap/tiflash/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,部分查询在执行时可能报列类型不匹配错误的问题 [#9175](https://github.com/pingcap/tiflash/issues/9175) @[JinheLin](https://github.com/JinheLin) @@ -403,11 +456,15 @@ TiDB 版本:8.3.0 - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复 schema tracker 无法正确处理 LIST 分区表导致 DM 报错的问题 [#11408](https://github.com/pingcap/tiflow/issues/11408) @[lance6716](https://github.com/lance6716) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复当索引长度超过 `max-index-length` 默认值时数据同步中断的问题 [#11459](https://github.com/pingcap/tiflow/issues/11459) @[michaelmdeng](https://github.com/michaelmdeng) + - 修复了 DM 对 FAKE_ROTATE_EVENT 处理不正确的问题 [#11381](https://github.com/pingcap/tiflow/issues/11381) @[lance6716](https://github.com/lance6716) + TiDB Lightning - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Lightning - 修复 TiDB Lightning 获取 keyspace 失败时输出的 `WARN` 日志可能引起用户混淆的问题 [#54232](https://github.com/pingcap/tidb/issues/54232) @[kennytm](https://github.com/kennytm) + - 修复了 lightning TLS 配置影响集群证书的问题 [#54172](https://github.com/pingcap/tidb/issues/54172) @[ei-sugimoto](https://github.com/ei-sugimoto) + - 修复了使用 lightning 导入数据时报事务冲突的问题 [#49826](https://github.com/pingcap/tidb/issues/49826) @[lance6716](https://github.com/lance6716) + - 修复了导入大量库表时,checkpoint 文件过大导致性能差的问题 [#55054](https://github.com/pingcap/tidb/issues/55054) @[D3Hunter](https://github.com/D3Hunter) + Dumpling From a1e54f0b0100c47f50cc5fd3763f04053f58bf40 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Thu, 15 Aug 2024 20:16:48 +0800 Subject: [PATCH 064/103] assign bugs to writers for review --- releases/release-8.3.0.md | 83 ++++++++------------------------------- 1 file changed, 16 insertions(+), 67 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 0e8572e38cd8..a8639c74fabb 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -260,10 +260,6 @@ TiDB 版本:8.3.0 * 在系统表 [`INFORMATION_SCHEMA.PROCESSLIST`](/information-schema/information-schema-processlist.md) 和 [`INFORMATION_SCHEMA.CLUSTER_PROCESSLIST`](/information-schema/information-schema-processlist.md#cluster_processlist) 中新增 `ROWS_AFFECTED` 字段,用于显示 DML 语句当前影响的数据行数。[#46889](https://github.com/pingcap/tidb/issues/46889) @[lcwangchao](https://github.com/lcwangchao) **tw@qiancai** -### 其他 - -## 离线包变更 - ## 废弃功能 * 以下为从 v8.3.0 开始已废弃的功能: @@ -278,7 +274,8 @@ TiDB 版本:8.3.0 ## 改进提升 -+ TiDB ++ TiDB + - 支持 `SELECT ... STRAIGHT_JOIN ... USING ( ... )` 语句 [#54162](https://github.com/pingcap/tidb/issues/54162) @[dveeden](https://github.com/dveeden) - 支持为形如 `((idx_col_1 > 1) or (idx_col_1 = 1 and idx_col_2 > 10)) and ((idx_col_1 < 10) or (idx_col_1 = 10 and idx_col_2 < 20))` 的过滤条件构造更精准的索引访问 Range [#54337](https://github.com/pingcap/tidb/issues/54337) @[ghazalfamilyusa](https://github.com/ghazalfamilyusa) - 支持形如 `WHERE idx_col_1 IS NULL ORDER BY idx_col_2` 的 SQL 查询利用索引的顺序而不需要额外的排序操作 [#54188](https://github.com/pingcap/tidb/issues/54188) @[ari-e](https://github.com/ari-e) @@ -298,12 +295,7 @@ TiDB 版本:8.3.0 - 提升了 schema 信息缓存开启时部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) - 优化了添加唯一索引时冲突键的报错信息 [#53004](https://github.com/pingcap/tidb/issues/53004) @[lance6716](https://github.com/lance6716) -+ TiKV - - - note [#issue](链接) @[贡献者 GitHub ID](链接) - - note [#issue](链接) @[贡献者 GitHub ID](链接) - -+ PD ++ PD - 可以通过 pd-ctl 修改 evict-leader-scheduler 的 batch 配置,来提升 evict leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) - Label distribution 面板新增了 store_id,可以看到不同的 label 对应的 store [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) @@ -315,14 +307,14 @@ TiDB 版本:8.3.0 - PD 微服务添加了 --name 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) - 可以通过 region 数量动态调整 `PatrolRegionScanLimit`,减少扫描 region 需要的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) -+ TiFlash ++ TiFlash - 支持生成 svg 格式的堆内存分析结果 [#9320](https://github.com/pingcap/tiflash/issues/9320) @[CalvinNeo](https://github.com/CalvinNeo) - note [#issue](链接) @[贡献者 GitHub ID](链接) + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** @@ -334,27 +326,13 @@ TiDB 版本:8.3.0 - 修复备份恢复时进度条卡住的问题 [#54140](https://github.com/pingcap/tidb/issues/54140) @[Leavrth](https://github.com/Leavrth) - 修复备份恢复断点路径在一些外部存储中不兼容的问题 [#55265](https://github.com/pingcap/tidb/issues/55265) @[Leavrth](https://github.com/Leavrth) - + TiCDC + + TiCDC - kafka sink 的 claim check 功能支持将大 value 存储到外部存储系统 [#11396](https://github.com/pingcap/tiflow/issues/11396)) @[3AceShowHand](https://github.com/3AceShowHand) - + 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 + ++ TiDB - 重置 pipelinedwindow 的 Open 方法中的参数,以避免当 pipelinedwindow 作为 apply 的子节点使用时,由于重复的打开和关闭操作导致重用先前的参数值而发生的意外错误 [#53600](https://github.com/pingcap/tidb/issues/53600) @[XuHuaiyu](https://github.com/XuHuaiyu) - 修复了由于超出 tidb_mem_quota_query 而导致查询被终止时可能卡住的问题 [#55042](https://github.com/pingcap/tidb/issues/55042) @[yibin87](https://github.com/yibin87) @@ -366,7 +344,7 @@ TiDB 版本:8.3.0 - 修复了使用 fast_reorg 模式添加索引可能失败的问题 [#54568](https://github.com/pingcap/tidb/issues/54568) @[lance6716](https://github.com/lance6716) - 修复了 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) - 修复了库数量较多情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) - - 修复了来自 DM 同步的超过索引列最大长度的表时同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) + - 修复了来自 DM 同步的超过索引列最大长度的表时同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) - 修复打开 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) - 修复 TiDB 在统计信息初始化的过程中,无法通过 `CTRL+C` 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) - 废弃 `inl_merge_join` Optimizer Hint. [#54064](https://github.com/pingcap/tidb/issues/54064) @[AilinKid](https://github.com/AilinKid) @@ -377,7 +355,6 @@ TiDB 版本:8.3.0 - 修复 `mysql.stats_histograms` 表的 `tot_col_size` 列可能为负数的潜在风险 [#55126](https://github.com/pingcap/tidb/issues/55126) @[qw4990](https://github.com/qw4990) - 修复 `columnEvaluator` 无法识别输入 chunk 中的列引用,导致执行 SQL 报错 `runtime error: index out of range` 的问题。 [#53713](https://github.com/pingcap/tidb/issues/53713) @[AilinKid](https://github.com/AilinKid) - `STATS_EXTENDED` 不再是保留关键字 [#39573](https://github.com/pingcap/tidb/issues/39573) @[wddevries](https://github.com/wddevries) -+ TiDB - 修复 `tidb_low_resolution` 开启时,`select for update` 可以被执行的问题 [#54684](https://github.com/pingcap/tidb/issues/54684) @[cfzjywxk](https://github.com/cfzjywxk) - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) @@ -399,17 +376,10 @@ TiDB 版本:8.3.0 - (dup): release-8.1.1.md > 错误修复> TiDB - 修复可以创建非严格自增的 RANGE 分区表的问题 [#54829](https://github.com/pingcap/tidb/issues/54829) @[Defined2014](https://github.com/Defined2014) - (dup): release-8.1.1.md > 错误修复> TiDB - 修复当 SQL 异常中断时,`INDEX_HASH_JOIN` 无法正常退出的问题 [#54688](https://github.com/pingcap/tidb/issues/54688) @[wshwsh12](https://github.com/wshwsh12) - (dup): release-8.1.1.md > 错误修复> TiDB - 修复使用分布式框架添加索引期间出现网络分区可能导致数据索引不一致的问题 [#54897](https://github.com/pingcap/tidb/issues/54897) @[tangenta](https://github.com/tangenta) -- 修复 `tidb_redact_log` 开启时,内部 SQL 在慢日志里无法显示的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) @[lcwangchao](https://github.com/lcwangchao) + - 修复 `tidb_redact_log` 开启时,内部 SQL 在慢日志里无法显示的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) @[lcwangchao](https://github.com/lcwangchao) -+ TiKV ++ PD - - note [#issue](https://github.com/tikv/tikv/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/tikv/tikv/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - -+ PD - - - note [#issue](https://github.com/tikv/pd/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/tikv/pd/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> PD - 修复将角色 (role) 绑定到资源组时未报错的问题 [#54417](https://github.com/pingcap/tidb/issues/54417) @[JmPotato](https://github.com/JmPotato) - (dup): release-7.5.3.md > 错误修复> PD - 修复资源组在请求 token 超过 500 ms 时遇到超出配额限制的问题 [#8349](https://github.com/tikv/pd/issues/8349) @[nolouch](https://github.com/nolouch) - (dup): release-8.1.1.md > 错误修复> PD - 修复 `INFORMATION_SCHEMA.RUNAWAY_WATCHES` 表中时间类型不正确的问题 [#54770](https://github.com/pingcap/tidb/issues/54770) @[HuSharp](https://github.com/HuSharp) @@ -425,7 +395,7 @@ TiDB 版本:8.3.0 - 修复了大规模集群下可能发生数据竞争的问题 [#8386](https://github.com/tikv/pd/issues/8386) @[rleungx](https://github.com/rleungx) - 修复 runaway 只统计 coprocessor 过程时间消耗的 bug,增加 TiDB 侧的时间统计 [#51325](https://github.com/pingcap/tidb/issues/51325) @[HuSharp](https://github.com/HuSharp) -+ TiFlash ++ TiFlash - 修复了将字符串转换为带时区或非法字符的日期时间时产生错误结果的漏洞 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) - 修复 TiFlash 与任意 PD 发生网络分区后,可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) @@ -443,47 +413,26 @@ TiDB 版本:8.3.0 + Backup & Restore (BR) - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> Tools> Backup & Restore (BR) - 修复增量恢复过程中 `ADD INDEX`、`MODIFY COLUMN` 等需要回填的 DDL 可能无法正确恢复的问题 [#54426](https://github.com/pingcap/tidb/issues/54426) @[3pointer](https://github.com/3pointer) - + TiCDC + + TiCDC - 修复当下游 Kafka 无法访问时,Processor 模块可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) - + TiDB Data Migration (DM) + + TiDB Data Migration (DM) - - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复 schema tracker 无法正确处理 LIST 分区表导致 DM 报错的问题 [#11408](https://github.com/pingcap/tiflow/issues/11408) @[lance6716](https://github.com/lance6716) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复当索引长度超过 `max-index-length` 默认值时数据同步中断的问题 [#11459](https://github.com/pingcap/tiflow/issues/11459) @[michaelmdeng](https://github.com/michaelmdeng) - 修复了 DM 对 FAKE_ROTATE_EVENT 处理不正确的问题 [#11381](https://github.com/pingcap/tiflow/issues/11381) @[lance6716](https://github.com/lance6716) - + TiDB Lightning + + TiDB Lightning - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Lightning - 修复 TiDB Lightning 获取 keyspace 失败时输出的 `WARN` 日志可能引起用户混淆的问题 [#54232](https://github.com/pingcap/tidb/issues/54232) @[kennytm](https://github.com/kennytm) - 修复了 lightning TLS 配置影响集群证书的问题 [#54172](https://github.com/pingcap/tidb/issues/54172) @[ei-sugimoto](https://github.com/ei-sugimoto) - 修复了使用 lightning 导入数据时报事务冲突的问题 [#49826](https://github.com/pingcap/tidb/issues/49826) @[lance6716](https://github.com/lance6716) - 修复了导入大量库表时,checkpoint 文件过大导致性能差的问题 [#55054](https://github.com/pingcap/tidb/issues/55054) @[D3Hunter](https://github.com/D3Hunter) - - + Dumpling - - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - + TiUP - - - note [#issue](https://github.com/pingcap/tiup/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tiup/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - + TiDB Binlog - - - note [#issue](https://github.com/pingcap/tidb-binlog/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tidb-binlog/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - -## Other dup notes - - + ## 贡献者 感谢来自 TiDB 社区的贡献者们: From eed334dd356f85158e781f3694defd276e07f109 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Fri, 16 Aug 2024 09:47:25 +0800 Subject: [PATCH 065/103] Apply suggestions from code review --- releases/release-8.3.0.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index a8639c74fabb..14926d1dbd81 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -356,8 +356,7 @@ TiDB 版本:8.3.0 - 修复 `columnEvaluator` 无法识别输入 chunk 中的列引用,导致执行 SQL 报错 `runtime error: index out of range` 的问题。 [#53713](https://github.com/pingcap/tidb/issues/53713) @[AilinKid](https://github.com/AilinKid) - `STATS_EXTENDED` 不再是保留关键字 [#39573](https://github.com/pingcap/tidb/issues/39573) @[wddevries](https://github.com/wddevries) - 修复 `tidb_low_resolution` 开启时,`select for update` 可以被执行的问题 [#54684](https://github.com/pingcap/tidb/issues/54684) @[cfzjywxk](https://github.com/cfzjywxk) - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - 修复 `tidb_redact_log` 开启时,内部 SQL 在慢日志里无法显示的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) @[lcwangchao](https://github.com/lcwangchao) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复事务占用的内存可能被多次重复统计的问题 [#53984](https://github.com/pingcap/tidb/issues/53984) @[ekexium](https://github.com/ekexium) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复使用 `SHOW WARNINGS;` 获取警告时可能导致 panic 的问题 [#48756](https://github.com/pingcap/tidb/issues/48756) @[xhebox](https://github.com/xhebox) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复加载索引统计信息可能会造成内存泄漏的问题 [#54022](https://github.com/pingcap/tidb/issues/54022) @[hi-rustin](https://github.com/hi-rustin) @@ -376,7 +375,6 @@ TiDB 版本:8.3.0 - (dup): release-8.1.1.md > 错误修复> TiDB - 修复可以创建非严格自增的 RANGE 分区表的问题 [#54829](https://github.com/pingcap/tidb/issues/54829) @[Defined2014](https://github.com/Defined2014) - (dup): release-8.1.1.md > 错误修复> TiDB - 修复当 SQL 异常中断时,`INDEX_HASH_JOIN` 无法正常退出的问题 [#54688](https://github.com/pingcap/tidb/issues/54688) @[wshwsh12](https://github.com/wshwsh12) - (dup): release-8.1.1.md > 错误修复> TiDB - 修复使用分布式框架添加索引期间出现网络分区可能导致数据索引不一致的问题 [#54897](https://github.com/pingcap/tidb/issues/54897) @[tangenta](https://github.com/tangenta) - - 修复 `tidb_redact_log` 开启时,内部 SQL 在慢日志里无法显示的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) @[lcwangchao](https://github.com/lcwangchao) + PD @@ -397,7 +395,7 @@ TiDB 版本:8.3.0 + TiFlash - - 修复了将字符串转换为带时区或非法字符的日期时间时产生错误结果的漏洞 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) + - 修复使用 `CAST()` 函数将字符串转换为带时区或非法字符的日期时间时结果错误的问题 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) - 修复 TiFlash 与任意 PD 发生网络分区后,可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - note [#issue](https://github.com/pingcap/tiflash/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) From 6efb4b2fe15c7d34ded0dce0506398e8a58d638d Mon Sep 17 00:00:00 2001 From: Aolin Date: Fri, 16 Aug 2024 10:39:07 +0800 Subject: [PATCH 066/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 14926d1dbd81..a607e714444d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -28,7 +28,7 @@ TiDB 版本:8.3.0 全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 - 默认允许将 Projection 算子下推到存储引擎**tw@Oreoxmt** + 默认允许将 Projection 算子下推到存储引擎**tw@Oreoxmt** Projection 算子下推可以将负载分散到存储节点,同时减少节点间的数据传输。这有助于降低部分 SQL 的执行时间,提升数据库的整体性能。 @@ -37,7 +37,7 @@ TiDB 版本:8.3.0 稳定性与高可用 - TiProxy 内置虚拟 IP 管理**tw@Oreoxmt** + TiProxy 内置虚拟 IP 管理**tw@Oreoxmt** TiProxy 内置了虚拟 IP 管理功能,配置后支持自动切换虚拟 IP,而无需依赖外部平台或工具。这简化了 TiProxy 的部署,降低了数据库接入层的复杂度。 @@ -57,13 +57,13 @@ TiDB 版本:8.3.0 * 优化器默认允许将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** - 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的数据传输量。这在处理 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md)时尤其有效。从 v8.3.0 开始,TiDB 默认开启 `Projection` 算子下推功能,控制该功能的系统变量 [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 的默认值从 `OFF` 修改为 `ON`。启用该功能后,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推到存储引擎。 + 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的数据传输量,从而提升 SQL 执行效率。这在处理包含 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md) 的查询时尤其有效。从 v8.3.0 开始,TiDB 默认开启 `Projection` 算子下推功能,控制该功能的系统变量 [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 的默认值从 `OFF` 修改为 `ON`。启用该功能后,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推到存储引擎。 更多信息,请参考[用户文档](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入)。 * 优化 KV(键值)请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** - TiDB 通过 KV 请求读取数据。将多个 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 + TiDB 通过向 TiKV 发送 KV 请求读取数据。将多个 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 From 6550d7720a09a7473f77e444a052063608ae40cb Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 16 Aug 2024 12:26:12 +0800 Subject: [PATCH 067/103] Update releases/release-8.3.0.md Co-authored-by: lucasliang --- releases/release-8.3.0.md | 5 ----- 1 file changed, 5 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index a607e714444d..f6e734eb4c4e 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -247,12 +247,7 @@ TiDB 版本:8.3.0 |----------------|--------------------|------|------------------------------------| | TiDB | [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) | 新增 | 控制 TiDB 向 TiKV 发送请求时的批处理策略。 | | PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| PD | [`schedule.max-merge-region-keys`](/pd-configuration-file.md#max-merge-region-keys) | 修改 | 默认值从 `200000` 修改为 `540000`,以兼容 `schedule.max-merge-region-size` 的默认值调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | -| PD | [`schedule.max-merge-region-size`](/pd-configuration-file.md#max-merge-region-size) | 修改 | 将默认值从 `20` MiB 修改为 `54` MiB,以兼容 TiKV 侧默认 Region 大小扩大为 `256` MiB 的调整,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiKV | [`coprocessor.region-split-size`](/tikv-configuration-file.md#region-split-size) | 修改 | 默认值从 `96` MiB 修改为 `256` MiB,减小随着集群规模增大后 Region 个数过多带来的管理压力。 | -| TiKV | [`coprocessor.region-max-size`](/tikv-configuration-file.md#region-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-split-size` 扩大为 `256` MiB 的修改。 | -| TiKV | [`backup.sst-max-size`](/tikv-configuration-file.md#sst-max-size) | 修改 | 默认值从 `144` MiB 修改为 `384` MiB,以兼容 `coprocessor.region-max-size` 扩大为 `384` MiB 的修改。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | From ba34d90ad4d9bf996738651a6fcfd24caab01816 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Fri, 16 Aug 2024 13:58:53 +0800 Subject: [PATCH 068/103] Apply suggestions from code review Co-authored-by: okJiang Co-authored-by: Yang Zhang --- releases/release-8.3.0.md | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index f6e734eb4c4e..dd608d933822 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -182,6 +182,8 @@ TiDB 版本:8.3.0 从 v8.3.0 开始,TiDB 会在日志中分阶段打印初始统计信息的加载进度,以便了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的[监控 API](/tidb-monitoring-api.md),以便能够在启动阶段随时获取初始统计信息的加载进度。 +* 展示资源组信息 [#8444](https://github.com/tikv/pd/issues/8444) @[nolouch](https://github.com/nolouch) + ### 安全 * 增强 PD 日志脱敏 [#8305](https://github.com/tikv/pd/issues/8305) @[JmPotato](https://github.com/JmPotato) **tw@hfxsd** @@ -218,7 +220,7 @@ TiDB 版本:8.3.0 ### 行为变更 -* 行为变更 1 +* 为了避免命令错误使用,pd-ctl 取消了前缀匹配的机制,例如 `store remove-tombstone` 不能通过 `store remove` 来调用 [#8413](https://github.com/tikv/pd/issues/8413) @[lhy1024](https://github.com/lhy1024) * 行为变更 2 ### MySQL 兼容性 @@ -302,6 +304,14 @@ TiDB 版本:8.3.0 - PD 微服务添加了 --name 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) - 可以通过 region 数量动态调整 `PatrolRegionScanLimit`,减少扫描 region 需要的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) ++ TiKV + + - 优化 async-io 的 batching 的能力,减少对 IO bandwidth 资源的使用 [#16907](https://github.com/tikv/tikv/issues/16907) @[LykxSassinator](https://github.com/LykxSassinator) + - 重新设计了 CDC 的 delegate 和 downstream 模块以更好的支持 partial subscription [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) + - 减少单个 slow log 的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @(Connor1996)[https://github.com/Connor1996] + - 增加 `min safe ts` metric [#17307](https://github.com/tikv/tikv/issues/17307) @[mittalrishabh](https://github.com/mittalrishabh) + - 减少 peer message channel 的内存使用 [#16229](https://github.com/tikv/tikv/issues/16229) @[Connor1996](https://github.com/Connor1996) + + TiFlash - 支持生成 svg 格式的堆内存分析结果 [#9320](https://github.com/pingcap/tiflash/issues/9320) @[CalvinNeo](https://github.com/CalvinNeo) @@ -340,16 +350,16 @@ TiDB 版本:8.3.0 - 修复了 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) - 修复了库数量较多情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) - 修复了来自 DM 同步的超过索引列最大长度的表时同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) - - 修复打开 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) + - 修复开启 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) - 修复 TiDB 在统计信息初始化的过程中,无法通过 `CTRL+C` 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) - - 废弃 `inl_merge_join` Optimizer Hint. [#54064](https://github.com/pingcap/tidb/issues/54064) @[AilinKid](https://github.com/AilinKid) - - 修复关联子查询中包含 `WITH ROLLUP` 时可能 panic 并报错 `runtime error: index out of range` 的问题 [#54983](https://github.com/pingcap/tidb/issues/54983) @[AilinKid](https://github.com/AilinKid) + - 修复 `INL_MERGE_JOIN` Optimizer Hint 返回错误结果的问题,将其废弃 [#54064](https://github.com/pingcap/tidb/issues/54064) @[AilinKid](https://github.com/AilinKid) + - 修复关联子查询中包含 `WITH ROLLUP` 时 TiDB 可能 panic 并报错 `runtime error: index out of range` 的问题 [#54983](https://github.com/pingcap/tidb/issues/54983) @[AilinKid](https://github.com/AilinKid) - 修复当 SQL 查询的过滤条件中包含虚拟列,且执行条件中包含 `UnionScan` 时,谓词无法正常下推的问题 [#54870](https://github.com/pingcap/tidb/issues/54870) @[qw4990](https://github.com/qw4990) - - 修复打开 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: invalid memory address or nil pointer dereference` 的问题 [#55169](https://github.com/pingcap/tidb/issues/55169) @[hawkingrei](https://github.com/hawkingrei) - - 修复包含 `UNION` 的查询语句结果可能错误的问题 [#52985](https://github.com/pingcap/tidb/issues/52985) @[XuHuaiyu](https://github.com/XuHuaiyu) + - 修复开启 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: invalid memory address or nil pointer dereference` 的问题 [#55169](https://github.com/pingcap/tidb/issues/55169) @[hawkingrei](https://github.com/hawkingrei) + - 修复包含 `UNION` 的查询语句可能返回错误结果的问题 [#52985](https://github.com/pingcap/tidb/issues/52985) @[XuHuaiyu](https://github.com/XuHuaiyu) - 修复 `mysql.stats_histograms` 表的 `tot_col_size` 列可能为负数的潜在风险 [#55126](https://github.com/pingcap/tidb/issues/55126) @[qw4990](https://github.com/qw4990) - - 修复 `columnEvaluator` 无法识别输入 chunk 中的列引用,导致执行 SQL 报错 `runtime error: index out of range` 的问题。 [#53713](https://github.com/pingcap/tidb/issues/53713) @[AilinKid](https://github.com/AilinKid) - - `STATS_EXTENDED` 不再是保留关键字 [#39573](https://github.com/pingcap/tidb/issues/39573) @[wddevries](https://github.com/wddevries) + - 修复 `columnEvaluator` 无法识别输入 chunk 中的列引用,导致执行 SQL 报错 `runtime error: index out of range` 的问题 [#53713](https://github.com/pingcap/tidb/issues/53713) @[AilinKid](https://github.com/AilinKid) + - 修复 `STATS_EXTENDED` 变成保留关键字的问题 [#39573](https://github.com/pingcap/tidb/issues/39573) @[wddevries](https://github.com/wddevries) - 修复 `tidb_low_resolution` 开启时,`select for update` 可以被执行的问题 [#54684](https://github.com/pingcap/tidb/issues/54684) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 `tidb_redact_log` 开启时,内部 SQL 在慢日志里无法显示的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) @[lcwangchao](https://github.com/lcwangchao) - (dup): release-7.5.3.md > 错误修复> TiDB - 修复事务占用的内存可能被多次重复统计的问题 [#53984](https://github.com/pingcap/tidb/issues/53984) @[ekexium](https://github.com/ekexium) @@ -402,6 +412,14 @@ TiDB 版本:8.3.0 - 修复在存算分离架构下,TiFlash 写节点可能重启失败的问题 [#9282](https://github.com/pingcap/tiflash/issues/9282) @[JaySon-Huang](https://github.com/JaySon-Huang) - 修复在存算分离架构下,TiFlash 写节点的读快照可能没有被及时释放的问题 [#9298](https://github.com/pingcap/tiflash/issues/9298) @[JinheLin](https://github.com/JinheLin) ++ TiKV + + - 修复了 grafana TiKV 组件中的 `Ingestion picked level` 和 `Compaction Job Size(files)` 显示不正确的问题 [#15990](https://github.com/tikv/tikv/issues/15990) @[Connor1996](https://github.com/Connor1996) + - 修复了 `cancel_generating_snap` 错误更新 `snap_tried_cnt` 导致 TiKV panic 的问题 [#17226](https://github.com/tikv/tikv/issues/17226) @[hbisheng](https://github.com/hbisheng) + - 修复了 `Ingest SST duration seconds` 统计 tag 错误的问题 [#17239](https://github.com/tikv/tikv/issues/17239) @[LykxSassinator](https://github.com/LykxSassinator) + - 修复了 CPU profiling flag 在出现错误时没有正确重置的问题 [#17234](https://github.com/tikv/tikv/issues/17234) @[Connor1996](https://github.com/Connor1996) + - 修复了旧版本 (< 7.1) 和之后版本 bloom filter 无法兼容的问题 [#17272](https://github.com/tikv/tikv/issues/17272) @[v01dstar](https://github.com/v01dstar) + + Tools + Backup & Restore (BR) From cc01169f5feb244fa4d289156594cb03698c8974 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Fri, 16 Aug 2024 15:36:05 +0800 Subject: [PATCH 069/103] Apply suggestions from code review --- releases/release-8.3.0.md | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index dd608d933822..71524b0dd466 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -306,10 +306,10 @@ TiDB 版本:8.3.0 + TiKV - - 优化 async-io 的 batching 的能力,减少对 IO bandwidth 资源的使用 [#16907](https://github.com/tikv/tikv/issues/16907) @[LykxSassinator](https://github.com/LykxSassinator) - - 重新设计了 CDC 的 delegate 和 downstream 模块以更好的支持 partial subscription [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) - - 减少单个 slow log 的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @(Connor1996)[https://github.com/Connor1996] - - 增加 `min safe ts` metric [#17307](https://github.com/tikv/tikv/issues/17307) @[mittalrishabh](https://github.com/mittalrishabh) + - 优化 `async-io` 的 batching 的能力,减少对 I/O bandwidth 资源的使用 [#16907](https://github.com/tikv/tikv/issues/16907) @[LykxSassinator](https://github.com/LykxSassinator) + - 重新设计了 TiCDC 的 delegate 和 downstream 模块以更好地支持 partial subscription [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) + - 减少单个慢日志的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @(Connor1996)[https://github.com/Connor1996] + - 增加监控指标 `min safe ts` [#17307](https://github.com/tikv/tikv/issues/17307) @[mittalrishabh](https://github.com/mittalrishabh) - 减少 peer message channel 的内存使用 [#16229](https://github.com/tikv/tikv/issues/16229) @[Connor1996](https://github.com/Connor1996) + TiFlash @@ -402,7 +402,6 @@ TiDB 版本:8.3.0 - 修复使用 `CAST()` 函数将字符串转换为带时区或非法字符的日期时间时结果错误的问题 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) - 修复 TiFlash 与任意 PD 发生网络分区后,可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - - note [#issue](https://github.com/pingcap/tiflash/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,部分查询在执行时可能报列类型不匹配错误的问题 [#9175](https://github.com/pingcap/tiflash/issues/9175) @[JinheLin](https://github.com/JinheLin) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,带有虚拟生成列的查询可能返回错误结果的问题 [#9188](https://github.com/pingcap/tiflash/issues/9188) @[JinheLin](https://github.com/JinheLin) @@ -414,11 +413,11 @@ TiDB 版本:8.3.0 + TiKV - - 修复了 grafana TiKV 组件中的 `Ingestion picked level` 和 `Compaction Job Size(files)` 显示不正确的问题 [#15990](https://github.com/tikv/tikv/issues/15990) @[Connor1996](https://github.com/Connor1996) - - 修复了 `cancel_generating_snap` 错误更新 `snap_tried_cnt` 导致 TiKV panic 的问题 [#17226](https://github.com/tikv/tikv/issues/17226) @[hbisheng](https://github.com/hbisheng) - - 修复了 `Ingest SST duration seconds` 统计 tag 错误的问题 [#17239](https://github.com/tikv/tikv/issues/17239) @[LykxSassinator](https://github.com/LykxSassinator) - - 修复了 CPU profiling flag 在出现错误时没有正确重置的问题 [#17234](https://github.com/tikv/tikv/issues/17234) @[Connor1996](https://github.com/Connor1996) - - 修复了旧版本 (< 7.1) 和之后版本 bloom filter 无法兼容的问题 [#17272](https://github.com/tikv/tikv/issues/17272) @[v01dstar](https://github.com/v01dstar) + - 修复 Grafana TiKV 组件中的 `Ingestion picked level` 和 `Compaction Job Size(files)` 显示不正确的问题 [#15990](https://github.com/tikv/tikv/issues/15990) @[Connor1996](https://github.com/Connor1996) + - 修复 `cancel_generating_snap` 错误地更新 `snap_tried_cnt` 导致 TiKV panic 的问题 [#17226](https://github.com/tikv/tikv/issues/17226) @[hbisheng](https://github.com/hbisheng) + - 修复 `Ingest SST duration seconds` 统计信息说明错误的问题 [#17239](https://github.com/tikv/tikv/issues/17239) @[LykxSassinator](https://github.com/LykxSassinator) + - 修复 CPU profiling flag 在出现错误时没有正确重置的问题 [#17234](https://github.com/tikv/tikv/issues/17234) @[Connor1996](https://github.com/Connor1996) + - 修复早期版本(早于 v7.1)和之后的版本的 bloom filter 无法兼容的问题 [#17272](https://github.com/tikv/tikv/issues/17272) @[v01dstar](https://github.com/v01dstar) + Tools @@ -434,7 +433,7 @@ TiDB 版本:8.3.0 - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复 schema tracker 无法正确处理 LIST 分区表导致 DM 报错的问题 [#11408](https://github.com/pingcap/tiflow/issues/11408) @[lance6716](https://github.com/lance6716) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复当索引长度超过 `max-index-length` 默认值时数据同步中断的问题 [#11459](https://github.com/pingcap/tiflow/issues/11459) @[michaelmdeng](https://github.com/michaelmdeng) - - 修复了 DM 对 FAKE_ROTATE_EVENT 处理不正确的问题 [#11381](https://github.com/pingcap/tiflow/issues/11381) @[lance6716](https://github.com/lance6716) + - 修复 DM 无法正确处理 `FAKE_ROTATE_EVENT` 的问题 [#11381](https://github.com/pingcap/tiflow/issues/11381) @[lance6716](https://github.com/lance6716) + TiDB Lightning From 08a274d49bcdc7c69c72d49fafb067c39ddb65c5 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Sat, 17 Aug 2024 16:03:35 +0800 Subject: [PATCH 070/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 71524b0dd466..2df6c75e95bf 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -447,4 +447,13 @@ TiDB 版本:8.3.0 感谢来自 TiDB 社区的贡献者们: -- [贡献者 GitHub ID]() +- [ari-e](https://github.com/ari-e) +- [ei-sugimoto](https://github.com/ei-sugimoto) +- [HaoW30](https://github.com/HaoW30) +- [JackL9u](https://github.com/JackL9u) +- [michaelmdeng](https://github.com/michaelmdeng) +- [mittalrishabh](https://github.com/mittalrishabh) +- [qingfeng777](https://github.com/qingfeng777) +- [renovate](https://github.com/apps/renovate) +- [SandeepPadhi](https://github.com/SandeepPadhi) +- [yzhan1](https://github.com/yzhan1) From 8060fd2a62e80c2adbcff7e619fc8a191f4758e0 Mon Sep 17 00:00:00 2001 From: lilin90 Date: Mon, 19 Aug 2024 11:04:06 +0800 Subject: [PATCH 071/103] Update wording --- releases/release-8.3.0.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2df6c75e95bf..4f46ae19f7f7 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -314,22 +314,21 @@ TiDB 版本:8.3.0 + TiFlash - - 支持生成 svg 格式的堆内存分析结果 [#9320](https://github.com/pingcap/tiflash/issues/9320) @[CalvinNeo](https://github.com/CalvinNeo) - - note [#issue](链接) @[贡献者 GitHub ID](链接) + - 支持生成 SVG 格式的堆内存分析结果 [#9320](https://github.com/pingcap/tiflash/issues/9320) @[CalvinNeo](https://github.com/CalvinNeo) + Tools + Backup & Restore (BR) - - 在第一次进行按时间点恢复 (PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** + - 在第一次进行按时间点恢复 (Point-in-time recovery, PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - (dup): release-7.5.3.md > 改进提升> Tools> Backup & Restore (BR) - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) - - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置 GOMEMLIMIT,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) + - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - 修复了基于增量备份做时间点恢复的兼容性问题 [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) - 修复备份恢复时进度条卡住的问题 [#54140](https://github.com/pingcap/tidb/issues/54140) @[Leavrth](https://github.com/Leavrth) - - 修复备份恢复断点路径在一些外部存储中不兼容的问题 [#55265](https://github.com/pingcap/tidb/issues/55265) @[Leavrth](https://github.com/Leavrth) + - 修复备份恢复的断点路径在一些外部存储中不兼容的问题 [#55265](https://github.com/pingcap/tidb/issues/55265) @[Leavrth](https://github.com/Leavrth) + TiCDC From 7e32a2c8d3f856648972dfeae5e733c3e8627f47 Mon Sep 17 00:00:00 2001 From: lilin90 Date: Mon, 19 Aug 2024 11:25:17 +0800 Subject: [PATCH 072/103] Reorganize and update wording --- releases/release-8.3.0.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 4f46ae19f7f7..294bfd42c512 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -311,14 +311,14 @@ TiDB 版本:8.3.0 - 减少单个慢日志的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @(Connor1996)[https://github.com/Connor1996] - 增加监控指标 `min safe ts` [#17307](https://github.com/tikv/tikv/issues/17307) @[mittalrishabh](https://github.com/mittalrishabh) - 减少 peer message channel 的内存使用 [#16229](https://github.com/tikv/tikv/issues/16229) @[Connor1996](https://github.com/Connor1996) - + + TiFlash - 支持生成 SVG 格式的堆内存分析结果 [#9320](https://github.com/pingcap/tiflash/issues/9320) @[CalvinNeo](https://github.com/CalvinNeo) + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - 在第一次进行按时间点恢复 (Point-in-time recovery, PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** @@ -326,13 +326,11 @@ TiDB 版本:8.3.0 - (dup): release-7.5.3.md > 改进提升> Tools> Backup & Restore (BR) - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - - 修复了基于增量备份做时间点恢复的兼容性问题 [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) - - 修复备份恢复时进度条卡住的问题 [#54140](https://github.com/pingcap/tidb/issues/54140) @[Leavrth](https://github.com/Leavrth) - - 修复备份恢复的断点路径在一些外部存储中不兼容的问题 [#55265](https://github.com/pingcap/tidb/issues/55265) @[Leavrth](https://github.com/Leavrth) + - 使增量备份兼容按时间点恢复 [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) + TiCDC - - kafka sink 的 claim check 功能支持将大 value 存储到外部存储系统 [#11396](https://github.com/pingcap/tiflow/issues/11396)) @[3AceShowHand](https://github.com/3AceShowHand) + - kafka sink 的 claim check 功能支持将大 value 存储到外部存储系统 [#11396](https://github.com/pingcap/tiflow/issues/11396) @[3AceShowHand](https://github.com/3AceShowHand) ## 错误修复 @@ -420,9 +418,11 @@ TiDB 版本:8.3.0 + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - (dup): release-7.5.3.md > 错误修复> Tools> Backup & Restore (BR) - 修复增量恢复过程中 `ADD INDEX`、`MODIFY COLUMN` 等需要回填的 DDL 可能无法正确恢复的问题 [#54426](https://github.com/pingcap/tidb/issues/54426) @[3pointer](https://github.com/3pointer) + - 修复备份恢复时进度条卡住的问题 [#54140](https://github.com/pingcap/tidb/issues/54140) @[Leavrth](https://github.com/Leavrth) + - 修复备份恢复的断点路径在一些外部存储中不兼容的问题 [#55265](https://github.com/pingcap/tidb/issues/55265) @[Leavrth](https://github.com/Leavrth) + TiCDC From 7ab79e430f76e2ad4e4a2e8c66446085a518f68c Mon Sep 17 00:00:00 2001 From: lilin90 Date: Mon, 19 Aug 2024 12:01:50 +0800 Subject: [PATCH 073/103] Refine description and format --- releases/release-8.3.0.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 294bfd42c512..477e1f3b54b1 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -336,9 +336,9 @@ TiDB 版本:8.3.0 + TiDB - - 重置 pipelinedwindow 的 Open 方法中的参数,以避免当 pipelinedwindow 作为 apply 的子节点使用时,由于重复的打开和关闭操作导致重用先前的参数值而发生的意外错误 [#53600](https://github.com/pingcap/tidb/issues/53600) @[XuHuaiyu](https://github.com/XuHuaiyu) - - 修复了由于超出 tidb_mem_quota_query 而导致查询被终止时可能卡住的问题 [#55042](https://github.com/pingcap/tidb/issues/55042) @[yibin87](https://github.com/yibin87) - - 修复了触发 HashAgg 落盘时计算错误结果的问题 [#55290](https://github.com/pingcap/tidb/issues/55290) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 通过重置 `PipelinedWindow` 的 `Open` 方法中的参数,修复当 `PipelinedWindow` 作为 apply 的子节点使用时,由于重复的打开和关闭操作导致重用之前的参数值而发生的意外错误 [#53600](https://github.com/pingcap/tidb/issues/53600) @[XuHuaiyu](https://github.com/XuHuaiyu) + - 修复由于查询超出 `tidb_mem_quota_query` 设定的内存使用限制,导致终止查询时可能卡住的问题 [#55042](https://github.com/pingcap/tidb/issues/55042) @[yibin87](https://github.com/yibin87) + - 修复了 HashAgg 算子在并行计算过程中因落盘导致查询结果不正确的问题 [#55290](https://github.com/pingcap/tidb/issues/55290) @[xzhangxian1008](https://github.com/xzhangxian1008) - 修复从 `YEAR` 转换为 JSON 格式时的 `json_type` 错误的问题 [#54027](https://github.com/pingcap/tidb/issues/54027) @[YangKeao](https://github.com/YangKeao) - 修复系统变量 `tidb_schema_cache_size` 的取值范围错误的问题 [#54034](https://github.com/pingcap/tidb/issues/54034) @[lilinghai](https://github.com/lilinghai) - 修复当分区表达式为 `EXTRACT(YEAR FROM col)` 时不会分区裁剪的问题 [#54210](https://github.com/pingcap/tidb/issues/54210) @[mjonss](https://github.com/mjonss) @@ -426,7 +426,7 @@ TiDB 版本:8.3.0 + TiCDC - - 修复当下游 Kafka 无法访问时,Processor 模块可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) + - 修复当下游 Kafka 无法访问时,Processor 可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) + TiDB Data Migration (DM) From f77552b32f6ceb3b5f0b8551834acc2921b34993 Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 19 Aug 2024 12:20:07 +0800 Subject: [PATCH 074/103] update Improvements > TiDB and Bug fixes > TiDB Lightning --- releases/release-8.3.0.md | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 477e1f3b54b1..67282dd6e5be 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -275,23 +275,22 @@ TiDB 版本:8.3.0 - 支持 `SELECT ... STRAIGHT_JOIN ... USING ( ... )` 语句 [#54162](https://github.com/pingcap/tidb/issues/54162) @[dveeden](https://github.com/dveeden) - 支持为形如 `((idx_col_1 > 1) or (idx_col_1 = 1 and idx_col_2 > 10)) and ((idx_col_1 < 10) or (idx_col_1 = 10 and idx_col_2 < 20))` 的过滤条件构造更精准的索引访问 Range [#54337](https://github.com/pingcap/tidb/issues/54337) @[ghazalfamilyusa](https://github.com/ghazalfamilyusa) - - 支持形如 `WHERE idx_col_1 IS NULL ORDER BY idx_col_2` 的 SQL 查询利用索引的顺序而不需要额外的排序操作 [#54188](https://github.com/pingcap/tidb/issues/54188) @[ari-e](https://github.com/ari-e) + - 支持形如 `WHERE idx_col_1 IS NULL ORDER BY idx_col_2` 的 SQL 查询利用索引顺序避免额外排序操作 [#54188](https://github.com/pingcap/tidb/issues/54188) @[ari-e](https://github.com/ari-e) - 在 `analyze_jobs` 中显示被分析的索引 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - - 为 `EXPLAIN` 支持 `tidb_redact_log` [#54565](https://github.com/pingcap/tidb/issues/54565) @[hawkingrei](https://github.com/hawkingrei) - - 支持备份和恢复 mysql.column_stats_usage 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) + - `EXPLAIN` 语句支持应用 `tidb_redact_log` [#54565](https://github.com/pingcap/tidb/issues/54565) @[hawkingrei](https://github.com/hawkingrei) + - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - 支持在多值索引的 `IndexRangeScan` 上生成 `Selection` [#54876](https://github.com/pingcap/tidb/issues/54876) @[time-and-fate](https://github.com/time-and-fate) - - 支持在设定的自动 `ANALYZE` 时间窗口外 kill 正在执行的自动 `ANALYZE` [#55283](https://github.com/pingcap/tidb/issues/55283) @[hawkingrei](https://github.com/hawkingrei) - - 当某个统计信息完全由 TopN 构成,且对应表的统计信息中的修改行数不为 0 时,对于未命中 TopN 的等值条件,估算结果将从 0 变为 1 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) + - 支持在设定的自动 `ANALYZE` 时间窗口外终止正在执行的自动 `ANALYZE` [#55283](https://github.com/pingcap/tidb/issues/55283) @[hawkingrei](https://github.com/hawkingrei) + - 当某个统计信息完全由 TopN 构成,且对应表的统计信息中修改行数不为 0 时,对于未命中 TopN 的等值条件,估算结果从 0 调整为 1 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - TiDB 节点支持执行包含 `WITH ROLLUP` 修饰符和 `GROUPING` 函数的查询 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** - - (dup): release-8.0.0.md > - 提升了 bulk 模式 (Pipelined DML) 的性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) - - 系统表 `information_schema.processlist` 中新增了一列 `ROWS_AFFECTED` - - 提升了 schema 信息缓存相关接口 `SchemaByID` 的性能 [#54074](https://github.com/pingcap/tidb/issues/54074) @[ywqzzy](https://github.com/ywqzzy) - - 提升了 schema 信息缓存开启时部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) - - 优化了添加唯一索引时冲突键的报错信息 [#53004](https://github.com/pingcap/tidb/issues/53004) @[lance6716](https://github.com/lance6716) - + - 提升批量 DML 执行方式 (`tidb_dml_type = "bulk"`) 的性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) + - 提升 schema 信息缓存相关接口 `SchemaByID` 的性能 [#54074](https://github.com/pingcap/tidb/issues/54074) @[ywqzzy](https://github.com/ywqzzy) + - 提升 schema 信息缓存开启时部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) + - 优化添加唯一索引时冲突键的报错信息 [#53004](https://github.com/pingcap/tidb/issues/53004) @[lance6716](https://github.com/lance6716) + + PD - 可以通过 pd-ctl 修改 evict-leader-scheduler 的 batch 配置,来提升 evict leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) @@ -438,10 +437,10 @@ TiDB 版本:8.3.0 - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Lightning - 修复 TiDB Lightning 获取 keyspace 失败时输出的 `WARN` 日志可能引起用户混淆的问题 [#54232](https://github.com/pingcap/tidb/issues/54232) @[kennytm](https://github.com/kennytm) - - 修复了 lightning TLS 配置影响集群证书的问题 [#54172](https://github.com/pingcap/tidb/issues/54172) @[ei-sugimoto](https://github.com/ei-sugimoto) - - 修复了使用 lightning 导入数据时报事务冲突的问题 [#49826](https://github.com/pingcap/tidb/issues/49826) @[lance6716](https://github.com/lance6716) - - 修复了导入大量库表时,checkpoint 文件过大导致性能差的问题 [#55054](https://github.com/pingcap/tidb/issues/55054) @[D3Hunter](https://github.com/D3Hunter) - + - 修复 TiDB Lightning 的 TLS 配置影响集群证书的问题 [#54172](https://github.com/pingcap/tidb/issues/54172) @[ei-sugimoto](https://github.com/ei-sugimoto) + - 修复使用 TiDB Lightning 导入数据时报事务冲突的问题 [#49826](https://github.com/pingcap/tidb/issues/49826) @[lance6716](https://github.com/lance6716) + - 修复导入大量库表时 checkpoint 文件过大导致性能下降的问题 [#55054](https://github.com/pingcap/tidb/issues/55054) @[D3Hunter](https://github.com/D3Hunter) + ## 贡献者 感谢来自 TiDB 社区的贡献者们: From a9ddd7b7780b5f22c5518455723a2e78b4b1b1b8 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Mon, 19 Aug 2024 13:37:37 +0800 Subject: [PATCH 075/103] Apply suggestions from code review --- releases/release-8.3.0.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 67282dd6e5be..118d676c1d78 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -24,20 +24,20 @@ TiDB 版本:8.3.0 可扩展性和性能 - 分区表全局索引(实验特性) **tw@hfxsd** + 分区表全局索引(实验特性) 全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 - 默认允许将 Projection 算子下推到存储引擎**tw@Oreoxmt** + 默认允许将 Projection 算子下推到存储引擎 Projection 算子下推可以将负载分散到存储节点,同时减少节点间的数据传输。这有助于降低部分 SQL 的执行时间,提升数据库的整体性能。 - 统计信息收集忽略不必要的列**tw@lilin90** + 统计信息收集忽略不必要的列 在保证优化器能够获取到必要信息的前提下,加快了统计信息收集的速度,提升统计信息的时效性,进而保证选择最优的执行计划,提升集群性能。同时也降低了系统开销,改善了资源利用率。 稳定性与高可用 - TiProxy 内置虚拟 IP 管理**tw@Oreoxmt** + TiProxy 内置虚拟 IP 管理 TiProxy 内置了虚拟 IP 管理功能,配置后支持自动切换虚拟 IP,而无需依赖外部平台或工具。这简化了 TiProxy 的部署,降低了数据库接入层的复杂度。 @@ -94,7 +94,7 @@ TiDB 版本:8.3.0 - INFORMATION_SCHEMA.KEY_COLUMN_USAGE - INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS - 在 v8.3.0 版本优化了以下系统表的查询性能,相比 v8.2.0 性能有数倍的提升: + 在 v8.3.0 版本优化了以下系统表的查询性能,相比 v8.2.0 性能有数倍的提升: - INFORMATION_SCHEMA.CHECK_CONSTRAINTS - INFORMATION_SCHEMA.COLUMNS @@ -162,7 +162,7 @@ TiDB 版本:8.3.0 * 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。在 v8.3.0 版本中,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。你可以使用系统变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 + TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。从 v8.3.0 开始,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。你可以使用系统变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入)。 @@ -182,13 +182,13 @@ TiDB 版本:8.3.0 从 v8.3.0 开始,TiDB 会在日志中分阶段打印初始统计信息的加载进度,以便了解运行情况。为了给外部工具提供格式化的结果,TiDB 增加了额外的[监控 API](/tidb-monitoring-api.md),以便能够在启动阶段随时获取初始统计信息的加载进度。 -* 展示资源组信息 [#8444](https://github.com/tikv/pd/issues/8444) @[nolouch](https://github.com/nolouch) +* 添加 Request Unit (RU) 配置监控指标 [#8444](https://github.com/tikv/pd/issues/8444) @[nolouch](https://github.com/nolouch) ### 安全 * 增强 PD 日志脱敏 [#8305](https://github.com/tikv/pd/issues/8305) @[JmPotato](https://github.com/JmPotato) **tw@hfxsd** - TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 + TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强。要使用该功能,可以将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`。 @@ -196,7 +196,7 @@ TiDB 版本:8.3.0 * 增强 TiKV 日志脱敏 [#17206](https://github.com/tikv/tikv/issues/17206) @[lucasliang](https://github.com/LykxSassinator) **tw@hfxsd** - TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用标记符号 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 + TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强。要使用该功能,可以将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`。 @@ -305,8 +305,8 @@ TiDB 版本:8.3.0 + TiKV - - 优化 `async-io` 的 batching 的能力,减少对 I/O bandwidth 资源的使用 [#16907](https://github.com/tikv/tikv/issues/16907) @[LykxSassinator](https://github.com/LykxSassinator) - - 重新设计了 TiCDC 的 delegate 和 downstream 模块以更好地支持 partial subscription [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) + - 优化 `async-io` 下写 Raft 日志的攒批策略,减少对磁盘 I/O 带宽资源的使用 [#16907](https://github.com/tikv/tikv/issues/16907) @[LykxSassinator](https://github.com/LykxSassinator) + - 重新设计了 TiCDC 的 delegate 和 downstream 模块以更好地支持 Region 局部订阅 [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) - 减少单个慢日志的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @(Connor1996)[https://github.com/Connor1996] - 增加监控指标 `min safe ts` [#17307](https://github.com/tikv/tikv/issues/17307) @[mittalrishabh](https://github.com/mittalrishabh) - 减少 peer message channel 的内存使用 [#16229](https://github.com/tikv/tikv/issues/16229) @[Connor1996](https://github.com/Connor1996) From eb5fac4713bca8ed7326c1e58daf17c98b5590b1 Mon Sep 17 00:00:00 2001 From: Jianyuan Jiang Date: Mon, 19 Aug 2024 13:57:23 +0800 Subject: [PATCH 076/103] Update releases/release-8.3.0.md Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 118d676c1d78..2de842bfe2a3 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -329,7 +329,7 @@ TiDB 版本:8.3.0 + TiCDC - - kafka sink 的 claim check 功能支持将大 value 存储到外部存储系统 [#11396](https://github.com/pingcap/tiflow/issues/11396) @[3AceShowHand](https://github.com/3AceShowHand) + - Kafka sink 引入 `claim-check-raw-value` 参数,设置为 `true` 时支持在消息大小超过限制时只将该条消息的 value 发送到外部存储服务 [#11396](https://github.com/pingcap/tiflow/issues/11396) @[3AceShowHand](https://github.com/3AceShowHand) ## 错误修复 From 53a519589d16ed78c5408d9ef61fc904d5b3c8e7 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 19 Aug 2024 14:11:50 +0800 Subject: [PATCH 077/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 2de842bfe2a3..5fa5e323b02b 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -293,15 +293,15 @@ TiDB 版本:8.3.0 + PD - - 可以通过 pd-ctl 修改 evict-leader-scheduler 的 batch 配置,来提升 evict leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) - - Label distribution 面板新增了 store_id,可以看到不同的 label 对应的 store [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) - - 当指定的资源组不存在时,可回退到默认资源组 [#8388](https://github.com/tikv/pd/issues/8388) @[JmPotato](https://github.com/JmPotato) - - 使用 pd-ctl 展示 region 信息时,会展示 approximate_kv_size [#8412](https://github.com/tikv/pd/issues/8412) @[zeminzhou](https://github.com/zeminzhou) - - 优化调用 API 删除 ttl 配置时的输出信息 [#8450](https://github.com/tikv/pd/issues/8450) @[lhy1024](https://github.com/lhy1024) - - 优化大查询读请求消耗 RU 的行为,减少对其他请求的影响 [#8457](https://github.com/tikv/pd/issues/8457) @[nolouch](https://github.com/nolouch) - - 优化了 pd 微服务设置错误的报错信息 [#52912](https://github.com/pingcap/tidb/issues/52912) @[rleungx](https://github.com/rleungx) - - PD 微服务添加了 --name 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) - - 可以通过 region 数量动态调整 `PatrolRegionScanLimit`,减少扫描 region 需要的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) + - 支持通过 `pd-ctl` 修改 `evict-leader-scheduler` 的 `batch` 配置,以提升驱逐 Leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) + - Grafana 上的 `Label distribution` 面板新增 ` store_id` 监控指标,用于显示不同的 label 对应的 store ID [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) + - 当指定的资源组不存在时,支持回退到默认资源组 [#8388](https://github.com/tikv/pd/issues/8388) @[JmPotato](https://github.com/JmPotato) + - 使用 `pd-ctl` 的 `region` 命令显示 Region 信息时,输出中新增 `approximate_kv_size` 信息 [#8412](https://github.com/tikv/pd/issues/8412) @[zeminzhou](https://github.com/zeminzhou) + - 优化调用 API 删除 TTL 配置时的输出信息 [#8450](https://github.com/tikv/pd/issues/8450) @[lhy1024](https://github.com/lhy1024) + - 优化大查询读请求消耗 RU 的行为,以减少对其他请求的影响 [#8457](https://github.com/tikv/pd/issues/8457) @[nolouch](https://github.com/nolouch) + - 优化了 PD 微服务设置错误时返回的报错信息 [#52912](https://github.com/pingcap/tidb/issues/52912) @[rleungx](https://github.com/rleungx) + - PD 微服务新增 `--name` 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) + - 支持通过 Region 数量动态调整 `PatrolRegionScanLimit`,以减少扫描 Region 所需的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) + TiKV From 5bbeb30491c2a136cb1a1cc2960dd244d2f14cee Mon Sep 17 00:00:00 2001 From: lilin90 Date: Mon, 19 Aug 2024 14:22:50 +0800 Subject: [PATCH 078/103] Make descriptions clear --- releases/release-8.3.0.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 477e1f3b54b1..d561cefd5208 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -338,15 +338,15 @@ TiDB 版本:8.3.0 - 通过重置 `PipelinedWindow` 的 `Open` 方法中的参数,修复当 `PipelinedWindow` 作为 apply 的子节点使用时,由于重复的打开和关闭操作导致重用之前的参数值而发生的意外错误 [#53600](https://github.com/pingcap/tidb/issues/53600) @[XuHuaiyu](https://github.com/XuHuaiyu) - 修复由于查询超出 `tidb_mem_quota_query` 设定的内存使用限制,导致终止查询时可能卡住的问题 [#55042](https://github.com/pingcap/tidb/issues/55042) @[yibin87](https://github.com/yibin87) - - 修复了 HashAgg 算子在并行计算过程中因落盘导致查询结果不正确的问题 [#55290](https://github.com/pingcap/tidb/issues/55290) @[xzhangxian1008](https://github.com/xzhangxian1008) - - 修复从 `YEAR` 转换为 JSON 格式时的 `json_type` 错误的问题 [#54027](https://github.com/pingcap/tidb/issues/54027) @[YangKeao](https://github.com/YangKeao) + - 修复 HashAgg 算子在并行计算过程中因落盘导致查询结果不正确的问题 [#55290](https://github.com/pingcap/tidb/issues/55290) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复从 `YEAR` 转换为 JSON 格式时 `JSON_TYPE` 错误的问题 [#54027](https://github.com/pingcap/tidb/issues/54027) @[YangKeao](https://github.com/YangKeao) - 修复系统变量 `tidb_schema_cache_size` 的取值范围错误的问题 [#54034](https://github.com/pingcap/tidb/issues/54034) @[lilinghai](https://github.com/lilinghai) - - 修复当分区表达式为 `EXTRACT(YEAR FROM col)` 时不会分区裁剪的问题 [#54210](https://github.com/pingcap/tidb/issues/54210) @[mjonss](https://github.com/mjonss) - - 修复了表数量较多情况下 `FLASHBACK DATABASE` 失败的问题 [#54415](https://github.com/pingcap/tidb/issues/54415) @[lance6716](https://github.com/lance6716) - - 修复了使用 fast_reorg 模式添加索引可能失败的问题 [#54568](https://github.com/pingcap/tidb/issues/54568) @[lance6716](https://github.com/lance6716) - - 修复了 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) - - 修复了库数量较多情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) - - 修复了来自 DM 同步的超过索引列最大长度的表时同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) + - 修复当分区表达式为 `EXTRACT(YEAR FROM col)` 时没有分区裁剪的问题 [#54210](https://github.com/pingcap/tidb/issues/54210) @[mjonss](https://github.com/mjonss) + - 修复表较多的情况下 `FLASHBACK DATABASE` 失败的问题 [#54415](https://github.com/pingcap/tidb/issues/54415) @[lance6716](https://github.com/lance6716) + - 修复使用索引加速模式添加索引可能失败的问题 [#54568](https://github.com/pingcap/tidb/issues/54568) @[lance6716](https://github.com/lance6716) + - 修复 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) + - 修复库较多的情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) + - 修复来自 DM 同步的表超过索引列最大长度 `max-index-length` 时,同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) - 修复开启 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) - 修复 TiDB 在统计信息初始化的过程中,无法通过 `CTRL+C` 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) - 修复 `INL_MERGE_JOIN` Optimizer Hint 返回错误结果的问题,将其废弃 [#54064](https://github.com/pingcap/tidb/issues/54064) @[AilinKid](https://github.com/AilinKid) From e4281d1112957a8f6dd7f04522ad23cac904b083 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 19 Aug 2024 15:41:01 +0800 Subject: [PATCH 079/103] Apply suggestions from code review --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index d446263a1365..0a31fc0e2890 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -296,10 +296,10 @@ TiDB 版本:8.3.0 - 支持通过 `pd-ctl` 修改 `evict-leader-scheduler` 的 `batch` 配置,以提升驱逐 Leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) - Grafana 上的 `Label distribution` 面板新增 ` store_id` 监控指标,用于显示不同的 label 对应的 store ID [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) - 当指定的资源组不存在时,支持回退到默认资源组 [#8388](https://github.com/tikv/pd/issues/8388) @[JmPotato](https://github.com/JmPotato) - - 使用 `pd-ctl` 的 `region` 命令显示 Region 信息时,输出中新增 `approximate_kv_size` 信息 [#8412](https://github.com/tikv/pd/issues/8412) @[zeminzhou](https://github.com/zeminzhou) + - 在 `pd-ctl` 的 `region` 命令输出的 Region 信息中,新增 `approximate_kv_size` 字段 [#8412](https://github.com/tikv/pd/issues/8412) @[zeminzhou](https://github.com/zeminzhou) - 优化调用 API 删除 TTL 配置时的输出信息 [#8450](https://github.com/tikv/pd/issues/8450) @[lhy1024](https://github.com/lhy1024) - 优化大查询读请求消耗 RU 的行为,以减少对其他请求的影响 [#8457](https://github.com/tikv/pd/issues/8457) @[nolouch](https://github.com/nolouch) - - 优化了 PD 微服务设置错误时返回的报错信息 [#52912](https://github.com/pingcap/tidb/issues/52912) @[rleungx](https://github.com/rleungx) + - 优化了 PD 微服务设置错误时返回的错误信息 [#52912](https://github.com/pingcap/tidb/issues/52912) @[rleungx](https://github.com/rleungx) - PD 微服务新增 `--name` 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) - 支持通过 Region 数量动态调整 `PatrolRegionScanLimit`,以减少扫描 Region 所需的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) From a331cbfd2f14f9eea0ab39c1b444ee87502e665f Mon Sep 17 00:00:00 2001 From: lilin90 Date: Mon, 19 Aug 2024 16:12:28 +0800 Subject: [PATCH 080/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 0a31fc0e2890..dd4a11362746 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -317,13 +317,13 @@ TiDB 版本:8.3.0 + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - 在第一次进行按时间点恢复 (Point-in-time recovery, PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - (dup): release-7.5.3.md > 改进提升> Tools> Backup & Restore (BR) - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) - - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) + - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - 使增量备份兼容按时间点恢复 [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) @@ -342,9 +342,9 @@ TiDB 版本:8.3.0 - 修复系统变量 `tidb_schema_cache_size` 的取值范围错误的问题 [#54034](https://github.com/pingcap/tidb/issues/54034) @[lilinghai](https://github.com/lilinghai) - 修复当分区表达式为 `EXTRACT(YEAR FROM col)` 时没有分区裁剪的问题 [#54210](https://github.com/pingcap/tidb/issues/54210) @[mjonss](https://github.com/mjonss) - 修复表较多的情况下 `FLASHBACK DATABASE` 失败的问题 [#54415](https://github.com/pingcap/tidb/issues/54415) @[lance6716](https://github.com/lance6716) + - 修复库较多的情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) - 修复使用索引加速模式添加索引可能失败的问题 [#54568](https://github.com/pingcap/tidb/issues/54568) @[lance6716](https://github.com/lance6716) - 修复 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) - - 修复库较多的情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) - 修复来自 DM 同步的表超过索引列最大长度 `max-index-length` 时,同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) - 修复开启 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) - 修复 TiDB 在统计信息初始化的过程中,无法通过 `CTRL+C` 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) From 0d08faa6cf642a1c8bbbd364e332592480839837 Mon Sep 17 00:00:00 2001 From: lilin90 Date: Mon, 19 Aug 2024 17:28:32 +0800 Subject: [PATCH 081/103] Add TiDB Binlog deprecation --- releases/release-8.3.0.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index dd4a11362746..d7496d818d13 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -261,6 +261,7 @@ TiDB 版本:8.3.0 * 以下为从 v8.3.0 开始已废弃的功能: + * 从 v7.5.0 开始,[TiDB Binlog](/tidb-binlog/tidb-binlog-overview.md) 的数据同步功能被废弃。从 v8.3.0 开始,TiDB Binlog 被完全废弃,并计划在未来版本中移除。如需进行增量数据同步,请使用 [TiCDC](/ticdc/ticdc-overview.md)。如需按时间点恢复 (point-in-time recovery, PITR),请使用 [PITR](/br/br-pitr-guide.md)。 * 从 v8.3.0 开始,系统变量 [`tidb_enable_column_tracking`](/system-variables.md#tidb_enable_column_tracking-从-v540-版本开始引入) 被废弃。TiDB 默认收集 [predicate columns](/glossary.md#predicate-columns) 的统计信息。更多信息,参见 [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入)。 * 以下为计划将在未来版本中废弃的功能: @@ -393,7 +394,7 @@ TiDB 版本:8.3.0 - 修复极端场景下可能导致获取 TSO 慢的问题 [#8500](https://github.com/tikv/pd/issues/8500) @[rleungx](https://github.com/rleungx) - 修复了大规模集群下可能发生数据竞争的问题 [#8386](https://github.com/tikv/pd/issues/8386) @[rleungx](https://github.com/rleungx) - 修复 runaway 只统计 coprocessor 过程时间消耗的 bug,增加 TiDB 侧的时间统计 [#51325](https://github.com/pingcap/tidb/issues/51325) @[HuSharp](https://github.com/HuSharp) - + + TiFlash - 修复使用 `CAST()` 函数将字符串转换为带时区或非法字符的日期时间时结果错误的问题 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) From 554b003468be20672b774313cc12aa94de4f82ff Mon Sep 17 00:00:00 2001 From: Aolin Date: Mon, 19 Aug 2024 18:02:47 +0800 Subject: [PATCH 082/103] update tiflash_hashagg_preaggregation_mode --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index d7496d818d13..cdbca389332f 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -235,7 +235,7 @@ TiDB 版本:8.3.0 |--------|------------------------------|------| | [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句的行为。将其设置为默认值 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| -| [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 的第一阶段采用哪种预聚合策略。 | +| [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 在第一阶段采用哪种预聚合策略。 | | [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 增加 SESSION 作用域。 | | [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 增加 SESSION 作用域。 | | [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制[垃圾回收 (GC)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)](/garbage-collection-overview.md#resolve-locks清理锁)和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间)的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| From 2cff433af22e0ee79fd397578388ce9a9805140b Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Mon, 19 Aug 2024 23:15:08 +0800 Subject: [PATCH 083/103] Apply suggestions from code review Co-authored-by: Aolin --- releases/release-8.3.0.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index cdbca389332f..5518941aeb4a 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -295,12 +295,12 @@ TiDB 版本:8.3.0 + PD - 支持通过 `pd-ctl` 修改 `evict-leader-scheduler` 的 `batch` 配置,以提升驱逐 Leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) - - Grafana 上的 `Label distribution` 面板新增 ` store_id` 监控指标,用于显示不同的 label 对应的 store ID [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) + - Grafana 上的 **Cluster > Label distribution** 面板新增 `store_id` 监控指标,用于显示不同 label 对应的 store ID [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) - 当指定的资源组不存在时,支持回退到默认资源组 [#8388](https://github.com/tikv/pd/issues/8388) @[JmPotato](https://github.com/JmPotato) - 在 `pd-ctl` 的 `region` 命令输出的 Region 信息中,新增 `approximate_kv_size` 字段 [#8412](https://github.com/tikv/pd/issues/8412) @[zeminzhou](https://github.com/zeminzhou) - - 优化调用 API 删除 TTL 配置时的输出信息 [#8450](https://github.com/tikv/pd/issues/8450) @[lhy1024](https://github.com/lhy1024) - - 优化大查询读请求消耗 RU 的行为,以减少对其他请求的影响 [#8457](https://github.com/tikv/pd/issues/8457) @[nolouch](https://github.com/nolouch) - - 优化了 PD 微服务设置错误时返回的错误信息 [#52912](https://github.com/pingcap/tidb/issues/52912) @[rleungx](https://github.com/rleungx) + - 优化调用 PD API 删除 TTL 配置时的输出信息 [#8450](https://github.com/tikv/pd/issues/8450) @[lhy1024](https://github.com/lhy1024) + - 优化大查询读请求消耗 RU (Request Unit) 的行为,以减少对其他请求的影响 [#8457](https://github.com/tikv/pd/issues/8457) @[nolouch](https://github.com/nolouch) + - 优化 PD 微服务设置错误时返回的错误信息 [#52912](https://github.com/pingcap/tidb/issues/52912) @[rleungx](https://github.com/rleungx) - PD 微服务新增 `--name` 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) - 支持通过 Region 数量动态调整 `PatrolRegionScanLimit`,以减少扫描 Region 所需的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) @@ -388,12 +388,12 @@ TiDB 版本:8.3.0 - (dup): release-8.1.1.md > 错误修复> PD - 修复开启 `scheduling` 微服务后,扩缩容进度显示错误的问题 [#8331](https://github.com/tikv/pd/issues/8331) @[rleungx](https://github.com/rleungx) - (dup): release-8.1.1.md > 错误修复> PD - 修复加密管理器在使用前未初始化的问题 [#8384](https://github.com/tikv/pd/issues/8384) @[rleungx](https://github.com/rleungx) - (dup): release-8.1.1.md > 错误修复> PD - 修复部分日志未脱敏的问题 [#8419](https://github.com/tikv/pd/issues/8419) @[rleungx](https://github.com/rleungx) - - 修复在 PD 开启微服务时,重定向可能发生 panic 的问题 [#8406](https://github.com/tikv/pd/issues/8406) @[HuSharp](https://github.com/HuSharp) - - 修复了 split-merge-interval 不生效的问题 [#8404](https://github.com/tikv/pd/issues/8404) @[lhy1024](https://github.com/lhy1024) - - 修复了开启 replication.strictly-match-label=true 时启动 TiFlash 失败的问题 [#8480](https://github.com/tikv/pd/issues/8480) @[rleungx](https://github.com/rleungx) - - 修复极端场景下可能导致获取 TSO 慢的问题 [#8500](https://github.com/tikv/pd/issues/8500) @[rleungx](https://github.com/rleungx) + - 修复开启 PD 微服务时,重定向可能 panic 的问题 [#8406](https://github.com/tikv/pd/issues/8406) @[HuSharp](https://github.com/HuSharp) + - 修复反复修改 `split-merge-interval` 的值(例如从 `1s` 改为 `1h`,再改回 `1s`)可能导致该配置不生效的问题 [#8404](https://github.com/tikv/pd/issues/8404) @[lhy1024](https://github.com/lhy1024) + - 修复设置 `replication.strictly-match-label` 为 `true` 导致 TiFlash 启动失败的问题 [#8480](https://github.com/tikv/pd/issues/8480) @[rleungx](https://github.com/rleungx) + - 修复在 `ANALYZE` 大规模分区表时获取 TSO 慢导致 `ANALYZE` 性能下降的问题 [#8500](https://github.com/tikv/pd/issues/8500) @[rleungx](https://github.com/rleungx) - 修复了大规模集群下可能发生数据竞争的问题 [#8386](https://github.com/tikv/pd/issues/8386) @[rleungx](https://github.com/rleungx) - - 修复 runaway 只统计 coprocessor 过程时间消耗的 bug,增加 TiDB 侧的时间统计 [#51325](https://github.com/pingcap/tidb/issues/51325) @[HuSharp](https://github.com/HuSharp) + - 修复 TiDB 在判断查询是否为 Runaway Queries 时,只统计了 Coprocessor 侧的时间消耗但未统计 TiDB 侧的时间消耗,导致一些查询未被识别为 Runaway Queries 的问题 [#51325](https://github.com/pingcap/tidb/issues/51325) @[HuSharp](https://github.com/HuSharp) + TiFlash From aedd99de8d570be1b4742267e78472e42f52b829 Mon Sep 17 00:00:00 2001 From: Lilian Lee Date: Tue, 20 Aug 2024 09:33:54 +0800 Subject: [PATCH 084/103] Apply suggestions from code review Co-authored-by: xixirangrang --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 5518941aeb4a..289f87f381db 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -326,7 +326,7 @@ TiDB 版本:8.3.0 - (dup): release-7.5.3.md > 改进提升> Tools> Backup & Restore (BR) - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - - 使增量备份兼容按时间点恢复 [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) + - 使增量备份兼容按时间点恢复 (PITR) [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) + TiCDC @@ -339,7 +339,7 @@ TiDB 版本:8.3.0 - 通过重置 `PipelinedWindow` 的 `Open` 方法中的参数,修复当 `PipelinedWindow` 作为 apply 的子节点使用时,由于重复的打开和关闭操作导致重用之前的参数值而发生的意外错误 [#53600](https://github.com/pingcap/tidb/issues/53600) @[XuHuaiyu](https://github.com/XuHuaiyu) - 修复由于查询超出 `tidb_mem_quota_query` 设定的内存使用限制,导致终止查询时可能卡住的问题 [#55042](https://github.com/pingcap/tidb/issues/55042) @[yibin87](https://github.com/yibin87) - 修复 HashAgg 算子在并行计算过程中因落盘导致查询结果不正确的问题 [#55290](https://github.com/pingcap/tidb/issues/55290) @[xzhangxian1008](https://github.com/xzhangxian1008) - - 修复从 `YEAR` 转换为 JSON 格式时 `JSON_TYPE` 错误的问题 [#54027](https://github.com/pingcap/tidb/issues/54027) @[YangKeao](https://github.com/YangKeao) + - 修复从 `YEAR` 转换为 JSON 格式时 `JSON_TYPE` 错误的问题 [#54494](https://github.com/pingcap/tidb/issues/54494) @[YangKeao](https://github.com/YangKeao) - 修复系统变量 `tidb_schema_cache_size` 的取值范围错误的问题 [#54034](https://github.com/pingcap/tidb/issues/54034) @[lilinghai](https://github.com/lilinghai) - 修复当分区表达式为 `EXTRACT(YEAR FROM col)` 时没有分区裁剪的问题 [#54210](https://github.com/pingcap/tidb/issues/54210) @[mjonss](https://github.com/mjonss) - 修复表较多的情况下 `FLASHBACK DATABASE` 失败的问题 [#54415](https://github.com/pingcap/tidb/issues/54415) @[lance6716](https://github.com/lance6716) From 7b9b8cc889967a19ec615371c85805a7d6569b1b Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 20 Aug 2024 10:03:29 +0800 Subject: [PATCH 085/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 289f87f381db..fea17a0a5582 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -220,14 +220,7 @@ TiDB 版本:8.3.0 ### 行为变更 -* 为了避免命令错误使用,pd-ctl 取消了前缀匹配的机制,例如 `store remove-tombstone` 不能通过 `store remove` 来调用 [#8413](https://github.com/tikv/pd/issues/8413) @[lhy1024](https://github.com/lhy1024) -* 行为变更 2 - -### MySQL 兼容性 - -* 兼容性 1 - -* 兼容性 2 +* 为了避免命令错误使用,`pd-ctl` 取消了前缀匹配的机制,例如 `store remove-tombstone` 不能通过 `store remove` 来调用 [#8413](https://github.com/tikv/pd/issues/8413) @[lhy1024](https://github.com/lhy1024) ### 系统变量 @@ -238,7 +231,7 @@ TiDB 版本:8.3.0 | [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 在第一阶段采用哪种预聚合策略。 | | [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 增加 SESSION 作用域。 | | [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 增加 SESSION 作用域。 | -| [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制[垃圾回收 (GC)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)](/garbage-collection-overview.md#resolve-locks清理锁)和 [Delete Range(删除区间)](/garbage-collection-overview.md#Delete-Ranges删除区间)的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| +| [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制[垃圾回收 (GC)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)](/garbage-collection-overview.md#resolve-locks清理锁)和 [Delete Range(删除区间)](/garbage-collection-overview.md#delete-ranges删除区间)的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| | [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | | [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) | 修改 | 增加 GLOBAL 作用域。| | [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) | 修改 | 增加 GLOBAL 作用域,变量值可以持久化到集群。经进一步的测试,默认值从 `OFF` 修改为 `ON`,即默认允许优化器将 `Projection` 算子下推到 TiKV。| @@ -328,10 +321,6 @@ TiDB 版本:8.3.0 - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - 使增量备份兼容按时间点恢复 (PITR) [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) - + TiCDC - - - Kafka sink 引入 `claim-check-raw-value` 参数,设置为 `true` 时支持在消息大小超过限制时只将该条消息的 value 发送到外部存储服务 [#11396](https://github.com/pingcap/tiflow/issues/11396) @[3AceShowHand](https://github.com/3AceShowHand) - ## 错误修复 + TiDB From f1698f43211d95cef0781a42f9613f16a74ff878 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 20 Aug 2024 10:22:58 +0800 Subject: [PATCH 086/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index fea17a0a5582..42de97a2834c 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -45,14 +45,6 @@ TiDB 版本:8.3.0 ## 功能详情 -### 可扩展性 - -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### 性能 * 优化器默认允许将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** From fcb7348cfea0345dcd8d12b527a386ea50a7bea6 Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 20 Aug 2024 11:22:33 +0800 Subject: [PATCH 087/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 42de97a2834c..de69e8ac360d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -262,11 +262,11 @@ TiDB 版本:8.3.0 - 支持 `SELECT ... STRAIGHT_JOIN ... USING ( ... )` 语句 [#54162](https://github.com/pingcap/tidb/issues/54162) @[dveeden](https://github.com/dveeden) - 支持为形如 `((idx_col_1 > 1) or (idx_col_1 = 1 and idx_col_2 > 10)) and ((idx_col_1 < 10) or (idx_col_1 = 10 and idx_col_2 < 20))` 的过滤条件构造更精准的索引访问 Range [#54337](https://github.com/pingcap/tidb/issues/54337) @[ghazalfamilyusa](https://github.com/ghazalfamilyusa) - 支持形如 `WHERE idx_col_1 IS NULL ORDER BY idx_col_2` 的 SQL 查询利用索引顺序避免额外排序操作 [#54188](https://github.com/pingcap/tidb/issues/54188) @[ari-e](https://github.com/ari-e) - - 在 `analyze_jobs` 中显示被分析的索引 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) + - 在系统表 `mysql.analyze_job` 中显示被 `ANALYZE` 过的索引 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - `EXPLAIN` 语句支持应用 `tidb_redact_log` [#54565](https://github.com/pingcap/tidb/issues/54565) @[hawkingrei](https://github.com/hawkingrei) - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - - 支持在多值索引的 `IndexRangeScan` 上生成 `Selection` [#54876](https://github.com/pingcap/tidb/issues/54876) @[time-and-fate](https://github.com/time-and-fate) - - 支持在设定的自动 `ANALYZE` 时间窗口外终止正在执行的自动 `ANALYZE` [#55283](https://github.com/pingcap/tidb/issues/55283) @[hawkingrei](https://github.com/hawkingrei) + - 支持在多值索引的 `IndexRangeScan` 上生成 `Selection`,以提高查询效率 [#54876](https://github.com/pingcap/tidb/issues/54876) @[time-and-fate](https://github.com/time-and-fate) + - 支持在设定的自动 `ANALYZE` 时间窗口外终止正在执行的自动 `ANALYZE` 任务 [#55283](https://github.com/pingcap/tidb/issues/55283) @[hawkingrei](https://github.com/hawkingrei) - 当某个统计信息完全由 TopN 构成,且对应表的统计信息中修改行数不为 0 时,对于未命中 TopN 的等值条件,估算结果从 0 调整为 1 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - TiDB 节点支持执行包含 `WITH ROLLUP` 修饰符和 `GROUPING` 函数的查询 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** From e9e7845a8c947ca09030435c3d44a10ec1f6e3cc Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 20 Aug 2024 11:54:16 +0800 Subject: [PATCH 088/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index de69e8ac360d..c45fb157da9c 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -262,7 +262,7 @@ TiDB 版本:8.3.0 - 支持 `SELECT ... STRAIGHT_JOIN ... USING ( ... )` 语句 [#54162](https://github.com/pingcap/tidb/issues/54162) @[dveeden](https://github.com/dveeden) - 支持为形如 `((idx_col_1 > 1) or (idx_col_1 = 1 and idx_col_2 > 10)) and ((idx_col_1 < 10) or (idx_col_1 = 10 and idx_col_2 < 20))` 的过滤条件构造更精准的索引访问 Range [#54337](https://github.com/pingcap/tidb/issues/54337) @[ghazalfamilyusa](https://github.com/ghazalfamilyusa) - 支持形如 `WHERE idx_col_1 IS NULL ORDER BY idx_col_2` 的 SQL 查询利用索引顺序避免额外排序操作 [#54188](https://github.com/pingcap/tidb/issues/54188) @[ari-e](https://github.com/ari-e) - - 在系统表 `mysql.analyze_job` 中显示被 `ANALYZE` 过的索引 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) + - 在系统表 `mysql.analyze_jobs` 中显示被 `ANALYZE` 过的索引 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - `EXPLAIN` 语句支持应用 `tidb_redact_log` [#54565](https://github.com/pingcap/tidb/issues/54565) @[hawkingrei](https://github.com/hawkingrei) - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - 支持在多值索引的 `IndexRangeScan` 上生成 `Selection`,以提高查询效率 [#54876](https://github.com/pingcap/tidb/issues/54876) @[time-and-fate](https://github.com/time-and-fate) From 77c84eb81ba3a8fb73621732ac3bb7cd8fb85a54 Mon Sep 17 00:00:00 2001 From: lilin90 Date: Tue, 20 Aug 2024 11:55:48 +0800 Subject: [PATCH 089/103] Update format and anchor link --- releases/release-8.3.0.md | 44 +++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 42de97a2834c..e08e9a0c778d 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -77,27 +77,27 @@ TiDB 版本:8.3.0 * 提升部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) **tw@hfxsd** - 在之前的版本,当集群规模变大,表数量较多时,查询系统表性能较慢。 + 之前的版本中,当集群规模变大、表数量较多时,查询系统表性能较慢。 在 v8.0.0 优化了以下 4 个系统表的查询性能: - - INFORMATION_SCHEMA.TABLES - - INFORMATION_SCHEMA.STATISTICS - - INFORMATION_SCHEMA.KEY_COLUMN_USAGE - - INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS + - `INFORMATION_SCHEMA.TABLES` + - `INFORMATION_SCHEMA.STATISTICS` + - `INFORMATION_SCHEMA.KEY_COLUMN_USAGE` + - `INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS` - 在 v8.3.0 版本优化了以下系统表的查询性能,相比 v8.2.0 性能有数倍的提升: + 在 v8.3.0 版本优化了以下系统表的查询性能,相比 v8.2.0,性能有数倍的提升: - - INFORMATION_SCHEMA.CHECK_CONSTRAINTS - - INFORMATION_SCHEMA.COLUMNS - - INFORMATION_SCHEMA.PARTITIONS - - INFORMATION_SCHEMA.SCHEMATA - - INFORMATION_SCHEMA.SEQUENCES - - INFORMATION_SCHEMA.TABLE_CONSTRAINTS - - INFORMATION_SCHEMA.TIDB_CHECK_CONSTRAINTS - - INFORMATION_SCHEMA.TiDB_INDEXES - - INFORMATION_SCHEMA.TIDB_INDEX_USAGE - - INFORMATION_SCHEMA.VIEWS + - `INFORMATION_SCHEMA.CHECK_CONSTRAINTS` + - `INFORMATION_SCHEMA.COLUMNS` + - `INFORMATION_SCHEMA.PARTITIONS` + - `INFORMATION_SCHEMA.SCHEMATA` + - `INFORMATION_SCHEMA.SEQUENCES` + - `INFORMATION_SCHEMA.TABLE_CONSTRAINTS` + - `INFORMATION_SCHEMA.TIDB_CHECK_CONSTRAINTS` + - `INFORMATION_SCHEMA.TiDB_INDEXES` + - `INFORMATION_SCHEMA.TIDB_INDEX_USAGE` + - `INFORMATION_SCHEMA.VIEWS` * 分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,支持分区裁剪,提升查询性能 [#54209](https://github.com/pingcap/tidb/pull/54209) @[mjonss](https://github.com/mjonss) **tw@hfxsd** @@ -107,9 +107,9 @@ TiDB 版本:8.3.0 * 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列 (`ADD COLUMN`) 的性能提升了 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** - v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0 性能有 1.4 倍的提升。 + v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0,性能有 1.4 倍的提升。 - 在 v8.3.0 中,逻辑 DDL (General DDL) 在批量执行时的性能相比 v8.2.0 也均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列 (`ADD COLUMN`) 性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 + 在 v8.3.0 中,逻辑 DDL (General DDL) 在批量执行时的性能相比 v8.2.0 也均有提升,其中通过 10 个 session 并发批量建库 (`CREATE DATABASE`) 的性能相比 v8.1.0 提升了 19 倍,相比 v8.2.0 提升了 2.1 倍。10 个 session 对同个库内的多个表批量加列 (`ADD COLUMN`) 的性能相比 v8.1.0 提升了 10 倍,相比 v8.2.0 提升了 2 倍。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 @@ -270,7 +270,7 @@ TiDB 版本:8.3.0 - 当某个统计信息完全由 TopN 构成,且对应表的统计信息中修改行数不为 0 时,对于未命中 TopN 的等值条件,估算结果从 0 调整为 1 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - TiDB 节点支持执行包含 `WITH ROLLUP` 修饰符和 `GROUPING` 函数的查询 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso-从-v830-版本开始引入) 增加全局作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** + - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) 增加全局 (GLOBAL) 作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** - 提升批量 DML 执行方式 (`tidb_dml_type = "bulk"`) 的性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) - 提升 schema 信息缓存相关接口 `SchemaByID` 的性能 [#54074](https://github.com/pingcap/tidb/issues/54074) @[ywqzzy](https://github.com/ywqzzy) @@ -292,7 +292,7 @@ TiDB 版本:8.3.0 + TiKV - 优化 `async-io` 下写 Raft 日志的攒批策略,减少对磁盘 I/O 带宽资源的使用 [#16907](https://github.com/tikv/tikv/issues/16907) @[LykxSassinator](https://github.com/LykxSassinator) - - 重新设计了 TiCDC 的 delegate 和 downstream 模块以更好地支持 Region 局部订阅 [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) + - 重新设计了 TiCDC 的 delegate 和 downstream 模块以更好地支持 Region 局部订阅 [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) - 减少单个慢日志的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @(Connor1996)[https://github.com/Connor1996] - 增加监控指标 `min safe ts` [#17307](https://github.com/tikv/tikv/issues/17307) @[mittalrishabh](https://github.com/mittalrishabh) - 减少 peer message channel 的内存使用 [#16229](https://github.com/tikv/tikv/issues/16229) @[Connor1996](https://github.com/Connor1996) @@ -329,7 +329,7 @@ TiDB 版本:8.3.0 - 修复 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) - 修复来自 DM 同步的表超过索引列最大长度 `max-index-length` 时,同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) - 修复开启 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) - - 修复 TiDB 在统计信息初始化的过程中,无法通过 `CTRL+C` 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) + - 修复 TiDB 在统计信息初始化的过程中,无法通过 Control+C 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) - 修复 `INL_MERGE_JOIN` Optimizer Hint 返回错误结果的问题,将其废弃 [#54064](https://github.com/pingcap/tidb/issues/54064) @[AilinKid](https://github.com/AilinKid) - 修复关联子查询中包含 `WITH ROLLUP` 时 TiDB 可能 panic 并报错 `runtime error: index out of range` 的问题 [#54983](https://github.com/pingcap/tidb/issues/54983) @[AilinKid](https://github.com/AilinKid) - 修复当 SQL 查询的过滤条件中包含虚拟列,且执行条件中包含 `UnionScan` 时,谓词无法正常下推的问题 [#54870](https://github.com/pingcap/tidb/issues/54870) @[qw4990](https://github.com/qw4990) @@ -378,7 +378,7 @@ TiDB 版本:8.3.0 + TiFlash - - 修复使用 `CAST()` 函数将字符串转换为带时区或非法字符的日期时间时结果错误的问题 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) + - 修复使用 `CAST()` 函数将字符串转换为带时区或非法字符的日期时间时,结果错误的问题 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) - 修复 TiFlash 与任意 PD 发生网络分区后,可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,部分查询在执行时可能报列类型不匹配错误的问题 [#9175](https://github.com/pingcap/tiflash/issues/9175) @[JinheLin](https://github.com/JinheLin) From 1558306e7d5c13c70a32040347fcaf1a0c3faca7 Mon Sep 17 00:00:00 2001 From: lilin90 Date: Tue, 20 Aug 2024 12:19:03 +0800 Subject: [PATCH 090/103] Update wording --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index c18e1eed96c3..aca2ee0d7b6c 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -77,7 +77,7 @@ TiDB 版本:8.3.0 * 提升部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) **tw@hfxsd** - 之前的版本中,当集群规模变大、表数量较多时,查询系统表性能较慢。 + 之前的版本中,当集群规模变大、表数量较多时,查询系统表性能较差。 在 v8.0.0 优化了以下 4 个系统表的查询性能: From 5afa90a6f0022110334669685629c16411658a92 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 21 Aug 2024 08:18:19 +0800 Subject: [PATCH 091/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index aca2ee0d7b6c..b8506b51320a 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -216,7 +216,7 @@ TiDB 版本:8.3.0 ### 系统变量 -| 变量名 | 修改类型(包括新增/修改/删除) | 描述 | +| 变量名 | 修改类型 | 描述 | |--------|------------------------------|------| | [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句的行为。将其设置为默认值 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | | [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| @@ -224,7 +224,7 @@ TiDB 版本:8.3.0 | [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 增加 SESSION 作用域。 | | [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 增加 SESSION 作用域。 | | [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制[垃圾回收 (GC)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)](/garbage-collection-overview.md#resolve-locks清理锁)和 [Delete Range(删除区间)](/garbage-collection-overview.md#delete-ranges删除区间)的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| -| [`tidb_enable_shared_lock_upgrade`](/system-variables.md#tidb_enable_shared_lock_upgrade-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | +| [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | | [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) | 修改 | 增加 GLOBAL 作用域。| | [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) | 修改 | 增加 GLOBAL 作用域,变量值可以持久化到集群。经进一步的测试,默认值从 `OFF` 修改为 `ON`,即默认允许优化器将 `Projection` 算子下推到 TiKV。| @@ -236,7 +236,7 @@ TiDB 版本:8.3.0 | PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | +| BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | ### 系统表 From 4e0c5463baae7752817cf1fb2bd2079423d7ff93 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Wed, 21 Aug 2024 08:26:08 +0800 Subject: [PATCH 092/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index b8506b51320a..29348b6798f0 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -218,15 +218,15 @@ TiDB 版本:8.3.0 | 变量名 | 修改类型 | 描述 | |--------|------------------------------|------| -| [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句的行为。将其设置为默认值 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | -| [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| -| [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 在第一阶段采用哪种预聚合策略。 | | [`tidb_ddl_reorg_batch_size`](/system-variables.md#tidb_ddl_reorg_batch_size) | 修改 | 增加 SESSION 作用域。 | | [`tidb_ddl_reorg_worker_cnt`](/system-variables.md#tidb_ddl_reorg_worker_cnt) | 修改 | 增加 SESSION 作用域。 | | [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) | 修改 | 从 v8.3.0 起,该变量可以控制[垃圾回收 (GC)](/garbage-collection-overview.md) 过程中 [Resolve Locks(清理锁)](/garbage-collection-overview.md#resolve-locks清理锁)和 [Delete Range(删除区间)](/garbage-collection-overview.md#delete-ranges删除区间)的并发线程数。在 v8.3.0 之前,该变量只能控制 Resolve Locks(清理锁)的线程数。| -| [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | | [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) | 修改 | 增加 GLOBAL 作用域。| | [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) | 修改 | 增加 GLOBAL 作用域,变量值可以持久化到集群。经进一步的测试,默认值从 `OFF` 修改为 `ON`,即默认允许优化器将 `Projection` 算子下推到 TiKV。| +| [`tidb_analyze_column_options`](/system-variables.md#tidb_analyze_column_options-从-v830-版本开始引入) | 新增 | 控制 `ANALYZE TABLE` 语句的行为。将其设置为默认值 `PREDICATE` 表示仅收集 [predicate columns](/statistics.md#收集部分列的统计信息) 的统计信息;将其设置为 `ALL` 表示收集所有列的统计信息。 | +| [`tidb_enable_lazy_cursor_fetch`](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入) | 新增 | 这个变量用于控制 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 功能的行为。| +| [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) | 新增 | 控制是否启用共享锁升级为排他锁的功能。默认值为 `OFF`,表示不启用共享锁升级为排他锁的功能。 | +| [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) | 新增 | 控制下推到 TiFlash 的两阶段或三阶段 HashAgg 在第一阶段采用哪种预聚合策略。 | ### 配置文件参数 @@ -235,7 +235,7 @@ TiDB 版本:8.3.0 | TiDB | [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) | 新增 | 控制 TiDB 向 TiKV 发送请求时的批处理策略。 | | PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | ### 系统表 From d21049ac2b5dd7c21f07cb6fa1956fdbf267666a Mon Sep 17 00:00:00 2001 From: Aolin Date: Wed, 21 Aug 2024 09:11:48 +0800 Subject: [PATCH 093/103] Apply suggestions from code review --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 29348b6798f0..63add5f3b549 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -264,7 +264,6 @@ TiDB 版本:8.3.0 - 支持形如 `WHERE idx_col_1 IS NULL ORDER BY idx_col_2` 的 SQL 查询利用索引顺序避免额外排序操作 [#54188](https://github.com/pingcap/tidb/issues/54188) @[ari-e](https://github.com/ari-e) - 在系统表 `mysql.analyze_jobs` 中显示被 `ANALYZE` 过的索引 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - `EXPLAIN` 语句支持应用 `tidb_redact_log` [#54565](https://github.com/pingcap/tidb/issues/54565) @[hawkingrei](https://github.com/hawkingrei) - - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) - 支持在多值索引的 `IndexRangeScan` 上生成 `Selection`,以提高查询效率 [#54876](https://github.com/pingcap/tidb/issues/54876) @[time-and-fate](https://github.com/time-and-fate) - 支持在设定的自动 `ANALYZE` 时间窗口外终止正在执行的自动 `ANALYZE` 任务 [#55283](https://github.com/pingcap/tidb/issues/55283) @[hawkingrei](https://github.com/hawkingrei) - 当某个统计信息完全由 TopN 构成,且对应表的统计信息中修改行数不为 0 时,对于未命中 TopN 的等值条件,估算结果从 0 调整为 1 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) @@ -312,6 +311,7 @@ TiDB 版本:8.3.0 - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - 使增量备份兼容按时间点恢复 (PITR) [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) + - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) ## 错误修复 From eb43ce66bfd7f8eb3d3b361352462910a99f9f01 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Wed, 21 Aug 2024 09:18:57 +0800 Subject: [PATCH 094/103] removed --- releases/release-8.3.0.md | 175 ++++++++++++++++++-------------------- 1 file changed, 83 insertions(+), 92 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 63add5f3b549..9425f65f80c1 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -47,25 +47,25 @@ TiDB 版本:8.3.0 ### 性能 -* 优化器默认允许将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) **tw@Oreoxmt** +* 优化器默认允许将 `Projection` 算子下推到存储引擎 [#51876](https://github.com/pingcap/tidb/issues/51876) @[yibin87](https://github.com/yibin87) 将 `Projection` 算子下推到存储引擎可以减少计算引擎和存储引擎之间的数据传输量,从而提升 SQL 执行效率。这在处理包含 [JSON 查询类函数](/functions-and-operators/json-functions/json-functions-search.md)或 [JSON 值属性类函数](/functions-and-operators/json-functions/json-functions-return.md) 的查询时尤其有效。从 v8.3.0 开始,TiDB 默认开启 `Projection` 算子下推功能,控制该功能的系统变量 [`tidb_opt_projection_push_down`](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入) 的默认值从 `OFF` 修改为 `ON`。启用该功能后,优化器会自动将符合条件的 JSON 查询类函数、JSON 值属性类函数等下推到存储引擎。 更多信息,请参考[用户文档](/system-variables.md#tidb_opt_projection_push_down-从-v610-版本开始引入)。 -* 优化 KV(键值)请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) **tw@Oreoxmt** +* 优化 KV(键值)请求的批处理策略 [#55206](https://github.com/pingcap/tidb/issues/55206) @[zyguan](https://github.com/zyguan) TiDB 通过向 TiKV 发送 KV 请求读取数据。将多个 KV 请求攒批并进行批处理,可以有效提高执行效率。在 v8.3.0 之前,TiDB 的批处理策略效率不高。从 v8.3.0 开始,TiDB 在现有的 KV 请求批处理策略基础上,引入更高效的策略。你可以通过配置项 [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) 设置不同的批处理策略,以适应不同的业务场景。 更多信息,请参考[用户文档](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入)。 -* TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚合计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) **tw@Oreoxmt** +* TiFlash 新增 HashAgg 聚合计算模式,提升高 NDV 数据的聚合计算性能 [#9196](https://github.com/pingcap/tiflash/issues/9196) @[guo-shaoge](https://github.com/guo-shaoge) 在 v8.3.0 之前,TiFlash 在 HashAgg 聚合计算中处理高 NDV (number of distinct values) 数据时,第一阶段的聚合计算效率较低。从 v8.3.0 开始,TiFlash 引入多种 HashAgg 聚合计算策略,以提升不同特征数据的聚合计算性能。你可以通过系统变量 [`tiflash_hashagg_preaggregation_mode`](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入) 设置所需的 HashAgg 聚合计算策略。 更多信息,请参考[用户文档](/system-variables.md#tiflash_hashagg_preaggregation_mode-从-v830-版本开始引入)。 -* 统计信息收集忽略不必要的列 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) **tw@lilin90** +* 统计信息收集忽略不必要的列 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) 当优化器生成执行计划时,只需要部分列的统计信息,例如过滤条件上的列、连接键上的列、聚合目标用到的列。从 v8.3.0 起,TiDB 会持续观测 SQL 语句对列的使用历史,默认只收集有索引的列,以及被观测到的有必要收集统计信息的列。这将会提升统计信息的收集速度,避免不必要的资源浪费。 @@ -75,7 +75,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/statistics.md#收集部分列的统计信息)。 -* 提升部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) **tw@hfxsd** +* 提升部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) 之前的版本中,当集群规模变大、表数量较多时,查询系统表性能较差。 @@ -99,13 +99,13 @@ TiDB 版本:8.3.0 - `INFORMATION_SCHEMA.TIDB_INDEX_USAGE` - `INFORMATION_SCHEMA.VIEWS` -* 分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,支持分区裁剪,提升查询性能 [#54209](https://github.com/pingcap/tidb/pull/54209) @[mjonss](https://github.com/mjonss) **tw@hfxsd** +* 分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,支持分区裁剪,提升查询性能 [#54209](https://github.com/pingcap/tidb/pull/54209) @[mjonss](https://github.com/mjonss) 之前的版本中,当分区表达式使用 `EXTRACT(YEAR_MONTH...)` 函数时,不支持分区裁剪,导致查询性能较差。从 v8.3.0 开始,当分区表达式使用该函数时,支持分区裁剪,提升了查询性能。 更多信息,请参考[用户文档](/partition-pruning.md#场景三)。 -* 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列 (`ADD COLUMN`) 的性能提升了 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) **tw@hfxsd** +* 批量建表 (`CREATE TABLE`) 的性能提升了 1.4 倍,批量建库 (`CREATE DATABASE`) 的性能提升了 2.1 倍,批量加列 (`ADD COLUMN`) 的性能提升了 2 倍 [#54436](https://github.com/pingcap/tidb/issues/54436) @[D3Hunter](https://github.com/D3Hunter) v8.0.0 引入了系统变量 [`tidb_enable_fast_create_table`](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入),用于在批量建表的场景中提升建表的性能。在 v8.3.0 中,通过 10 个 session 在单个库内并发提交建表的 DDL,相比 v8.2.0,性能有 1.4 倍的提升。 @@ -113,7 +113,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 -* 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) **tw@hfxsd** +* 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区表达式中用到的所有列,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 @@ -123,7 +123,7 @@ TiDB 版本:8.3.0 ### 稳定性 -* 支持以流式获取游标的结果集(实验特性)[#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) **tw@lilin90** +* 支持以流式获取游标的结果集(实验特性)[#54526](https://github.com/pingcap/tidb/issues/54526) @[YangKeao](https://github.com/YangKeao) 当应用代码通过 [Cursor Fetch](/develop/dev-guide-connection-parameters.md#使用-streamingresult-流式获取执行结果) 获取结果集时,TiDB 通常会先将完整结果保存至 TiDB 内存,再分批返回给客户端。如果结果集过大,可能会触发落盘临时将结果写入硬盘。 @@ -131,7 +131,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_lazy_cursor_fetch-从-v830-版本开始引入)。 -* 增强 SQL 执行计划绑定 [#55280](https://github.com/pingcap/tidb/issues/55280) [#55343](https://github.com/pingcap/tidb/issues/55343) @[time-and-fate](https://github.com/time-and-fate) **tw@lilin90** +* 增强 SQL 执行计划绑定 [#55280](https://github.com/pingcap/tidb/issues/55280) [#55343](https://github.com/pingcap/tidb/issues/55343) @[time-and-fate](https://github.com/time-and-fate) 在 OLTP 负载环境中,绝大部分 SQL 的最优执行计划是固定不变的。对业务中的重要 SQL 实施执行计划绑定,可以降低执行计划变差的几率,提升系统稳定性。为了满足创建大量 SQL 执行计划绑定的场景需求,TiDB 对 SQL 绑定的能力和体验进行了增强,其中包括: @@ -142,7 +142,7 @@ TiDB 版本:8.3.0 ### 高可用 -* TiProxy 内置虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** +* TiProxy 内置虚拟 IP 管理功能 [#583](https://github.com/pingcap/tiproxy/issues/583) @[djshow832](https://github.com/djshow832) 在 v8.3.0 之前,当使用主从模式以保证高可用性时,TiProxy 需要额外的组件管理虚拟 IP。从 v8.3.0 开始,TiProxy 内置虚拟 IP 管理功能。在主从模式下,当主节点发生切换时,新的主节点会自动绑定指定的虚拟 IP,确保客户端始终能通过虚拟 IP 连接到可用的 TiProxy。 @@ -152,23 +152,15 @@ TiDB 版本:8.3.0 ### SQL 功能 -* 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** +* 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁 [#54999](https://github.com/pingcap/tidb/issues/54999) @[cfzjywxk](https://github.com/cfzjywxk) TiDB 暂不支持 `SELECT LOCK IN SHARE MODE`。从 v8.3.0 开始,TiDB 支持将 `SELECT LOCK IN SHARE MODE` 升级为排它锁,实现对 `SELECT LOCK IN SHARE MODE` 语法的支持。你可以使用系统变量 [`tidb_enable_shared_lock_promotion`](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入) 控制是否启用该功能。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_shared_lock_promotion-从-v830-版本开始引入)。 -### 数据库管理 - -* 功能标题 [#issue号](链接) @[贡献者 GitHub ID](链接) **tw@xxx** - - 功能描述(需要包含这个功能是什么、在什么场景下对用户有什么价值、怎么用) - - 更多信息,请参考[用户文档](链接)。 - ### 可观测性 -* 展示初始统计信息的加载进度 [#53564](https://github.com/pingcap/tidb/issues/53564) @[hawkingrei](https://github.com/hawkingrei) **tw@lilin90** +* 展示初始统计信息的加载进度 [#53564](https://github.com/pingcap/tidb/issues/53564) @[hawkingrei](https://github.com/hawkingrei) TiDB 在启动时要加载基础统计信息,在表或者分区数量很多的情况下,该过程要耗费一定时间。当配置项 [`force-init-stats`](/tidb-configuration-file.md#force-init-stats-从-v657-和-v710-版本开始引入) 设置为 `ON` 时,初始统计信息加载完成前,TiDB 不会对外提供服务。在这种情况下,你需要对加载过程进行观测,从而预估服务开启时间。 @@ -178,25 +170,25 @@ TiDB 版本:8.3.0 ### 安全 -* 增强 PD 日志脱敏 [#8305](https://github.com/tikv/pd/issues/8305) @[JmPotato](https://github.com/JmPotato) **tw@hfxsd** +* 增强 PD 日志脱敏 [#8305](https://github.com/tikv/pd/issues/8305) @[JmPotato](https://github.com/JmPotato) TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 - 在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强。要使用该功能,可以将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`。 + 在 v8.3.0 中,PD 实现了类似的日志脱敏功能增强。要使用该功能,可以将 PD 配置项 `security.redact-info-log` 的值设置为 `"marker"`。 更多信息,请参考[用户文档](/log-redaction.md#pd-组件日志脱敏)。 -* 增强 TiKV 日志脱敏 [#17206](https://github.com/tikv/tikv/issues/17206) @[lucasliang](https://github.com/LykxSassinator) **tw@hfxsd** +* 增强 TiKV 日志脱敏 [#17206](https://github.com/tikv/tikv/issues/17206) @[lucasliang](https://github.com/LykxSassinator) TiDB v8.0.0 增强了日志脱敏功能,支持控制是否使用 `‹ ›` 包裹 TiDB 日志中的用户数据。基于标记后的日志,你可以在展示日志时决定是否对被标记信息进行脱敏处理,从而提升日志脱敏功能的灵活性。在 v8.2.0 中,TiFlash 实现了类似的日志脱敏功能增强。 - 在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强。要使用该功能,可以将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`。 + 在 v8.3.0 中,TiKV 实现了类似的日志脱敏功能增强。要使用该功能,可以将 TiKV 配置项 `security.redact-info-log` 的值设置为 `"marker"`。 更多信息,请参考[用户文档](/log-redaction.md#tikv-组件日志脱敏)。 ### 数据迁移 -* TiCDC 支持通过双向复制模式 (Bi-Directional Replication, BDR) 同步 DDL 语句 (GA) [#10301](https://github.com/pingcap/tiflow/issues/10301) [#48519](https://github.com/pingcap/tidb/issues/48519) @okJiang @asddongmen **tw@hfxsd** +* TiCDC 支持通过双向复制模式 (Bi-Directional Replication, BDR) 同步 DDL 语句 (GA) [#10301](https://github.com/pingcap/tiflow/issues/10301) [#48519](https://github.com/pingcap/tidb/issues/48519) @[okJiang](https://github.com/okJiang) @[asddongmen](https://github.com/asddongmen) 从 v7.6.0 开始,TiCDC 支持在配置了双向复制的情况下同步 DDL 语句。以前,TiCDC 不支持双向复制 DDL 语句,因此要使用 TiCDC 双向复制必须将 DDL 语句在两个 TiDB 集群分别执行。有了该特性,在为一个集群分配 `PRIMARY` BDR role 之后,TiCDC 可以将该集群的 DDL 语句复制到 `SECONDARY` 集群。 @@ -233,14 +225,14 @@ TiDB 版本:8.3.0 | 配置文件 | 配置项 | 修改类型 | 描述 | |----------------|--------------------|------|------------------------------------| | TiDB | [`tikv-client.batch-policy`](/tidb-configuration-file.md#batch-policy-从-v830-版本开始引入) | 新增 | 控制 TiDB 向 TiKV 发送请求时的批处理策略。 | -| PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | -| TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `marker`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| PD | [`security.redact-info-log`](/pd-configuration-file.md#redact-info-log-从-v50-版本开始引入) | 修改 | 支持将 PD 配置项 `security.redact-info-log` 的值设置为 `"marker"`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiKV | [`security.redact-info-log`](/tikv-configuration-file.md#redact-info-log-从-v408-版本开始引入) | 修改 | 支持将 TiKV 配置项 `security.redact-info-log` 的值设置为 `"marker"`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | +| TiFlash | [`security.redact-info-log`](/tiflash/tiflash-configuration.md#配置文件-tiflash-learnertoml) | 修改 | 支持将 TiFlash Learner 配置项 `security.redact-info-log` 的值设置为 `"marker"`,使用标记符号 `‹ ›` 标记出敏感信息,而不是直接隐藏,以便你能够自定义脱敏规则。 | | BR | [`--allow-pitr-from-incremental`](/br/br-incremental-guide.md#使用限制) | 新增 | 控制增量备份和后续的日志备份是否兼容。默认值为 `true`,即增量备份兼容后续的日志备份。兼容的情况下,增量恢复开始前会对需要回放的 DDL 进行严格检查。 | ### 系统表 -* 在系统表 [`INFORMATION_SCHEMA.PROCESSLIST`](/information-schema/information-schema-processlist.md) 和 [`INFORMATION_SCHEMA.CLUSTER_PROCESSLIST`](/information-schema/information-schema-processlist.md#cluster_processlist) 中新增 `ROWS_AFFECTED` 字段,用于显示 DML 语句当前影响的数据行数。[#46889](https://github.com/pingcap/tidb/issues/46889) @[lcwangchao](https://github.com/lcwangchao) **tw@qiancai** +* 在系统表 [`INFORMATION_SCHEMA.PROCESSLIST`](/information-schema/information-schema-processlist.md) 和 [`INFORMATION_SCHEMA.CLUSTER_PROCESSLIST`](/information-schema/information-schema-processlist.md#cluster_processlist) 中新增 `ROWS_AFFECTED` 字段,用于显示 DML 语句当前影响的数据行数。[#46889](https://github.com/pingcap/tidb/issues/46889) @[lcwangchao](https://github.com/lcwangchao) ## 废弃功能 @@ -257,7 +249,7 @@ TiDB 版本:8.3.0 ## 改进提升 -+ TiDB ++ TiDB - 支持 `SELECT ... STRAIGHT_JOIN ... USING ( ... )` 语句 [#54162](https://github.com/pingcap/tidb/issues/54162) @[dveeden](https://github.com/dveeden) - 支持为形如 `((idx_col_1 > 1) or (idx_col_1 = 1 and idx_col_2 > 10)) and ((idx_col_1 < 10) or (idx_col_1 = 10 and idx_col_2 < 20))` 的过滤条件构造更精准的索引访问 Range [#54337](https://github.com/pingcap/tidb/issues/54337) @[ghazalfamilyusa](https://github.com/ghazalfamilyusa) @@ -267,19 +259,19 @@ TiDB 版本:8.3.0 - 支持在多值索引的 `IndexRangeScan` 上生成 `Selection`,以提高查询效率 [#54876](https://github.com/pingcap/tidb/issues/54876) @[time-and-fate](https://github.com/time-and-fate) - 支持在设定的自动 `ANALYZE` 时间窗口外终止正在执行的自动 `ANALYZE` 任务 [#55283](https://github.com/pingcap/tidb/issues/55283) @[hawkingrei](https://github.com/hawkingrei) - 当某个统计信息完全由 TopN 构成,且对应表的统计信息中修改行数不为 0 时,对于未命中 TopN 的等值条件,估算结果从 0 调整为 1 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) - - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) **tw@Oreoxmt** - - TiDB 节点支持执行包含 `WITH ROLLUP` 修饰符和 `GROUPING` 函数的查询 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) **tw@Oreoxmt** - - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) 增加全局 (GLOBAL) 作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) **tw@hfxsd** - - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) **tw@qiancai** + - TopN 算子支持数据落盘功能 [#47733](https://github.com/pingcap/tidb/issues/47733) @[xzhangxian1008](https://github.com/xzhangxian1008) + - TiDB 节点支持执行包含 `WITH ROLLUP` 修饰符和 `GROUPING` 函数的查询 [#42631](https://github.com/pingcap/tidb/issues/42631) @[Arenatlx](https://github.com/Arenatlx) + - 系统变量 [`tidb_low_resolution_tso`](/system-variables.md#tidb_low_resolution_tso) 增加全局 (GLOBAL) 作用域 [#55022](https://github.com/pingcap/tidb/issues/55022) @[cfzjywxk](https://github.com/cfzjywxk) + - GC(垃圾回收)支持并发 Delete Range(删除区间)以提升处理效率,可以通过 [`tidb_gc_concurrency`](/system-variables.md#tidb_gc_concurrency-从-v50-版本开始引入) 控制并发线程数 [#54570](https://github.com/pingcap/tidb/issues/54570) @[ekexium](https://github.com/ekexium) - 提升批量 DML 执行方式 (`tidb_dml_type = "bulk"`) 的性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) - 提升 schema 信息缓存相关接口 `SchemaByID` 的性能 [#54074](https://github.com/pingcap/tidb/issues/54074) @[ywqzzy](https://github.com/ywqzzy) - 提升 schema 信息缓存开启时部分系统表的查询性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[tangenta](https://github.com/tangenta) - 优化添加唯一索引时冲突键的报错信息 [#53004](https://github.com/pingcap/tidb/issues/53004) @[lance6716](https://github.com/lance6716) -+ PD ++ PD - 支持通过 `pd-ctl` 修改 `evict-leader-scheduler` 的 `batch` 配置,以提升驱逐 Leader 的速度 [#8265](https://github.com/tikv/pd/issues/8265) @[rleungx](https://github.com/rleungx) - - Grafana 上的 **Cluster > Label distribution** 面板新增 `store_id` 监控指标,用于显示不同 label 对应的 store ID [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) + - Grafana 上的 **Cluster > Label distribution** 面板新增 `store_id` 监控指标,用于显示不同 label 对应的 store ID [#8337](https://github.com/tikv/pd/issues/8337) @[HuSharp](https://github.com/HuSharp) - 当指定的资源组不存在时,支持回退到默认资源组 [#8388](https://github.com/tikv/pd/issues/8388) @[JmPotato](https://github.com/JmPotato) - 在 `pd-ctl` 的 `region` 命令输出的 Region 信息中,新增 `approximate_kv_size` 字段 [#8412](https://github.com/tikv/pd/issues/8412) @[zeminzhou](https://github.com/zeminzhou) - 优化调用 PD API 删除 TTL 配置时的输出信息 [#8450](https://github.com/tikv/pd/issues/8450) @[lhy1024](https://github.com/lhy1024) @@ -288,15 +280,15 @@ TiDB 版本:8.3.0 - PD 微服务新增 `--name` 启动参数,以便部署时更精确地显示服务名称 [#7995](https://github.com/tikv/pd/issues/7995) @[HuSharp](https://github.com/HuSharp) - 支持通过 Region 数量动态调整 `PatrolRegionScanLimit`,以减少扫描 Region 所需的时间 [#7963](https://github.com/tikv/pd/issues/7963) @[lhy1024](https://github.com/lhy1024) -+ TiKV ++ TiKV - 优化 `async-io` 下写 Raft 日志的攒批策略,减少对磁盘 I/O 带宽资源的使用 [#16907](https://github.com/tikv/tikv/issues/16907) @[LykxSassinator](https://github.com/LykxSassinator) - 重新设计了 TiCDC 的 delegate 和 downstream 模块以更好地支持 Region 局部订阅 [#16362](https://github.com/tikv/tikv/issues/16362) @[hicqu](https://github.com/hicqu) - - 减少单个慢日志的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @(Connor1996)[https://github.com/Connor1996] + - 减少单个慢日志的大小 [#17294](https://github.com/tikv/tikv/issues/17294) @[Connor1996](https://github.com/Connor1996) - 增加监控指标 `min safe ts` [#17307](https://github.com/tikv/tikv/issues/17307) @[mittalrishabh](https://github.com/mittalrishabh) - 减少 peer message channel 的内存使用 [#16229](https://github.com/tikv/tikv/issues/16229) @[Connor1996](https://github.com/Connor1996) -+ TiFlash ++ TiFlash - 支持生成 SVG 格式的堆内存分析结果 [#9320](https://github.com/pingcap/tiflash/issues/9320) @[CalvinNeo](https://github.com/CalvinNeo) @@ -304,18 +296,18 @@ TiDB 版本:8.3.0 + Backup & Restore (BR) - - 在第一次进行按时间点恢复 (Point-in-time recovery, PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) **tw@qiancai** - - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - - 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) **tw@qiancai** - - (dup): release-7.5.3.md > 改进提升> Tools> Backup & Restore (BR) - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) - - (dup): release-8.2.0.md > 改进提升> Tools> Backup & Restore (BR) - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) + - 在第一次进行按时间点恢复 (Point-in-time recovery, PITR) 前,新增对全量备份是否存在的检查;如果未找到全量备份,会终止恢复并返回错误 [#54418](https://github.com/pingcap/tidb/issues/54418) @[Leavrth](https://github.com/Leavrth) + - 在恢复快照备份的数据之前,新增对 TiKV 和 TiFlash 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#54316](https://github.com/pingcap/tidb/issues/54316) @[RidRisR](https://github.com/RidRisR) + - 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够的磁盘空间的检查;如果空间不足,会终止恢复并返回错误 [#17224](https://github.com/tikv/tikv/issues/17224) @[RidRisR](https://github.com/RidRisR) + - 支持通过环境变量设置阿里云访问身份 [#45551](https://github.com/pingcap/tidb/issues/45551) @[RidRisR](https://github.com/RidRisR) + - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - 使增量备份兼容按时间点恢复 (PITR) [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) ## 错误修复 -+ TiDB ++ TiDB - 通过重置 `PipelinedWindow` 的 `Open` 方法中的参数,修复当 `PipelinedWindow` 作为 apply 的子节点使用时,由于重复的打开和关闭操作导致重用之前的参数值而发生的意外错误 [#53600](https://github.com/pingcap/tidb/issues/53600) @[XuHuaiyu](https://github.com/XuHuaiyu) - 修复由于查询超出 `tidb_mem_quota_query` 设定的内存使用限制,导致终止查询时可能卡住的问题 [#55042](https://github.com/pingcap/tidb/issues/55042) @[yibin87](https://github.com/yibin87) @@ -327,7 +319,7 @@ TiDB 版本:8.3.0 - 修复库较多的情况下 `FLASHBACK DATABASE` 死循环的问题 [#54915](https://github.com/pingcap/tidb/issues/54915) @[lance6716](https://github.com/lance6716) - 修复使用索引加速模式添加索引可能失败的问题 [#54568](https://github.com/pingcap/tidb/issues/54568) @[lance6716](https://github.com/lance6716) - 修复 `ADMIN CANCEL DDL JOBS` 可能导致 DDL 失败的问题 [#54687](https://github.com/pingcap/tidb/issues/54687) @[lance6716](https://github.com/lance6716) - - 修复来自 DM 同步的表超过索引列最大长度 `max-index-length` 时,同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) + - 修复来自 DM 同步的表超过索引列最大长度 `max-index-length` 时,同步失败的问题 [#55138](https://github.com/pingcap/tidb/issues/55138) @[lance6716](https://github.com/lance6716) - 修复开启 `tidb_enable_inl_join_inner_multi_pattern` 时,执行 SQL 语句可能报错 `runtime error: index out of range` 的问题 [#54535](https://github.com/pingcap/tidb/issues/54535) @[joechenrh](https://github.com/joechenrh) - 修复 TiDB 在统计信息初始化的过程中,无法通过 Control+C 的方式退出 TiDB 的问题 [#54589](https://github.com/pingcap/tidb/issues/54589) @[tiancaiamao](https://github.com/tiancaiamao) - 修复 `INL_MERGE_JOIN` Optimizer Hint 返回错误结果的问题,将其废弃 [#54064](https://github.com/pingcap/tidb/issues/54064) @[AilinKid](https://github.com/AilinKid) @@ -340,35 +332,35 @@ TiDB 版本:8.3.0 - 修复 `STATS_EXTENDED` 变成保留关键字的问题 [#39573](https://github.com/pingcap/tidb/issues/39573) @[wddevries](https://github.com/wddevries) - 修复 `tidb_low_resolution` 开启时,`select for update` 可以被执行的问题 [#54684](https://github.com/pingcap/tidb/issues/54684) @[cfzjywxk](https://github.com/cfzjywxk) - 修复 `tidb_redact_log` 开启时,内部 SQL 在慢日志里无法显示的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) @[lcwangchao](https://github.com/lcwangchao) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复事务占用的内存可能被多次重复统计的问题 [#53984](https://github.com/pingcap/tidb/issues/53984) @[ekexium](https://github.com/ekexium) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复使用 `SHOW WARNINGS;` 获取警告时可能导致 panic 的问题 [#48756](https://github.com/pingcap/tidb/issues/48756) @[xhebox](https://github.com/xhebox) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复加载索引统计信息可能会造成内存泄漏的问题 [#54022](https://github.com/pingcap/tidb/issues/54022) @[hi-rustin](https://github.com/hi-rustin) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当排序规则为 `utf8_bin` 或 `utf8mb4_bin` 时意外消除 `LENGTH()` 条件的错误 [#53730](https://github.com/pingcap/tidb/issues/53730) @[elsa0520](https://github.com/elsa0520) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复统计数据在遇到主键重复时没有更新 `stats_history` 表的问题 [#47539](https://github.com/pingcap/tidb/issues/47539) @[Defined2014](https://github.com/Defined2014) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复递归 CTE 查询可能导致无效指针的问题 [#54449](https://github.com/pingcap/tidb/issues/54449) @[hawkingrei](https://github.com/hawkingrei) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复某些连接在握手完成之前退出导致 Grafana 监控指标中的连接数 (Connection Count) 不正确的问题 [#54428](https://github.com/pingcap/tidb/issues/54428) @[YangKeao](https://github.com/YangKeao) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复使用 TiProxy 和资源组 (Resource Group) 功能时,每个资源组的连接数 (Connection Count) 显示不正确的问题 [#54545](https://github.com/pingcap/tidb/issues/54545) @[YangKeao](https://github.com/YangKeao) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当查询包含非关联子查询和 `LIMIT` 子句时,列剪裁可能不完善导致计划不优的问题 [#54213](https://github.com/pingcap/tidb/issues/54213) @[qw4990](https://github.com/qw4990) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复针对 `SELECT ... FOR UPDATE` 复用了错误点查询计划的问题 [#54652](https://github.com/pingcap/tidb/issues/54652) @[qw4990](https://github.com/qw4990) - - (dup): release-7.5.3.md > 错误修复> TiDB - 修复当第一个参数是 `month` 并且第二个参数是负数时,`TIMESTAMPADD()` 函数会进入无限循环的问题 [#54908](https://github.com/pingcap/tidb/issues/54908) @[xzhangxian1008](https://github.com/xzhangxian1008) - - (dup): release-8.1.1.md > 错误修复> TiDB - 修复慢日志中内部语句中的 SQL 默认被脱敏为空的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) [#52743](https://github.com/pingcap/tidb/issues/52743) [#53264](https://github.com/pingcap/tidb/issues/53264) @[lcwangchao](https://github.com/lcwangchao) - - (dup): release-8.1.1.md > 错误修复> TiDB - 修复可以生成 `_tidb_rowid` 的点查 (`PointGet`) 执行计划的问题 [#54583](https://github.com/pingcap/tidb/issues/54583) @[Defined2014](https://github.com/Defined2014) - - (dup): release-8.1.1.md > 错误修复> TiDB - 修复从 v7.1 升级后 `SHOW IMPORT JOBS` 报错 `Unknown column 'summary'` 的问题 [#54241](https://github.com/pingcap/tidb/issues/54241) @[tangenta](https://github.com/tangenta) - - (dup): release-8.1.1.md > 错误修复> TiDB - 修复当视图定义中使用子查询作为列定义时,通过 `information_schema.columns` 获取列信息返回告警 Warning 1356 的问题 [#54343](https://github.com/pingcap/tidb/issues/54343) @[lance6716](https://github.com/lance6716) - - (dup): release-8.1.1.md > 错误修复> TiDB - 修复可以创建非严格自增的 RANGE 分区表的问题 [#54829](https://github.com/pingcap/tidb/issues/54829) @[Defined2014](https://github.com/Defined2014) - - (dup): release-8.1.1.md > 错误修复> TiDB - 修复当 SQL 异常中断时,`INDEX_HASH_JOIN` 无法正常退出的问题 [#54688](https://github.com/pingcap/tidb/issues/54688) @[wshwsh12](https://github.com/wshwsh12) - - (dup): release-8.1.1.md > 错误修复> TiDB - 修复使用分布式框架添加索引期间出现网络分区可能导致数据索引不一致的问题 [#54897](https://github.com/pingcap/tidb/issues/54897) @[tangenta](https://github.com/tangenta) - -+ PD - - - (dup): release-7.5.3.md > 错误修复> PD - 修复将角色 (role) 绑定到资源组时未报错的问题 [#54417](https://github.com/pingcap/tidb/issues/54417) @[JmPotato](https://github.com/JmPotato) - - (dup): release-7.5.3.md > 错误修复> PD - 修复资源组在请求 token 超过 500 ms 时遇到超出配额限制的问题 [#8349](https://github.com/tikv/pd/issues/8349) @[nolouch](https://github.com/nolouch) - - (dup): release-8.1.1.md > 错误修复> PD - 修复 `INFORMATION_SCHEMA.RUNAWAY_WATCHES` 表中时间类型不正确的问题 [#54770](https://github.com/pingcap/tidb/issues/54770) @[HuSharp](https://github.com/HuSharp) - - (dup): release-8.1.1.md > 错误修复> PD - 修复资源组 (Resource Group) 在高并发场景下无法有效限制资源使用的问题 [#8435](https://github.com/tikv/pd/issues/8435) @[nolouch](https://github.com/nolouch) - - (dup): release-8.1.1.md > 错误修复> PD - 修复获取表属性时错误调用 PD API 的问题 [#55188](https://github.com/pingcap/tidb/issues/55188) @[JmPotato](https://github.com/JmPotato) - - (dup): release-8.1.1.md > 错误修复> PD - 修复开启 `scheduling` 微服务后,扩缩容进度显示错误的问题 [#8331](https://github.com/tikv/pd/issues/8331) @[rleungx](https://github.com/rleungx) - - (dup): release-8.1.1.md > 错误修复> PD - 修复加密管理器在使用前未初始化的问题 [#8384](https://github.com/tikv/pd/issues/8384) @[rleungx](https://github.com/rleungx) - - (dup): release-8.1.1.md > 错误修复> PD - 修复部分日志未脱敏的问题 [#8419](https://github.com/tikv/pd/issues/8419) @[rleungx](https://github.com/rleungx) + - 修复事务占用的内存可能被多次重复统计的问题 [#53984](https://github.com/pingcap/tidb/issues/53984) @[ekexium](https://github.com/ekexium) + - 修复使用 `SHOW WARNINGS;` 获取警告时可能导致 panic 的问题 [#48756](https://github.com/pingcap/tidb/issues/48756) @[xhebox](https://github.com/xhebox) + - 修复加载索引统计信息可能会造成内存泄漏的问题 [#54022](https://github.com/pingcap/tidb/issues/54022) @[hi-rustin](https://github.com/hi-rustin) + - 修复当排序规则为 `utf8_bin` 或 `utf8mb4_bin` 时意外消除 `LENGTH()` 条件的错误 [#53730](https://github.com/pingcap/tidb/issues/53730) @[elsa0520](https://github.com/elsa0520) + - 修复统计数据在遇到主键重复时没有更新 `stats_history` 表的问题 [#47539](https://github.com/pingcap/tidb/issues/47539) @[Defined2014](https://github.com/Defined2014) + - 修复递归 CTE 查询可能导致无效指针的问题 [#54449](https://github.com/pingcap/tidb/issues/54449) @[hawkingrei](https://github.com/hawkingrei) + - 修复某些连接在握手完成之前退出导致 Grafana 监控指标中的连接数 (Connection Count) 不正确的问题 [#54428](https://github.com/pingcap/tidb/issues/54428) @[YangKeao](https://github.com/YangKeao) + - 修复使用 TiProxy 和资源组 (Resource Group) 功能时,每个资源组的连接数 (Connection Count) 显示不正确的问题 [#54545](https://github.com/pingcap/tidb/issues/54545) @[YangKeao](https://github.com/YangKeao) + - 修复当查询包含非关联子查询和 `LIMIT` 子句时,列剪裁可能不完善导致计划不优的问题 [#54213](https://github.com/pingcap/tidb/issues/54213) @[qw4990](https://github.com/qw4990) + - 修复针对 `SELECT ... FOR UPDATE` 复用了错误点查询计划的问题 [#54652](https://github.com/pingcap/tidb/issues/54652) @[qw4990](https://github.com/qw4990) + - 修复当第一个参数是 `month` 并且第二个参数是负数时,`TIMESTAMPADD()` 函数会进入无限循环的问题 [#54908](https://github.com/pingcap/tidb/issues/54908) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复慢日志中内部语句中的 SQL 默认被脱敏为空的问题 [#54190](https://github.com/pingcap/tidb/issues/54190) [#52743](https://github.com/pingcap/tidb/issues/52743) [#53264](https://github.com/pingcap/tidb/issues/53264) @[lcwangchao](https://github.com/lcwangchao) + - 修复可以生成 `_tidb_rowid` 的点查 (`PointGet`) 执行计划的问题 [#54583](https://github.com/pingcap/tidb/issues/54583) @[Defined2014](https://github.com/Defined2014) + - 修复从 v7.1 升级后 `SHOW IMPORT JOBS` 报错 `Unknown column 'summary'` 的问题 [#54241](https://github.com/pingcap/tidb/issues/54241) @[tangenta](https://github.com/tangenta) + - 修复当视图定义中使用子查询作为列定义时,通过 `information_schema.columns` 获取列信息返回告警 Warning 1356 的问题 [#54343](https://github.com/pingcap/tidb/issues/54343) @[lance6716](https://github.com/lance6716) + - 修复可以创建非严格自增的 RANGE 分区表的问题 [#54829](https://github.com/pingcap/tidb/issues/54829) @[Defined2014](https://github.com/Defined2014) + - 修复当 SQL 异常中断时,`INDEX_HASH_JOIN` 无法正常退出的问题 [#54688](https://github.com/pingcap/tidb/issues/54688) @[wshwsh12](https://github.com/wshwsh12) + - 修复使用分布式框架添加索引期间出现网络分区可能导致数据索引不一致的问题 [#54897](https://github.com/pingcap/tidb/issues/54897) @[tangenta](https://github.com/tangenta) + ++ PD + + - 修复将角色 (role) 绑定到资源组时未报错的问题 [#54417](https://github.com/pingcap/tidb/issues/54417) @[JmPotato](https://github.com/JmPotato) + - 修复资源组在请求 token 超过 500 ms 时遇到超出配额限制的问题 [#8349](https://github.com/tikv/pd/issues/8349) @[nolouch](https://github.com/nolouch) + - 修复 `INFORMATION_SCHEMA.RUNAWAY_WATCHES` 表中时间类型不正确的问题 [#54770](https://github.com/pingcap/tidb/issues/54770) @[HuSharp](https://github.com/HuSharp) + - 修复资源组 (Resource Group) 在高并发场景下无法有效限制资源使用的问题 [#8435](https://github.com/tikv/pd/issues/8435) @[nolouch](https://github.com/nolouch) + - 修复获取表属性时错误调用 PD API 的问题 [#55188](https://github.com/pingcap/tidb/issues/55188) @[JmPotato](https://github.com/JmPotato) + - 修复开启 `scheduling` 微服务后,扩缩容进度显示错误的问题 [#8331](https://github.com/tikv/pd/issues/8331) @[rleungx](https://github.com/rleungx) + - 修复加密管理器在使用前未初始化的问题 [#8384](https://github.com/tikv/pd/issues/8384) @[rleungx](https://github.com/rleungx) + - 修复部分日志未脱敏的问题 [#8419](https://github.com/tikv/pd/issues/8419) @[rleungx](https://github.com/rleungx) - 修复开启 PD 微服务时,重定向可能 panic 的问题 [#8406](https://github.com/tikv/pd/issues/8406) @[HuSharp](https://github.com/HuSharp) - 修复反复修改 `split-merge-interval` 的值(例如从 `1s` 改为 `1h`,再改回 `1s`)可能导致该配置不生效的问题 [#8404](https://github.com/tikv/pd/issues/8404) @[lhy1024](https://github.com/lhy1024) - 修复设置 `replication.strictly-match-label` 为 `true` 导致 TiFlash 启动失败的问题 [#8480](https://github.com/tikv/pd/issues/8480) @[rleungx](https://github.com/rleungx) @@ -376,20 +368,20 @@ TiDB 版本:8.3.0 - 修复了大规模集群下可能发生数据竞争的问题 [#8386](https://github.com/tikv/pd/issues/8386) @[rleungx](https://github.com/rleungx) - 修复 TiDB 在判断查询是否为 Runaway Queries 时,只统计了 Coprocessor 侧的时间消耗但未统计 TiDB 侧的时间消耗,导致一些查询未被识别为 Runaway Queries 的问题 [#51325](https://github.com/pingcap/tidb/issues/51325) @[HuSharp](https://github.com/HuSharp) -+ TiFlash ++ TiFlash - 修复使用 `CAST()` 函数将字符串转换为带时区或非法字符的日期时间时,结果错误的问题 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) - 修复 TiFlash 与任意 PD 发生网络分区后,可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) - - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,部分查询在执行时可能报列类型不匹配错误的问题 [#9175](https://github.com/pingcap/tiflash/issues/9175) @[JinheLin](https://github.com/JinheLin) - - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复开启延迟物化后,带有虚拟生成列的查询可能返回错误结果的问题 [#9188](https://github.com/pingcap/tiflash/issues/9188) @[JinheLin](https://github.com/JinheLin) - - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复将 TiFlash 中 SSL 证书配置项设置为空字符串会错误开启 TLS 并导致 TiFlash 启动失败的问题 [#9235](https://github.com/pingcap/tiflash/issues/9235) @[JaySon-Huang](https://github.com/JaySon-Huang) - - (dup): release-7.5.3.md > 错误修复> TiFlash - 修复数据库创建后短时间内被删除时,TiFlash 可能 panic 的问题 [#9266](https://github.com/pingcap/tiflash/issues/9266) @[JaySon-Huang](https://github.com/JaySon-Huang) - - (dup): release-8.1.1.md > 错误修复> TiFlash - 修复 TiFlash 与任意 PD 之间发生网络分区(即网络连接断开),可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) + - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) + - 修复开启延迟物化后,部分查询在执行时可能报列类型不匹配错误的问题 [#9175](https://github.com/pingcap/tiflash/issues/9175) @[JinheLin](https://github.com/JinheLin) + - 修复开启延迟物化后,带有虚拟生成列的查询可能返回错误结果的问题 [#9188](https://github.com/pingcap/tiflash/issues/9188) @[JinheLin](https://github.com/JinheLin) + - 修复将 TiFlash 中 SSL 证书配置项设置为空字符串会错误开启 TLS 并导致 TiFlash 启动失败的问题 [#9235](https://github.com/pingcap/tiflash/issues/9235) @[JaySon-Huang](https://github.com/JaySon-Huang) + - 修复数据库创建后短时间内被删除时,TiFlash 可能 panic 的问题 [#9266](https://github.com/pingcap/tiflash/issues/9266) @[JaySon-Huang](https://github.com/JaySon-Huang) + - 修复 TiFlash 与任意 PD 之间发生网络分区(即网络连接断开),可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - 修复在存算分离架构下,TiFlash 写节点可能重启失败的问题 [#9282](https://github.com/pingcap/tiflash/issues/9282) @[JaySon-Huang](https://github.com/JaySon-Huang) - 修复在存算分离架构下,TiFlash 写节点的读快照可能没有被及时释放的问题 [#9298](https://github.com/pingcap/tiflash/issues/9298) @[JinheLin](https://github.com/JinheLin) -+ TiKV ++ TiKV - 修复 Grafana TiKV 组件中的 `Ingestion picked level` 和 `Compaction Job Size(files)` 显示不正确的问题 [#15990](https://github.com/tikv/tikv/issues/15990) @[Connor1996](https://github.com/Connor1996) - 修复 `cancel_generating_snap` 错误地更新 `snap_tried_cnt` 导致 TiKV panic 的问题 [#17226](https://github.com/tikv/tikv/issues/17226) @[hbisheng](https://github.com/hbisheng) @@ -399,26 +391,25 @@ TiDB 版本:8.3.0 + Tools - + Backup & Restore (BR) + + Backup & Restore (BR) - - (dup): release-7.5.3.md > 错误修复> Tools> Backup & Restore (BR) - 修复增量恢复过程中 `ADD INDEX`、`MODIFY COLUMN` 等需要回填的 DDL 可能无法正确恢复的问题 [#54426](https://github.com/pingcap/tidb/issues/54426) @[3pointer](https://github.com/3pointer) + - 修复增量恢复过程中 `ADD INDEX`、`MODIFY COLUMN` 等需要回填的 DDL 可能无法正确恢复的问题 [#54426](https://github.com/pingcap/tidb/issues/54426) @[3pointer](https://github.com/3pointer) - 修复备份恢复时进度条卡住的问题 [#54140](https://github.com/pingcap/tidb/issues/54140) @[Leavrth](https://github.com/Leavrth) - 修复备份恢复的断点路径在一些外部存储中不兼容的问题 [#55265](https://github.com/pingcap/tidb/issues/55265) @[Leavrth](https://github.com/Leavrth) - + TiCDC + + TiCDC - 修复当下游 Kafka 无法访问时,Processor 可能卡住的问题 [#11340](https://github.com/pingcap/tiflow/issues/11340) @[asddongmen](https://github.com/asddongmen) - + TiDB Data Migration (DM) + + TiDB Data Migration (DM) - - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复 schema tracker 无法正确处理 LIST 分区表导致 DM 报错的问题 [#11408](https://github.com/pingcap/tiflow/issues/11408) @[lance6716](https://github.com/lance6716) - - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复当索引长度超过 `max-index-length` 默认值时数据同步中断的问题 [#11459](https://github.com/pingcap/tiflow/issues/11459) @[michaelmdeng](https://github.com/michaelmdeng) + - 修复 schema tracker 无法正确处理 LIST 分区表导致 DM 报错的问题 [#11408](https://github.com/pingcap/tiflow/issues/11408) @[lance6716](https://github.com/lance6716) + - 修复当索引长度超过 `max-index-length` 默认值时数据同步中断的问题 [#11459](https://github.com/pingcap/tiflow/issues/11459) @[michaelmdeng](https://github.com/michaelmdeng) - 修复 DM 无法正确处理 `FAKE_ROTATE_EVENT` 的问题 [#11381](https://github.com/pingcap/tiflow/issues/11381) @[lance6716](https://github.com/lance6716) + TiDB Lightning - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - (dup): release-8.1.1.md > 错误修复> Tools> TiDB Lightning - 修复 TiDB Lightning 获取 keyspace 失败时输出的 `WARN` 日志可能引起用户混淆的问题 [#54232](https://github.com/pingcap/tidb/issues/54232) @[kennytm](https://github.com/kennytm) + - 修复 TiDB Lightning 获取 keyspace 失败时输出的 `WARN` 日志可能引起用户混淆的问题 [#54232](https://github.com/pingcap/tidb/issues/54232) @[kennytm](https://github.com/kennytm) - 修复 TiDB Lightning 的 TLS 配置影响集群证书的问题 [#54172](https://github.com/pingcap/tidb/issues/54172) @[ei-sugimoto](https://github.com/ei-sugimoto) - 修复使用 TiDB Lightning 导入数据时报事务冲突的问题 [#49826](https://github.com/pingcap/tidb/issues/49826) @[lance6716](https://github.com/lance6716) - 修复导入大量库表时 checkpoint 文件过大导致性能下降的问题 [#55054](https://github.com/pingcap/tidb/issues/55054) @[D3Hunter](https://github.com/D3Hunter) From 4bbbe7eac83266340353db81af15769dea5738db Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 21 Aug 2024 09:21:37 +0800 Subject: [PATCH 095/103] Update releases/release-8.3.0.md --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9425f65f80c1..976db1dc3449 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -303,7 +303,7 @@ TiDB 版本:8.3.0 - 优化备份功能,提升在大量表备份过程中遇到节点重启、扩容或网络抖动时的备份性能和稳定性 [#52534](https://github.com/pingcap/tidb/issues/52534) @[3pointer](https://github.com/3pointer) - 使用 BR 进行备份恢复时,会根据 BR 进程的可用内存自动设置环境变量 `GOMEMLIMIT`,避免出现 OOM [#53777](https://github.com/pingcap/tidb/issues/53777) @[Leavrth](https://github.com/Leavrth) - 使增量备份兼容按时间点恢复 (PITR) [#54474](https://github.com/pingcap/tidb/issues/54474) @[3pointer](https://github.com/3pointer) - - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) + - 支持备份和恢复 `mysql.column_stats_usage` 表 [#53567](https://github.com/pingcap/tidb/issues/53567) @[hi-rustin](https://github.com/hi-rustin) ## 错误修复 From 0090d4c1ec9be53ae3db195fdad06117e8d525e9 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Wed, 21 Aug 2024 09:29:33 +0800 Subject: [PATCH 096/103] fixed bdr link --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9425f65f80c1..695c69f40ef3 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -194,7 +194,7 @@ TiDB 版本:8.3.0 在 v8.3.0,该功能成为正式功能 (GA)。 - 更多信息,请参考[用户文档](/ticdc-bidirectional-replication.md)。 + 更多信息,请参考[用户文档](/ticdc/ticdc-bidirectional-replication.md)。 ## 兼容性变更 From 28afc0ab41ed41712abe2ef91912071b2f0594c4 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Wed, 21 Aug 2024 09:30:49 +0800 Subject: [PATCH 097/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 54243fb54cba..9355e02c5a87 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -407,7 +407,7 @@ TiDB 版本:8.3.0 - 修复当索引长度超过 `max-index-length` 默认值时数据同步中断的问题 [#11459](https://github.com/pingcap/tiflow/issues/11459) @[michaelmdeng](https://github.com/michaelmdeng) - 修复 DM 无法正确处理 `FAKE_ROTATE_EVENT` 的问题 [#11381](https://github.com/pingcap/tiflow/issues/11381) @[lance6716](https://github.com/lance6716) - + TiDB Lightning + + TiDB Lightning - 修复 TiDB Lightning 获取 keyspace 失败时输出的 `WARN` 日志可能引起用户混淆的问题 [#54232](https://github.com/pingcap/tidb/issues/54232) @[kennytm](https://github.com/kennytm) - 修复 TiDB Lightning 的 TLS 配置影响集群证书的问题 [#54172](https://github.com/pingcap/tidb/issues/54172) @[ei-sugimoto](https://github.com/ei-sugimoto) From c680deeab6ce51e56e07108f9608a5272a21e7c6 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Wed, 21 Aug 2024 11:32:31 +0800 Subject: [PATCH 098/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9355e02c5a87..83d5ca2cea94 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -246,6 +246,15 @@ TiDB 版本:8.3.0 * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入),用于控制是否启用优先队列来优化自动收集统计信息任务的排序。在未来版本中,优先队列将成为自动收集统计信息任务的唯一排序方式,系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入) 将被废弃。 * TiDB 在 v7.5.0 引入了系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入),用于设置 TiDB 使用异步方式合并分区统计信息,以避免 OOM 问题。在未来版本中,分区统计信息将统一使用异步方式进行合并,系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入) 将被废弃。 * 计划在后续版本重新设计[执行计划绑定的自动演进](/sql-plan-management.md#自动演进绑定-baseline-evolution),相关的变量和行为会发生变化。 + * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入),用于控制是否启用优先队列来优化自动收集统计信息任务的排序。在未来版本中,优先队列将成为自动收集统计信息任务的唯一排序方式,系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入) 将被废弃。 + * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_parallel_hashagg_spill`](/system-variables.md#tidb_enable_parallel_hashagg_spill-从-v800-版本开始引入),用于控制 TiDB 是否支持并行 HashAgg 进行落盘。在未来版本中,系统变量 [`tidb_enable_parallel_hashagg_spill`](/system-variables.md#tidb_enable_parallel_hashagg_spill-从-v800-版本开始引入) 将被废弃。 + * TiDB 在 v7.5.0 引入了系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入),用于设置 TiDB 使用异步方式合并分区统计信息,以避免 OOM 问题。在未来版本中,分区统计信息将统一使用异步方式进行合并,系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入) 将被废弃。 + * 计划在后续版本重新设计[执行计划绑定的自动演进](/sql-plan-management.md#自动演进绑定-baseline-evolution),相关的变量和行为会发生变化。 + * TiDB Lightning 参数 [`conflict.max-record-rows`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 计划在未来版本中废弃,并在后续版本中删除。该参数将由 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 替代,即记录的冲突记录数和单个导入任务允许出现的冲突记录数的上限数保持一致。 + +* 以下为计划将在未来版本中移除的功能: + + * 从 v8.0.0 开始,TiDB Lightning 废弃了物理导入模式下的[旧版冲突检测](/tidb-lightning/tidb-lightning-physical-import-mode-usage.md#旧版冲突检测从-v800-开始已被废弃)策略,支持通过 [`conflict.strategy`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 参数统一控制逻辑导入和物理导入模式的冲突检测策略。旧版冲突检测的参数 [`duplicate-resolution`](/tidb-lightning/tidb-lightning-configuration.md) 将在未来版本中被移除。 ## 改进提升 From 95b099c5c752d774f36ae193fbbfdd7dc44c6206 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Wed, 21 Aug 2024 11:40:46 +0800 Subject: [PATCH 099/103] Update release-8.3.0.md --- releases/release-8.3.0.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 83d5ca2cea94..6fde4e1e7d02 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -246,10 +246,7 @@ TiDB 版本:8.3.0 * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入),用于控制是否启用优先队列来优化自动收集统计信息任务的排序。在未来版本中,优先队列将成为自动收集统计信息任务的唯一排序方式,系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入) 将被废弃。 * TiDB 在 v7.5.0 引入了系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入),用于设置 TiDB 使用异步方式合并分区统计信息,以避免 OOM 问题。在未来版本中,分区统计信息将统一使用异步方式进行合并,系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入) 将被废弃。 * 计划在后续版本重新设计[执行计划绑定的自动演进](/sql-plan-management.md#自动演进绑定-baseline-evolution),相关的变量和行为会发生变化。 - * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入),用于控制是否启用优先队列来优化自动收集统计信息任务的排序。在未来版本中,优先队列将成为自动收集统计信息任务的唯一排序方式,系统变量 [`tidb_enable_auto_analyze_priority_queue`](/system-variables.md#tidb_enable_auto_analyze_priority_queue-从-v800-版本开始引入) 将被废弃。 * TiDB 在 v8.0.0 引入了系统变量 [`tidb_enable_parallel_hashagg_spill`](/system-variables.md#tidb_enable_parallel_hashagg_spill-从-v800-版本开始引入),用于控制 TiDB 是否支持并行 HashAgg 进行落盘。在未来版本中,系统变量 [`tidb_enable_parallel_hashagg_spill`](/system-variables.md#tidb_enable_parallel_hashagg_spill-从-v800-版本开始引入) 将被废弃。 - * TiDB 在 v7.5.0 引入了系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入),用于设置 TiDB 使用异步方式合并分区统计信息,以避免 OOM 问题。在未来版本中,分区统计信息将统一使用异步方式进行合并,系统变量 [`tidb_enable_async_merge_global_stats`](/system-variables.md#tidb_enable_async_merge_global_stats-从-v750-版本开始引入) 将被废弃。 - * 计划在后续版本重新设计[执行计划绑定的自动演进](/sql-plan-management.md#自动演进绑定-baseline-evolution),相关的变量和行为会发生变化。 * TiDB Lightning 参数 [`conflict.max-record-rows`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 计划在未来版本中废弃,并在后续版本中删除。该参数将由 [`conflict.threshold`](/tidb-lightning/tidb-lightning-configuration.md#tidb-lightning-任务配置) 替代,即记录的冲突记录数和单个导入任务允许出现的冲突记录数的上限数保持一致。 * 以下为计划将在未来版本中移除的功能: From cf892756a80cc4f58fffc3c79cdf63f580f1d331 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 21 Aug 2024 11:57:42 +0800 Subject: [PATCH 100/103] Apply suggestions from code review Co-authored-by: JaySon Co-authored-by: Bisheng Huang --- releases/release-8.3.0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 6fde4e1e7d02..e21e431df0d0 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -377,7 +377,6 @@ TiDB 版本:8.3.0 + TiFlash - 修复使用 `CAST()` 函数将字符串转换为带时区或非法字符的日期时间时,结果错误的问题 [#8754](https://github.com/pingcap/tiflash/issues/8754) @[solotzg](https://github.com/solotzg) - - 修复 TiFlash 与任意 PD 发生网络分区后,可能导致读请求超时报错的问题 [#9243](https://github.com/pingcap/tiflash/issues/9243) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) - 修复跨数据库对含空分区的分区表执行 `RENAME TABLE ... TO ...` 后,TiFlash 可能 panic 的问题 [#9132](https://github.com/pingcap/tiflash/issues/9132) @[JaySon-Huang](https://github.com/JaySon-Huang) - 修复开启延迟物化后,部分查询在执行时可能报列类型不匹配错误的问题 [#9175](https://github.com/pingcap/tiflash/issues/9175) @[JinheLin](https://github.com/JinheLin) - 修复开启延迟物化后,带有虚拟生成列的查询可能返回错误结果的问题 [#9188](https://github.com/pingcap/tiflash/issues/9188) @[JinheLin](https://github.com/JinheLin) @@ -389,6 +388,7 @@ TiDB 版本:8.3.0 + TiKV + - 修复在清理旧 Region 时可能会误删数据的问题 [#17258](https://github.com/tikv/tikv/issues/17258) @[hbisheng](https://github.com/hbisheng) - 修复 Grafana TiKV 组件中的 `Ingestion picked level` 和 `Compaction Job Size(files)` 显示不正确的问题 [#15990](https://github.com/tikv/tikv/issues/15990) @[Connor1996](https://github.com/Connor1996) - 修复 `cancel_generating_snap` 错误地更新 `snap_tried_cnt` 导致 TiKV panic 的问题 [#17226](https://github.com/tikv/tikv/issues/17226) @[hbisheng](https://github.com/hbisheng) - 修复 `Ingest SST duration seconds` 统计信息说明错误的问题 [#17239](https://github.com/tikv/tikv/issues/17239) @[LykxSassinator](https://github.com/LykxSassinator) From 8fee131f74f0d7e7e72ca20c71ff0516d6c13a72 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Wed, 21 Aug 2024 18:27:16 +0800 Subject: [PATCH 101/103] Apply suggestions from code review Co-authored-by: Frank945946 <108602632+Frank945946@users.noreply.github.com> --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index e21e431df0d0..9141f5fcd626 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -25,7 +25,7 @@ TiDB 版本:8.3.0 可扩展性和性能 分区表全局索引(实验特性) - 全局索引能够有效提升对非分区键的检索效率,同时也解除了分区键一定要包含唯一键 (Unique Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 + 全局索引能够有效提升对非分区列的检索效率,同时也解除了唯一键(Unique Key) 必须要包含分区键(Partition Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 默认允许将 Projection 算子下推到存储引擎 @@ -117,7 +117,7 @@ TiDB 版本:8.3.0 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区表达式中用到的所有列,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。 - 从 v8.3.0 开始,全局索引作为实验特性正式发布。你可通过关键字 `Global` 为分区表显式创建一个全局索引,从而去除分区表唯一建必须包含分区表达式中用到的所有列的限制,满足灵活的业务需求。同时基于全局索引也提升了不带分区键的唯一索引的查询性能。 + 从 v8.3.0 开始,全局索引作为实验特性正式发布。你可通过关键字 `Global` 为分区表显式创建一个全局索引,从而去除分区表唯一建必须包含分区表达式中用到的所有列的限制,满足灵活的业务需求。同时基于全局索引也提升了非分区列的查询性能。 更多信息,请参考[用户文档](/partitioned-table.md#全局索引)。 From 651f84c107840885657efd8160b5f725d4124d73 Mon Sep 17 00:00:00 2001 From: houfaxin Date: Thu, 22 Aug 2024 07:37:26 +0800 Subject: [PATCH 102/103] add date --- TOC.md | 2 +- releases/release-8.3.0.md | 2 +- releases/release-notes.md | 4 ++++ releases/release-timeline.md | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/TOC.md b/TOC.md index 424c7ace8996..c6454523e07b 100644 --- a/TOC.md +++ b/TOC.md @@ -4,7 +4,7 @@ - [文档中心](https://docs.pingcap.com/zh) - 关于 TiDB - [TiDB 简介](/overview.md) - - [TiDB 8.2 Release Notes](/releases/release-8.2.0.md) + - [TiDB 8.3 Release Notes](/releases/release-8.3.0.md) - [功能概览](/basic-features.md) - [与 MySQL 的兼容性](/mysql-compatibility.md) - [使用限制](/tidb-limitations.md) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 9141f5fcd626..37a38aa98000 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -5,7 +5,7 @@ summary: 了解 TiDB 8.3.0 版本的新功能、兼容性变更、改进提升 # TiDB 8.3.0 Release Notes -发版日期:2024 年 x 月 x 日 +发版日期:2024 年 8 月 22 日 TiDB 版本:8.3.0 diff --git a/releases/release-notes.md b/releases/release-notes.md index 043d5924c9fd..af318f091335 100644 --- a/releases/release-notes.md +++ b/releases/release-notes.md @@ -10,6 +10,10 @@ summary: 介绍 TiDB 版本发布历史。 TiDB 历史版本发布声明如下: +## 8.3 + +- [8.3.0-DMR](/releases/release-8.3.0.md): 2024-08-22 + ## 8.2 - [8.2.0-DMR](/releases/release-8.2.0.md): 2024-07-11 diff --git a/releases/release-timeline.md b/releases/release-timeline.md index 1588a03a0361..29673a3b905d 100644 --- a/releases/release-timeline.md +++ b/releases/release-timeline.md @@ -11,6 +11,7 @@ summary: 了解 TiDB 的版本发布时间线。 | 版本 | 发布日期 | | :--- | :--- | +| [8.3.0-DMR](/releases/release-8.3.0.md) | 2024-08-22 | | [7.5.3](/releases/release-7.5.3.md) | 2024-08-05 | | [8.2.0-DMR](/releases/release-8.2.0.md) | 2024-07-11 | | [6.5.10](/releases/release-6.5.10.md) | 2024-06-20 | From 90275d85e425dcdb6a355a4cbe6be79e44a5866e Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 22 Aug 2024 10:32:04 +0800 Subject: [PATCH 103/103] Apply suggestions from code review Co-authored-by: Grace Cai --- releases/release-8.3.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/release-8.3.0.md b/releases/release-8.3.0.md index 37a38aa98000..ea8b1ebc2894 100644 --- a/releases/release-8.3.0.md +++ b/releases/release-8.3.0.md @@ -25,7 +25,7 @@ TiDB 版本:8.3.0 可扩展性和性能 分区表全局索引(实验特性) - 全局索引能够有效提升对非分区列的检索效率,同时也解除了唯一键(Unique Key) 必须要包含分区键(Partition Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 + 全局索引能够有效提升对非分区列的检索效率,同时也解除了唯一键 (Unique Key) 必须要包含分区键 (Partition Key) 的限制,扩展了 TiDB 分区表的使用场景,也能够避免数据迁移可能遇到的部分应用改造工作。 默认允许将 Projection 算子下推到存储引擎 @@ -113,7 +113,7 @@ TiDB 版本:8.3.0 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_fast_create_table-从-v800-版本开始引入)。 -* 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) +* 分区表支持全局索引 (Global Index)(实验特性)[#45133](https://github.com/pingcap/tidb/issues/45133) @[mjonss](https://github.com/mjonss) @[Defined2014](https://github.com/Defined2014) @[jiyfhust](https://github.com/jiyfhust) @[L-maple](https://github.com/L-maple) 之前版本的分区表,因为不支持全局索引有较多的限制,比如唯一键必须包含分区表达式中用到的所有列,如果查询条件不带分区键,查询时会扫描所有分区,导致性能较差。从 v7.6.0 开始,引入了系统变量 [`tidb_enable_global_index`](/system-variables.md#tidb_enable_global_index-从-v760-版本开始引入) 用于开启全局索引特性,但该功能当时处于开发中,不够完善,不建议开启。