ORA-07445: exception encountered: core dump [nstimexp()+45] [SIGSEGV] [ADDR:0x58] [PC:0x7F42ABB] [Address not mapped to object] []

Hello all,
I had faced some occourrences of this error in a 11.2.0.1 database recently.

ORA-07445: exception encountered: core dump [nstimexp()+45] [SIGSEGV] [ADDR:0x58] [PC:0x7F42ABB] [Address not mapped to object] []

After some investigation I found a match to Bug 3934729.
This issue is originally to matched to Bug 6918493, that is a reintroduction of Bug 2752985 but it’s fixed in 11.2.0.1.
However, on upgrading to 11.2.0.1 it’s a hit on Bug 3934729 which is fixed in 11.2.0.2.

Recommended actions are:
– Upgrade databases do 11.2.0.2 or higher. (best solution, but may require more efforts to validate the upgrade).
– Apply Patch 3934729: RANDOM ORA-07445 CORE DUMPS FROM DATABASE AND ORA-3113 FROM APPLICATION
– Set sqlnet.expire_time=0 (workaround)
– Ignore error.

After some research I decided to apply workaround, based on recommended usage of sqlnet.expire_time (Next weeks post is about this parameter :)).
This might be the root cause for the ORA-03135: connection lost contact and the actual value of this parameter on environment was 1, which is a very low value.

So, check which action is more suitable for your environment!
Hope it helps 🙂

Below some additional informations on my situation:

# Alert Log:

Mon Jun 05 08:01:47 2017
Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x58] [PC:0x7F42ABB, nstimexp()+45] [flags: 0x0, count: 1]
Errors in file /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/trace/GREPORADB_ora_7805.trc  (incident=90473):
ORA-07445: exception encountered: core dump [nstimexp()+45] [SIGSEGV] [ADDR:0x58] [PC:0x7F42ABB] [Address not mapped to object] []
Errors in file /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/trace/GREPORADB_ora_7779.trc  (incident=90369):
ORA-07445: exception encountered: core dump [nstimexp()+45] [SIGSEGV] [ADDR:0x58] [PC:0x7F42ABB] [Address not mapped to object] []
ORA-03135: connection lost contact
Incident details in: /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/incident/incdir_90369/GREPORADB_ora_7779_i90369.trc
Incident details in: /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/incident/incdir_90473/GREPORADB_ora_7805_i90473.trc

# Trace File:

Trace file /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/trace/GREPORADB_ora_7805.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /opt/oracle/app/product/11.2.0/GREPORADB
System name:    Linux
Node name:      SERVER01.grepora.com
Release:        2.6.32-431.el6.x86_64
Version:        #1 SMP Sun Nov 10 22:19:54 EST 2013
Machine:        x86_64
Instance name: GREPORADB
Redo thread mounted by this instance: 1
Oracle process number: 399
Unix process pid: 7805, image: oracle@SERVER01.grepora.com


*** 2017-06-05 08:01:47.679
*** SESSION ID:(2015.8118) 2017-06-05 08:01:47.679
*** CLIENT ID:() 2017-06-05 08:01:47.679
*** SERVICE NAME:(SYS$USERS) 2017-06-05 08:01:47.679
*** MODULE NAME:() 2017-06-05 08:01:47.679
*** ACTION NAME:() 2017-06-05 08:01:47.679

Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x58] [PC:0x7F42ABB, nstimexp()+45] [flags: 0x0, count: 1]
Incident 90473 created, dump file: /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/incident/incdir_90473/GREPORADB_ora_7805_i90473.trc
ORA-07445: exception encountered: core dump [nstimexp()+45] [SIGSEGV] [ADDR:0x58] [PC:0x7F42ABB] [Address not mapped to object] []

ssexhd: crashing the process...
Shadow_Core_Dump = partial
[...]

# Dump File:

Dump file /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/incident/incdir_90473/GREPORADB_ora_7805_i90473.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /opt/oracle/app/product/11.2.0/GREPORADB
System name:    Linux
Node name:      SERVER01.grepora.com
Release:        2.6.32-431.el6.x86_64
Version:        #1 SMP Sun Nov 10 22:19:54 EST 2013
Machine:        x86_64
Instance name: GREPORADB
Redo thread mounted by this instance: 1
Oracle process number: 399
Unix process pid: 7805, image: oracle@SERVER01.grepora.com


*** 2017-06-05 08:01:47.793
*** SESSION ID:(2015.8118) 2017-06-05 08:01:47.793
*** CLIENT ID:() 2017-06-05 08:01:47.793
*** SERVICE NAME:(SYS$USERS) 2017-06-05 08:01:47.793
*** MODULE NAME:() 2017-06-05 08:01:47.793
*** ACTION NAME:() 2017-06-05 08:01:47.793

Dump continued from file: /opt/oracle/app/diag/rdbms/GREPORADB/GREPORADB/trace/GREPORADB_ora_7805.trc
ORA-07445: exception encountered: core dump [nstimexp()+45] [SIGSEGV] [ADDR:0x58] [PC:0x7F42ABB] [Address not mapped to object] []

