flyingcircusio / backy

3 stars 1 forks source link

distrusting in case of an error #6

Closed chrschm closed 1 year ago

chrschm commented 3 years ago

Consider to automatically distrust backups in case of an error like:

Error: Header error - invalid compressed data

2021-09-17 06:09:26 [1349692] INFO Performing partial verification
2021-09-17 06:13:50 [1349692] INFO Removing old snapshot backy-RLCbehUaoQB3C8GbsLgXrF
2021-09-17 06:13:50 [1349692] ERROR Header error - invalid compressed data
Traceback (most recent call last):
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/main.py", line 334, in main
    func(**func_args)
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/main.py", line 92, in backup
    b.backup(tags)
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/backup.py", line 59, in locked_function
    return f(self, *args, **kw)
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/backup.py", line 59, in locked_function
    return f(self, *args, **kw)
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/backup.py", line 187, in backup
    if not source.verify(backend):
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/sources/ceph/source.py", line 142, in verify
    return backy.utils.files_are_roughly_equal(source, target)
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/utils.py", line 399, in files_are_roughly_equal
    chunk_b = b.read(blocksize)
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/backends/chunked/file.py", line 194, in read
    data, size = chunk.read(offset, size)
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/backends/chunked/chunk.py", line 78, in read
    self._read_existing()
  File "/nix/store/1pn40rap4q6na5yvgq2sh2g2xkic4zc9-python3.8-backy-2.5.0dev/lib/python3.8/site-packages/backy/backends/chunked/chunk.py", line 61, in _read_existing
    data = lzo.decompress(data)
lzo.error: Header error - invalid compressed data

This is a follow up of https://fb.flyingcircus.io/f/cases/143474/