
# 错误码命名规范
错误码序号遵循语义：GS_\[3位业务编号\]\[2位错误类型编号\]\[4位自增编号\]。
例如：GS_201110003：表示SQL模块(2)的行列存类型(0)参数类错误(11)，而子错误0003号代表了同类型错误码中的第三个错误码(如参数OID格式不正确)。
当前使用的业务、错误类型详见[表1]。
 表1错误码含义 
| 组别  | 模块类型            | 子模块类型              | 错误码前三位序号 |
|:---|:---|:---|:---|
| SQL | 行列存             | 行存                 | 101      |
| SQL | 行列存             | 列存                 | 102      |
| SQL | 行列存             | HStore             | 103      |
| SQL | 行列存             | GIN索引              | 104      |
| SQL | 行列存             | Btree索引            | 105      |
| SQL | 行列存             | 行存vacuum           | 106      |
| SQL | 行列存             | 列存vacuum           | 107      |
| SQL | 行列存             | 时序                 | 108      |
| SQL | 行列存             | SP-GiST索引          | 109      |
| SQL | 行列存             | Hash索引             | 110      |
| SQL | 事务              | 锁                  | 111      |
| SQL | 事务              | GTM                | 112      |
| SQL | 事务              | xlog               | 113      |
| SQL | 事务              | 快照                 | 114      |
| SQL | 事务              | barrier            | 115      |
| SQL | 事务              | pool               | 116      |
| SQL | 事务              | checkpoint         | 117      |
| SQL | 事务              | residualfiles      | 118      |
| SQL | HA              | 数据页复制              | 121      |
| SQL | HA              | 日志复制               | 122      |
| SQL | HA              | build              | 123      |
| SQL | HA              | 主备倒换               | 124      |
| SQL | HA              | 复制槽（slot）          | 125      |
| SQL | HA              | 日志流控制              | 126      |
| SQL | HA              | catchup            | 127      |
| SQL | HA              | 同步提交               | 128      |
| SQL | SQL on Anywhere | SQL on parquet     | 131      |
| SQL | SQL on Anywhere | SQL on orc         | 132      |
| SQL | SQL on Anywhere | SQL on Hudi        | 133      |
| SQL | SQL on Anywhere | SQL on carbondata  | 134      |
| SQL | SQL on Anywhere | OBS/HDFS/DLI       | 135      |
| SQL | GDS/copy        | 公共机制（选项参数、任务分配、压缩） | 141      |
| SQL | GDS/copy        | 导入                 | 142      |
| SQL | GDS/copy        | 导出                 | 143      |
| SQL | GDS/copy        | 互联互通               | 145      |
| SQL | GDS/copy        | GDS上报              | 146      |
| SQL | 备份              | 逻辑备份               | 161      |
| SQL | 备份              | 细粒度容灾              | 162      |
| SQL | 其他              | CBM                | 151      |
| SQL | 其他              | 逻辑复制               | 152      |
| SQL | 其他              | RPC消息输出            | 153      |
| SQL | 其他              | postmaster         | 154      |
| SQL | 其他              | IPC                | 155      |
| SQL | 其他              | commands           | 156      |
| SQL | 其他              | tablespace         | 157      |
| SQL | 其他              | 集群                 | 158      |
| SQL | 其他              | port目录下的公共机制       | 159      |
| 存储  | 解析器             | 词法分析               | 211      |
| 存储  | 解析器             | 语法分析               | 212      |
| 存储  | 解析器             | DDL                | 213      |
| 存储  | 解析器             | DML                | 214      |
| 存储  | 解析器             | 表达式                | 215      |
| 存储  | 解析器             | 元数据                | 216      |
| 存储  | 优化器             | 查询重写               | 221      |
| 存储  | 优化器             | 路径生成               | 222      |
| 存储  | 优化器             | 计划生成               | 223      |
| 存储  | 优化器             | 计划缓存               | 224      |
| 存储  | 优化器             | Analyze            | 225      |
| 存储  | 优化器             | utile接口            | 226      |
| 存储  | 执行器             | 行执行引擎              | 231      |
| 存储  | 执行器             | 向量化执行引擎            | 232      |
| 存储  | 执行器             | 执行诊断信息             | 233      |
| 存储  | 执行器             | LLVM               | 234      |
| 存储  | 执行器             | 分布式执行框架            | 235      |
| 存储  | 执行器             | RemoteQuery        | 236      |
| 存储  | 执行器             | Explain            | 237      |
| 存储  | 安全              | 认证                 | 241      |
| 存储  | 安全              | 授权                 | 242      |
| 存储  | 安全              | 加密                 | 243      |
| 存储  | 安全              | 审计                 | 244      |
| 存储  | 安全              | 脱敏                 | 245      |
| 存储  | 通信              | libpq              | 251      |
| 存储  | 通信              | pooler             | 252      |
| 存储  | 通信              | libcomm            | 253      |
| 存储  | 通信              | stream线程池          | 254      |
| 存储  | 通信              | 通信通用接口             | 255      |
| 存储  | WLM             | 负载管理               | 261      |
| 存储  | WLM             | 内存管控               | 262      |
| 存储  | WLM             | CPU管控              | 263      |
| 存储  | WLM             | 空间管控               | 264      |
| 存储  | WLM             | 网络管控               | 265      |
| 存储  | WLM             | 异常规则               | 266      |
| 存储  | WLM             | 资源监控               | 267      |
| 存储  | 逻辑集群            | 逻辑集群               | 271      |
| 存储  | 重分布             | 重分布                | 281      |
| 存储  | 其他              | ODBC               | 201      |
| 存储  | 其他              | Tsearch            | 202      |
| 存储  | 其他              | 协同分析               | 203      |
| 存储  | 其他              | CN Retry           | 204      |
| 存储  | 其他              | 加速集群               | 205      |
| 存储  | 其他              | 高级包                | 206      |
| 存储  | 其他              | JSON               | 207      |
| 存储  | 其他              | format、java - UDF  | 208      |
| 存储  | 其他              | 功能特性               | 209      |
| CBB | CBB             | 信号                 | 301      |
| CBB | CBB             | 句柄、文件IO            | 302      |
| CBB | CBB             | 内存                 | 303      |
| CBB | CBB             | 线程                 | 304      |
| CBB | CBB             | 错误处理               | 305      |
| CBB | CBB             | 定时器                | 306      |
| CBB | CBB             | IPC                | 307      |
| CBB | CBB             | GUC                | 308      |
| CBB | CBB             | SysCache           | 309      |
| CBB | CBB             | 日志线程               | 310      |
| 容灾  | 容灾              | -                  | 501      |
   
表2错误码的错误类型 
| 错误码类型编号 | 错误类型描述                                            |
|:---|:---|
| 01      | 内存错误（内存不足、内存不可用、内存溢出等）                            |
| 02      | 磁盘错误                                              |
| 03      | 网络错误（建联失败、拒绝访问等）                                  |
| 04      | 文件错误（文件未找到、文件大小错误、文件格式错误、读文件失败、写文件失败、文件损坏等）       |
| 05      | 连接错误（连接不存在、连接失败、连接不可用，所连接平台出错等）                   |
| 06      | 协议错误                                              |
| 10      | 语法错误（不支持的语法、找不到的对象等）                              |
| 11      | 参数异常（sql语句中参数异常，包含函数参数异常、表达式参数异常、建表语句参数异常，参数越界等等） |
| 12      | 数据错误（数据未找到、非法数据（除零）等）                             |
| 13      | 数据类型错误（类型不匹配、数据类型问题（越界等））                         |
| 14      | 操作错误（不支持的操作）                                      |
| 15      | 权限错误（非法用户、用户密码错误、未授权）                             |
| 17      | 未定义对象错误                                           |
| 18      | 非法对象错误（database、schema、table、function等各种对象类型）     |
| 20      | 内部错误（异常场景，debug相关）                                |
| 21      | 不支持的特性                                            |
| 22      | 加锁错误（锁超时、死锁、锁冲突相关）                                |
| 24      | SPI接口（SPI接口执行失败）                                  |
   
