# 断点续作
AI DataLake做多模态数据处理时，执行过程中存在访问OBS或者调用模型等操作会导致访问异常，您可以通过设置断点续作，提升查询成功率。
#### checkpoint_resume_max_retries
**参数说明**：设置DN报错崩溃后，CN侧断点续作的最大重试次数。开启后CN自动拦截DN失败，重建DN并恢复执行。以文件粒度重试该DN执行的N个文件，同时每个DN独立计数，多DN场景下各DN的重试互不影响。该参数仅对窄依赖SELECT查询有效。
![](https://support.huaweicloud.com/sqlref-aura-aidatalake/public_sys-resources/note_3.0-zh-cn.png)
窄依赖是指每个父分区最多被一个子分区使用的情况。
**取值范围**：整型，\[0,10\]。
- 0：关闭断点续作。DN崩溃后CN直接向用户报错，查询终止。
- \[1,10\]：开启断点续作。DN Actor崩溃后CN自动拦截失败、停止旧Actor、创建新Actor、重绑连接、恢复执行，最多重试该参数指定的次数。超限后，中止查询并报错原DN错误。
**默认值**：0。
约束与限制：
- 仅对只读窄依赖查询（SELECT）启用断点续作，DML（INSERT/UPDATE/DELETE）不启用，避免重试时序列号递增、数据修改等副作用。
- 重试粒度为DN级重试（该DN处理的相关文件（1-n个）会作为整体重试），查询结果可能存在重复。
- 仅支持Query Model，不支持Session Model。
- Iceberg表默认开启enable_meta_scan，查询计划中会包含DN间数据重分布破坏原有语句窄依赖，使得断点续作不生效。
**示例**：
设置DN报错崩溃后，CN侧断点续作的最大重试次数为3。
```
SET checkpoint_resume_max_retries = 3;
SELECT udf(col) FROM table;
```
