Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-53667

Extremely poor client side performance on large learning plan page

XMLWordPrintable

    • MOODLE_31_STABLE
    • MOODLE_31_STABLE
    • MDL-53667-master
    • Hide
      1. Load a plan and a template with 1000 competencies and make sure that it is dramatically faster than without the patch.
      2. On those pages, perform an action that will refresh the page using JS + Template.
        • Make sure that you can see a dramatic improvement as compared to the version without a patch
      3. Do an exploratory test to ensure that strings are always translated.

      Use those to create a framework with hundreds of competencies

      Show
      Load a plan and a template with 1000 competencies and make sure that it is dramatically faster than without the patch. On those pages, perform an action that will refresh the page using JS + Template. Make sure that you can see a dramatic improvement as compared to the version without a patch Do an exploratory test to ensure that strings are always translated. Use those to create a framework with hundreds of competencies https://github.com/damyon/moodle-tool_lpimportau http://www.australiancurriculum.edu.au/technical/download You may need to temporarily increase the maximum depth of competencies in their framework (get_taxonomies_max_level) Make sure this was merged: https://github.com/damyon/moodle-tool_lpimportau/pull/1/files (or use the branch 'subsystem' from Fred's fork)

      On page with large datasets I have noticed that the page takes an incredible time to load. 25 seconds spent making javascript work at 100% CPU on my mac desktop on the prototype site.

      Some of these issues can be solved by paging and so on, but I think some analysis/fixes of the underlying causes should be done and have benefits elsewhere - espsecially if this is going to be a common pattern of development.

      Steps to reproduce:

      • Login as student
      • Visit 'my learning plans' dashboard block
      • Click on large learning plan

      Expected results:

      • The page renders instantly (no user-notiable lag)

      Actual results:

      • The page takes about 25 seconds to render - the time is spent in javascript, using 100% CPU time of my 2.6Ghz Core i7

      Here is a screencast of me carrying this out with the Safari timeline browser in view to see where the time is being spent

            fred Frédéric Massart
            poltawski Dan Poltawski
            Mark Nelson Mark Nelson
            David Monllaó David Monllaó
            cameron1729 cameron1729
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated:
              Resolved:

                Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.