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

Instance number of errors captured in Oracle DB

SA-10483

Summary



Errors observed in Oracle DB logs.

ORA-00001: unique constraint (FP_OWNER.PR_SYS_LOCKS_PK) violated insert into pr_sys_locks ( 418,742
ORA-00001: unique constraint (FP_OWNER.PR4_LOG_RULE_USAGE_PK) violated insert into pr4_log_rule_usage ( 80,565


Error Messages



ERR_MSG ERR_CAUSE TALLY
------------------------------------------------------------------------ -------------------------------- -------
ORA-00001: unique constraint (FP_OWNER.PR_SYS_LOCKS_PK) violated insert into pr_sys_locks ( 418,742
ORA-00001: unique constraint (FP_OWNER.PR4_LOG_RULE_USAGE_PK) violated insert into pr4_log_rule_usage ( 80,565
ORA-00001: unique constraint (FP_OWNER.PC_ASSIGN_WORKLIST_PK) violated insert into pc_assign_worklist ( 7,681
ORA-00001: unique constraint (FP_OWNER.COMPLAINTS_WORK_PK) violated insert into complaints_work ( 4,873
ORA-00001: unique constraint (FP_OWNER.PC_INDEX_WORKPARTY_PK) violated insert into pc_index_workparty ( 484
ORA-00001: unique constraint (FP_OWNER.PR4_RULE_SYSGEN_PK) violated insert into pr4_rule_sysgen ( 179
ORA-00001: unique constraint (FP_OWNER.PC_ASSIGN_WORKBASKET_PK) violated insert into pc_assign_workbasket ( 143
ORA-00001: unique constraint (FP_OWNER.PC_HISTORY_WORK_PK) violated insert into pc_history_work ( 42
ORA-00001: unique constraint (FP_OWNER.PR_OPERATORS_PK) violated insert into pr_operators ( 37


Steps to Reproduce



There is no specific use case to reproduce this issue.

Resolution



During the design of database access techniques for the PRPC, an in-memory item had been updated and needed to be written to the PegaRULES database.
One standard technique for this situation would be to Select the row from the database and use the resulting SQL code to determine if an Insert or an Update needed to be done.
However, to minimize database access where possible, a different technique was chosen: Try to Insert the row and if the Insert fails due to a duplicate key condition, then issue an Update for the existing row.
This second technique leads to only one SQL statement being issued for every case where the Insert succeeds, reducing the required SQL statement processing by some, often significant, percent.

These failed Insert attempts are handled programmatically in the PRPC code that manages the database. They are not given back to the application. And normally, they do not produce an exception on the logs.
In this case, the log has the logging level set to DEBUG. If the logging level is returned to a higher level, then this error would not be displayed.

Published June 26, 2015 - Updated October 8, 2020

Was this useful?

0% 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