Merge "Remove unnecessary "is not None" check"
This commit is contained in:
@@ -1012,12 +1012,12 @@ class DiskFile(object):
|
|||||||
|
|
||||||
:param data_file: full path of data file to quarantine
|
:param data_file: full path of data file to quarantine
|
||||||
:param msg: reason for quarantining to be included in the exception
|
:param msg: reason for quarantining to be included in the exception
|
||||||
:raises DiskFileQuarantined:
|
:returns: DiskFileQuarantined exception object
|
||||||
"""
|
"""
|
||||||
self._quarantined_dir = self._threadpool.run_in_thread(
|
self._quarantined_dir = self._threadpool.run_in_thread(
|
||||||
quarantine_renamer, self._device_path, data_file)
|
quarantine_renamer, self._device_path, data_file)
|
||||||
self._logger.increment('quarantines')
|
self._logger.increment('quarantines')
|
||||||
raise DiskFileQuarantined(msg)
|
return DiskFileQuarantined(msg)
|
||||||
|
|
||||||
def _get_ondisk_file(self):
|
def _get_ondisk_file(self):
|
||||||
"""
|
"""
|
||||||
@@ -1047,7 +1047,7 @@ class DiskFile(object):
|
|||||||
if err.errno == errno.ENOTDIR:
|
if err.errno == errno.ENOTDIR:
|
||||||
# If there's a file here instead of a directory, quarantine
|
# If there's a file here instead of a directory, quarantine
|
||||||
# it; something's gone wrong somewhere.
|
# it; something's gone wrong somewhere.
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
# hack: quarantine_renamer actually renames the directory
|
# hack: quarantine_renamer actually renames the directory
|
||||||
# enclosing the filename you give it, but here we just
|
# enclosing the filename you give it, but here we just
|
||||||
# want this one file and not its parent.
|
# want this one file and not its parent.
|
||||||
@@ -1118,7 +1118,7 @@ class DiskFile(object):
|
|||||||
hash_from_fs = os.path.basename(self._datadir)
|
hash_from_fs = os.path.basename(self._datadir)
|
||||||
hash_from_name = hash_path(self._name.lstrip('/'))
|
hash_from_name = hash_path(self._name.lstrip('/'))
|
||||||
if hash_from_fs != hash_from_name:
|
if hash_from_fs != hash_from_name:
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
data_file,
|
data_file,
|
||||||
"Hash of name in metadata does not match directory name")
|
"Hash of name in metadata does not match directory name")
|
||||||
|
|
||||||
@@ -1141,7 +1141,7 @@ class DiskFile(object):
|
|||||||
try:
|
try:
|
||||||
mname = self._metadata['name']
|
mname = self._metadata['name']
|
||||||
except KeyError:
|
except KeyError:
|
||||||
self._quarantine(data_file, "missing name metadata")
|
raise self._quarantine(data_file, "missing name metadata")
|
||||||
else:
|
else:
|
||||||
if mname != self._name:
|
if mname != self._name:
|
||||||
self._logger.error(
|
self._logger.error(
|
||||||
@@ -1157,7 +1157,7 @@ class DiskFile(object):
|
|||||||
except ValueError:
|
except ValueError:
|
||||||
# Quarantine, the x-delete-at key is present but not an
|
# Quarantine, the x-delete-at key is present but not an
|
||||||
# integer.
|
# integer.
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
data_file, "bad metadata x-delete-at value %s" % (
|
data_file, "bad metadata x-delete-at value %s" % (
|
||||||
self._metadata['X-Delete-At']))
|
self._metadata['X-Delete-At']))
|
||||||
else:
|
else:
|
||||||
@@ -1166,12 +1166,12 @@ class DiskFile(object):
|
|||||||
try:
|
try:
|
||||||
metadata_size = int(self._metadata['Content-Length'])
|
metadata_size = int(self._metadata['Content-Length'])
|
||||||
except KeyError:
|
except KeyError:
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
data_file, "missing content-length in metadata")
|
data_file, "missing content-length in metadata")
|
||||||
except ValueError:
|
except ValueError:
|
||||||
# Quarantine, the content-length key is present but not an
|
# Quarantine, the content-length key is present but not an
|
||||||
# integer.
|
# integer.
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
data_file, "bad metadata content-length value %s" % (
|
data_file, "bad metadata content-length value %s" % (
|
||||||
self._metadata['Content-Length']))
|
self._metadata['Content-Length']))
|
||||||
fd = fp.fileno()
|
fd = fp.fileno()
|
||||||
@@ -1179,11 +1179,11 @@ class DiskFile(object):
|
|||||||
statbuf = os.fstat(fd)
|
statbuf = os.fstat(fd)
|
||||||
except OSError as err:
|
except OSError as err:
|
||||||
# Quarantine, we can't successfully stat the file.
|
# Quarantine, we can't successfully stat the file.
|
||||||
self._quarantine(data_file, "not stat-able: %s" % err)
|
raise self._quarantine(data_file, "not stat-able: %s" % err)
|
||||||
else:
|
else:
|
||||||
obj_size = statbuf.st_size
|
obj_size = statbuf.st_size
|
||||||
if metadata_size is not None and obj_size != metadata_size:
|
if obj_size != metadata_size:
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
data_file, "metadata content-length %s does"
|
data_file, "metadata content-length %s does"
|
||||||
" not match actual object size %s" % (
|
" not match actual object size %s" % (
|
||||||
metadata_size, statbuf.st_size))
|
metadata_size, statbuf.st_size))
|
||||||
@@ -1196,8 +1196,9 @@ class DiskFile(object):
|
|||||||
try:
|
try:
|
||||||
return read_metadata(source)
|
return read_metadata(source)
|
||||||
except Exception as err:
|
except Exception as err:
|
||||||
self._quarantine(quarantine_filename,
|
raise self._quarantine(
|
||||||
"Exception reading metadata: %s" % err)
|
quarantine_filename,
|
||||||
|
"Exception reading metadata: %s" % err)
|
||||||
|
|
||||||
def _construct_from_data_file(self, data_file, meta_file):
|
def _construct_from_data_file(self, data_file, meta_file):
|
||||||
"""
|
"""
|
||||||
|
@@ -281,7 +281,7 @@ class DiskFile(object):
|
|||||||
try:
|
try:
|
||||||
mname = self._metadata['name']
|
mname = self._metadata['name']
|
||||||
except KeyError:
|
except KeyError:
|
||||||
self._quarantine(self._name, "missing name metadata")
|
raise self._quarantine(self._name, "missing name metadata")
|
||||||
else:
|
else:
|
||||||
if mname != self._name:
|
if mname != self._name:
|
||||||
raise DiskFileCollision('Client path does not match path '
|
raise DiskFileCollision('Client path does not match path '
|
||||||
@@ -293,7 +293,7 @@ class DiskFile(object):
|
|||||||
except ValueError:
|
except ValueError:
|
||||||
# Quarantine, the x-delete-at key is present but not an
|
# Quarantine, the x-delete-at key is present but not an
|
||||||
# integer.
|
# integer.
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
self._name, "bad metadata x-delete-at value %s" % (
|
self._name, "bad metadata x-delete-at value %s" % (
|
||||||
self._metadata['X-Delete-At']))
|
self._metadata['X-Delete-At']))
|
||||||
else:
|
else:
|
||||||
@@ -302,12 +302,12 @@ class DiskFile(object):
|
|||||||
try:
|
try:
|
||||||
metadata_size = int(self._metadata['Content-Length'])
|
metadata_size = int(self._metadata['Content-Length'])
|
||||||
except KeyError:
|
except KeyError:
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
self._name, "missing content-length in metadata")
|
self._name, "missing content-length in metadata")
|
||||||
except ValueError:
|
except ValueError:
|
||||||
# Quarantine, the content-length key is present but not an
|
# Quarantine, the content-length key is present but not an
|
||||||
# integer.
|
# integer.
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
self._name, "bad metadata content-length value %s" % (
|
self._name, "bad metadata content-length value %s" % (
|
||||||
self._metadata['Content-Length']))
|
self._metadata['Content-Length']))
|
||||||
try:
|
try:
|
||||||
@@ -316,9 +316,9 @@ class DiskFile(object):
|
|||||||
fp.seek(0, 0)
|
fp.seek(0, 0)
|
||||||
except OSError as err:
|
except OSError as err:
|
||||||
# Quarantine, we can't successfully stat the file.
|
# Quarantine, we can't successfully stat the file.
|
||||||
self._quarantine(self._name, "not stat-able: %s" % err)
|
raise self._quarantine(self._name, "not stat-able: %s" % err)
|
||||||
if obj_size != metadata_size:
|
if obj_size != metadata_size:
|
||||||
self._quarantine(
|
raise self._quarantine(
|
||||||
self._name, "metadata content-length %s does"
|
self._name, "metadata content-length %s does"
|
||||||
" not match actual object size %s" % (
|
" not match actual object size %s" % (
|
||||||
metadata_size, obj_size))
|
metadata_size, obj_size))
|
||||||
|
Reference in New Issue
Block a user