1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-25 09:19:31 +00:00

Merge pull request #5330 from ThomasWaldmann/better-error-msg-large-archive

prettier error message when archive gets too big, fixes #5307
This commit is contained in:
TW 2020-09-22 12:22:29 +02:00 committed by GitHub
commit 47446f2043
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -576,7 +576,15 @@ def save(self, name=None, comment=None, timestamp=None, stats=None, additional_m
metadata = ArchiveItem(metadata) metadata = ArchiveItem(metadata)
data = self.key.pack_and_authenticate_metadata(metadata.as_dict(), context=b'archive') data = self.key.pack_and_authenticate_metadata(metadata.as_dict(), context=b'archive')
self.id = self.key.id_hash(data) self.id = self.key.id_hash(data)
self.cache.add_chunk(self.id, data, self.stats) try:
self.cache.add_chunk(self.id, data, self.stats)
except IntegrityError as err:
err_msg = str(err)
# hack to avoid changing the RPC protocol by introducing new (more specific) exception class
if 'More than allowed put data' in err_msg:
raise Error('%s - archive too big (issue #1473)!' % err_msg)
else:
raise
while self.repository.async_response(wait=True) is not None: while self.repository.async_response(wait=True) is not None:
pass pass
self.manifest.archives[name] = (self.id, metadata.time) self.manifest.archives[name] = (self.id, metadata.time)