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

It's VERY low performance of assign grading

    XMLWordPrintable

Details

    • MOODLE_26_STABLE
    • MOODLE_25_STABLE, MOODLE_26_STABLE
    • MDL-43721-master
    • Hide
      1. Create a course with 1000 students
      2. Enable enablegroupmembersonly experimental setting
      3. Use auto create groups to create 5 groups in a grouping
      4. Remove 4 of the groups from the grouping
      5. Create an assignment, with the grouping set to this new grouping and available for group members only checked.
      6. View the assignment summary and grading page.
      7. Verify they load pretty quick (< 3 secs) and only show about 1/5 of the students from the course.
      8. Edit the assignment settings. Uncheck the "available for group members only" setting
      9. View the assignment summary and grading page.
      10. Verify they load pretty quick (< 3 secs) and show all of the students from the course.
      Show
      Create a course with 1000 students Enable enablegroupmembersonly experimental setting Use auto create groups to create 5 groups in a grouping Remove 4 of the groups from the grouping Create an assignment, with the grouping set to this new grouping and available for group members only checked. View the assignment summary and grading page. Verify they load pretty quick (< 3 secs) and only show about 1/5 of the students from the course. Edit the assignment settings. Uncheck the "available for group members only" setting View the assignment summary and grading page. Verify they load pretty quick (< 3 secs) and show all of the students from the course.

    Description

      If there are 600 students in a course,when a teacher open a assign grading page url(like mod/assign/view.php?id=333&action=grading),he must waiting 20 seconds at least.
      envionment:

      1.600+ students in a course.
      2. rowsperpage: 50 or 100
      3.CPU on server masterfrequency: 2.0 G

      I traced the code,it shows the most time spent is on the line 1142 ( $this->build_table() ) in /lib/tablelib.php.

      so i wonder if it is possible to move this action on the side of browser via YUI? if the server side(PHP) only read the data from DB,and passing the meta data to the client,i think it will improve performance much more.

      Attachments

        Issue Links

          Activity

            People

              damyon Damyon Wiese
              bobcoc Shuming Liu
              Frédéric Massart Frédéric Massart
              Sam Hemelryk Sam Hemelryk
              Marina Glancy Marina Glancy
              Adrian Greeve, Jake Dallimore, Mathew May, Mihail Geshoski, Peter Dias, Sujith Haridasan
              Votes:
              13 Vote for this issue
              Watchers:
              23 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                12/May/14