Merge "Catch exceptions from backup runner"

This commit is contained in:
Jenkins 2016-06-08 10:31:30 +00:00 committed by Gerrit Code Review
commit 5263c74a78

View File

@ -76,9 +76,9 @@ class BackupAgent(object):
**backup_state) **backup_state)
LOG.debug("Updated state for %s to %s.", backup_id, backup_state) LOG.debug("Updated state for %s to %s.", backup_id, backup_state)
with runner(filename=backup_id, extra_opts=extra_opts, try:
**parent_metadata) as bkup: with runner(filename=backup_id, extra_opts=extra_opts,
try: **parent_metadata) as bkup:
LOG.debug("Starting backup %s.", backup_id) LOG.debug("Starting backup %s.", backup_id)
meta = {} meta = {}
meta['datastore'] = backup_info['datastore'] meta['datastore'] = backup_info['datastore']
@ -110,18 +110,18 @@ class BackupAgent(object):
return meta return meta
except Exception: except Exception:
LOG.exception( LOG.exception(
_("Error saving backup: %(backup_id)s.") % backup_state) _("Error saving backup: %(backup_id)s.") % backup_state)
backup_state.update({'state': BackupState.FAILED}) backup_state.update({'state': BackupState.FAILED})
raise raise
finally: finally:
LOG.info(_("Completed backup %(backup_id)s.") % backup_state) LOG.info(_("Completed backup %(backup_id)s.") % backup_state)
conductor.update_backup(CONF.guest_id, conductor.update_backup(CONF.guest_id,
sent=timeutils.float_utcnow(), sent=timeutils.float_utcnow(),
**backup_state) **backup_state)
LOG.debug("Updated state for %s to %s.", LOG.debug("Updated state for %s to %s.",
backup_id, backup_state) backup_id, backup_state)
def execute_backup(self, context, backup_info, def execute_backup(self, context, backup_info,
runner=RUNNER, extra_opts=EXTRA_OPTS, runner=RUNNER, extra_opts=EXTRA_OPTS,