get rid of already existing invalid chunks_healthy metadata, see #3218

This commit is contained in:
Thomas Waldmann 2017-10-29 11:25:11 +01:00
parent 7211bb2211
commit 90186ad12b
1 changed files with 6 additions and 1 deletions

View File

@ -1507,7 +1507,12 @@ class ArchiveChecker:
has_chunks_healthy = 'chunks_healthy' in item
chunks_current = item.chunks
chunks_healthy = item.chunks_healthy if has_chunks_healthy else chunks_current
assert len(chunks_current) == len(chunks_healthy)
if has_chunks_healthy and len(chunks_current) != len(chunks_healthy):
# should never happen, but there was issue #3218.
logger.warning('{}: Invalid chunks_healthy metadata removed!'.format(item.path))
del item.chunks_healthy
has_chunks_healthy = False
chunks_healthy = chunks_current
for chunk_current, chunk_healthy in zip(chunks_current, chunks_healthy):
chunk_id, size, csize = chunk_healthy
if chunk_id not in self.chunks: