This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/master by this push:
     new dfb013b710 Separate SYNC_CONNECTION_ERROR and DISPATCH_ERROR (#8726)
dfb013b710 is described below

commit dfb013b710ffd5990425091f4ecf60a8ee7870f4
Author: Haonan <[email protected]>
AuthorDate: Tue Jan 10 14:12:00 2023 +0800

    Separate SYNC_CONNECTION_ERROR and DISPATCH_ERROR (#8726)
---
 docs/UserGuide/Reference/Status-Codes.md           |  15 +-
 docs/zh/UserGuide/Reference/Status-Codes.md        | 249 +++++++++++----------
 .../apache/iotdb/commons/utils/StatusUtils.java    |   4 +-
 .../db/mpp/plan/scheduler/ClusterScheduler.java    |   2 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  |   2 +-
 .../scheduler/load/LoadTsFileDispatcherImpl.java   |   4 +-
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |   1 +
 7 files changed, 140 insertions(+), 137 deletions(-)

diff --git a/docs/UserGuide/Reference/Status-Codes.md 
b/docs/UserGuide/Reference/Status-Codes.md
index c770b30c20..bb00b48de1 100644
--- a/docs/UserGuide/Reference/Status-Codes.md
+++ b/docs/UserGuide/Reference/Status-Codes.md
@@ -43,7 +43,7 @@ With Status Code, instead of writing codes like `if 
(e.getErrorMessage().contain
 Here is a list of Status Code and related message:
 
 | Status Code | Status Type                       | Meanings                   
                                                               |
-| :---------- | :-------------------------------- | 
:----------------------------------------------------------------------------------------
 |
+|:------------|:----------------------------------|:------------------------------------------------------------------------------------------|
 | 200         | SUCCESS_STATUS                    |                            
                                                               |
 | 201         | INCOMPATIBLE_VERSION              | Incompatible version       
                                                               |
 | 202         | CONFIGURATION_ERROR               | Configuration error        
                                                               |
@@ -55,6 +55,7 @@ Here is a list of Status Code and related message:
 | 303         | ILLEGAL_PARAMETER                 | Parameter is illegal       
                                                               |
 | 304         | OVERLAP_WITH_EXISTING_TASK        | Current task has some 
conflict with existing tasks                                        |
 | 305         | INTERNAL_SERVER_ERROR             | Internal server error      
                                                               |
+| 306         | DISPATCH_ERROR                    | Meet error while 
dispatching                                                              |
 | 400         | REDIRECTION_RECOMMEND             | Recommend Client 
redirection                                                              |
 | 500         | DATABASE_NOT_EXIST                | Database does not exist    
                                                               |
 | 501         | DATABASE_ALREADY_EXISTS           | Database already exist     
                                                               |
@@ -144,12 +145,12 @@ Here is a list of Status Code and related message:
 | 1100        | LOAD_FILE_ERROR                   | Meet error while loading 
file                                                             |
 | 1101        | LOAD_PIECE_OF_TSFILE_ERROR        | Error when load a piece of 
TsFile when loading                                            |
 | 1102        | DESERIALIZE_PIECE_OF_TSFILE_ERROR | Error when deserialize a 
piece of TsFile                                                  |
-| 1103        | CREATE_PIPE_SINK_ERROR            | Failed to create a PIPE 
sink                                                              |
-| 1104        | PIPE_ERROR                        | PIPE error                 
                                                               |
-| 1105        | PIPESERVER_ERROR                  | PIPE server error          
                                                               |
-| 1106        | SYNC_CONNECTION_ERROR             | Meet error while sync 
connecting                                                          |
-| 1107        | SYNC_FILE_REDIRECTION_ERROR       | Sync TsFile redirection 
error                                                             |
-| 1108        | SYNC_FILE_ERROR                   | Sync TsFile error          
                                                               |
+| 1103        | SYNC_CONNECTION_ERROR             | Sync connection error      
                                                               |
+| 1104        | SYNC_FILE_REDIRECTION_ERROR       | Sync TsFile redirection 
error                                                             |
+| 1105        | SYNC_FILE_ERROR                   | Sync TsFile error          
                                                               |
+| 1106        | CREATE_PIPE_SINK_ERROR            | Failed to create a PIPE 
sink                                                              |
+| 1107        | PIPE_ERROR                        | PIPE error                 
                                                               |
+| 1108        | PIPESERVER_ERROR                  | PIPE server error          
                                                               |
 | 1109        | VERIFY_METADATA_ERROR             | Meet error in validate 
timeseries schema                                                  |
 | 1200        | UDF_LOAD_CLASS_ERROR              | Error when loading UDF 
class                                                              |
 | 1201        | UDF_DOWNLOAD_ERROR                | DataNode cannot download 
UDF from ConfigNode                                              |
diff --git a/docs/zh/UserGuide/Reference/Status-Codes.md 
b/docs/zh/UserGuide/Reference/Status-Codes.md
index 9f4cd2c5e0..8d2847cec7 100644
--- a/docs/zh/UserGuide/Reference/Status-Codes.md
+++ b/docs/zh/UserGuide/Reference/Status-Codes.md
@@ -43,132 +43,133 @@ try {
 
 这里是状态码和相对应信息的列表:
 
-| 状态码 | 状态类型                          | 状态信息                                  |
-| :----- | :-------------------------------- | 
:---------------------------------------- |
-| 200    | SUCCESS_STATUS                    | 成功状态                            
      |
-| 201    | INCOMPATIBLE_VERSION              | 版本不兼容                           
     |
-| 202    | CONFIGURATION_ERROR               | 配置文件有错误项                        
  |
-| 203    | START_UP_ERROR                    | 启动错误                            
      |
-| 204    | SHUT_DOWN_ERROR                   | 关机错误                            
      |
-| 300    | UNSUPPORTED_OPERATION             | 不支持的操作                          
    |
-| 301    | EXECUTE_STATEMENT_ERROR           | 执行语句错误                          
    |
-| 302    | MULTIPLE_ERROR                    | 多行语句执行错误                        
  |
-| 303    | ILLEGAL_PARAMETER                 | 参数错误                            
      |
-| 304    | OVERLAP_WITH_EXISTING_TASK        | 与正在执行的其他操作冲突                  |
-| 305    | INTERNAL_SERVER_ERROR             | 服务器内部错误                         
   |
-| 400    | REDIRECTION_RECOMMEND             | 推荐客户端重定向                        
  |
-| 500    | DATABASE_NOT_EXIST                | 数据库不存在                          
    |
-| 501    | DATABASE_ALREADY_EXISTS           | 数据库已存在                          
    |
-| 502    | SERIES_OVERFLOW                   | 序列数量超过阈值                        
  |
-| 503    | TIMESERIES_ALREADY_EXIST          | 时间序列已存在                         
   |
-| 504    | TIMESERIES_IN_BLACK_LIST          | 时间序列正在删除                        
  |
-| 505    | ALIAS_ALREADY_EXIST               | 路径别名已经存在                        
  |
-| 506    | PATH_ALREADY_EXIST                | 路径已经存在                          
    |
-| 507    | METADATA_ERROR                    | 处理元数据错误                         
   |
-| 508    | PATH_NOT_EXIST                    | 路径不存在                           
     |
-| 509    | ILLEGAL_PATH                      | 路径不合法                           
     |
-| 510    | CREATE_TEMPLATE_ERROR             | 创建物理量模板失败                       
 |
-| 511    | DUPLICATED_TEMPLATE               | 元数据模板重复                         
   |
-| 512    | UNDEFINED_TEMPLATE                | 元数据模板未定义                        
  |
-| 513    | TEMPLATE_NOT_SET                  | 元数据模板未设置                        
  |
-| 514    | DIFFERENT_TEMPLATE                | 元数据模板不一致                        
  |
-| 515    | TEMPLATE_IS_IN_USE                | 元数据模板正在使用                       
 |
-| 516    | TEMPLATE_INCOMPATIBLE             | 元数据模板不兼容                        
  |
-| 517    | SEGMENT_NOT_FOUND                 | 未找到 Segment                     
       |
-| 518    | PAGE_OUT_OF_SPACE                 | SchemaFile 中 Page 空间不够          
     |
-| 519    | RECORD_DUPLICATED                 | 记录重复                            
      |
-| 520    | SEGMENT_OUT_OF_SPACE              | SchemaFile 中 segment 空间不够       
     |
-| 521    | SCHEMA_FILE_NOT_EXISTS            | SchemaFile 不存在                  
       |
-| 522    | OVERSIZE_RECORD                   | 记录大小超过元数据文件页面大小            |
-| 523    | SCHEMA_FILE_REDO_LOG_BROKEN       | SchemaFile 的 redo 日志损坏          
     |
-| 524    | TEMPLATE_NOT_ACTIVATED            | 元数据模板未激活                        
  |
-| 600    | SYSTEM_READ_ONLY                  | IoTDB 系统只读                      
      |
-| 601    | STORAGE_ENGINE_ERROR              | 存储引擎相关错误                        
  |
-| 602    | STORAGE_ENGINE_NOT_READY          | 存储引擎还在恢复中,还不能接受读写操作    |
-| 603    | DATAREGION_PROCESS_ERROR          | DataRegion 相关错误                 
      |
-| 604    | TSFILE_PROCESSOR_ERROR            | TsFile 处理器相关错误                  
   |
-| 605    | WRITE_PROCESS_ERROR               | 写入相关错误                          
    |
-| 606    | WRITE_PROCESS_REJECT              | 写入拒绝错误                          
    |
-| 607    | OUT_OF_TTL                        | 插入时间少于 TTL 时间边界                 
|
-| 608    | COMPACTION_ERROR                  | 合并错误                            
      |
-| 609    | ALIGNED_TIMESERIES_ERROR          | 对齐时间序列错误                        
  |
-| 610    | WAL_ERROR                         | WAL 异常                          
        |
-| 611    | DISK_SPACE_INSUFFICIENT           | 磁盘空间不足                          
    |
-| 700    | SQL_PARSE_ERROR                   | SQL 语句分析错误                      
    |
-| 701    | SEMANTIC_ERROR                    | SQL 语义错误                        
      |
-| 702    | GENERATE_TIME_ZONE_ERROR          | 生成时区错误                          
    |
-| 703    | SET_TIME_ZONE_ERROR               | 设置时区错误                          
    |
-| 704    | QUERY_NOT_ALLOWED                 | 查询语句不允许                         
   |
-| 705    | LOGICAL_OPERATOR_ERROR            | 逻辑符相关错误                         
   |
-| 706    | LOGICAL_OPTIMIZE_ERROR            | 逻辑优化相关错误                        
  |
-| 707    | UNSUPPORTED_FILL_TYPE             | 不支持的填充类型                        
  |
-| 708    | QUERY_PROCESS_ERROR               | 查询处理相关错误                        
  |
-| 709    | MPP_MEMORY_NOT_ENOUGH             | MPP 框架中任务执行内存不足                |
-| 710    | CLOSE_OPERATION_ERROR             | 关闭操作错误                          
    |
-| 711    | TSBLOCK_SERIALIZE_ERROR           | TsBlock 序列化错误                   
     |
-| 712    | INTERNAL_REQUEST_TIME_OUT         | MPP 操作超时                        
      |
-| 713    | INTERNAL_REQUEST_RETRY_ERROR      | 内部操作重试失败                        
  |
+| 状态码  | 状态类型                              | 状态信息                      |
+|:-----|:----------------------------------|:--------------------------|
+| 200  | SUCCESS_STATUS                    | 成功状态                      |
+| 201  | INCOMPATIBLE_VERSION              | 版本不兼容                     |
+| 202  | CONFIGURATION_ERROR               | 配置文件有错误项                  |
+| 203  | START_UP_ERROR                    | 启动错误                      |
+| 204  | SHUT_DOWN_ERROR                   | 关机错误                      |
+| 300  | UNSUPPORTED_OPERATION             | 不支持的操作                    |
+| 301  | EXECUTE_STATEMENT_ERROR           | 执行语句错误                    |
+| 302  | MULTIPLE_ERROR                    | 多行语句执行错误                  |
+| 303  | ILLEGAL_PARAMETER                 | 参数错误                      |
+| 304  | OVERLAP_WITH_EXISTING_TASK        | 与正在执行的其他操作冲突              |
+| 305  | INTERNAL_SERVER_ERROR             | 服务器内部错误                   |
+| 306  | DISPATCH_ERROR                    | 分发错误                      |
+| 400  | REDIRECTION_RECOMMEND             | 推荐客户端重定向                  |
+| 500  | DATABASE_NOT_EXIST                | 数据库不存在                    |
+| 501  | DATABASE_ALREADY_EXISTS           | 数据库已存在                    |
+| 502  | SERIES_OVERFLOW                   | 序列数量超过阈值                  |
+| 503  | TIMESERIES_ALREADY_EXIST          | 时间序列已存在                   |
+| 504  | TIMESERIES_IN_BLACK_LIST          | 时间序列正在删除                  |
+| 505  | ALIAS_ALREADY_EXIST               | 路径别名已经存在                  |
+| 506  | PATH_ALREADY_EXIST                | 路径已经存在                    |
+| 507  | METADATA_ERROR                    | 处理元数据错误                   |
+| 508  | PATH_NOT_EXIST                    | 路径不存在                     |
+| 509  | ILLEGAL_PATH                      | 路径不合法                     |
+| 510  | CREATE_TEMPLATE_ERROR             | 创建物理量模板失败                 |
+| 511  | DUPLICATED_TEMPLATE               | 元数据模板重复                   |
+| 512  | UNDEFINED_TEMPLATE                | 元数据模板未定义                  |
+| 513  | TEMPLATE_NOT_SET                  | 元数据模板未设置                  |
+| 514  | DIFFERENT_TEMPLATE                | 元数据模板不一致                  |
+| 515  | TEMPLATE_IS_IN_USE                | 元数据模板正在使用                 |
+| 516  | TEMPLATE_INCOMPATIBLE             | 元数据模板不兼容                  |
+| 517  | SEGMENT_NOT_FOUND                 | 未找到 Segment               |
+| 518  | PAGE_OUT_OF_SPACE                 | SchemaFile 中 Page 空间不够    |
+| 519  | RECORD_DUPLICATED                 | 记录重复                      |
+| 520  | SEGMENT_OUT_OF_SPACE              | SchemaFile 中 segment 空间不够 |
+| 521  | SCHEMA_FILE_NOT_EXISTS            | SchemaFile 不存在            |
+| 522  | OVERSIZE_RECORD                   | 记录大小超过元数据文件页面大小           |
+| 523  | SCHEMA_FILE_REDO_LOG_BROKEN       | SchemaFile 的 redo 日志损坏    |
+| 524  | TEMPLATE_NOT_ACTIVATED            | 元数据模板未激活                  |
+| 600  | SYSTEM_READ_ONLY                  | IoTDB 系统只读                |
+| 601  | STORAGE_ENGINE_ERROR              | 存储引擎相关错误                  |
+| 602  | STORAGE_ENGINE_NOT_READY          | 存储引擎还在恢复中,还不能接受读写操作       |
+| 603  | DATAREGION_PROCESS_ERROR          | DataRegion 相关错误           |
+| 604  | TSFILE_PROCESSOR_ERROR            | TsFile 处理器相关错误            |
+| 605  | WRITE_PROCESS_ERROR               | 写入相关错误                    |
+| 606  | WRITE_PROCESS_REJECT              | 写入拒绝错误                    |
+| 607  | OUT_OF_TTL                        | 插入时间少于 TTL 时间边界           |
+| 608  | COMPACTION_ERROR                  | 合并错误                      |
+| 609  | ALIGNED_TIMESERIES_ERROR          | 对齐时间序列错误                  |
+| 610  | WAL_ERROR                         | WAL 异常                    |
+| 611  | DISK_SPACE_INSUFFICIENT           | 磁盘空间不足                    |
+| 700  | SQL_PARSE_ERROR                   | SQL 语句分析错误                |
+| 701  | SEMANTIC_ERROR                    | SQL 语义错误                  |
+| 702  | GENERATE_TIME_ZONE_ERROR          | 生成时区错误                    |
+| 703  | SET_TIME_ZONE_ERROR               | 设置时区错误                    |
+| 704  | QUERY_NOT_ALLOWED                 | 查询语句不允许                   |
+| 705  | LOGICAL_OPERATOR_ERROR            | 逻辑符相关错误                   |
+| 706  | LOGICAL_OPTIMIZE_ERROR            | 逻辑优化相关错误                  |
+| 707  | UNSUPPORTED_FILL_TYPE             | 不支持的填充类型                  |
+| 708  | QUERY_PROCESS_ERROR               | 查询处理相关错误                  |
+| 709  | MPP_MEMORY_NOT_ENOUGH             | MPP 框架中任务执行内存不足           |
+| 710  | CLOSE_OPERATION_ERROR             | 关闭操作错误                    |
+| 711  | TSBLOCK_SERIALIZE_ERROR           | TsBlock 序列化错误             |
+| 712  | INTERNAL_REQUEST_TIME_OUT         | MPP 操作超时                  |
+| 713  | INTERNAL_REQUEST_RETRY_ERROR      | 内部操作重试失败                  |
 | 714    | NO_SUCH_QUERY                     | 查询不存在                           
    |
 | 715    | QUERY_WAS_KILLED                  | 查询执行时被终止                        
  |
-| 800    | UNINITIALIZED_AUTH_ERROR          | 授权模块未初始化                        
  |
-| 801    | WRONG_LOGIN_PASSWORD              | 用户名或密码错误                        
  |
-| 802    | NOT_LOGIN                         | 没有登录                            
      |
-| 803    | NO_PERMISSION                     | 没有操作权限                          
    |
-| 804    | USER_NOT_EXIST                    | 用户不存在                           
     |
-| 805    | USER_ALREADY_EXIST                | 用户已存在                           
     |
-| 806    | USER_ALREADY_HAS_ROLE             | 用户拥有对应角色                        
  |
-| 807    | USER_NOT_HAS_ROLE                 | 用户未拥有对应角色                       
 |
-| 808    | ROLE_NOT_EXIST                    | 角色不存在                           
     |
-| 809    | ROLE_ALREADY_EXIST                | 角色已存在                           
     |
-| 810    | ALREADY_HAS_PRIVILEGE             | 已拥有对应权限                         
   |
-| 811    | NOT_HAS_PRIVILEGE                 | 未拥有对应权限                         
   |
-| 812    | CLEAR_PERMISSION_CACHE_ERROR      | 清空权限缓存失败                        
  |
-| 813    | UNKNOWN_AUTH_PRIVILEGE            | 未知权限                            
      |
-| 814    | UNSUPPORTED_AUTH_OPERATION        | 不支持的权限操作                        
  |
-| 815    | AUTH_IO_EXCEPTION                 | 权限模块IO异常                        
    |
-| 900    | MIGRATE_REGION_ERROR              | Region 迁移失败                     
      |
-| 901    | CREATE_REGION_ERROR               | 创建 region 失败                    
      |
-| 902    | DELETE_REGION_ERROR               | 删除 region 失败                    
      |
-| 903    | PARTITION_CACHE_UPDATE_ERROR      | 更新分区缓存失败                        
  |
-| 904    | CONSENSUS_NOT_INITIALIZED         | 共识层未初始化,不能提供服务              |
-| 905    | REGION_LEADER_CHANGE_ERROR        | Region leader 迁移失败              
      |
-| 906    | NO_AVAILABLE_REGION_GROUP         | 无法找到可用的 Region 副本组              
|
-| 1000   | DATANODE_ALREADY_REGISTERED       | DataNode 在集群中已经注册               
  |
-| 1001   | NO_ENOUGH_DATANODE                | DataNode 数量不足,无法移除节点或创建副本 |
-| 1002   | ADD_CONFIGNODE_ERROR              | 新增 ConfigNode 失败                
      |
-| 1003   | REMOVE_CONFIGNODE_ERROR           | 移除 ConfigNode 失败                
      |
-| 1004   | DATANODE_NOT_EXIST                | 此 DataNode 不存在                  
      |
-| 1005   | DATANODE_STOP_ERROR               | DataNode 关闭失败                   
      |
-| 1006   | REMOVE_DATANODE_ERROR             | 移除 datanode 失败                  
      |
-| 1007   | REGISTER_DATANODE_WITH_WRONG_ID   | 注册的 DataNode 中有错误的注册id          
|
-| 1008   | CAN_NOT_CONNECT_DATANODE          | 连接 DataNode 失败                  
      |
-| 1100   | LOAD_FILE_ERROR                   | 加载文件错误                          
    |
-| 1101   | LOAD_PIECE_OF_TSFILE_ERROR        | 加载 TsFile 片段异常                  
    |
-| 1102   | DESERIALIZE_PIECE_OF_TSFILE_ERROR | 反序列化 TsFile 片段异常                
  |
-| 1103   | SYNC_CONNECTION_ERROR             | 回传连接错误                          
    |
-| 1104   | SYNC_FILE_REDIRECTION_ERROR       | 同步文件时重定向异常                      
|
-| 1105   | SYNC_FILE_ERROR                   | 同步文件异常                          
    |
-| 1106   | CREATE_PIPE_SINK_ERROR            | 创建 PIPE Sink 失败                 
      |
-| 1107   | PIPE_ERROR                        | PIPE 异常                         
        |
-| 1108   | PIPESERVER_ERROR                  | PIPE server 异常                  
        |
-| 1109   | VERIFY_METADATA_ERROR             | 校验元数据失败                         
   |
-| 1200   | UDF_LOAD_CLASS_ERROR              | UDF 加载类异常                       
     |
-| 1201   | UDF_DOWNLOAD_ERROR                | 无法从 ConfigNode 下载 UDF           
     |
-| 1202   | CREATE_UDF_ON_DATANODE_ERROR      | 在 DataNode 创建 UDF 失败            
     |
-| 1203   | DROP_UDF_ON_DATANODE_ERROR        | 在 DataNode 卸载 UDF 失败            
     |
-| 1300   | CREATE_TRIGGER_ERROR              | ConfigNode 创建 Trigger 失败        
      |
-| 1301   | DROP_TRIGGER_ERROR                | ConfigNode 删除 Trigger 失败        
      |
-| 1302   | TRIGGER_FIRE_ERROR                | 触发器执行错误                         
   |
-| 1303   | TRIGGER_LOAD_CLASS_ERROR          | 触发器加载类异常                        
  |
-| 1304   | TRIGGER_DOWNLOAD_ERROR            | 从 ConfigNode 下载触发器异常            
  |
-| 1305   | CREATE_TRIGGER_INSTANCE_ERROR     | 创建触发器实例异常                       
 |
-| 1306   | ACTIVE_TRIGGER_INSTANCE_ERROR     | 激活触发器实例异常                       
 |
-| 1307   | DROP_TRIGGER_INSTANCE_ERROR       | 删除触发器实例异常                       
 |
-| 1308   | UPDATE_TRIGGER_LOCATION_ERROR     | 更新有状态的触发器所在 DataNode 异常      |
-| 1400   | NO_SUCH_CQ                        | CQ 任务不存在                        
     |
-| 1401   | CQ_ALREADY_ACTIVE                 | CQ 任务已激活                        
     |
-| 1402   | CQ_AlREADY_EXIST                  | CQ 任务已存在                        
     |
-| 1403   | CQ_UPDATE_LAST_EXEC_TIME_ERROR    | CQ 更新上一次执行时间失败                 |
+| 800  | UNINITIALIZED_AUTH_ERROR          | 授权模块未初始化                  |
+| 801  | WRONG_LOGIN_PASSWORD              | 用户名或密码错误                  |
+| 802  | NOT_LOGIN                         | 没有登录                      |
+| 803  | NO_PERMISSION                     | 没有操作权限                    |
+| 804  | USER_NOT_EXIST                    | 用户不存在                     |
+| 805  | USER_ALREADY_EXIST                | 用户已存在                     |
+| 806  | USER_ALREADY_HAS_ROLE             | 用户拥有对应角色                  |
+| 807  | USER_NOT_HAS_ROLE                 | 用户未拥有对应角色                 |
+| 808  | ROLE_NOT_EXIST                    | 角色不存在                     |
+| 809  | ROLE_ALREADY_EXIST                | 角色已存在                     |
+| 810  | ALREADY_HAS_PRIVILEGE             | 已拥有对应权限                   |
+| 811  | NOT_HAS_PRIVILEGE                 | 未拥有对应权限                   |
+| 812  | CLEAR_PERMISSION_CACHE_ERROR      | 清空权限缓存失败                  |
+| 813  | UNKNOWN_AUTH_PRIVILEGE            | 未知权限                      |
+| 814  | UNSUPPORTED_AUTH_OPERATION        | 不支持的权限操作                  |
+| 815  | AUTH_IO_EXCEPTION                 | 权限模块IO异常                  |
+| 900  | MIGRATE_REGION_ERROR              | Region 迁移失败               |
+| 901  | CREATE_REGION_ERROR               | 创建 region 失败              |
+| 902  | DELETE_REGION_ERROR               | 删除 region 失败              |
+| 903  | PARTITION_CACHE_UPDATE_ERROR      | 更新分区缓存失败                  |
+| 904  | CONSENSUS_NOT_INITIALIZED         | 共识层未初始化,不能提供服务            |
+| 905  | REGION_LEADER_CHANGE_ERROR        | Region leader 迁移失败        |
+| 906  | NO_AVAILABLE_REGION_GROUP         | 无法找到可用的 Region 副本组        |
+| 1000 | DATANODE_ALREADY_REGISTERED       | DataNode 在集群中已经注册         |
+| 1001 | NO_ENOUGH_DATANODE                | DataNode 数量不足,无法移除节点或创建副本 |
+| 1002 | ADD_CONFIGNODE_ERROR              | 新增 ConfigNode 失败          |
+| 1003 | REMOVE_CONFIGNODE_ERROR           | 移除 ConfigNode 失败          |
+| 1004 | DATANODE_NOT_EXIST                | 此 DataNode 不存在            |
+| 1005 | DATANODE_STOP_ERROR               | DataNode 关闭失败             |
+| 1006 | REMOVE_DATANODE_ERROR             | 移除 datanode 失败            |
+| 1007 | REGISTER_DATANODE_WITH_WRONG_ID   | 注册的 DataNode 中有错误的注册id    |
+| 1008 | CAN_NOT_CONNECT_DATANODE          | 连接 DataNode 失败            |
+| 1100 | LOAD_FILE_ERROR                   | 加载文件错误                    |
+| 1101 | LOAD_PIECE_OF_TSFILE_ERROR        | 加载 TsFile 片段异常            |
+| 1102 | DESERIALIZE_PIECE_OF_TSFILE_ERROR | 反序列化 TsFile 片段异常          |
+| 1103 | SYNC_CONNECTION_ERROR             | 同步连接错误                    |
+| 1104 | SYNC_FILE_REDIRECTION_ERROR       | 同步文件时重定向异常                |
+| 1105 | SYNC_FILE_ERROR                   | 同步文件异常                    |
+| 1106 | CREATE_PIPE_SINK_ERROR            | 创建 PIPE Sink 失败           |
+| 1107 | PIPE_ERROR                        | PIPE 异常                   |
+| 1108 | PIPESERVER_ERROR                  | PIPE server 异常            |
+| 1109 | VERIFY_METADATA_ERROR             | 校验元数据失败                   |
+| 1200 | UDF_LOAD_CLASS_ERROR              | UDF 加载类异常                 |
+| 1201 | UDF_DOWNLOAD_ERROR                | 无法从 ConfigNode 下载 UDF     |
+| 1202 | CREATE_UDF_ON_DATANODE_ERROR      | 在 DataNode 创建 UDF 失败      |
+| 1203 | DROP_UDF_ON_DATANODE_ERROR        | 在 DataNode 卸载 UDF 失败      |
+| 1300 | CREATE_TRIGGER_ERROR              | ConfigNode 创建 Trigger 失败  |
+| 1301 | DROP_TRIGGER_ERROR                | ConfigNode 删除 Trigger 失败  |
+| 1302 | TRIGGER_FIRE_ERROR                | 触发器执行错误                   |
+| 1303 | TRIGGER_LOAD_CLASS_ERROR          | 触发器加载类异常                  |
+| 1304 | TRIGGER_DOWNLOAD_ERROR            | 从 ConfigNode 下载触发器异常      |
+| 1305 | CREATE_TRIGGER_INSTANCE_ERROR     | 创建触发器实例异常                 |
+| 1306 | ACTIVE_TRIGGER_INSTANCE_ERROR     | 激活触发器实例异常                 |
+| 1307 | DROP_TRIGGER_INSTANCE_ERROR       | 删除触发器实例异常                 |
+| 1308 | UPDATE_TRIGGER_LOCATION_ERROR     | 更新有状态的触发器所在 DataNode 异常   |
+| 1400 | NO_SUCH_CQ                        | CQ 任务不存在                  |
+| 1401 | CQ_ALREADY_ACTIVE                 | CQ 任务已激活                  |
+| 1402 | CQ_AlREADY_EXIST                  | CQ 任务已存在                  |
+| 1403 | CQ_UPDATE_LAST_EXEC_TIME_ERROR    | CQ 更新上一次执行时间失败            |
 
 > 在最新版本中,我们重构了 IoTDB 
 > 的异常类。通过将错误信息统一提取到异常类中,并为所有异常添加不同的错误代码,从而当捕获到异常并引发更高级别的异常时,错误代码将保留并传递,以便用户了解详细的错误原因。
 除此之外,我们添加了一个基础异常类“ProcessException”,由所有异常扩展。
diff --git 
a/node-commons/src/main/java/org/apache/iotdb/commons/utils/StatusUtils.java 
b/node-commons/src/main/java/org/apache/iotdb/commons/utils/StatusUtils.java
index c6f27eb22b..6cb401b56f 100644
--- a/node-commons/src/main/java/org/apache/iotdb/commons/utils/StatusUtils.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/utils/StatusUtils.java
@@ -84,8 +84,8 @@ public class StatusUtils {
       case COMPACTION_ERROR:
         status.setMessage("Meet error while merging.");
         break;
-      case SYNC_CONNECTION_ERROR:
-        status.setMessage("Meet error while sync connecting.");
+      case DISPATCH_ERROR:
+        status.setMessage("Meet error while dispatching.");
         break;
       case DATAREGION_PROCESS_ERROR:
         status.setMessage("Database processor related error.");
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/ClusterScheduler.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/ClusterScheduler.java
index 8193be03ab..773f4b3165 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/ClusterScheduler.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/ClusterScheduler.java
@@ -102,7 +102,7 @@ public class ClusterScheduler implements IScheduler {
   private boolean needRetry(TSStatus failureStatus) {
     return failureStatus != null
         && queryType == QueryType.READ
-        && failureStatus.getCode() == 
TSStatusCode.SYNC_CONNECTION_ERROR.getStatusCode();
+        && failureStatus.getCode() == 
TSStatusCode.DISPATCH_ERROR.getStatusCode();
   }
 
   @Override
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/FragmentInstanceDispatcherImpl.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/FragmentInstanceDispatcherImpl.java
index c28b1efa17..cedfdbb684 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/FragmentInstanceDispatcherImpl.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/FragmentInstanceDispatcherImpl.java
@@ -201,7 +201,7 @@ public class FragmentInstanceDispatcherImpl implements 
IFragInstanceDispatcher {
     } catch (ClientManagerException | TException e) {
       logger.warn("can't connect to node {}", endPoint, e);
       TSStatus status = new TSStatus();
-      status.setCode(TSStatusCode.SYNC_CONNECTION_ERROR.getStatusCode());
+      status.setCode(TSStatusCode.DISPATCH_ERROR.getStatusCode());
       status.setMessage("can't connect to node " + endPoint);
       // If the DataNode cannot be connected, its endPoint will be put into 
black list
       // so that the following retry will avoid dispatching instance towards 
this DataNode.
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/load/LoadTsFileDispatcherImpl.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/load/LoadTsFileDispatcherImpl.java
index 49796e0173..418bd8aa99 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/load/LoadTsFileDispatcherImpl.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/scheduler/load/LoadTsFileDispatcherImpl.java
@@ -138,7 +138,7 @@ public class LoadTsFileDispatcherImpl implements 
IFragInstanceDispatcher {
     } catch (ClientManagerException | TException e) {
       logger.warn("can't connect to node {}", endPoint, e);
       TSStatus status = new TSStatus();
-      status.setCode(TSStatusCode.SYNC_CONNECTION_ERROR.getStatusCode());
+      status.setCode(TSStatusCode.DISPATCH_ERROR.getStatusCode());
       status.setMessage("can't connect to node {}" + endPoint);
       throw new FragmentInstanceDispatchException(status);
     }
@@ -225,7 +225,7 @@ public class LoadTsFileDispatcherImpl implements 
IFragInstanceDispatcher {
     } catch (ClientManagerException | TException e) {
       logger.warn("can't connect to node {}", endPoint, e);
       TSStatus status = new TSStatus();
-      status.setCode(TSStatusCode.SYNC_CONNECTION_ERROR.getStatusCode());
+      status.setCode(TSStatusCode.DISPATCH_ERROR.getStatusCode());
       status.setMessage(
           "can't connect to node {}, please reset longer 
dn_connection_timeout_ms in iotdb-common.properties and restart iotdb."
               + endPoint);
diff --git a/service-rpc/src/main/java/org/apache/iotdb/rpc/TSStatusCode.java 
b/service-rpc/src/main/java/org/apache/iotdb/rpc/TSStatusCode.java
index dd08028155..d7a4d0feb3 100644
--- a/service-rpc/src/main/java/org/apache/iotdb/rpc/TSStatusCode.java
+++ b/service-rpc/src/main/java/org/apache/iotdb/rpc/TSStatusCode.java
@@ -45,6 +45,7 @@ public enum TSStatusCode {
   ILLEGAL_PARAMETER(303),
   OVERLAP_WITH_EXISTING_TASK(304),
   INTERNAL_SERVER_ERROR(305),
+  DISPATCH_ERROR(306),
 
   // Client,
   REDIRECTION_RECOMMEND(400),

Reply via email to