OnLine非正常结束后处理办法

OnLine非正常结束时,描述有关OnLine进入脱机方式原因的信息将写入日志,下面时OnLine结束时系统日志中登陆日志的示例:

ProcessAbortedAbnormally:pid=22500user=210us=c003f15cflags=a01

ProcessAbortedAbnormally(critialsection):pid=22500user=210flag=a01

INFORMIX-OnLineenteringABORTmode!!!INFORMIX-OnLineStopped

日志条目显示一个进入临界状态的sqlturbo进程非正常结束,临界状态是指一个进程执行写调用而不能被中断所用的术语。如果一个进程处于临界状态时非正常结束,OnLine为保护数据完整性而进入脱机方式。当OnLine重新启动时会执行快速恢复,回滚所有未完成的事务。

如果持有锁存器(latch)的进程非正常结束,OnLine也会非正常结束。锁存器用于控制对诸如缓冲区,锁定表等共享内存资源的访问。为防止干涉其它进程申请共享内存资源,INFORMIXOnLine控制对有锁存器的资源表的访问。

虽然OnLine后台进程对夭折的进程进行日常的清理工作,但数据一致性阻止后台进程在清除过程中释放共享内存锁存器。对后台进程来说,判断用户进程是否完成对数据库的修改是不可能的。为解脱这以一困境,OnLine强制自己进入脱机方式。当OnLine回到联机(Online)方式时,自动进行快速恢复。快速恢复使OnLine达到与最后一个完成事务一致的状态。

当持有锁存器的进程结束时,会生成以下的条目:

ProcessAbortedAbnormally:pid=10743user=104us=60204cflags=21

ProcessAbortedAbnormally(latch):pid=10743user=104flags=21

INFORMIX-OnLineenteringABORTMODE!!!

--OnLineAborting--us=6019a8,pid=11987,uid=1000

这些日志条目提供的信息在判定进程为何非正常结束时十分有用,条目中各域的定义如下:

pid---------sqlturboUNIX进程id

user--------真正用户id

us----------共享内存中用户结构的地址

flags-------定义如下

0x0000001------0x0000001正在使用的用户结构

0x0000002------0x0000002等待锁存器

0x0000004------0x0000004等待锁

0x0000008------0x0000008等待缓冲区

0x0000010------0x0000010等待检查点

0x0000020------0x0000020等待读取调用

0x0000040------0x0000040向存档磁道写逻辑日志

0x0000080等待清除长事务

0x0000100------0x0000080特定turbo检测用户

0x0000200处于事务中

0x0000400进程在回滚

0x0000800------0x0000100处于临界状态的进程继续...

0x0001000------0x0000200特定的后台进程

0x0002000开始工作日志登记

0x0004000------0x0000400存档

0x0008000------0x0000800清除死进程

0x0020000------0x00002000特定缓冲区刷新进程

0x0010000------0x0002000等待逻辑缓冲区写入

0x0040000------0x0004000该进程是远程服务器

0x0080000该进程正完成远程任务

0x0100000------0x0008000死锁超时

-----------0x00010000-----普通锁超时

-----------0x00020000-----超时等待期已结束

-----------0x00040000-----等待事务

以上的日志条目中,sqlturbo进程的UNIX进程id为10743,真正用户id为104,共享内存中用户结构的地址为0x60204c,标志显示用户结构正在使用中,OnLine引擎正处于读取调用之中(0x00000001,&0x00000020)。

这个信息可以标识非正常结束的用户,查明他或她是否遇到意外的错误,或以某种方式导致进程的非正常结束。用户不应对Informix进程使用kill-9命令。管理员可以用onmode-zpid命令中止某一个sqlturbo线索。如果进程正持有锁存器或处于临界状态,tbmode命令不会立即中止该进程。

时间: 2024-09-12 16:22:49

OnLine非正常结束后处理办法的相关文章

OnLine非正常结束后的处理方法

OnLine非正常结束时,描述有关OnLine进入脱机方式原因的信息将写入日志,下面是OnLine结束时系统日志中登陆日志的示例: Process Aborted Abnormally: pid=22500 user=210 us=c003f15c flags=a01 Process Aborted Abnormally (critial section):pid=22500 user=210 flag=a01 INFORMIX-OnLine entering ABORT mode!!! INF

sql-SQL ora-00933问题 没有正确结束

