致命错误码
下表列出了致命错误代码,这些代码指示的错误会导致 SmartEDB 运行时无法安全地继续执行。
在 Java、C# 和 Python 应用程序中,致命错误将引发异常。
在 C 和 C++ 应用程序中,将 ERR 类型的返回码传递给运行时函数以终止执行。
如果已注册致命错误处理程序,则可以在调试器中设置一个断点,并且可以通过检查调用堆栈来查看文件名和行号,以进一步帮助找到错误的来源。
错误代码的基本值用于标识错误类型。但实际返回代码的值将由该类型错误的基本值加上运行时检测到错误的源代码行号组成。因此,不能通过数字来搜索错误代码值。但通常可以通过识别其基本值来确定错误原因,然后在下面的表中查找该基本值。
例如,假设您的应用程序以错误代码 530040 终止。减去运行时源代码行号(本例中为 40)得到错误代码基础值 530000。如下表所示,此基础代码表示无效的对象句柄。通常,只需检查调用堆栈以查看应用程序代码中调用捕获错误的 SmartEDB API 的位置,即可发现此类错误。
如果编程错误不清晰,请将错误代码连同解释一并发送给SmartEDB技术支持部门。
常量名 | 值 | 说明 |
---|---|---|
MCO_ERR_DB | 100000 | 数据库头错误 |
MCO_ERR_DICT | 110000 | 字典错误 |
MCO_ERR_CURSOR | 120000 | 游标错误 |
MCO_ERR_PMBUF | 130000 | 页面管理器(内部分配器)缓冲区错误 |
MCO_ERR_COMMON | 140000 | 常规程序错误 |
MCO_ERR_HEAP | 150000 | 堆管理器错误 |
MCO_ERR_OBJ | 160000 | 对象分配器错误 |
MCO_ERR_BLOB | 170000 | Blob操作错误 |
MCO_ERR_FREC | 180000 | 记录分配器错误 |
MCO_ERR_VOLUNTARY | 190000 | 自发索引错误 |
MCO_ERR_LOADSAVE | 200000 | 数据库保存和加载错误 |
MCO_ERR_PGMEM | 210000 | 分页存储器错误 |
MCO_ERR_EV_SYN | 220000 | 同步事件错误 |
MCO_ERR_EV_ASYN | 230000 | 异步事件错误 |
MCO_ERR_EV_W | 240000 | 事件封装器错误 |
MCO_ERR_XML_W | 250000 | XML序列化错误 |
MCO_ERR_XML_SC | 260000 | XML架构错误 |
MCO_ERR_BTREE | 270000 | B树错误 |
MCO_ERR_BTREE | 280000 | 哈希错误 |
MCO_ERR_RECOV | 290000 | 恢复错误 |
MCO_ERR_INST | 330000 | 数据库实例 |
MCO_ERR_TRN | 340000 | 事件错误 |
MCO_ERR_TMGR | 370000 | 事件管理器错误 |
MCO_ERR_SYNC | 400000 | 常规同步错误 |
MCO_ERR_ORDER | 450000 | 排序和哈希错误 |
MCO_ERR_SEM | 460000 | 信号错误 |
MCO_ERR_SHM | 470000 | 共享内存错误 |
MCO_ERR_SER | 500000 | 序列化错误 |
MCO_ERR_HA | 510000 | 高可用性错误 |
MCO_ERR_DB_NOMEM | 520000 | 内存不足 |
MCO_ERR_OBJECT_HANDLE | 530000 | 无效的对象句柄 |
MCO_ERR_UNSUPPORTED_FLOAT | 540000 | 对 float 和 double 类型的支持已禁用 |
MCO_ERR_UNSUPPORTED_DOUBLE | 550000 | 不支持的 double 。已弃用 |
MCO_ERR_DB_NOMEM_HASH | 560000 | 哈希索引内存不足 |
MCO_ERR_DB_NOMEM_HEAP | 570000 | 堆管理器中的内存不足 |
MCO_ERR_DB_NOMEM_TRANS | 580000 | 事务管理器中的内存不足 |
MCO_ERR_DB_NAMELONG | 590000 | 数据库名称太长 |
MCO_ERR_DB_VERS_MISMATCH | 600000 | SmartEDB运行时的版本不匹配。 (当将模式从一个安装移动到另一个分发包时,请务必重新编译模式,并将您的应用程序与新生成的**.h** 和.c 文件链接。) |
MCO_ERR_RUNTIME | 610000 | 无效的同步库类型 |
MCO_ERR_INMEM_ONLY_RUNTIME | 620000 | 模式中存在持久化类,但在运行时仅在内存中存在 |
MCO_ERR_DISK | 700000 | 常规磁盘错误 |
MCO_ERR_DISK_WRITE | 710000 | 无法写入持久性存储 |
MCO_ERR_DISK_READ | 720000 | 无法从持久性存储中读取 |
MCO_ERR_DISK_FLUSH | 730000 | 无法将文件系统缓冲区提交到磁盘 |
MCO_ERR_DISK_CLOSE | 740000 | 关闭持久性存储时出错 |
MCO_ERR_DISK_TRUNCATE | 750000 | 无法截断持久性存储 |
MCO_ERR_DISK_SEEK | 760000 | 无法在持久性存储中查找 |
MCO_ERR_DISK_SEEK | 770000 | 无法打开持久存储 |
MCO_ERR_DISK_ALREADY_OPENED | 780000 | 已打开持久性存储 |
MCO_ERR_DISK_NOT_OPENED | 790000 | 持久性存储尚未打开 |
MCO_ERR_DISK_INVALID_PARAM | 800000 | 参数值无效 |
MCO_ERR_DISK_PAGE_ACCESS | 810000 | 从永久媒体读取页面时出错 |
MCO_ERR_DISK_INTERNAL_ERROR | 820000 | 内部致命错误 |
MCO_ERR_DISK_OPERATION_NOT_ALLOWED | 830000 | 不允许操作致命错误 |
MCO_ERR_DISK_ALREADY_CONNECTED | 840000 | 已连接的持久性存储 |
MCO_ERR_DISK_TOO_MANY_INDICES | 850000 | 持久类中的索引过多 |
MCO_ERR_DISK_TOO_MANY_CLASSES | 860000 | 持久性类太多 |
MCO_ERR_DISK_SPACE_EXHAUSTED | 870000 | 持久存储设备空间不足 |
MCO_ERR_DISK_PAGE_POOL_EXHAUSTED | 880000 | 固定磁盘页数过多 |
MCO_ERR_DISK_INCOMPATIBLE_LOG_TYPE | 890000 | 不兼容的数据库日志类型 |
MCO_ERR_DISK_BAD_PAGE_SIZE | 900000 | 页面大小不可接受 |
MCO_ERR_DISK_SYNC | 910000 | 同步原语操作失败 |
MCO_ERR_DISK_CRC | 920000 | 磁盘页面的循环冗余校验码错误 |
MCO_ERR_DISK_FORMAT_MISMATCH | 930000 | 影响磁盘数据库格式的不兼容配置更改。所有影响磁盘上数据库格式的不兼容配置更改: ● CRC检查模式 ● 类的最大规模 ● 不兼容的事务管理器 另请参阅 MCO_ERR_DISK_BAD_PAGE_SIZE |
MCO_ERR_CHECKPIN | 940000 | 不平衡的固定 / 取消固定 |
MCO_ERR_CONN | 950000 | 连接处理错误 |
MCO_ERR_REGISTRY | 960000 | 注册表处理错误 |
MCO_ERR_INDEX | 970000 | 索引处理错误 |
MCO_ERR_VTMEM | 980000 | 全内存运行时错误 |
MCO_ERR_VTDSK | 990000 | 混合运行时错误 |
MCO_ERR_RTREE | 1000000 | R树索引错误 |
MCO_ERR_UDA | 1010000 | 统—数据访问错误 |
MCO_ERR_PTREE | 1020000 | Patricia trie索引错误 |
MCO_ERR_TL | 1030000 | 事务日志错误 |
MCO_ERR_CLUSTER | 1040000 | 集群错误 |
MCO_ERR_CLNWTCP | 1050000 | 集群TCP传输 |
MCO_ERR_SEQ | 1060000 | 序列错误 |
MCO_ERR_NESTED_TRANS_TRAP | 1090000 | 检测到尝试启动嵌套事务错误 |
MCO_ERR_PERFMON | 1100000 | 性能监控错误 |
MCO_ERR_AlO | 1110000 | 异步IO错误 |
MCO_ERR_CLNWMPI | 1120000 | 集群MPI传输错误 |
MCO_ERR_DDL | 1130000 | DDL错误 |
MCO_ERR_SQL_EXCEPTION | 1140000 | SQL异常 |
MCO_ERR_BACKUP | 1150000 | 备份异常 |
MCO_ERR_ACTIVE_TRANSACTION | 1160000 | 尝试断开活动事务错误 |
返回代码无效 | 1170000-1999998 | 1170000~1999998之间不是有效的返回代码 |
MCO_ERR_LAST | 1999999 | 最后一个可能的错误代码的标记 |