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

Broken caching in the grade item classes leads ot O(n) DB queries in the grader report

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • 1.9.9
    • 1.9.8
    • Gradebook
    • None
    • MOODLE_19_STABLE
    • MOODLE_19_STABLE

      I think the diff makes the problem clear.

      Index: lib/grade/grade_item.php
      @@ -871,7 +871,7 @@
            * @return object Grade_category
            */
           function load_item_category() {
      -        if (empty($this->category->id)) {
      +        if (empty($this->item_category->id)) {
                   $this->item_category = $this->get_item_category();
               }
               return $this->item_category;

      This was causing one DB query per category, per student, when showing the grader report, which is very, very bad.

      Andy, adding you as QA assignee, because I believe you are Mr Gradebook these days.

            timhunt Tim Hunt
            timhunt Tim Hunt
            Nobody Nobody (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:

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