
# 技术原理
#### 核心机制
- 依赖关系记录 记录数据库对象间的依赖关系，用于数据库对象间的级联失效。
  
- 级联失效 当依赖对象发生变更时，基于对象的依赖关系，沿依赖链路级联失效。
  
- 重编译 通过自动重编译、手动重编译将数据库对象刷为有效。
  
 
#### 接口介绍
表1失效重编译接口介绍 
| 失效重编译特性支持的接口                                                                                                                                                                                                                                                                                                                                                                                                                                    ||
|:---|---|
| 语法    | ALTER VIEW view_name COMPILE;                                                                                                                                                                                                                                                                                                                                                                                                            |
| 系统表   | - PG_DEPEND：记录数据库对象间的依赖关系。  - GS_DEP_SOURCE：记录对象原始定义信息和部分编译产物。  - PG_OBJECT：记录对象状态信息。   |
| GUC参数 | - enable_force_create_obj=on，提供视图一次性入库功能。  - enable_view_invalidation=on，提供视图的级联失效功能。                                                                                                  |
| 函数    | PG_CATALOG.GS_COMPILE_SCHEMA重编译指定SCHEMA下视图。当编译视图遇到报错时，异常将会被捕获，继续编译其他对象，直到全部对象编译成功或者到达失败尝试次数后停止。                                                                                                                                                                                                                                                                                                                                          |
   
