• ORA-00600: internal error code, arguments: [kole_t2u], [34]


    数据库版本10.2.0.5,Alert 日志存在ORA-600报错

    ORA-00600: internal error code, arguments: [kole_t2u], [34], []

    --Trace日志如下

    System name:    Linux
    Oracle process number: 295
    Unix process pid: 29361, image: oracle@pquerydb02 (TNS V1-V3)
    
    *** ACTION NAME:() 2018-11-17 19:45:57.272
    *** MODULE NAME:(OGG-RE_LIS_A-OPEN_DATA_SOURCE) 2018-11-17 19:45:57.272
    *** SERVICE NAME:(SYS$USERS) 2018-11-17 19:45:57.272
    *** SESSION ID:(1709.7459) 2018-11-17 19:45:57.272
    *** 2018-11-17 19:45:57.272
    ksedmp: internal or fatal error
    ORA-00600: internal error code, arguments: [kole_t2u], [34], [], [], [], [], [], []
    Current SQL statement for this session:
    DECLARE
          PRAGMA AUTONOMOUS_TRANSACTION;
          TR_EVENT_ID VARCHAR2(32);
          TR_TERMINAL VARCHAR2(50);
          TR_IPADDR VARCHAR2(30);
          TR_CUR_USER VARCHAR2(30);
          TR_CUR_USERID NUMBER;
          TR_SE_USER VARCHAR2(30);
          TR_SE_USERID NUMBER;
          TR_PROXY_USER VARCHAR2(30);
          TR_PROXY_USERID NUMBER;
          TR_CUR_SC VARCHAR2(30);
          TR_HOST VARCHAR2(100);
          TR_OS_USER VARCHAR2(60);
          TR_SESSIONID VARCHAR2(32);
          TR_SQL_ID VARCHAR2(13);
          TR_SQL VARCHAR2(60);
          TR_VERSION_NO NUMBER;
          TR_N NUMBER;
          TR_STMT CLOB := NULL;
          TR_SQL_TEXT ORA_NAME_LIST_T;
    BEGIN
          TR_EVENT_ID := SYS_GUID();
          --获取用户信息
          SELECT NVL(SYS_CONTEXT('USERENV','TERMINAL'),''),--客户端操作系统终端的名称
                 NVL(SYS_CONTEXT('USERENV','IP_ADDRESS'),''),--客户端操作系统终端的名称
                 NVL(SYS_CONTEXT('USERENV','CURRENT_USER'),''),--当前SESSION拥有权限的用户的名称(比如说当前SESSION是SYS,但是正在执行SYSTEM.MYPROC,那么CURRENT_USER就是SYSTEM)
                 NVL(SYS_CONTEXT('USERENV','CURRENT_USERID'),''),--当前SESSION拥有的权限的用户的ID
                 NVL(SYS_CONTEXT('USERENV','SESSION_USER'),''),--SESSION所属的用户名
                 NVL(SYS_CONTEXT('USERENV','SESSION_USERID'),''),--当前SESSION所属的用户ID
                 NVL(SYS_CONTEXT('USERENV','PROXY_USER'),''),--打开当前SESSION的用户的名称
                 NVL(SYS_CONTEXT('USERENV','PROXY_USERID'),''),--打开当前SESSION的用户的ID
                 NVL(SYS_CONTEXT('USERENV','CURRENT_SCHEMA'),''),--当前SESSION缺省的SCHEMA名称
                 NVL(SYS_CONTEXT('USERENV','HOST'),''),--客户端的主机名称
                 NVL(SYS_CONTEXT('USERENV','OS_USER'),''),--客户端的操作系统用户名
                 NVL(SYS_CONTEXT('USERENV','SESSIONID'),'')--SESSION的ID
          INTO TR_TERMINAL,TR_IPADDR,TR_CUR_USER,TR_CUR_USERID,TR_SE_USER,TR_SE_USERID,TR_PROXY_USER,TR_PROXY_USERID,
               TR_CUR_SC,TR_HOST,TR_OS_USER,TR_SESSIONID
          FROM DUAL;
          --获取DDL SQL语句,如果语句过长无法全部获得,可以根据SQL_ID查询
          BEGIN
               SELECT SQL_TEXT,SQL_ID INTO TR_SQL,TR_SQL_ID
               FROM V$OPEN_CURSOR
               WHERE UPPER(SQL_TEXT) LIKE 'ALTER%'
                     OR UPPER(SQL_TEXT) LIKE 'CREATE%'
                     OR UPPER(SQL_TEXT) LIKE 'DROP%';
               TR_N := ORA_SQL_TXT(TR_SQL_TEXT);
               FOR I IN 1 .. TR_N LOOP
                 TR_STMT := TR_STMT || TR_SQL_TEXT(I);
               END LOOP;
              EXCEPTION WHEN OTHERS THEN
               TR_SQL_ID := NULL;
               TR_STMT := NULL;
          END;
          --向TB_SYSTEM_DDL_LOGS日志表中插入DDL操作记录
          IF ORA_DICT_OBJ_TYPE<>'SEQUENCE'AND ORA_SYSEVENT<>'GRANT' AND ORA_DICT_OBJ_OWNER='LISPRDD'  AND ORA_DICT_OBJ_NAME NOT LIKE 'SYS_C%' THEN
            SELECT SEQ_DDL_VERSION.NEXTVAL INTO TR_VERSION_NO FROM DUAL;
            INSERT INTO TB_SYSTEM_DDL_LOGS
                  (EVENT_ID,EVENT_NAME,TERMINAL,DB_NAME,OBJECT_NAME,OBJECT_OWNER,OBJECT_TYPE,
                  IS_ALTER_COLUMN,IS_DROP_COLUMN,SQL_ID,SQL_TEXT,SESSION_ID,
                  CURRENT_USER,CURRENT_USERID,SESSION_USER,SESSION_USERID,
                  PROXY_USER,PROXY_USERID,CURRENT_SCHEMA,HOST,OS_USER,IP_ADDRESS,VERSION_NO)
            VALUES (TR_EVENT_ID,ORA_SYSEVENT,TR_TERMINAL,ORA_DATABASE_NAME,ORA_DICT_OBJ_NAME,ORA_DICT_OBJ_OWNER,ORA_DICT_OBJ_TYPE,
                  NULL,NULL,TR_SQL_ID,TR_STMT,TR_SESSIONID,
                  TR_CUR_USER,TR_CUR_USERID,TR_SE_USER,TR_SE_USERID,
                  TR_PROXY_USER,TR_PROXY_USERID,TR_CUR_SC,TR_HOST,TR_OS_USER,TR_IPADDR,TR_VERSION_NO
            );
            COMMIT;
          END IF;
    END;
    ----- PL/SQL Call Stack -----
      object      line  object
      handle    number  name
    0x207a6ee990        52  anonymous block
    ----- Call Stack Trace -----
    calling              call     entry                argument values in hex      
    location             type     point                (? means dubious value)     
    -------------------- -------- -------------------- ----------------------------
    ssd_unwind_bp: unhandled instruction at 0x3d12266 instr=f
    ksedst()+31          call     ksedst1()                                     
    ksedmp()+610         call     ksedst()                                                
    ksfdmp()+63          call     ksedmp()                                                      
    kgerinv()+161        call     ksfdmp()                                                       
    kgesinv()+33         call     kgerinv()                                                        
    kgesin()+143         call     kgesinv()                                                          
    kole_t2u()+632       call     kgesin()                                                          
    koklwrite()+1720     call     kole_t2u()                                                       
    koklc_write()+183    call     koklwrite()                                                      
    kole_ba2l()+319      call     koklc_write()                                                     
    pfrcvfc_format_conv  call     kole_ba2l()          
    ersion()+3583                                                                                   
    pevm_CNVMSC()+36     call     pfrcvfc_format_conv  
                                  ersion()             
    pfrinstr_CNVMSC()+5  call     pevm_CNVMSC()        
    0                                                                                                  
    pfrrun_no_tool()+65  call     pfrinstr_CNVMSC()                                            
    pfrrun()+898         call     pfrrun_no_tool()                                                
    plsql_run()+839      call     pfrrun()                                                    
    peicnt()+296         call     plsql_run()                                                       
    kkxexe()+504         call     peicnt()                                                         
    opiexe()+4707        call     kkxexe()                                                         
    opiall0()+1853       call     opiexe()                                                          
    opikpr()+642         call     opiall0()                                                         
    opiodr()+1184        call     opikpr()                                                            
    rpidrus()+196        call     opiodr()                                                          
    skgmstack()+158      call     rpidrus()                                                          
    ssd_unwind_bp: unhandled instruction at 0x1309d1f i
    rpidru()+116         call     skgmstack()                                                     
    rpiswu2()+409        call     rpidru()                                                           
    kprball()+1270       call     rpiswu2()                                                        
    kktextrg()+866       call     kprball()                                                      
    kkttrex()+2796       call     kktextrg()                                                          
    kktexeevt0()+684     call     kkttrex()                                                         
    kktfrddltrg()+306    call     kktexeevt0()                                                        
    opiexe()+12227       call     kktfrddltrg()                                                      
    opiosq0()+3398       call     opiexe()                                                             
    kpooprx()+318        call     opiosq0()                                                           
    kpoal8()+783         call     kpooprx()                                                          
    opiodr()+1184        call     kpoal8()                                                          
    ttcpip()+1226        call     opiodr()                                                          
    opitsk()+1310        call     ttcpip()                                                           
    opiino()+1024        call     opitsk()                                                             
    opiodr()+1184        call     opiino()                                                              
    opidrv()+548         call     opiodr()                                                            
    sou2o()+114          call     opidrv()                                                             
    opimai_real()+163    call     sou2o()                                                              
    main()+116           call     opimai_real()                                                        
    __libc_start_main()  call     main()               
    +244                                                                                             
    _start()+41          call     __libc_start_main()  
    --------------------- Binary Stack Dump ---------------------

    --匹配MOS 提示是一个Bug,由于字符转换导致的问题

     
    ORA-600 [kole_t2u], [34] - description, bugs, and reasons (文档 ID 734474.1)
    
    Cause type-1: Invalid multibyte data being inserted into a CLOB
     
    
    SQL>select * from nls_database_parameters where VALUE like '%AL32%' OR VALUE LIKE '%AL16%'
    
    PARAMETER VALUE
    ------------------------------ ------------------------------
    NLS_CHARACTERSET AL32UTF8
    NLS_NCHAR_CHARACTERSET AL16UTF16
    
    SQL> CREATE TABLE T(A CLOB);
    
    Table created.
    
    SQL> INSERT INTO T VALUES(UTL_RAW.CAST_TO_VARCHAR2('EC'));
    INSERT INTO T VALUES(UTL_RAW.CAST_TO_VARCHAR2('EC'))
    *
    ERROR at line 1:
    ORA-00600: internal error code, arguments: [kole_t2u], [34], [], [], [], [],  [], []

    --其它相关Bug  --未明确匹配任何有效信息

    Bug 10334711  EXTENDED auditing in multibyte gets ORA-600 [kole_t2u] for long bind data
     Do not use the EXTENDED feature of AUDIT_TRAIL
    
     当前数据库版本10.2.0.5,数据库审计参数AUDIT_TRAIL=NONE 关闭审计功能状态

     --问题影响,我们可以发现,该service_name为OGG自带的相关服务,因此协调OGG管理员,查询相关OGG服务是否正常,是否由于该ORA-600错误导致ogg功能性异常,结果检测,未发现问题,因此可忽略。

    在面对这种ORA-600的情况下,大部分均无法有效解决,因此评估该报错产生的影响性是重要的,当确认报错未直接影响功能,可以暂且忽略。

     

  • 相关阅读:
    WMI介绍
    进程间通信
    回调函数(C/C++)
    漏洞名词介绍
    MD5 详解
    jQuery插件的写法
    node爬虫
    nodejs应用:文件上传
    node开发备注
    node生成自定义命令(yargs/commander)
  • 原文地址:https://www.cnblogs.com/lvcha001/p/10062911.html
Copyright © 2020-2023  润新知