Skip to content

异常处理

本章节列出了 Ignite 3 可能抛出的基本异常,并提供了处理这些异常的基本说明。

1.查找异常堆栈信息

当抛出异常时,Ignite 3 会提供该异常的UUID,但不会提供完整的异常堆栈,完整的异常堆栈,需要在集群日志中检索。

2.常规异常

异常代码描述建议操作
IGN-CMN-1操作因节点离线而停止。检查集群的在线状态,然后重试。
IGN-CMN-2操作因组件未启动而停止。等待节点完成启动过程并启动所有组件。
IGN-CMN-3操作因非法或格式错误的参数而失败。检查异常完整信息,具体操作根据该操作实际情况而定。
IGN-CMN-4操作因 SSL 配置错误而失败。检查异常完整信息,然后更新配置。
IGN-CMN-5操作因节点离开集群而停止。等待节点返回集群,或者使用其他节点。
IGN-CMN-6操作因游标关闭而失败。检查异常完整信息,找出操作前光标关闭的原因。
IGN-CMN-7操作因资源关闭而失败。检查异常完整信息,找出操作前资源关闭的原因。
IGN-CMN-8操作因对象序列化或反序列化失败而失败。
IGN-CMN-9操作无法返回 null 值。
IGN-CMN-65535发生内部错误。这是一个意外的内部错误,通常表示存在 Bug。

3.表操作异常

异常代码描述建议操作
IGN-TBL-1表已存在。确认集群中没有同名的表。
IGN-TBL-2表不存在。检查表名,必要时创建该表。
IGN-TBL-3列已存在。确认表中不存在同名的列。
IGN-TBL-4列不存在。检查列名,必要时创建该列。
IGN-TBL-5模式版本不匹配。确认使用表所属的模式。
IGN-TBL-6分区类型不受支持。使用支持的分区类型。

4.客户端异常

异常代码描述建议操作
IGN-CLIENT-1连接失败。通常是由于地址不正确或连接超时引起。检查异常完整信息,如果是超时,要保证客户端和服务端配置中的超时允许长时间运行的请求。
IGN-CLIENT-2连接协议出现问题,此错误可能是由于使用不兼容的客户端版本或数据损坏造成的。检查异常完整信息,如果发生数据损坏,请恢复数据。如果客户端版本不兼容,请使用正确的客户端版本。
IGN-CLIENT-3协议版本不支持特定功能,通常是由于客户端和服务端版本不兼容造成的。更新客户端或服务端到更新的版本,或者不使用不兼容的特性。
IGN-CLIENT-4无法通过 ID 找到表。检查表 ID 是否正确。
IGN-CLIENT-5客户端配置错误。检查异常完整信息,然后修复客户端配置。
IGN-CLIENT-6群集 ID 不匹配,此错误可能是由于客户端连接到多个不同的集群造成的。检查客户端配置,确保所有端点都属于同一个集群。
IGN-CLIENT-7客户端 SSL 配置无效。检查异常完整信息,确认 SSL 配置与服务端配置匹配。
IGN-CLIENT-8客户端握手消息错误,此错误通常是由于客户端尝试连接到错误的端点(例如 REST)或非 Ignite 进程尝试连接到 Ignite 端点造成的。检查异常完整信息,如果问题出在客户端,请检查并修复客户端配置。如果第三方客户端正在尝试连接,请检查它是什么并修复配置。

5.SQL异常

异常代码描述建议操作
IGN-SQL-1查询不打算返回任何行(例如 DML 或 DDL 查询)时抛出异常。将请求更改为不期望结果。
IGN-SQL-2指定的模式不存在时抛出异常。确认使用已有的模式名。
IGN-SQL-3SQL 语句解析错误。此错误通常是由于 SQL 语句字符串不符合语法规则造成的。检查异常完整信息,然后修复 SQL 语句。
IGN-SQL-4SQL 语句验证错误。虽然语句语法正确,但语义存在问题。例如,这可能发生在语句引用不存在的关系或描述不允许的操作时。检查异常完整信息,然后修复 SQL 语句。
IGN-SQL-5违反约束错误,例如主键冲突或非空约束。检查异常完整信息,然后修复 SQL 语句。
IGN-SQL-6查询被取消,通常是由于超时、管理员操作或取消请求造成的。检查异常完整信息,然后重试。
IGN-SQL-7运行时错误,由 SQL 语句本身编写错误引起,此类错误发生在语句执行过程中,例如数值溢出或类型转换错误。检查异常完整信息,然后修复 SQL 语句。
IGN-SQL-8SQL 引擎无法将查询映射到当前集群拓扑。这可能是由于各种原因引起的,但最有可能是因为持有该系统视图或表分区的所有节点离线造成的。检查异常完整信息,然后集群稳定后重试。
IGN-SQL-9在事务内禁止执行事务控制语句。不要在事务中使用事务控制语句,例如 BEGIN TRANSACTIONCOMMIT,包括禁用自动提交模式的JDBC。

6.索引异常

异常代码描述建议操作
IGN-IDX-1索引不存在。确认索引存在。
IGN-IDX-2索引已存在。创建索引时确认索引不存在。

7.事务异常

