TDS 任务流失败后如何选择错误恢复或重跑

  使用配置
内容纲要

概要描述


任务流失败后,直接点击“重跑”可能重新执行已经成功写入的数据;直接选择“强制错误恢复”又可能绕过本应检查的依赖。本文说明如何先判断操作是否适用,再选择恢复范围,避免将“失败重试”“错误恢复”和“整流重跑”混为一谈。

详细说明


1. 固定本次要处理的记录

进入“运维 → 调度任务”,定位工作区、任务流和调度时间,记录执行ID、执行版本、执行模式、当前状态与失败任务。默认时间筛选为今天,处理历史记录时先扩大时间范围。不要只根据任务流名称或顶部成功率选择记录。

2. 先检查能不能恢复

  • 错误恢复适用于失败、阻塞的任务流执行记录;任务流重跑要求原记录已进入终态。
  • 任务流未发布、尚未执行结束或依赖策略已经变化时,文档列为不支持相应运维操作的场景,先停止,不用强制操作试探。
  • 对比历史执行版本与最新版本,确认任务增删、依赖关系、调度周期与参数是否改变;重跑/错误恢复使用最新版本,不等于按历史版本原样再执行一次。
  • 跨任务流操作还要检查关联的最新执行记录、当前调度时间是否仍属于最新cron的调度集合,以及下游是否仍在运行。

3. 按目标选择最小范围

目标 优先评估的操作 必须知道的影响
仅补做失败/阻塞链路中的相关任务 错误恢复当前 不重新计算所有已成功任务;生成新的关联记录
上游修正后,下游相关结果也必须重算 错误恢复当前及下游 其他上游分支的条件仍需满足,下游运行中可能阻止操作
所有任务都必须按最新配置重做 重跑当前 全部任务重跑,需评估重复写入和覆盖范围
当前与下游都必须全量重算 重跑当前及下游 影响更大,不应作为默认修复按钮

Workflow不保证业务数据幂等性。执行前由业务负责人确认目标分区/主键、写入方式、重复执行影响及恢复点。不能把“强制”理解为修复依赖或保证安全;它会忽略执行条件,但不保证所有下游分支自动满足。

对于偶发失败、希望后续自动重试的任务,另见TDS 调度任务添加错误重试;这与对已有失败记录做错误恢复不是同一流程。

4. 检查结果,而不是只看按钮成功

操作完成后,找到新生成的关联执行ID,核对调度时间仍对应原业务批次、实际执行时间为本次操作时间、实际执行版本符合预期,并检查本次被重新执行的任务集合及数据结果。运维统计可能按最新关联记录统计,历史记录仍保留,不能把失败计数减少理解为原失败记录被删除。

其他信息


任务依赖关系类型说明用于判断边的成功/失败/完成条件,不替代对本次跨流依赖和恢复范围的核对。未确认幂等性、拓扑差异或执行条件时,保留记录和错误文本交支持处理,不直接修改元数据库状态。

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。