系统错误

在系统运行过程中,可能会出现不同类型的错误。 下表描述了其中一些错误。
表 1. 错误类别
类别 描述 示例
用户错误 用户出错,通常是因为输入不正确或无效。 用户名无效,SQL 语法无效。
组件故障 硬件或软件系统组件故障。 SPU 故障;主机进程崩溃。
环境故障 环境设施请求失败。 这往往是由于资源或访问问题。 文件已锁定;缓冲区已满。
可恢复的内部错误 检测到的内部编程错误,严重程度不足以中止程序。 未知情况值或 msg 类型;文件关闭失败。
无法恢复的内部错误 检测到内部编程错误或内部状态损坏,需要中止程序。 核心、内存损坏、断言失败。
当发生错误时, IBM Netezza 设备IBM Netezza 设备系统可采取以下操作:
显示错误信息
向用户显示描述错误的错误消息字符串。 每当用户请求未得到满足时,系统就会做出这种常见的响应。
请重试
在出现间歇性或暂时性故障时,请继续尝试,直到错误状况消失。 当资源有限、拥挤或锁定时,往往需要重试。
故障转移
由于活动部件发生故障,切换到备用或后备部件。 故障转移是一种系统级恢复机制,可由系统监视器或试图使用该组件的软件检测到的错误触发。
记录错误
向组件日志添加条目。 日志条目包含日期和时间、严重性级别以及错误/事件描述。
发送事件通知
通过电子邮件或运行命令发送通知。 是否发送事件通知的决定基于一套用户可配置的事件规则。
终止程序
终止程序,因为程序的内部状态已遭到不可修复的破坏,或者继续运行会损坏用户数据。 检测内部编程错误的软件断言通常属于这一类,因为很难确定是否可以继续。
清理资源
释放或释放不再需要的资源。 软件组件负责各自的资源清理。 在许多情况下,资源会在本地释放,作为每个特定错误处理程序的一部分。 在严重情况下,程序清理处理程序会在程序退出前运行,并释放/释放任何仍被占用的资源。