Merge pull request #3445 from ThomasWaldmann/check-hangs-fix

fix for borg check --repair malfunction, #3444 (1.1-maint)
This commit is contained in:
TW 2017-12-16 21:59:44 +01:00 committed by GitHub
commit 696f2a2d25
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 2 deletions

View File

@ -1457,7 +1457,7 @@ class ArchiveChecker:
""" """
item_keys = frozenset(key.encode() for key in self.manifest.item_keys) item_keys = frozenset(key.encode() for key in self.manifest.item_keys)
required_item_keys = frozenset(key.encode() for key in REQUIRED_ITEM_KEYS) required_item_keys = frozenset(key.encode() for key in REQUIRED_ITEM_KEYS)
unpacker = RobustUnpacker(lambda item: isinstance(item, dict) and 'path' in item, unpacker = RobustUnpacker(lambda item: isinstance(item, StableDict) and b'path' in item,
self.manifest.item_keys) self.manifest.item_keys)
_state = 0 _state = 0

View File

@ -3006,7 +3006,7 @@ class ArchiverCheckTestCase(ArchiverTestCaseBase):
def test_missing_archive_item_chunk(self): def test_missing_archive_item_chunk(self):
archive, repository = self.open_archive('archive1') archive, repository = self.open_archive('archive1')
with repository: with repository:
repository.delete(archive.metadata.items[-5]) repository.delete(archive.metadata.items[0])
repository.commit() repository.commit()
self.cmd('check', self.repository_location, exit_code=1) self.cmd('check', self.repository_location, exit_code=1)
self.cmd('check', '--repair', self.repository_location, exit_code=0) self.cmd('check', '--repair', self.repository_location, exit_code=0)