作者: Maclean Liu, post on January 30th, 2012 10235 (check memory manager internal structures) event内部诊断事件,当oracle SGA内存堆heap 管理操作发生错误时会触发该检测事件(For the sga heap, the internal error is signaled only when heap checking (event 10235) is enabled),其级别列表如下:
[oracle@nas ~]$ oerr ora 10235 10235, 00000, “check memory manager internal structures” // *Cause: // *Action: List of Levels for Event 10235 Level 1: Check heap before heap is . . . → Read More: Oracle Internal Event:10235 Heap Checking诊断事件
作者: Maclean Liu, post on January 24th, 2012 《rac不到redo大小就切换是什么原因?》
这个帖子详细讨论了RAC或单机环境中归档日志没到online redolog size 大小就马上切换问题的成因, 主要是由于oracle内部算法所决定的, 一般不会造成实例 性能或可用性问题, 唯一的困扰可能是 生成了较多的小归档日志。
作者: Maclean Liu, post on January 24th, 2012 A “Redo Block Address” (RBA) describes a physical location within a redo log file. An RBA consists of the following:
Log sequence number Block number within log file Byte offset within block
The structure of the redo block address is given below : 1 – The number of the redo log. [4 bytes]
2 – . . . → Read More: Know more about RBA redo block address
作者: Maclean Liu, post on December 19th, 2011 一套HPUX-Itanium平台上版本为10.2.0.2 的系统出现ORA-00600: internal error code, arguments: [kjpsod1], [], [], [], [], [], [], [],并伴随有”ORA-44203: timeout waiting for lock on cursor”.错误,详细的日志如下:
Database get error Errors in file /s01/admin/udump/prod_ora_14084.trc: ORA-00600: internal error code, arguments: [kjpsod1], [], [], [], [], [], [], [] ORA-44203: timeout waiting for lock on cursor ORA-44203: timeout waiting for lock on cursor . . . → Read More: ORA-00600[kjpsod1]&ORA-44203错误一例
作者: Maclean Liu, post on November 13th, 2011
SMON后台进程的作用还包括维护SMON_SCN_TIME基表。
SMON_SCN_TIME基表用于记录过去时间段中SCN(system change number)与具体的时间戳(timestamp)之间的映射关系,因为是采样记录这种映射关系,所以SMON_SCN_TIME可以较为较为粗糙地(不精确地)定位某个SCN的时间信息。实际的SMON_SCN_TIME是一张cluster table簇表。
SMON_SCN_TIME时间映射表最大的用途是为闪回类型的查询(flashback type queries)提供一种将时间映射为SCN的途径(The SMON time mapping is mainly for flashback type queries to map a time to an SCN)。
Metalink文档<Error ORA-01466 while executing a flashback query. [ID 281510.1]>介绍了SMON更新SMON_SCN_TIME的规律:
在版本10g中SMON_SCN_TIME每6秒钟被更新一次(In Oracle Database 10g, smon_scn_time is updated every 6 seconds hence that is the minimum time that . . . → Read More: 了解你所不知道的SMON功能(十):维护SMON_SCN_TIME字典基表
作者: Maclean Liu, post on October 11th, 2011 之前我介绍了<Oracle Internal Event:10200 Consistent Read诊断事件>一致性逻辑读诊断事件的用法和trace含义,10201 ”consistent read undo application”是另一个十分有用的内部诊断事件,该事件可以用于诊断一致性读取时的UNDO应用情况。
10201 event可以用于探测为了创建CR(consistent read) block块以满足要求的SCN需要应用多少undo,该10201 event还可以配和10200 event使用。利用该10201 event,我们可以验证一些内部问题,例如何时会发生块上的cleanup。
注意启用10201 event可能导致在短期内产生大量的trace文件,所以不要随意在生产系统中使用。 10201 Internal Event主要会被ktrgcm( CR-rollback (ktrgcm() ) 、 ktrrbkblk 、 ktrcrf 这三个Oracle内核函数触发,这三个Internal Function的主要作用:
ktrgcm – common CR read code CR Requestor-Side Algorithm The following statistics are incremented by ktrgcm: “cleanouts and rollbacks – consistent read” is . . . → Read More: Oracle Internal Event:10201 consistent read undo application诊断事件
作者: Maclean Liu, post on October 7th, 2011 以下是我个人原创或总结的一些深入研究Oracle Internal内部原理的文章post列表:
Oracle Internal Event:10200 Consistent Read诊断事件 了解Oracle RAC Brain Split Resolution 了解Oracle内核代码层的作用 了解你所不知道的SMON功能(九):维护MON_MODS$字典基表 了解你所不知道的SMON功能(八):Transaction Recover 了解你所不知道的SMON功能(七):清理IND$字典基表 了解你所不知道的SMON功能(六):Instance Recovery 了解你所不知道的SMON功能(五):Recover Dead transaction 了解你所不知道的SMON功能(四):维护col_usage$字典基表 了解你所不知道的SMON功能(三):清理obj$基表 了解你所不知道的SMON功能(二):合并空闲区间 了解你所不知道的SMON功能(一):清理临时段 Know more about commit Find INTCOL#=1001 in col_usage$? Buffer Lock Mode and Compatibilities 关于V$OPEN_CURSOR Advanced Diagnostic using oradebug dumpvar 还原真实的cache recovery Oracle内部视图:x$targetrba Oracle内部视图:x$ktfbfe Oracle内部视图:x$ktfbue Only ARCH Bgprocess may create . . . → Read More: Oracle Internal Research深入研究Oracle内部原理
作者: Maclean Liu, post on September 30th, 2011 10200(consistent read buffer status)内部诊断事件可以用于探测一致性读CR(consistent read)块的访问情况,虽然cr读的统计信息可以从v$sysstat或AWR/statspack中获取,但是10200 event还是我们研究Consistent Read一致性读的有力工具。该事件可以通过在会话session级别设置ALTER SESSION SET EVENTS 或 DBMS_SYSTEM.SET_EV. Set 来开启,一般调用级别为Level 10。
该事件返回的trace跟踪文件,记录了为了实现一致性读的目的,哪些数据块以及这些块的各历史版本在执行过程中被创建(CR block creation)并检验(CR block inspection),以找出Best CR block满足Consistent一致性。
注意10200 Internal Event主要是被ktrgtc和ktrget(call ktrget to get one block ->calling KTR layer to apply RBS to have consistent read Block;)这2个Oracle内核功能函数触发,这2个内部函数Internal Function的主要作用:
ktrget:
Initializes a buffer cache CR scan request Calls kcbgtcr for the best . . . → Read More: Oracle Internal Event:10200 Consistent Read诊断事件
|
|
最新评论