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 <- kcfgkfiofibCause
In unpublished Bug 30932319 (where investigation was not completed) development found the error was caused by having
DBWR_IO_SLAVES > 0This 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 = 0Otherwise 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.