mirror of
https://github.com/moodle/moodle.git
synced 2025-04-01 06:22:35 +02:00
Based on work by Tim Lock <tim.lock@blackboard.com> While upgrading to Moodle 2.8 or above it is possible for it to fail if the site has multiple graded attempts for a user without an associated submission record. This caused the upgrade to violate the databases unique key rules. This same issue could apply to a backup that was created of an assignment that had this issue, when it is restored into Moodle 2.8 or later. This change adds the attempt number from the grade table into the query that is inserting the new submission record (thanks to Tim). It also moves the insert query before the latest flag is set on submission records to ensure that only one has it, without this it is possible that multiple submission records would be marked as the latest after an upgrade or restore.