========= Dump for incident 90473 (ORA 7445 [nstimexp()+45]) ========
----- Beginning of Customized Incident Dump(s) -----
Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x58] [PC:0x7F42ABB, nstimexp()+45] [flags: 0x0, count: 1]
Registers:
%rax: 0x0000000000000000 %rbx: 0x0000000000000000 %rcx: 0x000000000357b0ee
%rdx: 0x000000000c91de68 %rdi: 0x000000000c9221e0 %rsi: 0x000000000c921a00
%rsp: 0x00007fff8e58d350 %rbp: 0x00007fff8e58d4d0  %r8: 0x0000000000000001
 %r9: 0x0000000000000000 %r10: 0x0000000000000008 %r11: 0x0000000000000202
%r12: 0x000000000c922230 %r13: 0x000000000357b0ee %r14: 0x000000000c911ed0
%r15: 0x000000000c921a00 %rip: 0x0000000007f42abb %efl: 0x0000000000010206
> (0x7f42abb) mov 0x58(%rax),%r13
  (0x7f42abf) movzbl 0x9(%r13),%edx
  (0x7f42ac4) xor %r9d,%r9d
  (0x7f42ac7) mov %r9d,-0x48(%rbp)
  (0x7f42acb) test $0x1,%dl

*** 2017-06-05 08:01:47.798
dbkedDefDump(): Starting a non-incident diagnostic dump (flags=0x3, level=3, mask=0x0)
----- SQL Statement (None) -----
Current SQL information unavailable - no cursor.

----- Call Stack Trace -----
calling              call     entry                argument values in hex
location             type     point                (? means dubious value)
-------------------- -------- -------------------- ----------------------------
skdstdst()+36        call     kgdsdst()            000000000 ? 000000000 ?
                                                   7F8B27330F98 ? 000000001 ?
                                                   7F8B27335498 ? 000000000 ?
ksedst1()+98         call     skdstdst()           000000000 ? 000000000 ?
                                                   7F8B27330F98 ? 000000001 ?
                                                   000000000 ? 000000000 ?
ksedst()+34          call     ksedst1()            000000001 ? 000000001 ?
                                                   7F8B27330F98 ? 000000001 ?
                                                   000000000 ? 000000000 ?
dbkedDefDump()+2736  call     ksedst()             000000001 ? 000000001 ?
                                                   7F8B27330F98 ? 000000001 ?
                                                   000000000 ? 000000000 ?
ksedmp()+36          call     dbkedDefDump()       000000003 ? 000000003 ?
                                                   7F8B27330F98 ? 000000001 ?
                                                   000000000 ? 000000000 ?
ssexhd()+2326        call     ksedmp()             000000003 ? 000000003 ?
                                                   7F8B27330F98 ? 000000001 ?
                                                   000000000 ? 000000000 ?
__restore_rt()       call     ssexhd()             00000000B ? 7F8B27339BF0 ?
                                                   7F8B27339AE8 ? 000000001 ?
                                                   000000000 ? 000000000 ?
nstimexp()+45        signal   __restore_rt()       00C4A51E0 ? 00C4A4A00 ?
                                                   00C4A0E68 ? 00357B0F1 ?
                                                   000000001 ? 000000000 ?
ltmdvp()+182         call     nstimexp()           00C4A51E0 ? 00C4A4A00 ?
                                                   00C4A0E68 ? 00357B0F1 ?
                                                   000000001 ? 000000000 ?
ltmdrv()+86          call     ltmdvp()             00C4A51E0 ? 00C4A5230 ?
                                                   00357B0F1 ? 000000000 ?
                                                   000000001 ? 000000000 ?
sltmdf()+11          call     ltmdrv()             00C4A51E0 ? 000000000 ?
                                                   000000000 ? 000000000 ?
                                                   000000001 ? 000000000 ?
sslsstehdlr()+329    call     sltmdf()             00C4A51E0 ? 00C4A51E0 ?
                                                   000000000 ? 000000000 ?
                                                   000000001 ? 000000000 ?
sslsshandler()+189   call     sslsstehdlr()        00000000E ? 7FFF914C1DF0 ?
                                                   7FFF914C1CC0 ? 000000000 ?
                                                   000000001 ? 000000000 ?
__restore_rt()       call     sslsshandler()       00000000E ? 7FFF914C1DF0 ?
                                                   7FFF914C1CC0 ? 000000000 ?
                                                   000000001 ? 000000000 ?
open64()+16          signal   __restore_rt()       7FFF914C22B0 ? 0000000C2 ?
                                                   0000001B0 ?
                                                   FFFFFFFFFFFFFFFF ?
                                                   000000004 ? 000000000 ?
[...]

# SQLNET.ORA:

[oracle@SERVER01 ~]$ cat $ORACLE_HOME/network/admin/sqlnet.ora
SQLNET.EXPIRE_TIME = 1
NAMES.DIRECTORY_PATH=(tnsnames, ldap, ezconnect)
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s