My Journey to the cloud…

In pursuit of excellence….


ORA-00001: unique constraint (APPLSYS.AD_SNAPSHOT_FILES_U2) violated

Today while cloning a DEV instance, I got below error while running adadmin utilitu to update the snapshot information

AD Administration error:
adusnapUpdateGlobalView(): Error while executing statement

AD Administration error:
ORA-00001: unique constraint (APPLSYS.AD_SNAPSHOT_FILES_U2) violated
ORA-06512: at “APPS.AD_FILE_UTIL”, line 2398
ORA-06512: at line 3

AD Administration error:
adusnapStoreInDB(): Error calling adusnapUpdateGlobalView()

Failed to store APPL_TOP Snapshot to tables
adusnapMaintainSnapshot() : Error calling adusnapUpdateCurrentView()
Error calling adusnapMaintainSnapshot
 

Fix applied to resolve the issue
Ran below 2 SQLs in the cloned instance using APPS user

  1. select distinct(snapshot_id) from ad_snapshot_files
  2. select distinct(snapshot_id) from AD_SNAPSHOT_BUGFIXES

And looked for any value with ‘minus’ sign. You need to remvoe/delete the record with “minus” sign. (Dont DELETE the other entry). I used below DELETE statements to delete the duplicate (with minus sign) record

  1. delete from ad_snapshot_files where snapshot_id=<value_with_minus_sign>
  2. delete from AD_SNAPSHOT_BUGFIXES where snapshot_id=-<value_with_minus_sign>

If the offending records are not deleted from both the tables above, adadmin will error out again. This happened with me. I first removed only from ad_snapshot_files table and adadmin errored out again.

Restarted the adamdin utility and continued with the previous session. All went fine.

-Anand



Leave a comment

About Me

I’m a Hands-On Technical & Entrprise Solutions Architect based out of Houston, TX. I have been working on Oracle ERP, Oracle Database and Cloud technologies for over 20 years and still going strong for learning new things.

You can connect me on Linkedin and also reach out to me

I am certified for 8x AWS, OCP (Oracle Certified Professionals), PMP, ITTL and 6 Sigma.

Disclaimer

This is a personal blog. Any views or opinions represented in this blog are personal and belong solely to the blog owner and do not represent those of people, institutions or organizations that the owner may or may not be associated with in professional or personal capacity, unless explicitly stated.
All content provided on this blog is for informational purposes only. The owner of this blog makes no representations as to the accuracy or completeness of any information on this site or found by following any link on this site.

The owner will not be liable for any errors or omissions in this information nor for the availability of this information. The owner will not be liable for any losses, injuries, or damages from the display or use of this information. Any script available on the blog post MUST be tested before they are run against Production environment.

Newsletter