Clarity

  • 1.  BPM-0522: Internal Process Engine Error. Contact your site administrator (Error executing action)

    Posted Nov 04, 2015 07:01 AM

    Hi All,

     

    One of the process(change request approval process) is getting failed with below error:

    BPM-0522: Internal Process Engine Error. Contact your site administrator (Error executing action)

     

    When we click on show details of this failure we have below error message:

     

    com.niku.bpm.BpmException: com.niku.union.odf.exception.ODFException: Error locking attributes for change instance with PK: 5454021

      at com.niku.bpm.services.oi.odf.BpmObjectInstanceImpl.lockAttribute(BpmObjectInstanceImpl.java:234)

      at com.niku.bpm.services.oi.odf.BpmOperationImpl.lockOrUnlockAttributes(BpmOperationImpl.java:513)

      at com.niku.bpm.services.oi.odf.BpmOperationImpl.executeSpecialOperation(BpmOperationImpl.java:333)

      at com.niku.bpm.services.oi.odf.BpmOperationImpl.execute(BpmOperationImpl.java:446)

      at com.niku.bpm.services.ExecuteSystemAction.execute(ExecuteSystemAction.java:128)

      at com.niku.bpm.services.ProcessEngine.executeStepAction(ProcessEngine.java:149)

      at com.niku.bpm.engine.rules.ActionExecutionPipeline.processActions(ActionExecutionPipeline.java:141)

      at com.niku.bpm.engine.rules.ActionExecutionPipeline.execute(ActionExecutionPipeline.java:71)

      at com.niku.bpm.engine.rules.Pipeline.run(Pipeline.java:280)

    Caused by: com.niku.union.odf.exception.ODFException: Error locking attributes for change instance with PK: 5454021

      at com.niku.odf.object.ObjectInstanceImpl.lockAttributes(ObjectInstanceImpl.java:1653)

      at com.niku.odf.object.ObjectInstanceImpl.lockAttribute(ObjectInstanceImpl.java:1507)

      at com.niku.bpm.services.oi.odf.BpmObjectInstanceImpl.lockAttribute(BpmObjectInstanceImpl.java:230)

      ... 8 more

    Caused by: com.niku.union.persistence.PersistenceException:

    SQL error code: 1

    Error message: [CA Clarity][Oracle JDBC Driver][Oracle]ORA-00001: unique constraint (CLAR_OWNER.ODF_LOCKED_ATTRIBUTES_U1) violated

     

    When we retry this process, it went through successfully. Could you please help me how can we avoid/resolve these kind of process failures. Thanks.



  • 2.  Re: BPM-0522: Internal Process Engine Error. Contact your site administrator (Error executing action)

    Posted Nov 04, 2015 08:29 AM

    Similar issue discussed here -

     

    Locking Project Status Report Object Instances; table ODF_LOCKED_ATTRIB

    https://communities.ca.com/message/15228673#15228673

     

    NJ



  • 3.  Re: BPM-0522: Internal Process Engine Error. Contact your site administrator (Error executing action)

    Posted Nov 04, 2015 10:19 AM

    An issue like that in the other thread would be my first suspicion - what was happening there is a direct SQL query against the database to insert the records, and one that made the assumption it could simply use the current max(id) from the odf_locked_attributes table and added to it the current row number of the query... very bad idea.

     

    I believe for this particular instance there is a support ticket opened?  Otherwise it is coincidence that I was discussing this matter with a colleague of mine that is working it yesterday.



  • 4.  Re: BPM-0522: Internal Process Engine Error. Contact your site administrator (Error executing action)

    Posted Nov 04, 2015 10:29 AM

    Actually might be different issues/customers unless you changed anything in the error message contents as I just looked at the other issue and some of the identifiers were different.

     

    In any case I just queried that system and found that it does indeed have some badly-formed GEL scripts that are performing direct inserts into ODF_LOCKED_ATTRIBUTES (and not just doing them, but doing them badly).

     

    They could be identified by running the following query:

     

    select id, script_text from cmn_custom_scripts where script_text like '%ODF_LOCKED_ATTRIBUTES%' or script_text like '%odf_locked_attributes%'

     

    Pulled out two gel scripts for me, both doing the 'select max(id) + some_value' pattern for generating a new ID value.  Can you run the query on your own system (assuming it is different and On Premise) and see what you get?  If it's an On Demand environment and you have an issue number, please let me know what it is.  Thanks.



  • 5.  Re: BPM-0522: Internal Process Engine Error. Contact your site administrator (Error executing action)

    Posted Nov 04, 2015 10:29 AM

    Hi Nick,

     

    We didn't open any CA case yet. We have a plan to open case for this issue. Thank you.