Support Article
DSM ISRuntimeException and ConstraintViolationException
SA-7982
Summary
User organization receives 200K+ account updates each night. We have file listeners that create System-Queue- records and queues each account update to be updated by background agents. During the processing of these queue items, 1 or more strategies are executed to determine a communication option for the account owner.
While running these account updates and strategies each night, we end up with a small number that become Broken-Process due to ISRuntimeExceptions. There is nothing in the queue record that describes what the issue is. Including log files from Interaction Services application and samples of the broken-queue records.
Error Messages
** Java Exception: java.lang.RuntimeException: java.lang.RuntimeException: com.pega.decision.is.ISRuntimeException: org.hibernate.exception.ConstraintViolationException: could not insert: [com.pega.decision.dedo.internal.is.persist.ResponseContext]
** Java Exception: java.lang.RuntimeException: java.lang.RuntimeException: com.pega.decision.is.ISRuntimeException
Steps to Reproduce
After the agents have completed processing all the queue items, check out the Broken Process view.
Root Cause
The data which is getting stored as the interaction result was not unique by account. In the files being processed, the "key" fields were seen in multiple accounts.
Resolution
Advised user to remove the custom logic causing this issue and they will add new code changes to handle this in a better fashion
Published January 31, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.