Detailed Steps for Troubleshooting ORA-00600 [kdsgrp1] (文档 ID 1492150.1)

Detailed Steps for Troubleshooting ORA-00600 [kdsgrp1] (文档 ID 1492150.1)​编辑转到底部


In this Document

Purpose
Troubleshooting Steps
References

APPLIES TO:

Oracle Database - Enterprise Edition
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Backup Service - Version N/A and later
Information in this document applies to any platform.

PURPOSE

This document provides detailed steps for troubleshooting the ORA-00600 [kdsgrp1] internal error.It contains information from other documents including the documents shown in the references section.

Instructions for the Reader

First, please review Document 1332252.1 - Causes and Solutions for ora-00600 [kdsgrp1]. It is an excellent document which explains the error and possible causes/solutions for this particular error.
 

TROUBLESHOOTING STEPS

The following troubleshooting steps can be used to analyze the ORA-600 [kdsgrp1] error:

  1. Identify the object causing the ORA-600 [kdsgrp1] to be raised

    For example, the trace file with ORA-00600 [kdsgrp1] contains the following information::

    * kdsgrp1-1: *************************************************
                row 0x0744877d.52 continuation at
                0x0744877d.52 file# 29 block# 296829 slot 82 not found


    So in this case the ORA-600 is raised in file # 29 and block # 296829.

    The following query can be used to retrieve the object information:

    SELECT segment_type, owner, segment_name
    FROM dba_extents
    WHERE file_id = <file number>
    AND <block number> BETWEEN block_id and block_id+blocks-1;


    So in the given example, issue:

    CONNECT / AS SYSDBA

    SELECT segment_type, owner, segment_name
    FROM dba_extents
    WHERE file_id = 29
    AND 296829 BETWEEN block_id AND block_id+blocks-1;

  2. Analyze the object identified in step 1 and check for table/index mismatches and/or corruptions

    The SQL statements that can be used for this are:

    ANALYZE TABLE <table name> VALIDATE STRUCTURE CASCADE;


    and:

    ANALYZE TABLE <table name> VALIDATE STRUCTURE CASCADE ONLINE;

     

    NOTE:
    Analyze with the ONLINE option enables the Oracle Database to run the validation while DML operations are ongoing within the object. The database reduces the amount of validation performed to allow for concurrency. With the OFFLINE option (which is the default setting) this setting prevents INSERT, UPDATE, and DELETE statements from concurrently accessing the object during validation but allows queries being run against the object.

  3. If the above ANALYZE command fails, then check the table and indexes without using 'cascade'
    option as shown below:

     
    • For tables use:

      ANALYZE TABLE <table name> VALIDATE STRUCTURE;


      or:

      ANALYZE TABLE <table name> VALIDATE STRUCTURE ONLINE;

    • For indexes use:

      ANALYZE INDEX <table name> VALIDATE STRUCTURE;


      or:

      ANALYZE INDEX <table name> VALIDATE STRUCTURE ONLINE;

  4. If ANALYZE fails and the object is corrupt, then:
    1. For non-SYS owned objects, drop and recreate the object when possible:
      1. For an user index corruption, drop and recreate the index.
      2. For Advanced Queue objects we cannot simply drop a queue index owned by the SYSTEM user.
        You can recreate the offending queue tables. If you need the messages that are in the queue then you need to take backup of the data. Re-enqueue the messages back to the queue after a recreate of the queue table
        or:
        Reorganize/move the queue objects:
        • For Oracle versions 10.2.0.5 and above, see Document 1410195.1 - How to perform an Online Move of Advanced Queueing Tables using DBMS_REDEFINITION
        • For Oracle version below 10.2.0.5.0, see Document 304522.1 - How to Move Queue Tables without using the Export or Datapump Utilities
      3. Analyze fails with error ORA-01499

        ANALYZE TABLE <table name> VALIDATE STRUCTURE CASCADE ONLINE;
        ERROR at line 1:
        ORA-01499: table/index cross reference failure - see trace file


        and the trace file generated shows:

        tsn: 8  rdba: 0x0443e30e  seg/obj: 0xfd6b

         
        • To identify the offending object based on tsn and rdba:
          See Document 1499.1 - OERR: ORA-1499 table/Index Cross Reference Failure - see trace file
          tsn: Tablespace Number where the INDEX is stored.
          rdba: Relative data block address of the INDEX segment header.
           

          CONNECT / AS SYSDBA
          SELECT owner, segment_name, segment_type, partition_name
          FROM DBA_SEGMENTS
          WHERE header_file = (SELECT file#
                               FROM v$datafile
                               WHERE rfile# = dbms_utility.data_block_address_file(to_number('0443e30e','XXXXXXXX'))
                               AND ts#= 8)
          AND header_block = dbms_utility.data_block_address_block(to_number('0443e30e','XXXXXXXX'));

        • To identify the offending object based on seg/obj:
          Note the value of the seg/obj field (i.e. 0xfd6b) and translate this to a decimal number (in this case: 64875).
          Look up the object name in the data dictionary:

          CONNECT / AS SYSDBA
          SELECT owner, object_name, object_type
          FROM dba_objects
          WHERE object_id = 64875;

        Check if the issue is solved after drop/create the index.
        1. Analyze fails with error ORA-1499 /ORA-8102 - Index inconsistency
          For INSERT statements on INTERVAL partitioned tables, see:
          Document 10633840.8 - Bug 10633840 - ORA-1502 on insert statement on INTERVAL partitioned table. ORA-8102 / ORA-1499 Index inconsistency
          and:
          Bug:10633840 - ORA-1502 WHILE RUNNING INSERT STATEMENT ON PARTITIONED TABLE

          This issue is fixed in 11.2.0.2 PSU 7.
        2. Analyze fails with error OERI[kdsgrp1]/ORA-1499 - Corrupt index
          After PDML executed in serial, see:
          Document 9469117.8 - Bug 9469117 - Corrupt index after PDML executed in serial. Wrong results. OERI[kdsgrp1]/ORA-1499 by analyze
          and:
          Bug:9469117 - INDEX WITH DELETED KEYS - WRONG RESULTS. OERI [KDSGRP1] / ORA-1499 BY ANALYZE

          This issue is fixed in the 11.2.0.2 patchset.
        3. Analyze fails with ORA-1499, Corruption with self-referenced row in a MSSM (Manual Segment Space Management) tablespace. Wrong results/ORA-600 [6749]/ORA-8102:
          See:
          Document 7705591.8 - Bug 7705591 - Corruption with self-referenced row in MSSM tablespace. Wrong Results / OERI[6749] / ORA-8102
          and:
          Bug:7705591 - CORRUPTED NRID IN A CHAINED ROW POINTING TO ITSELF. ORA-600 [6749] AND ORA-8102

          This issue is fixed in the 11.2.0.2 patchset.

          You can verify the use of MSSM in the SEGMENT_SPACE_MANAGEMENT column of DBA_TABLESPACES.
        4. Analyze fails with errors ORA-1499, ORA-8102, ORA-600 [kdsgrp1] - Bitmap index/table mismatch, when querying a table with bitmap indexes:
          See:
          Document 13146182.8 - Bug 13146182 - ORA-1499 ORA-8102 ORA-600 [kdsgrp1] Bitmap Index / Table mismatch
          and:
          Bug:13146182 - ORA-600 [KDSGRP1] ERROR WHEN QUERYING A TABLE WITH BITMAP INDEXES

          This issue is fixed in the 12.1.
    2. If a SYS object, please perform a database recovery or log a service request.

      You can use RMAN's BACKUP CHECK LOGICAL VALIDATE DATABASE command to check for any logical or physical corruption. It does not actually make a backup, but will do the block checking.

      For details, see Document 472231.1 How to identify all the Corrupted Objects in the Database with RMAN

  5. If analyze is successful and reports no corruption:
     
    1. If running Oracle release 11.1.0.7.0 or below:

      Apply the fix for bug 8720802, fixed in 11.2.0.2.
      For details, see:
      Document 8720802.8 - Bug 8720802 - Add check for row piece pointing to itself (db_block_checking,dbv,rman,analyze)
      and:
      unpublished Bug:8720802 - ADD CHECK FOR CONTINUED ROW PIECE POINTING TO ITSELF

      Without the fix of bug 8720802 tools like DBVERIFY, RMAN, and ANALYZE don't detect this logical corruption.

      An example is the above mentioned bug 7705591.
       
      1. If table and index analysis doesn't report errors and the table doesn't use the LONG column datatype then see:
        Document 8771916.8 - Bug 8771916 - OERI [kdsgrp1] during CR read
        and:
        unpublished Bug:8771916 - ORA-00600 [KDSGRP1] WHEN DOING AN UPDATE

        This issue is fixed in the 11.2.0.2 patchset.

        Workaround is to set the "_row_cr"=FALSE instance parameter.
         

        Note:
        Disabling rowCR (which is an optimization to reduce consistent-read rollbacks during queries) by setting "_row_cr"=FALSE in the instance could cause performance degradation of queries - the statistics "RowCR hits"/"RowCR attempts" can help show if this workaround may be detrimental to performance. So setting this parameter must be verified in a test environment before applying it in production.

      2. If table and index analysis doesn't report errors and the table uses a LONG column datatype then see:
        Document 735435.1 - ORA-600 [kdsgrp1] Generated When Table Contains a LONG
        and:
        Bug:6445948 - ORA-600 [KDSGRP1] HAPPENING => TABLE AND INDEX ANALYZES FINE

        This issue is fixed in 11.2.0.1.

        Workaround:
        • Set the "_row_cr"=FALSE instance parameter.
        • Drop and recreate the index.
           

        Note:
        Disabling rowCR (which is an optimization to reduce consistent-read rollbacks during queries) by setting "_row_cr"=FALSE in the instance could cause performance degradation of queries - the statistics "RowCR hits"/"RowCR attempts" can help show if this workaround may be detrimental to performance. So setting this parameter must be verified in a test environment before applying it in production.

    2. If your running Oracle release 11.2.0.3.0 in a RAC (Real Application Clusters) then test the problem by disabling reader bypass, by setting "_gc_bypass_readers"=FALSE on all nodes. This won't have a dramatic performance impact.

      Monitor the system, and if problem does not occur after setting the parameter then apply Patch:13807411 (fixed in 12.1) and remove the parameter setting.

      For more information, see:
      Document 13807411.8 - Bug 13807411 - ORA-600 [kcbchg1_38] using XA in RAC
      and:
      unpublished Bug:13807411 - ORA-00600[KCBCHG1_38] DURING CURRENT CLEANOUT
       
    3. Otherwise, check if there are any chained rows in the table. If these exist then we may have an undetected corruption and the issue should reproduce whenever the offending SQL statement or a Full Table Scan is run or the entire table is being exported.

      If there is a permanent invalid chained row, the row producing the ORA-600 [kdsgrp1] can be skipped by setting the 10231 event:

      event="10231 trace name context forever, level 10"


      This should be removed from the instance parameters immediately after the table reporting the ORA-600 [kdsgrp1] has been salvaged.

      Alternatively this event can be set at the session level, as in:

      ALTER SESSION SET EVENTS '10231 trace name context forever, level 10';


      For more information, see:
      Document 21205.1 - EVENT: 10231 "skip corrupted blocks on _table_scans_"
      Document 33405.1- Extracting Data from a Corrupt Table using DBMS_REPAIR or Event 10231

  6. If the issue is only occurring in memory you can try to immediately resolve the issue by flushing the buffer cache but remember to consider the performance impact on production systems:

    ALTER SYSTEM FLUSH BUFFER_CACHE;

  7. When feasible apply lateset patchset or one-off patches for relevant known bugs. Please see Document 285586.1- ORA-600 [kdsgrp1] for a list of known issues for your Oracle version.

  8. If further assistance is needed, file a new Service Request with Oracle Global Software Support.

REFERENCES

NOTE:21205.1 - EVENT: 10231 "skip corrupted blocks on _table_scans_"
NOTE:33405.1 - Extracting Data from a Corrupt Table using DBMS_REPAIR or Event 10231
NOTE:1332252.1 - Causes and Solutions for ora-600 [kdsgrp1]
BUG:7705591 - CORRUPTED NRID IN A CHAINED ROW POINTING TO ITSELF. ORA-600 [6749] AND ORA-8102
NOTE:8720802.8 - Bug 8720802 - Add check for row piece pointing to itself (db_block_checking,dbv,rman,analyze)
BUG:10633840 - ORA-1502 WHILE RUNNING INSERT STATEMENT ON PARTITIONED TABLE


NOTE:13146182.8 - Bug 13146182 - ORA-1499 ORA-8102 ORA-600 [kdsgrp1] Bitmap Index / Table mismatch
BUG:13146182 - ORA-600 [KDSGRP1] ERROR WHEN QUERYING A TABLE WITH BITMAP INDEXES
BUG:9469117 - INDEX WITH DELETED KEYS - WRONG RESULTS. OERI [KDSGRP1] / ORA-1499 BY ANALYZE

NOTE:472231.1 - How to identify all the Corrupted Objects in the Database with RMAN
NOTE:285586.1 - ORA-600 [kdsgrp1]
NOTE:1499.1 - OERR: ORA-1499 table/Index Cross Reference Failure - see trace file
NOTE:10633840.8 - Bug 10633840 - ORA-1502 on insert statement on INTERVAL partitioned table. ORA-8102 / ORA-1499 Index inconsistency
NOTE:9469117.8 - Bug 9469117 - Corrupt index after PDML executed in serial. Wrong results. OERI[kdsgrp1]/ORA-1499 by analyze
NOTE:403747.1 - FAQ: Physical Corruption
NOTE:7705591.8 - Bug 7705591 - Corruption with self-referenced row in MSSM tablespace. Wrong Results / OERI[6749] / ORA-8102

此文档是否有帮助?

文档详细信息

通过电子邮件发送此文档的链接

在新窗口中打开文档

可打印页

类型:
状态:
上次主更新:
上次更新:
TROUBLESHOOTING
PUBLISHED
2019-3-1
2023-6-30

相关产品

Oracle Database Cloud Exadata Service

Oracle Database Exadata Express Cloud Service

Oracle Database Cloud Service

Oracle Database - Enterprise Edition

Oracle Database Cloud Schema Service

显示更多

信息中心

加载信息中心

文档引用

加载信息中心

最近查看

Oracle Reliable Datagram Sockets (RDS) and InfiniBand (IB) Support (For Linux x86 and x86-64 Platforms) [761804.1]

Oracle Clusterware and RAC Support for RDS Over Infiniband [751343.1]

HOWTO: Remove/Disable HAIP on Exadata [2524069.1]

Grid infrastructure (GI):HAIP on RDS is not supported [2328941.1]

HOWTO: Remove/Disable HAIP on ODA [2612963.1]

显示更多

未找到您要查找的产品?

在社区中提问...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/36883.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ngnix内存池——高并发实现高效内存管理

目录 一、高并发下传统方式的弊端 1、常用的内存操作函数 2、弊端一 3、弊端二 4、弊端三 5、弊端四 二、弊端解决之道 1、内存管理维度分析 2、内存管理组件选型 三、高并发内存管理最佳实践 1、内存池技术 2、内存池如何解决弊端 3、高并发内存池如何实现 四、…

《数字图像处理与机器视觉》案例二(基于边缘检测和数学形态学焊缝图像处理)

一、前言 焊缝是评价焊接质量的重要标志&#xff0c;人工检测方法存在检测标准不统一&#xff0c;检测精度低&#xff0c;焊缝视觉检测技术作为一种重要的质量检测方法&#xff0c;正逐渐在各行各业中崭露头角。把焊缝准确的从焊接工件中准确分割出来是焊缝评价的关键一步&…

linux上git的使用

目录 1.测试是否安装有git 2.下载项目到本地 3.三板斧 1.将代码放在创建的目录中 2.提交改动到本地 3.提交代码到远端 4.注意点 以及补充内容 1.测试是否安装有git 如果输入git --help 会显示下面一大串那么就是已经安装&#xff0c;否则需要自行手动安装 yum install g…

洁盟超声波清洗机怎么样?横向测评希亦、洁盟、苏泊尔超声波清洗机谁是实力派

生活中大多数人戴眼镜&#xff0c;但是很多人都不注意眼镜的保养&#xff0c;导致镜片越来越模糊&#xff0c;从而引发多边的状况发生&#xff0c;比如长久戴模糊不清的眼镜&#xff0c;视力会受到影响随之下降。甚至是眼镜长期不清洗&#xff0c;上面的灰尘、细菌会影响眼部健…

彩虹PLM系统在航空航天业的应用与实践

彩虹PLM系统在航空航天业的应用与实践 彩虹PLM系统作为航空航天业的卓越解决方案&#xff0c;已经在众多企业中得到了广泛的应用和实践。该系统通过其独特的功能和优势&#xff0c;为航空航天企业带来了显著的管理效益和市场竞争力提升。 彩虹PLM系统 在应用方面&#xff0c;彩…

1.2 离散LTI系统的时域分析

目录 离散系统的定义 离散LTI系统的时域描述h[k] 离散系统的分类 线性与非线性系统 时变与非时变系统 因果与非因果系统 稳定与不稳定系统 滑动平均系统 LTI——Linear and Time-invariant System 线性时不变系统 离散系统的定义 离散LTI系统的时域描述h[k] 离…

【并发编程】2-Synchronized

基本概念 线程安全问题三个要素&#xff1a;多线程、共享资源、非原子性操作&#xff1b;产生的根本原因&#xff1a;多条线程同时对一个共享资源进行非原子性操作&#xff1b;Synchronized解决线程安全问题的方式&#xff1a;通过互斥锁将多线程的并行执行变为单线程串行执行…

昇思25天学习打卡营第4天|数据集Dataset

数据集 Dataset 介绍 之前说过&#xff0c;MindSpore是基于Pipeline&#xff0c;通过Dataset和Transformer进行数据处理。Dataset在其中是用来加载原始数据的。mindSpore提供了数据集加载接口&#xff0c;可以加载文本、图像、音频等&#xff0c;同时也可以自定义加载接口。此…

【UE开发】游戏库存UI系统Demo

1.项目介绍 1.描述&#xff1a;一种用于存储记录玩家物品的游戏内可视化操作系统。 2.演示&#xff1a;https://www.bilibili.com/video/BV1f53neVEfW/?vd_source50dea901fd12253f417c48b937975b0d 3.大纲&#xff1a; 4.样式&#xff1a; 2.W_Inventory_Main_01&#xff08;…

CORE Mobility Errorr的调试

在运行CORE tutorial 3中的mobility示例时&#xff0c;出现如下错误&#xff1a; 当看到这个问题的时候&#xff0c;并没有仔细去分析日志和现象&#xff0c;在core-daemon的进程打印界面只看了一下最后的出错堆栈&#xff1a; 2024-06-27 10:43:48,614 - ERROR - _server:_ca…

MySQL8 新特性——公用表表达式用法 with t1 as (select * from user)

MySQL8 新特性——公用表表达式用法_mysql ctes-CSDN博客 1.普通公用表表达式 MySQL8 新特性——公用表表达式用法 在MySQL 8.0及更高版本中&#xff0c;引入了公用表表达式&#xff08;Common Table Expressions&#xff0c;CTEs&#xff09;&#xff0c;它是一种方便且可重…

docker部署vue项目

1.下载docker desktop软件 Docker Desktop启动的时候&#xff0c;有可能弹框提示"WSL2 installations is incomplete"&#xff0c;这是您的系统中没有安装WSL2内核的原因&#xff0c;打开【https://aka.ms/wsl2kernel ,在打开的页面中有一个Linux内核更新包"链…

【python011】经纬度点位可视化html生成(有效方案)

1.熟悉、梳理、总结项目研发实战中的Python开发日常使用中的问题、知识点等&#xff0c;如获取省市等边界区域经纬度进行可视化&#xff0c;从而辅助判断、决策。 2.欢迎点赞、关注、批评、指正&#xff0c;互三走起来&#xff0c;小手动起来&#xff01; 3.欢迎点赞、关注、批…

STM32将外部SDRAM空间作为系统堆(Heap)空间

概述 stm32可以外扩很大的sram&#xff0c;常见外部sram的初始化函数一般是c语言写的&#xff0c;默认写在main函数里面。stm32初始化首先进入汇编代码startup_stm32f429xx.s&#xff0c;在汇编代码中Reset_Handler&#xff08;复位中断服务程序&#xff09;里面先调用了Syste…

vue + Lodop 制作可视化设计页面 实现打印设计功能(二)

历史&#xff1a; vue2 Lodop 制作可视化设计页面 实现打印设计功能&#xff08;一&#xff09; 前言&#xff1a; 之前本来打算用直接拿之前做的vue2版本改改就发的&#xff0c;但考虑到现在主流都是vue3了&#xff0c;所以从这篇文章开始使用vue3来写&#xff0c;以及最后…

三相LCL滤波型PWM逆变器仿真设计

参考并网电流外环电容电流前馈内环的双闭环控制结构&#xff0c;在光伏和风力发电网侧变换器中的应用&#xff0c;可以显著提高系统的稳定性和效率。在并网电流外环中&#xff0c;通过检测电网电流并与其参考值进行比较&#xff0c;可以得到一个电流误差信号。这个电流误差信号…

MySQL基础查询与复杂查询

基础查询 1、查询用户信息&#xff0c;仅显示用户的姓名与手机号&#xff0c;用中文显示列名。中文显示姓名列与手机号列。 2、根据商品名称进行模糊查询&#xff0c;模糊查询需要可以走索引&#xff0c;需要给出explain语句。使用explain测试给出的查询语句&#xff0c;需要显…

程序员职业发展指南,如何选择适合自己的就业方向?

随着科技的发展和数字化时代的到来&#xff0c;程序员是IT行业中的热门职业。尤其是近几年移动互联网的迅速发展&#xff0c;IT人才更是紧缺&#xff0c;越来越多的人加入程序员这个行列。 从事程序员工作&#xff0c;如何接项目呢&#xff1f;YesPMP是一个专注于互联网外包的平…

【知识学习】阐述Unity3D中动画渲染的概念及使用方法示例

Unity3D中的卡通渲染&#xff08;Cartoon Rendering&#xff09;是一种渲染技术&#xff0c;它模仿传统手绘动画或漫画的视觉效果。这种渲染风格通常具有鲜明的颜色、清晰的轮廓线和简化的光影效果&#xff0c;常用于制作动画、游戏和其他视觉媒体。 卡通渲染的基本概念 轮廓…

<sa8650>QCX ISP Tuning 使用详解 — Tuning前置条件

<sa8650>QCX ISP Tuning 使用详解 — Tuning前置条件 一 如何安装 Qualcomm Chromatix™ 摄像头校准工具二 如何使用 Qualcomm Chromatix™ tuning工具创建tuning项目2.1 创建工程前提依赖2.2 创建工程2.3 添加场景2.4 编辑区域触发器三 如何创建Tuning 树一 如何安装 Qualco…