Moodle
  1. Moodle
  2. MDL-27395

Cannot restore Moodle 2.02 backups containing gradebook categories

    Details

    • Database:
      PostgreSQL
    • Testing Instructions:
      Hide

      Under MOODLE_20_STABLE:

      0) Enable debugging
      1) Restore the attached course backup-moodle2-course-test-20110505-1313-nu.mbz
      2) TEST: The process ends without error (especially the "found more than one record! one).
      3) TEST: Go to the gradebook and check that the "test" and "cat" categories are there, with the "cat" enclosing 1 assignment, and the test enclosing all 3 assignments and course total.

      Show
      Under MOODLE_20_STABLE: 0) Enable debugging 1) Restore the attached course backup-moodle2-course-test-20110505-1313-nu.mbz 2) TEST: The process ends without error (especially the "found more than one record! one). 3) TEST: Go to the gradebook and check that the "test" and "cat" categories are there, with the "cat" enclosing 1 assignment, and the test enclosing all 3 assignments and course total.
    • Affected Branches:
      MOODLE_20_STABLE
    • Fixed Branches:
      MOODLE_20_STABLE
    • Pull from Repository:
    • Rank:
      17082

      Description

      2.0.2+ (Build 20110427)
      PHP 5.2.17.0
      postgres 8.4.5

      Clean system--no sites on it: developer debugging messages turned on.

      1. Create a course site.
      2. Add two assignments.
      3. Add one gradebook category and move one of the assignments into the category.
      4. Back up the course without user data (include activities, blocks, filters). (See the file attached)
      5. Restore the course site

      Two error messages.

      Error: mdb->get_record() found more than one record!
      line 1277 of /lib/dml/moodle_database.php: call to debugging()
      line 1237 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql()
      line 1217 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select()
      line 240 of /backup/moodle2/restore_stepslib.php: call to moodle_database->get_record()
      line 131 of /backup/util/plan/restore_structure_step.class.php: call to restore_gradebook_structure_step->process_grade_category()
      line 103 of /backup/util/helper/restore_structure_parser_processor.class.php: call to restore_structure_step->process()
      line 106 of /backup/util/xml/parser/processors/grouped_parser_processor.class.php: call to restore_structure_parser_processor->dispatch_chunk()
      line 91 of /backup/util/helper/restore_structure_parser_processor.class.php: call to grouped_parser_processor->postprocess_chunk()
      line 132 of /backup/util/xml/parser/processors/simplified_parser_processor.class.php: call to restore_structure_parser_processor->postprocess_chunk()
      line 92 of /backup/util/xml/parser/processors/progressive_parser_processor.class.php: call to simplified_parser_processor->process_chunk()
      line 169 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser_processor->receive_chunk()
      line 253 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->publish()
      line ? of unknownfile: call to progressive_parser->end_tag()
      line 158 of /backup/util/xml/parser/progressive_parser.class.php: call to xml_parse()
      line 137 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->parse()
      line 105 of /backup/util/plan/restore_structure_step.class.php: call to progressive_parser->process()
      line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute()
      line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute()
      line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute()
      line 299 of /backup/controller/restore_controller.class.php: call to restore_plan->execute()
      line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan()
      line 39 of /backup/restore.php: call to restore_ui->execute()
      Error: mdb->get_record() found more than one record!
      line 1277 of /lib/dml/moodle_database.php: call to debugging()
      line 1237 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql()
      line 1217 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select()
      line 178 of /backup/moodle2/restore_stepslib.php: call to moodle_database->get_record()
      line 131 of /backup/util/plan/restore_structure_step.class.php: call to restore_gradebook_structure_step->process_grade_item()
      line 103 of /backup/util/helper/restore_structure_parser_processor.class.php: call to restore_structure_step->process()
      line 106 of /backup/util/xml/parser/processors/grouped_parser_processor.class.php: call to restore_structure_parser_processor->dispatch_chunk()
      line 91 of /backup/util/helper/restore_structure_parser_processor.class.php: call to grouped_parser_processor->postprocess_chunk()
      line 132 of /backup/util/xml/parser/processors/simplified_parser_processor.class.php: call to restore_structure_parser_processor->postprocess_chunk()
      line 92 of /backup/util/xml/parser/processors/progressive_parser_processor.class.php: call to simplified_parser_processor->process_chunk()
      line 169 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser_processor->receive_chunk()
      line 253 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->publish()
      line ? of unknownfile: call to progressive_parser->end_tag()
      line 158 of /backup/util/xml/parser/progressive_parser.class.php: call to xml_parse()
      line 137 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->parse()
      line 105 of /backup/util/plan/restore_structure_step.class.php: call to progressive_parser->process()
      line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute()
      line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute()
      line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute()
      line 299 of /backup/controller/restore_controller.class.php: call to restore_plan->execute()
      line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan()
      line 39 of /backup/restore.php: call to restore_ui->execute()

      Plus a generic error

      Found more than one record in fetch() !

      Where the problem lives: the gradebook.xml file in the backup that causes this problem has the course entry appear as the second item in the grade_categories node. The corresponding entry in the grade_items also appears in the second position.
      And this sequencing of entries seems to be where the error comes from. The child categories are being read and processed before the parent categories-and as part of the process the as-yet-unread parent categories are generated only to draw the "mdb>get_record() found more than one record!" entry when they are finally parsed from the gradebook.xml file.

      If the gradebook.xml file is manually rewritten to move the parent grade_category and grade_item entries to a position above the child categories that reference them, then the backup file restores without errors. See the "fixed" file, below.

      The scope of this problem is huge: it affects every course site in which a gradebook has a category. And the result of the error message is serious: course sites that draw this error message on restore/import processes can no longer be reset, cannot be deleted, and cannot have their gradebooks seen or altered.

      The original backup file and manually fixed backup file are attached.

      1. MDL-28152.patch
        0.8 kB
        Troy Williams

        Issue Links

          Activity

          Hide
          Peter Friesen added a comment -

          This goes deeper than the 2.0.2+ (Build 20110427)--it also appears on our 2.02+ (Build 20110323), again running PHP 5.2.17.0 and Postgres 8.4.5. --Peter

          Show
          Peter Friesen added a comment - This goes deeper than the 2.0.2+ (Build 20110427)--it also appears on our 2.02+ (Build 20110323), again running PHP 5.2.17.0 and Postgres 8.4.5. --Peter
          Hide
          Peter Friesen added a comment -

          I've adjusted the priority of this to major.

          Show
          Peter Friesen added a comment - I've adjusted the priority of this to major.
          Hide
          Peter Friesen added a comment -

          We've since been able to narrow this down to a database issue: we run into the issue consistently with postGres, but cannot duplicate it on a linux/mysql system or on a windows/ms sql system. We've moved everything to mysql on our production box in the interim.

          Show
          Peter Friesen added a comment - We've since been able to narrow this down to a database issue: we run into the issue consistently with postGres, but cannot duplicate it on a linux/mysql system or on a windows/ms sql system. We've moved everything to mysql on our production box in the interim.
          Hide
          Troy Williams added a comment - - edited

          I don't know if same, related or different issue. Anyway restoring a course from different instance the course total duplicates in grade_items table:

          id | courseid | categoryid | itemtype | timecreated | timemodified
          ----------------------------------------+-------------
          52 | 4 | | course | 1264133225 | 1308797728
          21 | 4 | | course | 1308862379 | 1308862379

          Output from restore process:

          Warning: Invalid argument supplied for foreach() in /home/troyw/public_html/uow-gradebook/backup/util/plan/restore_structure_step.class.php on line 384

          Warning: Invalid argument supplied for foreach() in /home/troyw/public_html/uow-gradebook/backup/util/plan/restore_structure_step.class.php on line 384
          Error: mdb->get_record() found more than one record!

          line 1277 of /lib/dml/moodle_database.php: call to debugging()
          line 1237 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql()
          line 1217 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select()
          line 240 of /backup/moodle2/restore_stepslib.php: call to moodle_database->get_record()
          line 131 of /backup/util/plan/restore_structure_step.class.php: call to restore_gradebook_structure_step->process_grade_category()
          line 103 of /backup/util/helper/restore_structure_parser_processor.class.php: call to restore_structure_step->process()
          line 106 of /backup/util/xml/parser/processors/grouped_parser_processor.class.php: call to restore_structure_parser_processor->dispatch_chunk()
          line 91 of /backup/util/helper/restore_structure_parser_processor.class.php: call to grouped_parser_processor->postprocess_chunk()
          line 132 of /backup/util/xml/parser/processors/simplified_parser_processor.class.php: call to restore_structure_parser_processor->postprocess_chunk()
          line 92 of /backup/util/xml/parser/processors/progressive_parser_processor.class.php: call to simplified_parser_processor->process_chunk()
          line 169 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser_processor->receive_chunk()
          line 253 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->publish()
          line ? of unknownfile: call to progressive_parser->end_tag()
          line 158 of /backup/util/xml/parser/progressive_parser.class.php: call to xml_parse()
          line 137 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->parse()
          line 105 of /backup/util/plan/restore_structure_step.class.php: call to progressive_parser->process()
          line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute()
          line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute()
          line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute()
          line 299 of /backup/controller/restore_controller.class.php: call to restore_plan->execute()
          line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan()
          line 39 of /backup/restore.php: call to restore_ui->execute()

          Error: mdb->get_record() found more than one record!

          line 1277 of /lib/dml/moodle_database.php: call to debugging()
          line 1237 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql()
          line 1217 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select()
          line 178 of /backup/moodle2/restore_stepslib.php: call to moodle_database->get_record()
          line 131 of /backup/util/plan/restore_structure_step.class.php: call to restore_gradebook_structure_step->process_grade_item()
          line 103 of /backup/util/helper/restore_structure_parser_processor.class.php: call to restore_structure_step->process()
          line 106 of /backup/util/xml/parser/processors/grouped_parser_processor.class.php: call to restore_structure_parser_processor->dispatch_chunk()
          line 91 of /backup/util/helper/restore_structure_parser_processor.class.php: call to grouped_parser_processor->postprocess_chunk()
          line 132 of /backup/util/xml/parser/processors/simplified_parser_processor.class.php: call to restore_structure_parser_processor->postprocess_chunk()
          line 92 of /backup/util/xml/parser/processors/progressive_parser_processor.class.php: call to simplified_parser_processor->process_chunk()
          line 169 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser_processor->receive_chunk()
          line 212 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->publish()
          line ? of unknownfile: call to progressive_parser->start_tag()
          line 158 of /backup/util/xml/parser/progressive_parser.class.php: call to xml_parse()
          line 137 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->parse()
          line 105 of /backup/util/plan/restore_structure_step.class.php: call to progressive_parser->process()
          line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute()
          line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute()
          line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute()
          line 299 of /backup/controller/restore_controller.class.php: call to restore_plan->execute()
          line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan()
          line 39 of /backup/restore.php: call to restore_ui->execute()

          Also opened up .mbz archive and was only one grade_category for the course which was was fullname of course.

          Both are Moodle 2.0.3 (Build: 20110505)

          Cheers

          Troy

          Show
          Troy Williams added a comment - - edited I don't know if same, related or different issue. Anyway restoring a course from different instance the course total duplicates in grade_items table: id | courseid | categoryid | itemtype | timecreated | timemodified --- -------- ---------- -------- ----------- + ------------- 52 | 4 | | course | 1264133225 | 1308797728 21 | 4 | | course | 1308862379 | 1308862379 Output from restore process: Warning: Invalid argument supplied for foreach() in /home/troyw/public_html/uow-gradebook/backup/util/plan/restore_structure_step.class.php on line 384 Warning: Invalid argument supplied for foreach() in /home/troyw/public_html/uow-gradebook/backup/util/plan/restore_structure_step.class.php on line 384 Error: mdb->get_record() found more than one record! line 1277 of /lib/dml/moodle_database.php: call to debugging() line 1237 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql() line 1217 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select() line 240 of /backup/moodle2/restore_stepslib.php: call to moodle_database->get_record() line 131 of /backup/util/plan/restore_structure_step.class.php: call to restore_gradebook_structure_step->process_grade_category() line 103 of /backup/util/helper/restore_structure_parser_processor.class.php: call to restore_structure_step->process() line 106 of /backup/util/xml/parser/processors/grouped_parser_processor.class.php: call to restore_structure_parser_processor->dispatch_chunk() line 91 of /backup/util/helper/restore_structure_parser_processor.class.php: call to grouped_parser_processor->postprocess_chunk() line 132 of /backup/util/xml/parser/processors/simplified_parser_processor.class.php: call to restore_structure_parser_processor->postprocess_chunk() line 92 of /backup/util/xml/parser/processors/progressive_parser_processor.class.php: call to simplified_parser_processor->process_chunk() line 169 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser_processor->receive_chunk() line 253 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->publish() line ? of unknownfile: call to progressive_parser->end_tag() line 158 of /backup/util/xml/parser/progressive_parser.class.php: call to xml_parse() line 137 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->parse() line 105 of /backup/util/plan/restore_structure_step.class.php: call to progressive_parser->process() line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute() line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute() line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute() line 299 of /backup/controller/restore_controller.class.php: call to restore_plan->execute() line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan() line 39 of /backup/restore.php: call to restore_ui->execute() Error: mdb->get_record() found more than one record! line 1277 of /lib/dml/moodle_database.php: call to debugging() line 1237 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql() line 1217 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select() line 178 of /backup/moodle2/restore_stepslib.php: call to moodle_database->get_record() line 131 of /backup/util/plan/restore_structure_step.class.php: call to restore_gradebook_structure_step->process_grade_item() line 103 of /backup/util/helper/restore_structure_parser_processor.class.php: call to restore_structure_step->process() line 106 of /backup/util/xml/parser/processors/grouped_parser_processor.class.php: call to restore_structure_parser_processor->dispatch_chunk() line 91 of /backup/util/helper/restore_structure_parser_processor.class.php: call to grouped_parser_processor->postprocess_chunk() line 132 of /backup/util/xml/parser/processors/simplified_parser_processor.class.php: call to restore_structure_parser_processor->postprocess_chunk() line 92 of /backup/util/xml/parser/processors/progressive_parser_processor.class.php: call to simplified_parser_processor->process_chunk() line 169 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser_processor->receive_chunk() line 212 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->publish() line ? of unknownfile: call to progressive_parser->start_tag() line 158 of /backup/util/xml/parser/progressive_parser.class.php: call to xml_parse() line 137 of /backup/util/xml/parser/progressive_parser.class.php: call to progressive_parser->parse() line 105 of /backup/util/plan/restore_structure_step.class.php: call to progressive_parser->process() line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute() line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute() line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute() line 299 of /backup/controller/restore_controller.class.php: call to restore_plan->execute() line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan() line 39 of /backup/restore.php: call to restore_ui->execute() Also opened up .mbz archive and was only one grade_category for the course which was was fullname of course. Both are Moodle 2.0.3 (Build: 20110505) Cheers Troy
          Hide
          Tim Lock added a comment -

          2.0.3 (Build: 20110505) is affected aswell.

          Show
          Tim Lock added a comment - 2.0.3 (Build: 20110505) is affected aswell.
          Hide
          Tony Levi added a comment -

          This is resolved in MDL-28152 as identified by a bisect, followed by cherry-pick to 20_STABLE

          commitish is 41f21f92cf682b145fbd74967eb73779507568ed

          apply to 20_STABLE to resolve this.

          Show
          Tony Levi added a comment - This is resolved in MDL-28152 as identified by a bisect, followed by cherry-pick to 20_STABLE commitish is 41f21f92cf682b145fbd74967eb73779507568ed apply to 20_STABLE to resolve this.
          Hide
          Troy Williams added a comment -

          I have cherry-picked commit from issue MDL-28152 and created a patch. Applied to:
          Moodle 2.0.4+ (Build: 20110803)
          psql (PostgreSQL) 9.0.4

          Tested against backup-moodle2-course-test-20110505-1313-nu.mbz and 1 of my own backups that had a heap of grade categories.

          Before applying this fix I couldn't even get into the gradebook for these restored courses. After applying fix every works as expected.

          Still getting these warnings with developer debug on however:
          Warning: Invalid argument supplied for foreach() in /home/troyw/public_html/sis/backup/util/plan/restore_structure_step.class.php on line 421

          Troy

          Show
          Troy Williams added a comment - I have cherry-picked commit from issue MDL-28152 and created a patch. Applied to: Moodle 2.0.4+ (Build: 20110803) psql (PostgreSQL) 9.0.4 Tested against backup-moodle2-course-test-20110505-1313-nu.mbz and 1 of my own backups that had a heap of grade categories. Before applying this fix I couldn't even get into the gradebook for these restored courses. After applying fix every works as expected. Still getting these warnings with developer debug on however: Warning: Invalid argument supplied for foreach() in /home/troyw/public_html/sis/backup/util/plan/restore_structure_step.class.php on line 421 Troy
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Grrr, my fault. I missed completely the backport of MDL-28152 to 20_STABLE assuming (incorrectly) that it only was affecting to restore operations from 1.9.x course backups.

          I know that 20_STABLE support ended 3 weeks ago, but I'm proposing to make here one exception because the fix is trivial, it affects potentially every restore operation and was caused by one (my) mistake on integration.

          Of course, upgrading to recenter Moodle version is always recommendable, not only because of this issue but others, you know, moodlers.

          I'm sold to whatever you, dear integrators, decide, my opinion is +1, obviously.

          Sincerely apologizes, ciao

          Show
          Eloy Lafuente (stronk7) added a comment - Grrr, my fault. I missed completely the backport of MDL-28152 to 20_STABLE assuming (incorrectly) that it only was affecting to restore operations from 1.9.x course backups. I know that 20_STABLE support ended 3 weeks ago, but I'm proposing to make here one exception because the fix is trivial, it affects potentially every restore operation and was caused by one (my) mistake on integration. Of course, upgrading to recenter Moodle version is always recommendable, not only because of this issue but others, you know, moodlers. I'm sold to whatever you, dear integrators, decide, my opinion is +1, obviously. Sincerely apologizes, ciao
          Hide
          Sam Hemelryk added a comment -

          Pretty small, very safe change. Certainly given that this just being a missed backport from an earlier bug I think justifies backporting now.
          It has been integrated.

          Show
          Sam Hemelryk added a comment - Pretty small, very safe change. Certainly given that this just being a missed backport from an earlier bug I think justifies backporting now. It has been integrated.
          Hide
          Jason Fowler added a comment -

          Restoring the original backup (the one without fixed in the filename) generates this error:

          Backup is missing XML file: /var/www/repos/istable20/data/temp/backup/727f29f8a0654158e568ee859ee6b164/files.xml

          More information about this error

          Stack trace:
          line 80 of /backup/util/plan/restore_structure_step.class.php: restore_step_exception thrown
          line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute()
          line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute()
          line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute()
          line 310 of /backup/controller/restore_controller.class.php: call to restore_plan->execute()
          line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan()
          line 39 of /backup/restore.php: call to restore_ui->execute()

          Show
          Jason Fowler added a comment - Restoring the original backup (the one without fixed in the filename) generates this error: Backup is missing XML file: /var/www/repos/istable20/data/temp/backup/727f29f8a0654158e568ee859ee6b164/files.xml More information about this error Stack trace: line 80 of /backup/util/plan/restore_structure_step.class.php: restore_step_exception thrown line 153 of /backup/util/plan/base_task.class.php: call to restore_structure_step->execute() line 148 of /backup/util/plan/base_plan.class.php: call to base_task->execute() line 157 of /backup/util/plan/restore_plan.class.php: call to base_plan->execute() line 310 of /backup/controller/restore_controller.class.php: call to restore_plan->execute() line 144 of /backup/util/ui/restore_ui.class.php: call to restore_controller->execute_plan() line 39 of /backup/restore.php: call to restore_ui->execute()
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Ho Jason, have you checked if the "files.xml" is there, in your moodledata/temp/...?

          Such files.xml exists since day 0 and, the mbz backup file contains it.

          Also I've restored that course here and it worked perfectly. So cannot imagine why you' re getting such error.

          Strange, very strange.

          Show
          Eloy Lafuente (stronk7) added a comment - Ho Jason, have you checked if the "files.xml" is there, in your moodledata/temp/...? Such files.xml exists since day 0 and, the mbz backup file contains it. Also I've restored that course here and it worked perfectly. So cannot imagine why you' re getting such error. Strange, very strange.
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Just for safety, I've repeated the test into a different environment and it has worked perfectly too. The attached (unfixed) course restores without any error and categories are shown as defined.

          Show
          Eloy Lafuente (stronk7) added a comment - Just for safety, I've repeated the test into a different environment and it has worked perfectly too. The attached (unfixed) course restores without any error and categories are shown as defined.
          Hide
          David Mudrak added a comment -

          I'm retesting this

          Show
          David Mudrak added a comment - I'm retesting this
          Hide
          David Mudrak added a comment -

          Tested, works as expected. I believe Jason had to accidentally press reload or back button or something like that.

          Show
          David Mudrak added a comment - Tested, works as expected. I believe Jason had to accidentally press reload or back button or something like that.
          Hide
          David Mudrak added a comment -

          Actually, the missed backport was my fault as it was me who reported that MDL-28152 did not affect native MBZ backups (created in 2.0). Anyway, I'm happy that Tony Levi found the solution (and wow - did bisect really find it? To be honest, I never believed it would be that useful. Thanks Tony!)

          Show
          David Mudrak added a comment - Actually, the missed backport was my fault as it was me who reported that MDL-28152 did not affect native MBZ backups (created in 2.0). Anyway, I'm happy that Tony Levi found the solution (and wow - did bisect really find it? To be honest, I never believed it would be that useful. Thanks Tony!)
          Hide
          Eloy Lafuente (stronk7) added a comment -

          Your nice code represents only 1/46 of the issues that have been sent upstream this week, so thanks, but not many.

          Nah, joking, many thanks! Closing this a fixed, ciao

          Show
          Eloy Lafuente (stronk7) added a comment - Your nice code represents only 1/46 of the issues that have been sent upstream this week, so thanks, but not many. Nah, joking, many thanks! Closing this a fixed, ciao

            People

            • Votes:
              30 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: