Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-44681

"Commit failed, rollback previously requested by nested transaction" Error when using Automatic Parent transitions

    XMLWordPrintable

Details

    Description

      NOTE: This bug report is for JIRA Server. Using JIRA Cloud? See the corresponding bug report.

      Summary

      On JIRA 7 when using the jira-misc-workflow-extensions 'Transition Parent issue', some transitions will fail if the parent transition cannot be completed

      Environment

      JIRA 7
      Plugin: JIRA Misc Workflow Extensions

      Steps to Reproduce

      1. Create a workflow with the following post function: On Open to In Progress: "Transition Parent with ID X" (transition parent issue from open to in progress for example)
      2. Create a Task and put it to the 'In Progress' Status
      3. Create a subtask and transition it from Open to In Progress (the transition where you've configured the post function in step 1)

      Expected Results

      In JIRA 6.X the Sub Task transitions normally, an error will be logged but the transition completes.

      Actual Results

      In JIRA 7, the Parent Task can't be transition using the ID because that transition only applies to the Open status.
      Since the Parent Task can't be transitioned, the Sub Task now also fails to transition.

      2015-08-04 10:31:09,435 ajp-nio-127.0.0.104-8009-exec-177 ERROR n06963 631x33611x2 27g572 160.67.51.136,131.103.27.33 /secure/WorkflowUIDispatcher.jspa [c.a.jira.workflow.OSWorkflowManager] Caught exception while attempting to perform action 4 from workflow 111781 on issue 'EX-1'
      @4000000055c078571a3be394 com.opensymphony.workflow.InvalidActionException: Action 4 is invalid
      @4000000055c078571a3be394       at com.opensymphony.workflow.AbstractWorkflow.doAction(AbstractWorkflow.java:559)
      @4000000055c078571a3c0aa4       at com.atlassian.jira.workflow.OSWorkflowManager.doWorkflowActionInsideTxn(OSWorkflowManager.java:995)
      @4000000055c078571a3c0e8c       at com.atlassian.jira.workflow.OSWorkflowManager.doWorkflowAction(OSWorkflowManager.java:947)
      @4000000055c078571a3c0e8c       at com.atlassian.jira.workflow.WorkflowTransitionUtilImpl.progress(WorkflowTransitionUtilImpl.java:417)
      @4000000055c078571a3c1274       at com.innovalog.jmwe.plugins.functions.TransitionParentIssueFunction.executeFunction(TransitionParentIssueFunction.java:78)
      @4000000055c078571a3c1a44       at com.innovalog.jmwe.plugins.functions.AbstractPreserveChangesPostFunction.execute(AbstractPreserveChangesPostFunction.java:123)
      @4000000055c078571a3c1a44       at com.opensymphony.workflow.AbstractWorkflow.executeFunction(AbstractWorkflow.java:1050)
      @4000000055c078571a3c29e4       at com.opensymphony.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkflow.java:1446)
      @4000000055c078571a3c29e4       at com.opensymphony.workflow.AbstractWorkflow.doAction(AbstractWorkflow.java:564)
      @4000000055c078571a3c2dcc       at com.atlassian.jira.workflow.OSWorkflowManager.doWorkflowActionInsideTxn(OSWorkflowManager.java:995)
      @4000000055c078571a3c31b4       at com.atlassian.jira.workflow.OSWorkflowManager.doWorkflowAction(OSWorkflowManager.java:947)
      @4000000055c078571a3c359c       at com.atlassian.jira.bc.issue.DefaultIssueService.transition(DefaultIssueService.java:500)
      @4000000055c078571a3c3984       at com.atlassian.jira.web.action.workflow.SimpleWorkflowAction.doExecute(SimpleWorkflowAction.java:32)
      @4000000055c078571a3c3984       ... 1 filtered
      @4000000055c078571a3c3d6c       at com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.java:67)
      @4000000055c078571a3c4154       ... 7 filtered
      @4000000055c078571a3c4154       at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
      @4000000055c078571a3c453c       ... 50 filtered
      ...
      @4000000055c078572c0d90a4 2015-08-04 10:31:09,729 ajp-nio-127.0.0.104-8009-exec-177 ERROR n06963 631x33611x2 27g572 160.67.51.136,131.103.27.33 /secure/WorkflowUIDispatcher.jspa [c.a.jira.transaction.TransactionSupportImpl] Unable to commit transaction : Commit failed, rollback previously requested by nested transaction.
      @4000000055c078572c0da044 org.ofbiz.core.entity.GenericTransactionException: Commit failed, rollback previously requested by nested transaction.
      @4000000055c078572c0da42c       at org.ofbiz.core.entity.TransactionUtil.commitLocalTransaction(TransactionUtil.java:342)
      @4000000055c078572c0dc754       at com.atlassian.core.ofbiz.util.CoreTransactionUtil.commit(CoreTransactionUtil.java:46)
      @4000000055c078572c0dcb3c       at com.atlassian.jira.transaction.TransactionSupportImpl$TransactionImpl.commit(TransactionSupportImpl.java:94)
      @4000000055c078572c0dd30c       at com.atlassian.jira.workflow.OSWorkflowManager.doWorkflowActionInsideTxn(OSWorkflowManager.java:1012)
      @4000000055c078572c0dd6f4       at com.atlassian.jira.workflow.OSWorkflowManager.doWorkflowAction(OSWorkflowManager.java:947)
      @4000000055c078572c0df634       at com.atlassian.jira.bc.issue.DefaultIssueService.transition(DefaultIssueService.java:500)
      @4000000055c078572c0dfa1c       at com.atlassian.jira.web.action.workflow.SimpleWorkflowAction.doExecute(SimpleWorkflowAction.java:32)
      @4000000055c078572c0e0da4       ... 1 filtered
      @4000000055c078572c0e118c       at com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.java:67)
      @4000000055c078572c0e1574       ... 7 filtered
      @4000000055c078572c0e1574       at javax.servlet.http.HttpServlet
      

      Notes

      This behaviour has changed from JIRA 6 to JIRA 7, it will affect all customers using this Post Function.

      Workaround provided by David from Innovalog

      Use transition Names instead of Transition IDs when specifying the Transition to execute on the Parent (or Linked) Issue. When you use transition names, if the specified transition is not applicable for the current status of the parent (or linked) issue, a WARN will be logged but the current transition (on the subtask) will complete successfully.

      A fix will be applied shortly to JMWE to provide the same behavior when specifying transition IDs.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              imaduro Ivan Maduro (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              38 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: