Details

    • Type: Task Task
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.5.2
    • Component/s: Performance
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Similar issues:
      KULRICE-5057improved user experience after clicking a workflow action
      KULRICE-5101Improve messaging for simultaneous workflow actions
      KULRICE-12626Improvements on binding/method security
      KULRICE-12283Fix issues with the workflow document actions service move method
      KULRICE-3643Make private methods in document-related classes protected to improve overridability
      KULRICE-6745Document the Data Dictionary Validation improvements
      KULRICE-11851DocumentPresentationControllerBase should consult isValidAction to filter workflow actions
      KULRICE-7714Performance improvements in regards to workflow data access
      KULRICE-12170Improve the text of Action List email notifications
      KULRICE-3570Look into suggestions for document instantiation improvements
    • Epic Link:
    • Rice Module:
      KEW
    • KRAD Feature Area:
      KIM Integration
    • Application Requirement:
      KC
    • Sprint:
      Middleware 2.5.2 Sprint 3
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Code Review Status:
      Not Required
    • Include in Release Notes?:
      Yes
    • Story Points:
      1

      Description

      Calling save on workflowdocument is around 552 ms:

      org.kuali.rice.krad.workflow.service.impl.WorkflowDocumentServiceImpl.save(WorkflowDocument, String) WorkflowDocumentServiceImpl.java 552 0

      Of this, the majority of the time is spent just checking the action is valid:

      WorkflowDocumentServiceImpl.java:251 org.kuali.rice.kew.impl.document.WorkflowDocumentImpl.isValidAction(ActionType) 437 0

      This calls:

      WorkflowDocumentActionsServiceImpl.java:340 org.kuali.rice.kew.actions.ActionRegistryImpl.getValidActions(PrincipalContract, DocumentRouteHeaderValue) 437 0

      This calls several event classes to validation action rules. The most expensive among these is SuperUserDisapproveEvent:

      ActionRegistryImpl.java:146 org.kuali.rice.kew.actions.SuperUserDisapproveEvent.validateActionRules(List) 265 0

      Instead of building a list of all valid actions and then checking whether the requested action is one of those, we could just check if the requested action is valid

        Issue Links

          Activity

          There are no comments yet on this issue.

            People

            • Assignee:
              Jerry Neal (Inactive)
              Reporter:
              Jerry Neal (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Agile

                  Structure Helper Panel