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

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.9.8
    • 1.9.9
    • Gradebook
    • None
    • MOODLE_19_STABLE
    • MOODLE_19_STABLE

    Description

      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.

      Attachments

        Issue Links

          Activity

            People

              timhunt Tim Hunt
              timhunt Tim Hunt
              Nobody Nobody
              Adrian Greeve, Ilya Tregubov, Kevin Percy, Mathew May, Mihail Geshoski, Shamim Rezaie
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                8/Jun/10