Clarity

Expand all | Collapse all

An error occurred when closing the action item

Jump to Best Answer
  • 1.  An error occurred when closing the action item

    Posted 10-09-2017 03:43 AM

    Hi Team,

    An error occurred in the project's process

    Messages:

    BPM-0544: An error occurred when closing the action item. Contact your site administrator.

    Expection:

    com.niku.union.persistence.PersistenceDeadlockException: 

    SQL error code: 1205

    Error message: [CA Clarity][SQLServer JDBC Driver][SQLServer]Transaction (Process ID 72) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.

    Executed:

     UPDATE CAL_ACTION_ITEM_ASSIGNEES  SET STATUS_CODE = ?, LAST_UPDATED_DATE=?, LAST_UPDATED_BY=?  WHERE CAL_ACTION_ITEM_ID = ? AND STATUS_CODE != 'CAL_CLOSED' 

    Derived from statement:

    <?xml version="1.0" encoding="UTF-8"?>

    <statement location="actionItemListPMD.xml" id="calendar.modifyActionItemAllStatuses_stmt" sortColumnPath="/data/header/sortInfo/@sortColumn" sortDirectionPath="/data/header/sortInfo/@sortDirection" slicePath="/data/header/pagination/sliceInfo/@slice" sliceSizePath="/data/header/pagination/sliceInfo/@sliceSize" inputSource="none" xmlns="http://schemas.niku.com/2002/pmd">

      <sql dbVendor="all">

        <text>

          UPDATE CAL_ACTION_ITEM_ASSIGNEES  SET STATUS_CODE = ?, LAST_UPDATED_DATE=?, LAST_UPDATED_BY=?  WHERE CAL_ACTION_ITEM_ID = ? AND STATUS_CODE != 'CAL_CLOSED'

      </text>

        <param name="status" path="masterStatus/@value" type="string" direction="IN" expressionListDelimiter=","/>

        <param replace="timestamp" direction="IN" expressionListDelimiter=","/>

        <param replace="userId" direction="IN" expressionListDelimiter=","/>

        <param name="id" path="actionItemId/@value" type="long" direction="IN" expressionListDelimiter=","/>

      </sql>

    </statement>

     

    Referenced by:

    <?xml version="1.0" encoding="UTF-8"?>

    <statementRef id="calendar.modifyActionItemAllStatuses_stmt" inputSource="map" sortColumnPath="/data/header/sortInfo/@sortColumn" sortDirectionPath="/data/header/sortInfo/@sortDirection" slicePath="/data/header/pagination/sliceInfo/@slice" sliceSizePath="/data/header/pagination/sliceInfo/@sliceSize" xmlns="http://schemas.niku.com/2002/pmd"/>

     

    Using input: 

    {id=5220702, status=CAL_CLOSED}

     

    at com.niku.union.persistence.PersistenceController.createException(PersistenceController.java:2070)

    at com.niku.union.persistence.PersistenceController.handleSQLException(PersistenceController.java:2189)

    at com.niku.union.persistence.PersistenceController.processSql(PersistenceController.java:2823)

    at com.niku.union.persistence.PersistenceController.processStatement(PersistenceController.java:869)

    at com.niku.union.persistence.PersistenceController.processStatements(PersistenceController.java:769)

    at com.niku.union.persistence.PersistenceController.doProcessRequest(PersistenceController.java:577)

    at com.niku.union.persistence.PersistenceController.processRequest(PersistenceController.java:307)

    at com.niku.calendar.service.ActionItemService.updateActionItemStatus(ActionItemService.java:460)

    at com.niku.bpm.services.ExecuteManualAction.closeActionItem(ExecuteManualAction.java:833)

    at com.niku.bpm.services.ProcessEngine.stepComplete(ProcessEngine.java:336)

    at com.niku.bpm.engine.rules.PostConditionTransitionPipeline.setStepInstanceAsDone(PostConditionTransitionPipeline.java:441)

    at com.niku.bpm.engine.rules.PostConditionTransitionPipeline.transitionStep(PostConditionTransitionPipeline.java:414)

    at com.niku.bpm.engine.rules.PostConditionTransitionPipeline.processWaitingForTransitionSteps(PostConditionTransitionPipeline.java:297)

    at com.niku.bpm.engine.rules.PostConditionTransitionPipeline.execute(PostConditionTransitionPipeline.java:103)

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

    Caused by: java.sql.SQLTransactionRollbackException: [CA Clarity][SQLServer JDBC Driver][SQLServer]Transaction (Process ID 72) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transactio

     

    Does anyone have any Suggestions?



  • 2.  Re: An error occurred when closing the action item

    Posted 10-09-2017 03:55 AM

    There is a dead lock based on message below, so we need to ensure what all tables are impacted which caused this and it could be due to jobs running in parallel too.

     

    Error message: [CA Clarity][SQLServer JDBC Driver][SQLServer]Transaction (Process ID 72) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.

     

    Regards
    Suman Pramanik 



  • 3.  Re: An error occurred when closing the action item

    Posted 10-09-2017 04:33 AM

    What are the solutions or avoidance measures?

    Thank you for your reply.

     

    Regards

    Sender



  • 4.  Re: An error occurred when closing the action item

    Posted 10-09-2017 06:23 AM

    To provide the same we need to know what all job ran during the time of deadlock, or DB should tell us which table caused dead lock. Avoidance is to ensure jobs are set incompatible as suggested CA PPM Tech Tip: How should the main PPM jobs be scheduled? 

     

    And look at the system in details to find out where the concurrency is generated. 

     

    Regards

    Suman Pramanik 



  • 5.  Re: An error occurred when closing the action item

    Posted 10-09-2017 10:22 AM

    I check the running job, but there is not parallel job when system update action item status to closed. By the way, I find the user who owned the action item, deal with the two action items same time nearly.I don't know if it is the reason



  • 6.  Re: An error occurred when closing the action item
    Best Answer

    Posted 10-10-2017 05:47 AM

    As per the error messages, I believe this is happening in a SQL Server Database. In MS SQL Server, how do I determine what database processes are blocking others. 

    During periods of high load, SQL Server can experience an excessive locking behavior. This results in slow system response in Clarity and some database processes will appear to be stalled.

     

    I hope this will be helpful. 

    In MS SQL Server, how do I determine what database processes are blocking others. 

     

    Thanks,

    Abhisek Dhar