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

View Workflow page load slow when there are many workflows

    XMLWordPrintable

Details

    Description

      Summary

      It can take a really long time to when trying to open the Workflow page at /secure/admin/workflows/ListWorkflows.jspa. Having a total of 3500 workflows including draft workflows can take up to 7 minutes to load the page.

      Environment

      • 3500+ workflows

      Steps to Reproduce

      1. Create 3500 workflows using Data generator for Jira
      2. Open /secure/admin/workflows/ListWorkflows.jspa

      Expected Results

      The Workflow page load fast

      Actual Results

      The Workflow page took a long time to load

      Thread dumps will show traces of Jira trying to convertXMLtoWorkflowDescriptor

      "https-jsse-nio-8443-exec-37 uri:/jira/secure/admin/views/workflow/listworkflows.jsp username:XXXXXXX" #4430 daemon prio=5 os_prio=0 tid=0x00007fc0100ec800 nid=0x683b runnable [0x00007fbe2041e000]
         java.lang.Thread.State: RUNNABLE
      	at java.lang.Throwable.fillInStackTrace(Native Method)
      	at java.lang.Throwable.fillInStackTrace(Throwable.java:783)
      	- locked <0x00007fcad02a1b70> (a java.lang.NumberFormatException)
      	.....
      	at com.opensymphony.workflow.loader.WorkflowLoader.load(WorkflowLoader.java:79)
      	at com.opensymphony.workflow.loader.WorkflowLoader.load(WorkflowLoader.java:47)
      	at com.atlassian.jira.workflow.WorkflowUtil.convertXMLtoWorkflowDescriptor(WorkflowUtil.java:198)
      	at com.atlassian.jira.workflow.CachingDraftWorkflowStore.convertXMLtoWorkflowDescriptor(CachingDraftWorkflowStore.java:104)
      	at com.atlassian.jira.workflow.CachingDraftWorkflowStore.getJiraDraftWorkflow(CachingDraftWorkflowStore.java:113)
      	at com.atlassian.jira.workflow.CachingDraftWorkflowStore.getDraftWorkflow(CachingDraftWorkflowStore.java:52)
      	at com.atlassian.jira.workflow.OSWorkflowManager.getDraftWorkflow(OSWorkflowManager.java:227)
      	at com.atlassian.jira.workflow.OSWorkflowManager.getWorkflowsIncludingDrafts(OSWorkflowManager.java:136)
      	at com.atlassian.jira.web.action.admin.workflow.ListWorkflows.getDraftWorkflows(ListWorkflows.java:207)
      	at com.atlassian.jira.web.action.admin.workflow.ListWorkflows.getDraftFor(ListWorkflows.java:141)
      	at com.atlassian.jira.web.action.admin.workflow.ListWorkflows.getLastModifiedDateForDraft(ListWorkflows.java:150)
      	.....
      	at jsp.secure.admin.views.workflow.listworkflows_jsp._jspx_meth_ww_005fproperty_005f5(listworkflows_jsp.java:1874)
      	at jsp.secure.admin.views.workflow.listworkflows_jsp._jspx_meth_ww_005fparam_005f1(listworkflows_jsp.java:1846)
      	at jsp.secure.admin.views.workflow.listworkflows_jsp._jspx_meth_ww_005ftext_005f18(listworkflows_jsp.java:1755)
      	at jsp.secure.admin.views.workflow.listworkflows_jsp._jspx_meth_ww_005fif_005f6(listworkflows_jsp.java:1719)
      	at jsp.secure.admin.views.workflow.listworkflows_jsp._jspService(listworkflows_jsp.java:349)
      	......

      Notes

      getDraftWorkflows method is not loading only draft workflows but loading all the workflows including drafts.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              znoorsazali Zul NS [Atlassian]
              Votes:
              24 Vote for this issue
              Watchers:
              28 Start watching this issue

              Dates

                Created:
                Updated: