Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Unable to deploy hotfixes due to ORA-00001 error

SA-70270

Summary



ORA-00001 error occurs and unable to deploy Hotfixes.


Error Messages



Could not save rollback information for an installed hotfix: ORA-00001: unique constraint (<userschema>.PR_DATA_RESTORE_PK) violated

DatabaseException caused by prior exception: java.sql.BatchUpdateException: ORA-00001: unique constraint (<userschema>.PR_DATA_RESTORE_PK) violated

| SQL Code: 1 | SQL State: 23000

DatabaseException caused by prior exception: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (<Userschema>.PR_DATA_RESTORE_PK) violated




Steps to Reproduce



Install a hotfix using the Hotfix Manager.


Root Cause



A third-party product issue.

The stored sppc_data_uniqueid, deployed to the Oracle database server had the PL/SQL code to update the PYLASTRESERVEID. During the last Hotfix installation, a unique ID was returned by this stored procedure to the application transaction which was committed to the pr_data_products table. The UPDATE statement issued within the stored procedure failed to write to the pc_data_uniqueid table due to issues with the Oracle database server.


Resolution



Perform the following local-change:
  1. Backup the table, pc_data_uniqueid.
  2. Run the below query to verify the pyLastReservedID for the HOTFIXORDER table entry.

    select pyLastReservedID from pegadata.pc_data_uniqueid where pxInsName='!HOTFIXORDER-'

    Note the pyLastReservedID.

    For exmaplepyLastReservedID is 94

     
  3. Run the below query and note the highest Hotfix order number from the dbo.pr_data_products table.

    select pyUniqueID from pegarules.pr_data_products;
     
    For example, the result of the is HOTFIXORDER-94

     
  4. Update the table with pc_data_uniqueid as below:

    UPDATE pegadata.pc_data_uniqueid
    SET pyLastReservedID='96'                 // (increase the no. by 2 i.e 94+2)
    WHERE pxInsName='!HOTFIXORDER-';

     
  5. Install the hotfix.

Published April 4, 2019 - Updated October 8, 2020

Was this useful?

100% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us