Skip to main content
Delphix

Resolving ORA-01418: Specified Index Does Not Exist (KBA8781)

 

KBA

KBA# 8781

 

At a Glance  

Description: This KBA describes masking an Oracle table and how to resolve ORA-01418: specified index does not exist
Affects versions: This issue is a database issue and affects all Masking Versions.

In version 6.0.11 the Masking Connector for Oracle was updated with Driver Plugin SDK.
ORA Error:
ORA-01418: specified index does not exist
Masking Step: This issue can appear in different steps depending on the version and if manually created.

From 6.0.11 the error shows up in the Driver Plugin log entry:
Error dropping index



All versions up to and including 6.0.10
Execute_Drop_Index.0


If using manual Post SQL scripts:
Execute_Prescript.0
Root Cause: The likely root cause here is that an Index was identified but the privileges are not sufficient to drop the index.
Solution: To resolve this issue:
  1. Verify the details related to the Index.
  2. Ensure correct privileges. 
  3. Check if another script/process has dropped the index.
Related KBAs: This issue relates to:
  • KBA1817 - ORA-00001 Unique Constraint Violated 
  • KBA8757 - ORA-01452 cannot CREATE UNIQUE INDEX duplicate keys found
  • KBA4524 - ORA-02299 cannot validate (x) - duplicate keys found

Applicable Delphix Versions

Click here to view the versions of the Delphix engine to which this article applies
Major Release All Sub Releases
6.0 6.0.0.0, 6.0.1.0, 6.0.1.1, 6.0.2.0, 6.0.2.1, 6.0.3.0, 6.0.3.1, 6.0.4.0, 6.0.4.1, 6.0.4.2, 6.0.5.0, 6.0.6.0, 6.0.6.1, 6.0.7.0, 6.0.8.0, 6.0.8.1, 6.0.9.0, 6.0.10.0, 6.0.10.1, 6.0.11.0, 6.0.12.0, 6.0.12.1

5.3

5.3.0.0, 5.3.0.1, 5.3.0.2, 5.3.0.3, 5.3.1.0, 5.3.1.1, 5.3.1.2, 5.3.2.0, 5.3.3.0, 5.3.3.1, 5.3.4.0, 5.3.5.0, 5.3.6.0, 5.3.7.0, 5.3.7.1, 5.3.8.0, 5.3.8.1, 5.3.9.0

5.2

5.2.2.0, 5.2.2.1, 5.2.3.0, 5.2.4.0, 5.2.5.0, 5.2.5.1, 5.2.6.0, 5.2.6.1

5.1

5.1.0.0, 5.1.1.0, 5.1.2.0, 5.1.3.0, 5.1.4.0, 5.1.5.0, 5.1.5.1, 5.1.6.0, 5.1.7.0, 5.1.8.0, 5.1.8.1, 5.1.9.0, 5.1.10.0

5.0

5.0.1.0, 5.0.1.1, 5.0.2.0, 5.0.2.1, 5.0.2.2, 5.0.2.3, 5.0.3.0, 5.0.3.1, 5.0.4.0, 5.0.4.1, 5.0.5.0, 5.0.5.1, 5.0.5.2, 5.0.5.3, 5.0.5.4

ORA-01418: specified index does not exist

This article details the root cause and a solution to ORA-01418: specified index does not exist. This error is related to ORA-00001.

What caused this error?

There are two possible causes of this error:

  1. The user who is connected to the database is not the owner of the Index or does not have privileges to drop it.
  2. The index has already been dropped (by the engine).  
     

Example

Explore this issue using a similar example as in the related KBAs. The error happens in the Pre Masking Steps and is caused by the Index not being present or the user having insufficient privileges.

Steps and explanation

The error happens after all data has been masked and the Post Masking Steps start.

  • Pre Masking Steps: 
    • Drop Indexes - Operation fails. 
       

Root causes - explanation:

  • The job detected that there is an index on a masked column, and the job prepares to drop the index.
  • When the 'drop index' command is executed the following error is returned: 
    • 'ORA-01418: specified index does not exist'

 

 

 

Note

Note:

 This issue CANNOT be resolved by Disable Constraints only. To resolve this issue you also need to have an algorithm that maps 1:1, is unique and, the data in the column needs to be unique. 

 


Example - Index does not exist

# Pre Masking Steps
----------------------------------------------------------------
 DROP UNIQUE INDEX  < Error: 
                      ORA-01418: specified index does not exist
# Masking Operation
 Job will terminate

Error message 

The error message is:

ORA-01418: specified index does not exist

Error in the logs

6.0.11 onwards

The error happens in the Oracle Plugin.

Example from info.log: 

0000-00-00 00:00:00 SEVERE  com.delphix.masking.api.plugin.utils.DriverSupportLogService error - [JOB_ID_2_3] - Error dropping index [xyz]: ORA-01418: specified index does not exist

6.0.10 and earlier

The error message can differ. It is usually in the step: 

Execute_Drop_Index.0

Full example from job log (and info.log): 

[JOB_ID_xx_yy] 0000/00/00 00:00:00 - Execute_Drop_Index.0 - ORA-01418: specified index does not exist

Also possible

If the CREATE UNIQUE INDEX was executed in the Post SQL Script, then the error is in step:

Execute_Postscript.0

Full example from job log (and info.log): 

[JOB_ID_xx_yy] 0000/00/00 00:00:00 - Execute_Postscript.0 - ORA-01418: specified index does not exist

Solution

To resolve this: 

  1. Verify the details related to the Index.
  2. Ensure correct privileges. 
  3. Check if another script/process has dropped the index.