异常代码描述建议操作
IGN-TX-1事务状态存储的默认错误。
IGN-TX-2事务状态存储已停止。
IGN-TX-3事务状态转换时出现意外错误。
IGN-TX-4由于冲突而无法获取锁。
IGN-TX-5由于超时而无法获取锁。
IGN-TX-6提交事务失败。
IGN-TX-7回滚事务失败。
IGN-TX-8将读写操作放入只读事务导致失败。
IGN-TX-9事务状态存储再平衡错误。
IGN-TX-10创建时间戳早于表中可用数据的只读事务失败。
IGN-TX-11由于不兼容的模式更改导致失败。
IGN-TX-12由于主副本过期导致失败。
IGN-TX-13事务已完成。
IGN-TX-14由于已完成事务的过时操作而失败。
IGN-TX-15由于缓存操作与表事务或相反操作相互关联而导致失败。

8.复制异常

异常代码描述建议操作
IGN-REP-1默认复制错误。
IGN-REP-2具有相同标识符的副本已存在。
IGN-REP-3复制过程中发生超时。
IGN-REP-4复制级别试图处理不受支持的请求。
IGN-REP-5副本未准备好处理请求。
IGN-REP-6副本不是当前主副本。
IGN-REP-7无法关闭游标。
IGN-REP-8副本正在停止。
IGN-REP-9复制安全时间重新排序。

9.存储异常

异常代码描述建议操作
IGN-STORAGE-1从故障中恢复时,出现了集群元数据中的索引状态不一致。等待索引重建自动完成。
IGN-STORAGE-2故障导致持久化存储中的数据损坏。从备份中恢复数据或引入新节点替代损坏的节点(如果复制因子过低,这可能会导致数据丢失)。

10.分布区异常

异常代码描述建议操作
IGN-DISTRZONES-1分布区不存在。检查使用的分布区名,很可能不正确。

11.网络异常

异常代码描述建议操作
IGN-NETWORK-1指定 ID 的节点不在物理拓扑中。检查错误消息和节点 ID ,修正不正确的节点 ID ,如果节点离线,确认原因并恢复该节点。
IGN-NETWORK-2端口已被占用。Ignite可能尝试绑定被其他进程占用的端口,更改端口或释放端口,然后重启节点。
IGN-NETWORK-5接收方节点已离开物理拓扑。检查错误消息,节点不可用,需要恢复该节点。
IGN-NETWORK-6无法解析地址,操作中指定的 IP 地址可能在本地不可用。调整节点配置以使地址可用,或使用其他 IP 地址。

12.节点配置错误

异常代码描述建议操作
IGN-NODECFG-1无法读取配置。确认节点有权限访问该配置文件。
IGN-NODECFG-2无法创建配置文件。确认节点对配置文件夹有写入权限。
IGN-NODECFG-3无法写入配置。确认节点对配置文件夹有写入权限。
IGN-NODECFG-4无法解析配置。确认配置文件正确。

13.代码部署异常

异常代码描述建议操作
IGN-CODEDEPLOY-1尝试访问不存在的部署单元。确认指定了正确的部署单元。
IGN-CODEDEPLOY-2重复的部署单元。确认部署单元是唯一的,更新部署单元名或版本。
IGN-CODEDEPLOY-3部署单元内容读取错误。检查异常完整信息。
IGN-CODEDEPLOY-4部署单元不可用。检查异常完整信息。

14.认证异常

异常代码描述建议操作
IGN-AUTHENTICATION-1不支持的认证类型导致的认证错误。检查客户端配置,使用支持的认证类型。
IGN-AUTHENTICATION-2因为凭据无效导致的认证错误。检查用户凭据,确认正确。
IGN-AUTHENTICATION-3因为找不到基本认证程序导致的认证错误。配置基本认证程序。

15.计算异常

异常代码描述建议操作
IGN-COMPUTE-1类路径错误。检查异常完整信息,修复类路径错误。
IGN-COMPUTE-2类加载器错误。可能由 Ignite 内部错误引起。
IGN-COMPUTE-3初始化作业类失败。检查异常完整信息。
IGN-COMPUTE-4执行队列溢出。增加 compute.queueMaxSize 配置参数,以允许更大的队列。
IGN-COMPUTE-5作业状态转换错误。重试操作或检查作业状态。
IGN-COMPUTE-6取消作业失败。检查异常完整信息。
IGN-COMPUTE-7作业结果不存在。检查指定的作业 ID 是否正确。
IGN-COMPUTE-8无法获取作业状态。确认指定的作业 ID 存在。如果是,检查异常完整信息。
IGN-COMPUTE-9作业失败。检查异常完整信息。
IGN-COMPUTE-10无法为并置执行解析主副本。检查异常完整信息。
IGN-COMPUTE-11无法更改作业优先级。检查异常完整信息。
IGN-COMPUTE-12指定的节点不存在。检查指定的节点 ID 是否正确以及确认集群中存在该节点。
IGN-COMPUTE-13无法获取作业所有者。检查异常完整信息,确认作业所有者是正确的。

16.目录异常

异常代码描述建议操作
IGN-CATALOG-1目录的命令未通过验证。检查异常完整信息。通常这可能是由于不正确的DDL查询(与IGN-SQL-4相同)或内部Ignite错误造成的。

17.关键线程异常

异常代码描述建议操作
IGN-WORKERS-1关键线程长时间未更新其心跳,通常这意味着该节点被阻塞或者运行缓慢。重启该节点。
IGN-WORKERS-2关键线程操作超时。重启该节点。

18.故障恢复异常

异常代码描述建议操作
IGN-RECOVERY-1分区 ID 不在有效范围内。检查异常完整信息,确认分区 ID 是否正确。
IGN-RECOVERY-2节点未找到。检查异常完整信息,确认节点 ID 是否正确。
IGN-RECOVERY-3恢复分区状态失败。重试操作,如果失败,检查异常完整信息。
IGN-RECOVERY-4集群负载过高。当集群负载降低时重试。

18624049226