特性约束

59 阅读3分钟

特性约束

  • 功能范围限制:

    仅能提高故障发生时SQL语句执行成功率,不能保证100%的执行成功。

  • 错误类型约束:

    SQL语句出错时能够被识别和重试的错误,仅限在表1中定义的错误。

    表 1 支持的错误类型列表

    错误类型错误码备注
    对端连接重置(CONNECTION_RESET_BY_PEER)YY001TCP通信错误:Connection reset by peer
    对端流重置(STREAM_CONNECTION_RESET_BY_PEER)YY002TCP通信错误:Stream connection reset by peer(DN和DN间通信)
    锁等待超时(LOCK_WAIT_TIMEOUT)YY003锁超时,Lock wait timeout
    连接超时(CONNECTION_TIMED_OUT)YY004TCP通信错误,Connection timed out
    查询设置错误(SET_QUERY_ERROR)YY005SET命令发送失败,Set query error
    超出逻辑内存(OUT_OF_LOGICAL_MEMORY)YY006内存申请失败,Out of logical memory
    通信库内存分配(SCTP_MEMORY_ALLOC)YY007SCTP通信错误,Memory allocate error
    无通信库缓存数据(SCTP_NO_DATA_IN_BUFFER)YY008SCTP通信错误,SCTP no data in buffer
    通信库释放内存关闭(SCTP_RELEASE_MEMORY_CLOSE)YY009SCTP通信错误,Release memory close
    SCTP、TCP断开(SCTP_TCP_DISCONNECT)YY010SCTP、TCP通信错误,SCTP、TCP disconnect
    通信库断开(SCTP_DISCONNECT)YY011SCTP通信错误,SCTP disconnect
    通信库远程关闭(SCTP_REMOTE_CLOSE)YY012SCTP通信错误,Stream closed by remote
    等待未知通信库通信(SCTP_WAIT_POLL_UNKNOW)YY013等待未知通信库通信,SCTP wait poll unknow
    无效快照(SNAPSHOT_INVALID)YY014快照非法,Snapshot invalid
    通讯接收信息错误(ERRCODE_CONNECTION_RECEIVE_WRONG)YY015连接获取错误,Connection receive wrong
    内存耗尽(OUT_OF_MEMORY)53200内存耗尽,Out of memory
    连接异常(CONNECTION_EXCEPTION)08000连接出现错误,和DN的通讯失败,Connection exception
    管理员关闭系统(ADMIN_SHUTDOWN)57P01管理员关闭系统,Admin shutdown
    关闭远程流接口(STREAM_REMOTE_CLOSE_SOCKET)XX003关闭远程套接字,Stream remote close socket
    重复查询编号(ERRCODE_STREAM_DUPLICATE_QUERY_ID)XX009重复查询,Duplicate query id
    stream查询并发更新同一行(ERRCODE_STREAM_CONCURRENT_UPDATE)YY016stream查询并发更新同一行,Stream concurrent update
  • 语句类型约束:

    支持单语句存储过程、函数、匿名块。不支持事务块中的语句。

  • 存储过程语句约束:

    • 包含EXCEPTION的存储过程,如果在执行过程中(包含语句块执行和EXCEPTION中的语句执行)错误被抛出,可以retry,如果报错被EXCEPTION捕获则不能retry。
    • 不支持使用全局变量的高级包。
    • 不支持DBE_TASK。
    • 不支持PKG_UTIL文件操作。
  • 数据导入约束:

    • 不支持COPY FROM STDIN语句。
    • 不支持gsql \copy from元命令。
    • 不支持JDBC CopyManager copyIn导入数据。

依赖关系

该特性依赖gsql工具端可以正常工作、错误列表配置正确。