ORA-7445 [kxsOpenACursor()+1087] & ORA-03137 [12209] Errors

(Doc ID 1325759.1)

Last updated on NOVEMBER 16, 2016

Applies to:

Oracle Database - Enterprise Edition - Version 11.1.0.7 and later
Information in this document applies to any platform.

Symptoms

You are performing normal operations and in the alert log you encounter the below error messages:

ORA-03137: TTC protocol internal error : [12209] [70] [] [] [] [] [] []
Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x0] [PC:0x1BF955D, kxsOpenACursor()+1087] [flags: 0x0, count: 1]
ORA-07445: exception encountered: core dump [kxsOpenACursor()+1087] [SIGSEGV] [ADDR:0x0] [PC:0x1BF955D] [Address not mapped to object] []
ORA-03137: TTC protocol internal error : [12209] [70] [] [] [] [] [] []

From the trace file , you might see the following stack:
skdstdst <- ksedst1 <- ksedst <- dbkedDefDump <- ksedmp <- ssexhd <- pthread_sighandle <- r_rt <- 0000002A975161A0 <- r_rt <- kxsOpenACursor <- opiopr <- opikpr <- opiodr <- PGOSF141_rpidrus <- skgmstack <- rpiswu2 <- kprball <- kktextrg <- kkttrex <- kktexeevt0 <- opiodr <- ttcpip <- opitsk <- opiino <- opiodr <- opidrv <- sou2o <- opimai_real <- ssthrdmain <- main <- libc_start_main <- start


Its also noticed that the ORA-7445 usually occurs shortly after killing a blocking session .
e.g. from the process state and session state in the trace file


PROCESS STATE
-------------
Process global information:
process: 0x16f1db9c68, call: 0x159058f1c0, xact: (nil), curses: 0x1702f37fe8, usrses: 0x1702f37fe8
----------------------------------------
SO: 0x16f1db9c68, type: 2, owner: (nil), flag: INIT/-/-/0x00 if: 0x3 c: 0x3  <<<<<<<<<<<<========== Note the SO , which in our case is 0x16f1db9c68
proc=0x16f1db9c68, name=process, file=ksu.h LINE:11459, pg=0
(process) Oracle pid:665, ser:97, calls cur/top: 0x159058f1c0/0x15409c0cd8

On search for the session information for which the owner is 0x16f1db9c68 , you will find the session was killed.
SO: 0x1702f26948, type: 4, owner: 0x16f1db9c68, flag: INIT/-/-/0x00 if: 0x3c: 0x3
proc=0x16f1db9c68, name=session, file=ksu.h LINE:11467, pg=0
(session) sid: 4267 ser: 49175 trans: (nil), creator: 0x16f1db9c68
flags: (0x8000041) USR/- flags_idl: (0x8) -/-/-/-/KIL/-  <<<<<<===== This session was Killed as you see the flag in the trace file as flags_idl: (0x8) -/-/-/-/KIL/-
...
oct: 0, prv: 0, sql: (nil), psql: 0x167a573740, user: 176/APPS
...
client details:
O/S info: user: appeoaii, term: , ospid: 23054
machine: xxxxxxxx program:
client info: 42 0


Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms