Remove stupid errback and raise proper conflict exception

This commit is contained in:
David Stainton 2015-08-26 22:04:49 +02:00
parent 24ec381dda
commit dfafd0e29c
1 changed files with 2 additions and 4 deletions

View File

@ -534,7 +534,7 @@ class Downloader(QueueMixin):
d2 = defer.succeed(res) d2 = defer.succeed(res)
d2.addCallback(lambda result: self._write_downloaded_file(name, result, self._local_path_u)) d2.addCallback(lambda result: self._write_downloaded_file(name, result, self._local_path_u))
d2.addCallback(do_update_db) d2.addCallback(do_update_db)
d2.addErrback(lambda x: do_update_db(x, is_conflicted=True)) # XXX handle failure here with addErrback...
self._count('objects_downloaded') self._count('objects_downloaded')
return d2 return d2
def failed(f): def failed(f):
@ -573,14 +573,12 @@ class Downloader(QueueMixin):
cls._rename_conflicted_file(path, replacement_path) cls._rename_conflicted_file(path, replacement_path)
else: else:
try: try:
print "-------- here's the conflict replace_file: path %s, replacement_path %s, backup_path %s" % (path, replacement_path, backup_path)
fileutil.replace_file(path, replacement_path, backup_path) fileutil.replace_file(path, replacement_path, backup_path)
except fileutil.ConflictError: except fileutil.ConflictError:
is_conflict = True is_conflict = True
cls._rename_conflicted_file(path, replacement_path) cls._rename_conflicted_file(path, replacement_path)
if is_conflict: if is_conflict:
raise(Exception("Conflict detected...")) raise ConflictError("Conflict detected...")
@classmethod @classmethod
def _rename_conflicted_file(self, path, replacement_path): def _rename_conflicted_file(self, path, replacement_path):