When provisioning or refreshing an Oracle virtual database (VDB) from a Source Instance running Oracle 11.2.0.4, 12.1.0.2, or later, the job may fail with the following alert:
Description: DB_PROVISION job for "VDB Name" failed due to an error during execution: Failed to open database after recovery.
Action: Review the Oracle alert log for more details.
When viewing the alert in Delphix or when viewing the Oracle event log for this instance, the Oracle errors ORA-00604 and ORA-04024 will be visible following an ALTER DATABASE OPEN RESETLOGS
command:
alter database open resetlogs
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00604: error occurred at recursive SQL level 2
ORA-04024: self-deadlock detected while trying to mutex pin cursor 0x0BFFB4F00
Troubleshooting
This job failure is caused by Oracle Bug 19469538 and is described in the Oracle document ORA-00604 ORA-04024 Opening Database with Resetlogs (Doc ID 2072684.1).
At the time of writing, Oracle Database versions 12.1.0.2 and 11.2.0.4 were confirmed to be affected by this bug. Check Oracle's documentation for the most up-to-date information.
As suggested by the Oracle Alert logs, this error is generated in response to the command ALTER DATABASE OPEN RESETLOGS
which is issued by Delphix during VDB Provision and Refresh operations.
The issue may occur more frequently in databases which make use of default values in a large number of database tables.