问题描述 SQL ora-00933问题 没有正确结束 select to_date('2015-08-01','yyyy-mm-dd') as startdate,to_date('2015-08-07','yyyy-mm-dd') as enddate,a.channel_name,a.list_type,a.product_name ,b.bc,a.ac,sysdate from (select count(1) as ac,(case when se.channel_name is nu

js禁用回退键[backspace键]浏览历史跳转的解决办法

在做公司的CMS的时候出现了一些js的问题,其中有一个就是在页面非输入框中按下回退键[backspace键]时页面会跳转到上一页,但是上一页加载失败,说会话已过期, 问题描述到此结束. 解决办法: 第一直觉就是上网搜答案,但是结果不理想. 第二上论坛上看看有没有解决办法,到是找到一个类似的问你 '在IE里按backspace键时如何知道是发生在input还是在中文输入法框?' 地址:http://www.iteye.com/problems/3272 问题类似,但是不是解决办法,还好的就是我根据

Linux 系统应用编程——进程基础

一.Linux下多任务机制的介绍          Linux有一特性是多任务,多任务处理是指用户可以在同一时间内运行多个应用程序,每个正在执行的应用程序被称为一个任务.          多任务操作系统使用某种调度(shedule)策略(由内核来执行)支持多个任务并发执行.事实上,(单核)处理器在某一时刻只能执行一个任务.每个任务创建时被分配时间片(几十到上百毫秒),任务执行(占用CPU)时,时间片递减.操作系统会在当前任务的时间片用完时调度执行其他任务.由于任务会频繁地切换执行,因此给用户多

ETL概述(原创)

ETL概述ETL,Extraction- Transformation-Loading的缩写,即数据抽取(Extract).转换(Transform).装载(Load)的过程,它是构建数 据仓库的重要环节.ETL是将业务系统的数据经过抽取.清洗转换之后加载到数据仓库的过程,目的是将企业中的分散.零乱.标准不统一的数据整合到一起,为 企业的决策提供分析依据.ETL是BI项目重要的一个环节.通过ETL,我们可以基于源系统中的数据来生成数据仓库.ETL为我们搭建了OLTP系统和 OLAP系统之间的桥梁

SQL Server 2000+ADO.NET实现并发控制

ado|server|控制 1 并发一致性问题 常见并发并发一致性问题包括:丢失的修改.不可重复读.读脏数据.幻影读(幻影读在一些资料中往往与不可重复读归为一类). 1.1 丢失修改 下面我们先来看一个例子,说明并发操作带来的数据的不一致性问题. 考虑飞机订票系统中的一个活动序列: 甲售票点(甲事务)读出某航班的机票余额A,设A=16. 乙售票点(乙事务)读出同一航班的机票余额A,也为16. 甲售票点卖出一张机票,修改余额A←A-1.所以A为15,把A写回数据库. 乙售票点也卖出一张机票,修改余

word只能用安全模式打开怎么办

我们在使用word文档时是否会发生只能用安全模式打开的情况,这是什么原因呢?本教程为大家提供办法解决该问题. 故障描述: 出现word打不开,显示错误报告对话框,在点击了"不发送"按钮后将关闭.再次运行 Word,将询问是否以安全模式启动 Word.在此如果选择"是", Word 将进入"安全模式".在这种模式下,Word将仅显示空白窗口,需要再手动打开文档方可显示.如果选择"否",则Word又将弹出错对话框,陷入死循环. 但

100个经典的电脑技巧

用电脑就是用软件,用软件得讲技巧才能达到事半功倍,今天我们为大家收集整理了140条经典的电脑使用技巧,希望对大家有所帮助. 1. 重装Windows XP不需再激活 如果你需要重装Windows XP,通常必须重新激活.事实上只要在第一次激活时,备份好WindowsSystem32目录中的Wpa.dbl文件,就不用再进行激活的工作了.在重装WindowsXP后,只需要复制该文件到上面的目录即可. 2. 如何知道自己的Windows XP是否已激活 打开开始→运行,在弹出的对话框中输入:oobe/

140个Windows XP技巧

  1. 重装Windows XP不需再激活 如果你需要重装Windows XP,通常必须重新激活.事实上只要在第一次激活时,备份好WindowsSystem32目录中的Wpa.dbl文件,就不用再进行激活的工作了.在重装Windows XP后,只需要复制该文件到上面的目录即可. 2. 如何知道自己的Windows XP是否已激活 打开开始→运行,在bomb出的对话框中输入:oobe/msoobe /a,回车后系统会bomb出窗口告诉你系统是否已经激活. 3. 关闭zip文件夹功能 你是不是觉得