【翻译自mos文章】在使用Linux大页内存的配置中,使用drop_cache时导致的ORA-600 [KGHLKREM1]问题
来源:互联网 发布:阿里云深圳分公司地址 编辑:程序博客网 时间:2024/06/05 05:47
在使用Linux大页内存的配置中,使用drop_cache时导致的ORA-600 [KGHLKREM1]问题
来源于:
ORA-600 [KGHLKREM1] On Linux Using Parameter drop_cache On hugepages Configuration (文档 ID 1070812.1)
适用于:
Oracle Database - Enterprise Edition - Version 10.2.0.1 and later
Generic Linux
***Checked for relevance on 29-Jul-2013***
症状:
你正在运行一个Oracle database,单实例数据库或者rac。你使用基于大页内存的sga
你遇到下面的问题:
ORA-00600: internal error code, arguments: [KGHLKREM1], [0x06BC00020]with stack trace similar to: kghnerror kghadd_reserved_ext kghgex-- or alsoORA-07445: exception encountered: core dump[kglhdal()+1105][SIGSEGV] [Address not mapped to object] [0x000000008] [] []ORA-07445: exception encountered: core dump [kghfnd()+2328] [SIGSEGV][Address not mapped to object] [0xFFFFFFFFFFFFFFF0] [] []
对侵犯地址(在上面的例子中是0x6bc00020)进行SGA heap dump显示,被清零(zeroed out)
asm1_lmd0_8600.trc~~~~~~~~~~~~~~~~~~*** 2010-02-08 15:57:38.274***** Internal heap ERROR KGHLKREM1 addr=0x6c400020 ds=0x60000058 ********** Dump of memory around addr 0x6c400020:06C3FF020 00000000 00000000 00000000 00000000 [................]Repeat 511 times
变化:
1.
在你的系统中,你正在运行vm.drop_caches=1 (or 3),drop_cache被设置为一个非零值,或者你在执行:
echo 3 > /proc/sys/vm/drop_caches
如下关于drop_caches的解释,不做翻译,原文如下:
/proc/sys/vm/drop_caches (since Linux 2.6.16)Writing to this file causes the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free.To free pagecache:* echo 1 > /proc/sys/vm/drop_cachesTo free dentries and inodes:* echo 2 > /proc/sys/vm/drop_cachesTo free pagecache, dentries and inodes:* echo 3 > /proc/sys/vm/drop_cachesAs this is a non-destructive operation, and dirty objects are not freeable, the user should run "sync" first in order to make sure all cached objects are freed.
2.
已经使用Linux的大页内存。
原因:
这是Linux 内核的问题
使用Linux内核drop_cache参数和大页内存时,内存损坏会发生。
Per internal Bug 9461825, executing vm.drop_caches corrupts Oracle Database SGA hugepages.
This is fixed in Linux Kernel version 2.6.18-194.0.0.0.4.EL5
解决方案:
1. As a workaround when hugepages are set avoid any vm.drop_cache settings.- OR -2. Upgrade to Linux Kernel version 2.6.18-194.0.0.0.4.EL5
参考:
BUG:9358381 - ASM INSTANCE IS CRASHING AS ORA-600[KGHLKREM1] WHEN HUGEPAGES ARE IN USE
- 【翻译自mos文章】在使用Linux大页内存的配置中,使用drop_cache时导致的ORA-600 [KGHLKREM1]问题
- 【翻译自mos文章】Linux 操作系统下的内存使用
- 【翻译自mos文章】在Oracle GoldenGate中循环使用ggserr.log的方法
- 【翻译自mos文章】使用Windows操作系统的Dell Pcserver,Oracle db报错:ORA-8103
- 【翻译自mos文章】在OGG (Oracle GoldenGate) 中使用SCHEMATRANDATA的话,需要额外的db patch
- 【翻译自mos文章】在unix/linux中使用文件描述符(File Descriptors)来找回被删掉的文件(数据文件or redo log)
- 【翻译自mos文章】从tablespace中 删除空的datafile时报ora-03262
- 【翻译自mos文章】为什么在备份过程中rman不使用unused block 压缩功能
- 【翻译自mos文章】在11.2中,使用DBMS_SERVICE.CREATE_SERVICE 能最多创建多少个service?
- 【翻译自mos文章】在一个使用uniform size的 本地管理的表空间中建立一个表,为什么会忽略INITIAL 参数?
- 【翻译自mos文章】12c中ORAAGENT.BIN进程消耗了大量的内存
- 【翻译自mos文章】使用asmcmd命令在本地和远程 asm 实例之间 拷贝asm file的方法
- 【翻译自mos文章】在rac中,使用asmcmd命令从 文件系统 move system datafile 到asm磁盘组的方法
- 【翻译自mos文章】rac数据库中,HC_<SID>.dat文件被其他Oracle_Home下的实例所使用。
- 【翻译自mos文章】ABMR:在asm 环境中测试Automatic Block Recover 特性的方法
- 【翻译自mos文章】在dg环境中flashback primary database的方法
- 【翻译自mos文章】在Oracle 数据库中对SHA-2算法的支持
- 【翻译自mos文章】在物理dg中对RFS进程进行trace的方法
- 2.3决策树之基尼系数
- 字段内容发生变化事件JS写法
- Linux关机/重启命令
- 键盘按下事件时刷新细表
- 平台错误解决方法汇总
- 【翻译自mos文章】在使用Linux大页内存的配置中,使用drop_cache时导致的ORA-600 [KGHLKREM1]问题
- View的工作原理 - Android开发艺术探索读书笔记(第四章)
- continue break return的区别
- SPICE协议之RedWorker线程
- 树---基本概念
- 聊聊软件测试04
- 使用Linux操作系统命令检查服务器主板上每个内存插槽的内存大小
- Java多线程编程总结 java 1.6版
- ArrayList<T>数组转换为二维数组