Wednesday, August 7, 2013

ORA-00600 [kqlnrc_1]

ORA-00600 [kqlnrc_1] usually is about an invlaid object in the Library Cache.

When this error is raised an Oracle Trace file has been created so in order to find the object caused this ORA-600 error do the following :

Open the trace file with an editor (The following lines are from an 11.2.0.3 trace file) :

1. Find the first ORA_600 error argument
ORA-00600: internal error code, arguments: [kqlnrc_1], [0x143C6DAD0], [], [], [], [], [], [], [], [], [], []

2. Search the trace file for 0x143c6dad0 (its the first argument in lower case):

DDE: Problem Key 'ORA 600 [kqlnrc_1]' was flood controlled (0x2) (incident: 35561)
ORA-00600: internal error code, arguments: [kqlnrc_1], [0x143C6DAD0], [], [], [], [], [], [], [], [], [], []

LibraryHandle:  Address=0x143c6dad0 Hash=cd3b674a LockMode=S PinMode=S LoadLockMode=0 Status=INVL
  ObjectName:  Name=PUBLIC.TEST
    FullHashValue=5c820441b24ce2df1d9a0971cd3b674a Namespace=TABLE/PROCEDURE(01) Type=SYNONYM(05) Identifier=0 OwnerIdn=2147483644
  Statistics:  InvalidationCount=2 ExecutionCount=0 LoadCount=1 ActiveLocks=1 TotalLockCount=6 TotalPinCount=6
  Counters:  BrokenCount=1 RevocablePointer=1 KeepDependency=0 BucketInUse=6 HandleInUse=6 HandleReferenceCount=0
  Concurrency:  DependencyMutex=0x143c6db80(0, 8, 0, 0) Mutex=0x143c6dc00(233, 45, 0, 6)
  Flags=REM/PIN/TIM/[00022801]
  WaitersLists:
    Lock=0x143c6db60[0x143c6db60,0x143c6db60]
    Pin=0x143c6db40[0x143c6db40,0x143c6db40]
    LoadLock=0x143c6dbb8[0x143c6dbb8,0x143c6dbb8]
  Timestamp:  Current=04-25-2013 09:41:24
  HandleReference:  Address=0x143c6dc90 Handle=(nil) Flags=[00]
  ReferenceList:
    Reference:  Address=0x145badf28 Handle=0x12d7be980 Flags=DEP[01]
      Timestamp=04-25-2013 09:41:24 InvalidatedFrom=0
  LibraryObject:  Address=0x10dbe40b0 HeapMask=0000-0001-0001-0000 Flags=EXS/LOC[0004] Flags2=[0000] PublicFlags=[0000]
    DataBlocks:
      Block:  #='0' name=KGLH0^cd3b674a pins=0 Change=NONE
        Heap=0x12297cc10 Pointer=0x10dbe4150 Extent=0x10dbe4030 Flags=I/-/P/A/-/-
        FreedLocation=0 Alloc=0.257812 Size=4.000000 LoadTime=15174108210 

3. Find the object :

SELECT object_name,object_type,owner,status
FROM dba_objects
WHERE object_name='TEST' and owner='PUBLIC';

OBJECT_NAME OBJECT_TYPE OWNER STATUS
-------------- ------------- ---------------- -------
TEST SYNONYM PUBLIC VALID

4. Compile the synonym owned by public.

As sys :

SQL> alter public synonym TEST compile;

or Recreate it

SQL> create or replace public synonym v_o_thp_link_sup_ven for v_o_thp_link_sup_ven@si2p.world;

REFERENCES:
Oracle Support Note 1092832.1

No comments:

Post a Comment