RMAN backup fails while alert log reports ORA-07445: exception encountered: core dump [ksfdafShare()+140] [SIGSEGV] [ADDR:0x40]

RMAN backup fails while alert log reports ORA-07445: exception encountered: core dump [ksfdafShare()+140] [SIGSEGV] [ADDR:0x40]

Applies to:

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

Rman backup fails while alert log reports this error:

ORA-07445: exception encountered: core dump [ksfdafShare()+140] [SIGSEGV] [ADDR:0x40]

Trace shows this call stack

 ----- PL/SQL Call Stack ----- package body SYS.DBMS_BACKUP_RESTORE.BACKUPDATAFILE ----- Call Stack Trace ----- ksfdafShare <- ksfdshare1 <- ksfdshare <- kcfckf <- kcf_afn_to_fob <- kcfgkfiofib

 Cause

 In unpublished Bug 30932319 (where investigation was not completed) development found the error was caused by having

DBWR_IO_SLAVES > 0

This parameter has a default value of 0, and was used to simulate asynchronous I/O on older systems which did not support asyncIO.

 Solution

If the database uses ASM reset the parameter to its default value (IO with ASM is asynchronous by default)

DBWR_IO_SLAVES = 0

Otherwise set

DBWR_IO_SLAVES = 0 FILESYSTEMIO_OPTIONS = setall DB_WRITER_PROCESSES > 0

 

If you set DBWR_IO_SLAVES to a nonzero value, the number of I/O server processes used by the ARCH and LGWR processes is set to 4. However, the number of I/O server processes used by Recovery Manager is set to 4 only if asynchronous I/O is disabled (either your platform does not support asynchronous I/O or disk_asynch_io is set to false).

So, this parameter may greatly decrease RMAN backup/recovery speed on systems which do support asynchronous IO.