From 583a94010ab767d0645a986de47a946495ef0b46 Mon Sep 17 00:00:00 2001 From: Yu Juncen Date: Thu, 11 Jun 2026 16:52:08 +0800 Subject: [PATCH 1/5] docs: add checkpoint restore warning --- br/br-checkpoint-restore.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/br/br-checkpoint-restore.md b/br/br-checkpoint-restore.md index 40427d85216b..170d5abe6d2f 100644 --- a/br/br-checkpoint-restore.md +++ b/br/br-checkpoint-restore.md @@ -61,6 +61,16 @@ br 工具暂停 GC 的原理是通过执行 `SET config tikv gc.ratio-threshold 在恢复失败后,请避免向集群写入或删除数据、删除或创建表。由于备份数据中可能包含重命名表的 DDL 操作,断点恢复无法确认被删除的表或已存在的表是否是外部操作引起的,这会影响下次重试恢复的准确性。 +> **警告:** +> +> 我们已经明确发现,从 v8.5.5 开始,如果删除正在恢复的表,之后从 checkpoint 重新恢复,会导致: +> - checksum 失败,或者…… +> - 数据于恢复完成后一段时间丢失。 +> +> 如果打算放弃恢复结果,请务必注意在移除已经恢复的表后使用 [`br abort`](/br/br-pitr-manual.md#中止恢复操作) 来删除 checkpoint,或者手动 drop checkpoint table。 +> +> 参考:https://github.com/pingcap/tidb/issues/68709 + ### 不建议跨大版本重新恢复 不建议进行跨大版本的断点恢复操作。对于使用 v8.5.0 之前长期支持 (Long-Term Support, LTS) 版本 br 恢复失败的集群,无法通过 v8.5.0 或更新的 LTS 版本 br 继续恢复,反之亦然。 From 443c626110c14b9992e5d3842aa55e704d789cd4 Mon Sep 17 00:00:00 2001 From: Juncen Yu Date: Wed, 24 Jun 2026 13:57:33 +0800 Subject: [PATCH 2/5] Apply suggestion from @qiancai Co-authored-by: Grace Cai --- br/br-checkpoint-restore.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/br/br-checkpoint-restore.md b/br/br-checkpoint-restore.md index 170d5abe6d2f..ec8603697f0c 100644 --- a/br/br-checkpoint-restore.md +++ b/br/br-checkpoint-restore.md @@ -63,13 +63,12 @@ br 工具暂停 GC 的原理是通过执行 `SET config tikv gc.ratio-threshold > **警告:** > -> 我们已经明确发现,从 v8.5.5 开始,如果删除正在恢复的表,之后从 checkpoint 重新恢复,会导致: -> - checksum 失败,或者…… -> - 数据于恢复完成后一段时间丢失。 -> -> 如果打算放弃恢复结果,请务必注意在移除已经恢复的表后使用 [`br abort`](/br/br-pitr-manual.md#中止恢复操作) 来删除 checkpoint,或者手动 drop checkpoint table。 +> 从 v8.5.5 开始,如果你删除了正在恢复的表,之后再从 checkpoint 重试恢复,可能会遇到以下问题(详见 [#68709](https://github.com/pingcap/tidb/issues/68709)): > -> 参考:https://github.com/pingcap/tidb/issues/68709 +> - 恢复因 checksum 校验失败而终止。 +> - 数据在恢复完成后一段时间丢失。 +> +> 如果确定要放弃当前的恢复结果,请使用 [`br abort`](/br/br-pitr-manual.md#中止恢复操作) 命令删除下游集群中存储的 checkpoint 数据,或者手动删除下游集群中的 checkpoint 数据表。 ### 不建议跨大版本重新恢复 From 341970c12e57d2e7bc712f296123951893062c88 Mon Sep 17 00:00:00 2001 From: Juncen Yu Date: Wed, 24 Jun 2026 16:25:08 +0800 Subject: [PATCH 3/5] Apply suggestion from @YuJuncen --- br/br-checkpoint-restore.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/br/br-checkpoint-restore.md b/br/br-checkpoint-restore.md index ec8603697f0c..c75ec004eae0 100644 --- a/br/br-checkpoint-restore.md +++ b/br/br-checkpoint-restore.md @@ -68,7 +68,10 @@ br 工具暂停 GC 的原理是通过执行 `SET config tikv gc.ratio-threshold > - 恢复因 checksum 校验失败而终止。 > - 数据在恢复完成后一段时间丢失。 > -> 如果确定要放弃当前的恢复结果,请使用 [`br abort`](/br/br-pitr-manual.md#中止恢复操作) 命令删除下游集群中存储的 checkpoint 数据,或者手动删除下游集群中的 checkpoint 数据表。 +> 如果确定要放弃当前的恢复结果,在 `DROP` 掉已经恢复的 table 之外,还需要: +> +> - 对于 `restore point`,请执行 [`br abort`](/br/br-pitr-manual.md#中止恢复操作)。 +> - 对于 `restore full`,请手动删除下游集群中的 checkpoint 数据表(形如 `__TiDB_BR_Temporary_Snapshot_Restore_Checkpoint_`,你可以在 `mysql.tidb_restore_registry` 找到 restore 的 ID)。 ### 不建议跨大版本重新恢复 From 19eda31d9e6fc548104180bbc04cb72b050c1e35 Mon Sep 17 00:00:00 2001 From: Juncen Yu Date: Thu, 25 Jun 2026 17:53:16 +0800 Subject: [PATCH 4/5] Apply suggestion from @YuJuncen --- br/br-checkpoint-restore.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/br/br-checkpoint-restore.md b/br/br-checkpoint-restore.md index c75ec004eae0..7096dacb39c2 100644 --- a/br/br-checkpoint-restore.md +++ b/br/br-checkpoint-restore.md @@ -71,7 +71,7 @@ br 工具暂停 GC 的原理是通过执行 `SET config tikv gc.ratio-threshold > 如果确定要放弃当前的恢复结果,在 `DROP` 掉已经恢复的 table 之外,还需要: > > - 对于 `restore point`,请执行 [`br abort`](/br/br-pitr-manual.md#中止恢复操作)。 -> - 对于 `restore full`,请手动删除下游集群中的 checkpoint 数据表(形如 `__TiDB_BR_Temporary_Snapshot_Restore_Checkpoint_`,你可以在 `mysql.tidb_restore_registry` 找到 restore 的 ID)。 +> - 对于 `restore full`,请手动删除下游集群中的 checkpoint 数据库(形如 `__TiDB_BR_Temporary_Snapshot_Restore_Checkpoint_`,你可以在 `mysql.tidb_restore_registry` 找到 restore 的 ID)。 ### 不建议跨大版本重新恢复 From 981d14216d544d9227189e1de0bf0f79b77b874c Mon Sep 17 00:00:00 2001 From: Juncen Yu Date: Thu, 2 Jul 2026 16:09:33 +0800 Subject: [PATCH 5/5] Apply suggestions from code review Co-authored-by: Grace Cai --- br/br-checkpoint-restore.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/br/br-checkpoint-restore.md b/br/br-checkpoint-restore.md index 7096dacb39c2..9e88965a8ac6 100644 --- a/br/br-checkpoint-restore.md +++ b/br/br-checkpoint-restore.md @@ -63,15 +63,15 @@ br 工具暂停 GC 的原理是通过执行 `SET config tikv gc.ratio-threshold > **警告:** > -> 从 v8.5.5 开始,如果你删除了正在恢复的表,之后再从 checkpoint 重试恢复,可能会遇到以下问题(详见 [#68709](https://github.com/pingcap/tidb/issues/68709)): +> 从 v8.5.5 开始,如果在恢复期间删除正在恢复的表,之后再从 checkpoint 重试恢复,可能会遇到以下问题(详见 [#68709](https://github.com/pingcap/tidb/issues/68709)): > > - 恢复因 checksum 校验失败而终止。 -> - 数据在恢复完成后一段时间丢失。 +> - 恢复完成一段时间后,已恢复的数据丢失。 > -> 如果确定要放弃当前的恢复结果,在 `DROP` 掉已经恢复的 table 之外,还需要: +> 如果确定要放弃当前的恢复结果,请先根据恢复类型执行以下操作之一,然后再 `DROP` 已经恢复的表: > > - 对于 `restore point`,请执行 [`br abort`](/br/br-pitr-manual.md#中止恢复操作)。 -> - 对于 `restore full`,请手动删除下游集群中的 checkpoint 数据库(形如 `__TiDB_BR_Temporary_Snapshot_Restore_Checkpoint_`,你可以在 `mysql.tidb_restore_registry` 找到 restore 的 ID)。 +> - 对于 `restore full`,请手动删除下游集群中的 checkpoint 数据库。checkpoint 数据库的名称格式为 `__TiDB_BR_Temporary_Snapshot_Restore_Checkpoint_`,其中的 `` 可以在 `mysql.tidb_restore_registry` 中找到。 ### 不建议跨大版本重新恢复