
# rewrite_manifests
**rewrite_manifests**可用于重写表的清单文件，以优化扫描规划效率。清单文件中的数据文件会按分区规范中的字段进行排序，此过程通过Spark作业并行执行。
#### 语法参数介绍
- 语法参数介绍
  表1语法参数介绍 
  | 参数名称        | 是否必选 | 类型      | 参数说明                           |
  |:---|:---|:---|:---|
  | table       | 必选   | string  | 必选参数，待更新的表名。                   |
  | use_caching | 可选   | boolean | 操作期间是否使用Spark缓存，默认值为"true"。    |
  | spec_id     | 可选   | int     | 待重写清单文件对应的分区规范ID，默认值为当前分区规范ID。 |
     
  
- 输出结果参数介绍
  表2输出结果参数介绍 
  | 参数名称                      | 类型  | 参数说明           |
  |:---|:---|:---|
  | rewritten_manifests_count | int | 此命令重写的清单文件数量。  |
  | added_manifests_count     | int | 此命令写入的新清单文件数量。 |
     
  
 
#### 示例
- 重写表**db.sample** 的清单文件，并使清单文件与表分区规则对齐：
  ```
  CALL prod.system.rewrite_manifests('db.sample');
  ```
  
- 重写表**db.sample** 的清单文件，并禁用Spark缓存（可用于避免执行器出现内存问题）：
  ```
  CALL prod.system.rewrite_manifests('db.sample', false);
  ```
  
 
