From 1b55bdb64413426e3cb35b52202275e86f1d03d9 Mon Sep 17 00:00:00 2001 From: Tony Levi Date: Wed, 27 Mar 2013 11:21:36 +1030 Subject: [PATCH] MDL-38734: Automated backup failure causing all course to fail Conflicts: backup/moodle2/backup_stepslib.php --- backup/moodle2/backup_stepslib.php | 1 + backup/util/dbops/backup_controller_dbops.class.php | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/backup/moodle2/backup_stepslib.php b/backup/moodle2/backup_stepslib.php index 6dbe0731701..efaba1bf607 100644 --- a/backup/moodle2/backup_stepslib.php +++ b/backup/moodle2/backup_stepslib.php @@ -39,6 +39,7 @@ class create_and_clean_temp_stuff extends backup_execution_step { backup_helper::check_and_create_backup_dir($this->get_backupid());// Create backup temp dir backup_helper::clear_backup_dir($this->get_backupid(), $progress); // Empty temp dir, just in case backup_helper::delete_old_backup_dirs(time() - (4 * 60 * 60), $progress); // Delete > 4 hours temp dirs + backup_controller_dbops::drop_backup_ids_temp_table($this->get_backupid()); // Drop ids temp table backup_controller_dbops::create_backup_ids_temp_table($this->get_backupid()); // Create ids temp table $progress->end_progress(); } diff --git a/backup/util/dbops/backup_controller_dbops.class.php b/backup/util/dbops/backup_controller_dbops.class.php index cb4577c80dc..6d066b48408 100644 --- a/backup/util/dbops/backup_controller_dbops.class.php +++ b/backup/util/dbops/backup_controller_dbops.class.php @@ -160,8 +160,10 @@ abstract class backup_controller_dbops extends backup_dbops { $dbman = $DB->get_manager(); // We are going to use database_manager services $targettablename = 'backup_ids_temp'; - $table = new xmldb_table($targettablename); - $dbman->drop_table($table); // And drop it + if ($dbman->table_exists($targettablename)) { + $table = new xmldb_table($targettablename); + $dbman->drop_table($table); // And drop it + } } /**