When using automated backups, when a course backup fails, for example through it being overly large, subsequent course backups all fail, regardless of their content.
Currently, this appears to affect Moodle 2.5 and 2.4, but not the current master (pre-2.6).
Replication steps:
- Set time limit in your php.ini something very large like a day.
- Log in as admin
- Ensure there are multiple courses created on your site.
- Navigate to a course in the middle (not the first or last)
- Add large files to that course so that it contains at least 6GB of media content spread over multiple activities.
- Set the following site configuration settings...
- backup_auto_active - manual
- backup_auto_storage - specified directory
- backup_auto_destination - path to some writeable dir
- Run the script php admin/cli/automated_backup.php
Expected result: Backup of the large course should fail, but others should succeed.
Actual result: Backup of the large course fails, but so do courses that are backed up following it. They fail quickly.
Looking at the results of the automated backup...
- In the temp folder, folders are created for subsequent courses, but no content is added to them.
- The log of the course backup contains little data and ends abruptly with an exception.
[17/10/2013 11:31:49 PM] [info] instantiating backup controller fce438d11f81798ed74c7369b0a08294
[17/10/2013 11:31:49 PM] [debug] setting controller status to 100
[17/10/2013 11:31:49 PM] [debug] loading controller plan
[17/10/2013 11:31:49 PM] [debug] setting controller status to 300
[17/10/2013 11:31:49 PM] [debug] applying plan defaults
[17/10/2013 11:31:49 PM] [debug] setting controller status to 400
[17/10/2013 11:31:49 PM] [info] checking plan security
[17/10/2013 11:31:49 PM] [debug] setting controller status to 700
[17/10/2013 11:31:49 PM] [debug] saving controller to db
[17/10/2013 11:31:49 PM] [debug] calculating controller checksum 759ed72c7ceeb724a2d28bfc85903b6c
[17/10/2013 11:31:49 PM] [debug] loading controller from db
[17/10/2013 11:31:49 PM] [debug] setting controller status to 700
[17/10/2013 11:31:49 PM] [debug] saving controller to db
[17/10/2013 11:31:49 PM] [debug] calculating controller checksum 0a8a3b98cebaf467af8fc6c6710650db
[17/10/2013 11:31:49 PM] [debug] loading controller from db
[17/10/2013 11:31:49 PM] [debug] setting controller status to 800
[17/10/2013 11:31:49 PM] [error] backup_auto_failed_on_course 24 Integration (MySQL) 103
[17/10/2013 11:31:49 PM] [error] Exception: ddltablealreadyexists backup_ids_temp
[17/10/2013 11:31:49 PM] [debug] Debug:
- Discovered while testing
-
MDL-42427 undefined var $sqlwhere when running automated backups
-
- Closed
-
- duplicates
-
MDL-38734 Automated backup failure causing all courses to fail
-
- Closed
-
- Testing discovered
-
MDL-37877 Over-large backups fail transparently, then do not get deleted next time, so space fills up
-
- Closed
-