diff --git a/markdown-pages/zh/tidb/master/releases/release-8.4.0.md b/markdown-pages/zh/tidb/master/releases/release-8.4.0.md index e7c35c7..5550f72 100644 --- a/markdown-pages/zh/tidb/master/releases/release-8.4.0.md +++ b/markdown-pages/zh/tidb/master/releases/release-8.4.0.md @@ -25,7 +25,7 @@ TiDB 版本:8.4.0 可扩展性和性能 实例级执行计划缓存(实验特性)**tw@Oreoxmt 1569** - 实例级执行计划缓存允许同一个 TiDB 实例的所有会话共享执行计划缓存,通过在内存中缓存更多执行计划,消除 SQL 编译时间,从而减少 SQL 运行时间,提升 OLTP 系统的性能和吞吐,同时更好地控制内存使用,提升数据库稳定性。 + 实例级执行计划缓存允许同一个 TiDB 实例的所有会话共享执行计划缓存。该特性通过在内存中缓存更多执行计划,减少 SQL 编译时间,从而降低 SQL 整体运行时间,提升 OLTP 系统的性能和吞吐,同时更好地控制内存使用,提升数据库稳定性。 分区表全局索引成为正式功能**tw@hfxsd 1961** @@ -58,8 +58,8 @@ TiDB 版本:8.4.0 SQL - >向量搜索功能(实验特性)**tw@qiancai 1898** - 向量搜索是一种基于数据语义的搜索方法,可以提供更相关的搜索结果。作为 AI 和大语言模型(LLM)的核心功能之一,向量搜索可用于检索增强生成(Retrieval-Augmented Generation, RAG)、语义搜索、推荐系统等多种场景。 + 支持向量搜索功能(实验特性)**tw@qiancai 1898** + 向量搜索是一种基于数据语义的搜索方法,可以提供更相关的搜索结果。作为 AI 和大语言模型 (LLM) 的核心功能之一,向量搜索可用于检索增强生成 (Retrieval-Augmented Generation, RAG)、语义搜索、推荐系统等多种场景。 数据库管理和可观测性 @@ -76,7 +76,7 @@ TiDB 版本:8.4.0 安全 - 日志备份数据支持客户端加密(实验特性)**tw@qiancai 1920** + 日志备份数据支持客户端加密(实验特性)**tw@qiancai 1920** 在上传日志备份到备份存储之前,你可以对日志备份数据进行加密,确保数据在存储和传输过程中的安全性。 @@ -102,27 +102,29 @@ TiDB 版本:8.4.0 更多信息,请参考[用户文档](/system-variables.md#tidb_tso_client_rpc_mode-从-v840-版本开始引入)。 -* 优化 TiDB Hash Join 算子的执行效率(实验特性) [#55153](https://github.com/pingcap/tidb/issues/55153) [#53127](https://github.com/pingcap/tidb/issues/53127) @[windtalker](https://github.com/windtalker) @[xzhangxian1008](https://github.com/xzhangxian1008) @[XuHuaiyu](https://github.com/XuHuaiyu) @[wshwsh12](https://github.com/wshwsh12) **tw@qiancai** +* 优化 TiDB Hash Join 算子的执行效率(实验特性)[#55153](https://github.com/pingcap/tidb/issues/55153) [#53127](https://github.com/pingcap/tidb/issues/53127) @[windtalker](https://github.com/windtalker) @[xzhangxian1008](https://github.com/xzhangxian1008) @[XuHuaiyu](https://github.com/XuHuaiyu) @[wshwsh12](https://github.com/wshwsh12) **tw@qiancai** - 在 v8.4.0 中,TiDB 对 Hash Join 算子的实现方法进行了优化,以提升其执行效率。目前,优化版的 Hash Join 且仅对 Inner Join 和 Outer Join 操作生效,且默认关闭。如需开启优化版的 Hash Join,可以将系统变量 [tidb_hash_join_version](/system-variables.md#tidb_hash_join_version-从-v840-版本开始引入) 设置为 `optimized`。 + 在 v8.4.0 中,TiDB 对 Hash Join 算子的实现方法进行了优化,以提升其执行效率。目前,优化版的 Hash Join 仅对 Inner Join 和 Outer Join 操作生效,且默认关闭。如需开启优化版的 Hash Join,可以将系统变量 [`tidb_hash_join_version`](/system-variables.md#tidb_hash_join_version-从-v840-版本开始引入) 设置为 `optimized`。 更多信息,请参考[用户文档](/system-variables.md#tidb_hash_join_version-从-v840-版本开始引入)。 -* 支持下推以下字符串函数到 TiKV [#17529](https://github.com/tikv/tikv/issues/17529) @[gengliqi](https://github.com/gengliqi) **tw@qiancai** +* 支持下推以下日期函数到 TiKV [#17529](https://github.com/tikv/tikv/issues/17529) @[gengliqi](https://github.com/gengliqi) **tw@qiancai** * `DATE_ADD()` * `DATE_SUB()` + * `ADDDATE()` + * `SUBDATE()` 更多信息,请参考[用户文档](/functions-and-operators/expressions-pushed-down.md)。 -* 实例级执行计划缓存(实验特性)[#54057](https://github.com/pingcap/tidb/issues/54057) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** +* 支持实例级执行计划缓存(实验特性)[#54057](https://github.com/pingcap/tidb/issues/54057) @[qw4990](https://github.com/qw4990) **tw@Oreoxmt** - TiDB v8.4.0 引入实例级执行计划缓存作为实验特性。该功能允许同一个 TiDB 实例的所有会话共享执行计划缓存,能够大幅降低 TiDB 的时延、提升集群吞吐、减少执行计划突变的可能性、保持集群性能的稳定,是 TiDB 改善性能和稳定性的重要改进。相比会话级执行计划缓存,实例级执行计划缓存具有以下优势: + 实例级执行计划缓存允许同一个 TiDB 实例上的所有会话共享执行计划缓存。该功能可以大幅降低 TiDB 的查询响应时间,提升集群吞吐,减少执行计划突变的可能性,并保持集群性能的稳定。相比会话级执行计划缓存,实例级执行计划缓存具有以下优势: - 消除冗余,在相同的内存消耗下缓存更多执行计划。 - 在实例上分配固定大小的内存区域,更有效地限制内存使用。 - 在 v8.4.0 中,实例级执行计划缓存仅支持对查询的执行计划进行缓存,默认关闭。你可以通过系统变量 [`tidb_enable_instance_plan_cache`](/system-variables.md#tidb_enable_instance_plan_cache-从-v840-版本开始引入) 开启该功能,并通过系统变量 [`tidb_instance_plan_cache_max_size`](/system-variables.md#tidb_instance_plan_cache_max_size-从-v840-版本开始引入) 设置其最大内存使用量。开启该功能之前,请关闭关闭会话级别的 [Prepare 语句执行计划缓存](/sql-prepared-plan-cache.md)和[非 Prepare 语句执行计划缓存](/sql-non-prepared-plan-cache.md)。 + 在 v8.4.0 中,实例级执行计划缓存仅支持对查询的执行计划进行缓存,且默认关闭。你可以通过系统变量 [`tidb_enable_instance_plan_cache`](/system-variables.md#tidb_enable_instance_plan_cache-从-v840-版本开始引入) 开启该功能,并通过系统变量 [`tidb_instance_plan_cache_max_size`](/system-variables.md#tidb_instance_plan_cache_max_size-从-v840-版本开始引入) 设置其最大内存使用量。开启该功能之前,请关闭会话级别的 [Prepare 语句执行计划缓存](/sql-prepared-plan-cache.md)和[非 Prepare 语句执行计划缓存](/sql-non-prepared-plan-cache.md)。 更多信息,请参考[用户文档](/system-variables.md#tidb_enable_instance_plan_cache-从-v840-版本开始引入)。 @@ -189,7 +191,7 @@ TiDB 版本:8.4.0 * TiProxy 支持流量回放功能(实验特性)[#642](https://github.com/pingcap/tiproxy/issues/642) @[djshow832](https://github.com/djshow832) **tw@Oreoxmt** - 从 TiProxy v1.3.0 开始,你可以使用 TiProxy 捕获 TiDB 生产集群中的访问流量,并在测试集群中按照指定的速率回放这些流量。通过该功能,你可以在测试环境中重现生产集群的实际工作负载,从而验证所有 SQL 的执行结果和性能表现。 + 从 TiProxy v1.3.0 开始,你可以使用 `tiproxyctrl` 连接 TiProxy 实例,捕获 TiDB 生产集群中的访问流量,并在测试集群中按照指定的速率回放这些流量。通过该功能,你可以在测试环境中重现生产集群的实际工作负载,从而验证所有 SQL 的执行结果和性能表现。 流量回放适用于以下场景: @@ -198,15 +200,13 @@ TiDB 版本:8.4.0 - TiDB 扩缩容前性能验证 - 集群性能上限测试 - 你可以使用 `tiproxyctrl` 连接 TiProxy 实例,并进行流量捕获和回放。 - 更多信息,请参考[用户文档](/tiproxy/tiproxy-traffic-replay.md)。 ### SQL 功能 -* 支持向量搜索功能(实验特性) [#54245](https://github.com/pingcap/tidb/issues/54245) [#9032](https://github.com/pingcap/tiflash/issues/9032) @[breezewish](https://github.com/breezewish) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) @[EricZequan](https://github.com/EricZequan) @[zimulala](https://github.com/zimulala) @[JaySon-Huang](https://github.com/JaySon-Huang) @[winoros](https://github.com/winoros) @[wk989898](https://github.com/wk989898) **tw@qiancai** +* 支持向量搜索功能(实验特性)[#54245](https://github.com/pingcap/tidb/issues/54245) [#9032](https://github.com/pingcap/tiflash/issues/9032) @[breezewish](https://github.com/breezewish) @[Lloyd-Pottiger](https://github.com/Lloyd-Pottiger) @[EricZequan](https://github.com/EricZequan) @[zimulala](https://github.com/zimulala) @[JaySon-Huang](https://github.com/JaySon-Huang) @[winoros](https://github.com/winoros) @[wk989898](https://github.com/wk989898) **tw@qiancai** - 向量搜索是一种基于数据语义的搜索方法,可以提供更相关的搜索结果。作为 AI 和大语言模型(LLM)的核心功能之一,向量搜索可用于检索增强生成(Retrieval-Augmented Generation, RAG)、语义搜索、推荐系统等多种场景。 + 向量搜索是一种基于数据语义的搜索方法,可以提供更相关的搜索结果。作为 AI 和大语言模型 (LLM) 的核心功能之一,向量搜索可用于检索增强生成 (Retrieval-Augmented Generation, RAG)、语义搜索、推荐系统等多种场景。 从 v8.4.0 开始,TiDB 支持[向量数据类型](vector-search-data-types.md)和[向量搜索索引](vector-search-index.md),具备强大的向量搜索能力。TiDB 的向量数据类型最多可支持 16383 维度,并支持多种[距离函数](/vector-search-functions-and-operators.md#向量函数),包括 L2 距离(欧式距离)、余弦距离、负内积和 L1 距离(曼哈顿距离)。 @@ -240,7 +240,7 @@ TiDB 版本:8.4.0 * BR 降低了从云存储服务系统恢复数据的权限要求 [#55870](https://github.com/pingcap/tidb/issues/55870) @[Leavrth](https://github.com/Leavrth) **tw@Oreoxmt** - 在 v8.4.0 之前,BR 在恢复过程中将恢复进度的检查点信息存储在备份数据位置。这些检查点使中断的恢复操作能够快速恢复。从 v8.4.0 开始,BR 将恢复检查点信息存储在目标 TiDB 集群中。这意味着 BR 在恢复时只需要对备份目录的读取权限。 + 在 v8.4.0 之前,BR 在恢复过程中会将恢复进度的检查点信息写入到备份存储系统。当恢复过程出现中断时,这些检查点使中断的恢复操作能够快速恢复。从 v8.4.0 开始,BR 将恢复检查点信息写入到目标 TiDB 集群中。这意味着 BR 在恢复时只需要具备对备份目录的读取权限。 更多信息,请参考[用户文档](/br/backup-and-restore-storages.md#鉴权)。 @@ -274,9 +274,9 @@ TiDB 版本:8.4.0 ### 数据迁移 -* TiCDC Claim-Check 支持仅发送Kafka 消息的 `value` 部分到外部存储 [#11396](https://github.com/pingcap/tiflow/issues/11396) @[3AceShowHand](https://github.com/3AceShowHand) **tw@Oreoxmt** +* TiCDC Claim-Check 支持仅发送 Kafka 消息的 `value` 部分到外部存储 [#11396](https://github.com/pingcap/tiflow/issues/11396) @[3AceShowHand](https://github.com/3AceShowHand) **tw@Oreoxmt** - 在 v8.4.0 之前,使用 Claim-Check 功能处理大型消息时(将 `large-message-handle-option` 设置为 `claim-check`),TiCDC 会将 `key` 和 `value` 都编码并存储在外部存储系统中。 + 在 v8.4.0 之前,如果开启了 Claim-Check 功能 (将 `large-message-handle-option` 设置为 `claim-check`),TiCDC 在处理大型消息时会将 `key` 和 `value` 都进行编码并存储在外部存储系统中。 从 v8.4.0 开始,TiCDC 支持仅将 Kafka 消息的 `value` 部分发送到外部存储,该功能仅适用于非 Open Protocol 协议。你可以通过设置 `claim-check-raw-value` 参数控制是否开启该功能。 @@ -284,7 +284,7 @@ TiDB 版本:8.4.0 * TiCDC 引入 Checksum V2 算法校验 Update 或 Delete 事件中 Old Value 数据 [#10969](https://github.com/pingcap/tiflow/issues/10969) @[3AceShowHand](https://github.com/3AceShowHand) **tw@Oreoxmt** - 从 v8.4.0 开始,TiDB 和 TiCDC 引入 Checksum V2 算法,解决了 Checksum V1 在执行 Add Column 或 Drop Column 后无法正确校验 Update 或 Delete 事件中 Old Value 数据的问题。对于 v8.4.0 及之后新创建的集群,或从之前版本升级到 v8.4.0 的集群,启用单行数据 Checksum 正确性校验功能后,TiDB 默认使用 Checksum V2 算法进行 Checksum 计算和校验。TiCDC 支持同时处理 V1 和 V2 两种 Checksum。该变更仅影响 TiDB 和 TiCDC 内部实现,不影响下游 Kafka consumer 的 Checksum 计算校验方法。 + 从 v8.4.0 开始,TiDB 和 TiCDC 引入 Checksum V2 算法,解决了 Checksum V1 在执行 `ADD COLUMN` 或 `DROP COLUMN` 后无法正确校验 Update 或 Delete 事件中 Old Value 数据的问题。对于 v8.4.0 及之后新创建的集群,或从之前版本升级到 v8.4.0 的集群,启用单行数据 Checksum 正确性校验功能后,TiDB 默认使用 Checksum V2 算法进行 Checksum 计算和校验。TiCDC 支持同时处理 V1 和 V2 两种 Checksum。该变更仅影响 TiDB 和 TiCDC 内部实现,不影响下游 Kafka consumer 的 Checksum 计算校验方法。 更多信息,请参考[用户文档](/ticdc/ticdc-integrity-check.md)。 @@ -366,14 +366,13 @@ TiDB 版本:8.4.0 - 优化扫描大量数据时构造 BatchCop Task 的效率 [#55915](https://github.com/pingcap/tidb/issues/55915) [#55413](https://github.com/pingcap/tidb/issues/55413) @[wshwsh12](https://github.com/wshwsh12) **tw@caiqian** - 优化 MEMDB 实现,降低事务中的写操作延时与 TiDB CPU 使用 [#55287](https://github.com/pingcap/tidb/issues/55287) @[you06](https://github.com/you06) **tw@hfxsd** - 优化系统变量 `tidb_dml_type` 为 `"bulk"` 时 DML 语句的执行性能 [#50215](https://github.com/pingcap/tidb/issues/50215) @[ekexium](https://github.com/ekexium) **tw@qiancai** - - 支持使用 [Optimizer Fix Control 47400](/optimizer-fix-controls.md#47400-从-v840-版本开始引入) 控制是否将优化器为 `estRows` 估算的最小值限制为 `1`,与 Oracle 和 DB2 等数据库的行为保持一致 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) **tw@Oreoxmt** + - 支持使用 [Optimizer Fix Control 47400](/optimizer-fix-controls.md#47400-从-v840-版本开始引入) 控制优化器是否将 `estRows` 的最小值限制为 `1`,与 Oracle 和 DB2 等数据库的行为保持一致 [#47400](https://github.com/pingcap/tidb/issues/47400) @[terry1purcell](https://github.com/terry1purcell) **tw@Oreoxmt** - 为日志表 [`mysql.tidb_runaway_queries`](/mysql-schema/mysql-schema.md#runaway-queries-相关系统表) 增加写入控制,降低大量并发写入引发的开销 [#54434](https://github.com/pingcap/tidb/issues/54434) @[HuSharp](https://github.com/HuSharp) **tw@lilin90** - - 当内表上有 `Selection` 或 `Projection` 算子时默认支持 Index Join [#issue号](链接) @[winoros](https://github.com/winoros) **tw@Oreoxmt** + - 当内表上有 `Selection`、`Projection` 或 `Aggregation` 算子时默认支持 Index Join [#47233](https://github.com/pingcap/tidb/issues/47233) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 在某些场景下减少 `DELETE` 操作从 TiKV 获取的列信息数量,降低 `DELETE` 操作的资源开销 [#38911](https://github.com/pingcap/tidb/issues/38911) @[winoros](https://github.com/winoros) **tw@Oreoxmt** - 优化自动收集统计信息任务优先级队列的运行效率 [#49972](https://github.com/pingcap/tidb/issues/49972) @[Rustin170506](https://github.com/Rustin170506) **tw@Oreoxmt** - 自动统计信息收集根据节点规模和硬件规格自动确定执行和扫描的并发度 [#53460](https://github.com/pingcap/tidb/issues/53460) @[hawkingrei](https://github.com/hawkingrei) **tw@Oreoxmt** - 优化一处内部函数逻辑,提升查询列数特别多的表时的性能 [#52112](https://github.com/pingcap/tidb/issues/52112) @[Rustin170506](https://github.com/Rustin170506) - - 默认开启 `tidb_enable_inl_join_inner_multi_pattern`,扩展 TiDB Index Join 的能力 [#47233](https://github.com/pingcap/tidb/issues/47233) @[winoros](https://github.com/winoros) - 支持将形如 `a = 1 AND (a > 1 OR (a = 1 AND b = 2))` 的过滤条件简化为 `a = 1 AND b = 2` [#56005](https://github.com/pingcap/tidb/issues/56005) @[ghazalfamilyusa](https://github.com/ghazalfamilyusa) - 在部分选中不优执行计划风险较高的场景中,提高代价模型中 Table Scan 的代价,使得优化器更倾向于使用索引 [#56012](https://github.com/pingcap/tidb/issues/56012) @[terry1purcell](https://github.com/terry1purcell) - `MID` 函数支持两个参数的形式 [#52420](https://github.com/pingcap/tidb/issues/52420) @[dveeden](https://github.com/dveeden) @@ -382,12 +381,16 @@ TiDB 版本:8.4.0 - 修复 TiDB graceful shutdown 时不等待 auto commit 事务完成的问题 [#55464](https://github.com/pingcap/tidb/issues/55464) @[YangKeao](https://github.com/YangKeao) - 修复在 TTL 任务执行过程中降低 `tidb_ttl_delete_worker_count` 的值导致任务不会完成的问题 [#55561](https://github.com/pingcap/tidb/issues/55561) @[lcwangchao](https://github.com/lcwangchao) - 支持对主键为非 binary 类型的表拆分 TTL 任务 [#55660](https://github.com/pingcap/tidb/issues/55660) @[lcwangchao](https://github.com/lcwangchao) + - 优化与系统元数据相关的语句性能 [#50305](https://github.com/pingcap/tidb/issues/50305) @[ywqzzy](https://github.com/ywqzzy) @[tangenta](https://github.com/tangenta) @[joechenrh](https://github.com/joechenrh) @[CbcWestwolf](https://github.com/CbcWestwolf) + - 实现新的优先级队列以提高性能并减少重建自动分析操作队列的开销 [#55906](https://github.com/pingcap/tidb/issues/55906) @[Rustin170506](https://github.com/Rustin170506) + - 引入 DDL 通知程序,以允许统计模块订阅 DDL 事件 [#55722](https://github.com/pingcap/tidb/issues/55722) @[fzzf678](https://github.com/fzzf678) @[lance6716](https://github.com/lance6716) @[Rustin170506](https://github.com/Rustin170506) + - TiDB 升级期间强制新版 TiDB 本节点接管 DDL Owner,避免旧版本 TiDB 节点接管而引发的一些兼容性问题 [#51285](https://github.com/pingcap/tidb/pull/51285) @[wjhuang2016](https://github.com/wjhuang2016) + TiKV - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - Region 的默认值由 96 MiB 提升到 256 MiB,避免 Region 数量过多导致额外开销 [#17309](https://github.com/tikv/tikv/issues/17309) [LykxSassinator](https://github.com/LykxSassinator) **tw@hfxsd** - - 支持指定单个 Region 或 TiKV 实例的内存悲观锁的内存上限,在热点写悲观锁加锁较多的情况下,可以通过修改配置提高内存上限,避免悲观锁落盘导致的 CPU/IO 开销 [#17542](https://github.com/tikv/tikv/issues/17542) @[cfzjywxk](https://github.com/cfzjywxk) **tw@Oreoxmt** + - 支持指定单个 Region 或 TiKV 实例的内存悲观锁的内存上限,在热点写导致大量悲观锁加锁时,可以通过修改配置提高内存上限,避免悲观锁落盘导致的 CPU/IO 开销 [#17542](https://github.com/tikv/tikv/issues/17542) @[cfzjywxk](https://github.com/cfzjywxk) **tw@Oreoxmt** - Raft Engine 新增 `spill-dir` 配置,支持 Raft 日志的多磁盘存储。当主目录 `dir` 所在磁盘的容量不足时,Raft Engine 会自动将新日志写入 `spill-dir`,从而确保系统的持续运行。[LykxSassinator](https://github.com/LykxSassinator) **tw@hfxsd** - (dup): release-6.5.11.md > 改进提升> TiKV - 优化存在大量 DELETE 版本时 RocksDB 的 compaction 触发机制,以加快磁盘空间回收 [#17269](https://github.com/tikv/tikv/issues/17269) @[AndreMouche](https://github.com/AndreMouche) - 支持向量数据类型(VECTOR)及其相关函数的计算下推 [#17290]https://github.com/tikv/tikv/issues/17290 @[breezewish](https://github.com/breezewish) @@ -400,7 +403,7 @@ TiDB 版本:8.4.0 + PD - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) - - 支持 TiKV 节点在 TiDB Lightning 导入数据期间优雅下线 (graceful offline) [#7853](https://github.com/tikv/pd/issues/7853) @[okJiang](https://github.com/okJiang) **tw@qiancai** + - 支持 TiKV 节点在 TiDB Lightning 导入数据期间优雅下线 (graceful offline) [#7853](https://github.com/tikv/pd/issues/7853) @[okJiang](https://github.com/okJiang) **tw@qiancai** + TiFlash @@ -465,6 +468,12 @@ TiDB 版本:8.4.0 - 修复带有最小显示宽度的 integer 数据类型参与除法时,可能导致除法结果溢出的问题 [#55837](https://github.com/pingcap/tidb/issues/55837) @[windtalker](https://github.com/windtalker) - 修复 TopN 算子之后的算子无法在内存超限时触发数据落盘的问题 [#56185](https://github.com/pingcap/tidb/issues/56185) @[xzhangxian1008](https://github.com/xzhangxian1008) - 修复 sort 算子中 order by 列如果包含常量列会 hang 住的问题 [#55344](https://github.com/pingcap/tidb/issues/55344) @[xzhangxian1008](https://github.com/xzhangxian1008) + - 修复在添加索引期间,kill pd leader 后出现`8223 (HY000)`错误 ,且表中的数据不一致的问题 [#55488](https://github.com/pingcap/tidb/issues/55488) @[tangenta](https://github.com/tangenta) + - 修复当用户请求历史 DDL 任务信息时,DDL 历史任务过多导致 OOM 的问题 [#55711](https://github.com/pingcap/tidb/issues/55711)) @[joccau](https://github.com/joccau) + - 修复当 Region 大小超过 96M 时,全局有序 IMPORT INTO 卡住的问题 [#55374](https://github.com/pingcap/tidb/issues/55374) @[lance6716](https://github.com/lance6716) + - 修复在临时表上使用 `import into` 会导致 tidb crash 的问题 [#55970](https://github.com/pingcap/tidb/issues/55970) @[D3Hunter](https://github.com/D3Hunter) + - 修复添加唯一索引意外地报告 duplicate entry 错误的问题 [#56161](https://github.com/pingcap/tidb/issues/56161) @[tangenta](https://github.com/tangenta) + - 修复当 TiKV 停机超过 810 秒后时,Lightning 未摄取所有 KV 对导致表中数据不一致的问题 [#55808](https://github.com/pingcap/tidb/issues/55808) @[lance6716](https://github.com/lance6716) + TiKV @@ -500,12 +509,12 @@ TiDB 版本:8.4.0 + TiDB Data Migration (DM) - - note [#issue](https://github.com/pingcap/tiflow/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - 修复多个 dm-master 同时成为 Leader 的问题 [#11602](https://github.com/pingcap/tiflow/issues/11602) @[GMHDBJD](https://github.com/GMHDBJD) - (dup): release-6.5.11.md > 错误修复> Tools> TiDB Data Migration (DM) - 修复 DM 在处理 `ALTER DATABASE` 语句时未设置默认数据库导致同步报错的问题 [#11503](https://github.com/pingcap/tiflow/issues/11503) @[lance6716](https://github.com/lance6716) + TiDB Lightning - - note [#issue](https://github.com/pingcap/tidb/issues/${issue-id}) @[贡献者 GitHub ID](https://github.com/${github-id}) + - 修复使用并行导入并且具有相同的任务 ID 时,lightning 会报告 `verify allocator base failed` 错误的问题 [#55384](https://github.com/pingcap/tidb/issues/55384) @[ei-sugimoto](https://github.com/ei-sugimoto) + Dumpling