Skip to main content
Delphix

Troubleshooting "Internal Error" During Oracle VDB Provisioning Due To Stopped or Missing Listener (KBA1283)

 

 

Applicable Delphix Versions

 

Major Release

All Sub Releases

5.2 5.2.2.0, 5.2.2.1

Issue

When provisioning an Oracle VDB from the Dynamic Data Platform, you may receive the following error:

Error
DB_PROVISION job for "Group/VDB_Name" failed due to an internal error during execution.

Error Code
exception.job.execute.internal

Suggested Action
Contact Delphix Support.

image.png

Troubleshooting

In Dynamic Data Platform releases 5.2.2.0 and 5.2.2.1, this error may occur if the Target Environment did not have a running listener at the time that the environment was last Refreshed.

To confirm whether an undetected listener is the cause:

  • From the Manage → Datasets screen of the Management interface, select the VDB which has failed provisioning
  • From the Timeflow tab, click the Environment name in the Dataset Details pane
  • In the resulting Environment screen, check for the presence of Listeners at the bottom-right

Please note that "internal error" messages may occur for other reasons. The document How to resolve "internal error during execution" errors during Oracle VDB operations describes other known causes of this error.

An environment susceptible to this issue will have no listeners present:

listeners_empty.png

For comparison, a functional environment that is not susceptible to this issue will display all discovered listeners. Typically this will be a single, default LISTENER.

listeners_healthy.png

If the list of Listeners is empty, please proceed to the Resolution steps.

Resolution

Verify that the local listener is running

Log in to the host and check the status of the local listener(s). If it is not running, attempt to start it and perform further troubleshooting as required.

[oracle@oratgt ~]$ lsnrctl status
LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 07-FEB-2018 21:06:04
Copyright (c) 1991, 2014, Oracle.  All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused

[oracle@oratgt ~]$ lsnrctl start
LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 07-FEB-2018 21:06:08
Copyright (c) 1991, 2014, Oracle.  All rights reserved.
Starting /u01/app/oracle/product/12.1.0.2/dbhome_1/bin/tnslsnr: please wait...
[...]
The command completed successfully

Refresh the environment

Navigate to the affected Environment, and use the Refresh button to re-discover the listener:

listeners_refresh.png

Once the listener has been successfully discovered, it should appear in the Environment's list of listeners.

It may be necessary to navigate away to a different environment and back for the change to appear.

listeners_healthy.png

OPTIONAL: Add the listener if discovery fails

If you are certain that a local listener is running, but it is not being discovered, you can manually add the listener to the Environment by using the Edit (pencil) button next to the list of Listeners:

listeners_manual.png

Retry the VDB Provision

After confirming that the listener is present, you may retry the Provision operation.

The Provision operation should no longer report an "internal error" once the above steps have been followed.

If deleting VDBs from earlier, failed Provision operations, it may be necessary to use the "Force Delete" option. Please only use this option if the VDB deletion fails without it.

Additional Information

Dynamic Data Platform releases 5.2.3.0 and later provide improved handling for this situation, and provisioning will not immediately fail if a listener is not known to the Delphix Engine.

However, it is still essential for a local listener to be running, or attempts to Snapshot the VDB will fail, and Provisioning operations will report partial failure.