Details

    • Type: Improvement Improvement
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Complete
    • Affects Version/s: None
    • Fix Version/s: 2.3.1
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Similar issues:
      KULRICE-8797Reduce object creation in view lifecycle
      KULRICE-10547Component lifecycle processing task and execution context
      KULRICE-10539retrieveViaAjax delay lifecycle for components implementation
      KULRICE-10538retrieveViaAjax delay lifecycle analysis
      KULRICE-11298Investigate error with component lifecycle
      KULRICE-8798Look into multithreading during the view lifecycle
      KULRICE-7220Look into replacing component update process with full view lifecycle
      KULRICE-9794Reduce template invocations
      KULRICE-9433Reduce size of html response
      KULRICE-10438Analysis for delaying lifecycle row details component before it is needed
    • Epic Link:
    • Rice Module:
      KRAD
    • KRAD Feature Area:
      UIF MVC
    • Sprint:
      2.3.1 Sprint 2
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required

      Description

      The following method in the validator class makes multiple calls to getComponentsForLifecycle on the same object. Each call instantiates a large number of objects (due to the way that method is implemented). So minimizing the number of calls is very beneficial

      src/main/java/org/kuali/rice/krad/datadictionary/validator/Validator.java
      private void runValidationsOnLifecycle(Component component, ValidationTrace tracer)

      The below is a different implementation for that method which saves the result for each successive utilization.

      private void runValidationsOnLifecycle(Component component, ValidationTrace tracer) {
      List<Component> componentsForLifecycle = component.getComponentsForLifecycle();
      if (componentsForLifecycle == null)

      { return; }
      if (!doValidationOnUIFBean(component)) { return; }

      tracer.addBean(component);
      for (int j = 0; j < componentsForLifecycle.size(); j++) {
      Component temp = componentsForLifecycle.get(j);
      if (temp == null)

      { continue; }

      if (tracer.getValidationStage() == ValidationTrace.START_UP)

      { ExpressionUtils.populatePropertyExpressionsFromGraph(temp, false); }

      if (temp.isRender())

      { temp.completeValidation(tracer.getCopy()); runValidationsOnLifecycle(temp, tracer.getCopy()); }

      }
      }

        Issue Links

          Activity

          Matt Sargent made changes -
          Field Original Value New Value
          Documentation Review Status Pending Review [ 14643 ] Not Required [ 14642 ]
          Jerry Neal (Inactive) made changes -
          Fix Version/s 2.3 [ 16595 ]
          Jerry Neal (Inactive) made changes -
          Link This issue relates to KULRICE-6557 [ KULRICE-6557 ]
          Jessica Coltrin (Inactive) made changes -
          Fix Version/s 2.4 [ 16913 ]
          Fix Version/s 2.3 [ 16595 ]
          Jessica Coltrin (Inactive) made changes -
          Fix Version/s 2.4-backlog [ 16596 ]
          Fix Version/s 2.4 [ 16913 ]
          Jerry Neal (Inactive) made changes -
          Epic Link KULRICE-10089 [ 120211 ]
          Shem Patterson (Inactive) made changes -
          Workflow custom [ 163864 ] Copy of custom for rice [ 207798 ]
          Shem Patterson (Inactive) made changes -
          Workflow Copy of custom for rice [ 207798 ] custom [ 217546 ]
          Shem Patterson (Inactive) made changes -
          Workflow custom [ 217546 ] Rice Workflow [ 227294 ]
          Mark Fyffe (Inactive) made changes -
          Assignee Mark Fyffe [ mwfyffe ]
          Mark Fyffe (Inactive) made changes -
          Status Open [ 1 ] In Progress [ 3 ]
          Mark Fyffe (Inactive) made changes -
          Remaining Estimate 0 minutes [ 0 ]
          Time Spent 4 hours [ 14400 ]
          Worklog Id 87762 [ 87762 ]
          Mark Fyffe (Inactive) made changes -
          Status In Progress [ 3 ] Open [ 1 ]
          Jerry Neal (Inactive) made changes -
          Original Estimate 0 minutes [ 0 ]
          Fix Version/s 2.3.1 [ 17053 ]
          Fix Version/s 2.4-backlog [ 16596 ]
          Priority Minor [ 4 ] Major [ 3 ]
          Jerry Neal (Inactive) made changes -
          Sprint 2.3.1 Sprint 2 [ 64 ]
          Jerry Neal (Inactive) made changes -
          Rank Ranked higher
          Mark Fyffe (Inactive) made changes -
          Original Estimate 0 minutes [ 0 ] 1 day, 2 hours [ 36000 ]
          Remaining Estimate 0 minutes [ 0 ] 6 hours [ 21600 ]
          Mark Fyffe (Inactive) made changes -
          Summary Validator - reuse getComponentsForLifecycle Reduce object creation in component lifecycle
          Mark Fyffe (Inactive) made changes -
          Remaining Estimate 6 hours [ 21600 ] 4 hours [ 14400 ]
          Time Spent 4 hours [ 14400 ] 6 hours [ 21600 ]
          Worklog Id 88244 [ 88244 ]
          Mark Fyffe (Inactive) made changes -
          Worklog Id 88244 [ 88244 ]
          Mark Fyffe (Inactive) made changes -
          Remaining Estimate 4 hours [ 14400 ] 2 hours [ 7200 ]
          Time Spent 6 hours [ 21600 ] 1 day [ 28800 ]
          Worklog Id 88246 [ 88246 ]
          Mark Fyffe (Inactive) made changes -
          Status Open [ 1 ] In Progress [ 3 ]
          Mark Fyffe (Inactive) made changes -
          Attachment kulrice-8954-tx.patch [ 71570 ]
          Mark Fyffe (Inactive) made changes -
          Link This issue fixes KULRICE-10107 [ KULRICE-10107 ]
          Mark Fyffe (Inactive) made changes -
          Remaining Estimate 2 hours [ 7200 ] 1 hour [ 3600 ]
          Time Spent 1 day [ 28800 ] 1 day, 1 hour [ 32400 ]
          Worklog Id 88415 [ 88415 ]
          Mark Fyffe (Inactive) made changes -
          Link This issue is related to KULRICE-10532 [ KULRICE-10532 ]
          Mark Fyffe (Inactive) made changes -
          Remaining Estimate 1 hour [ 3600 ] 0 minutes [ 0 ]
          Time Spent 1 day, 1 hour [ 32400 ] 1 day, 3 hours [ 39600 ]
          Worklog Id 88453 [ 88453 ]
          Mark Fyffe (Inactive) made changes -
          Status In Progress [ 3 ] Resolved [ 5 ]
          Resolution Complete [ 6 ]
          Mark Fyffe (Inactive) made changes -
          Link This issue duplicates KULRICE-8797 [ KULRICE-8797 ]
          Mark Fyffe (Inactive) made changes -
          Link This issue relates to KULRICE-10679 [ KULRICE-10679 ]
          Jerry Neal (Inactive) made changes -
          Component/s Development [ 11244 ]
          Component/s User Experience (UX) [ 13465 ]
          Component/s Performance [ 13588 ]
          Jessica Coltrin (Inactive) made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              Mark Fyffe (Inactive)
              Reporter:
              Jeff Domeyer (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 1 day, 2 hours Original Estimate - 1 day, 2 hours
                1d 2h
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 day, 3 hours
                1d 3h

                  Agile

                    Structure Helper Panel