[Borgbackup] Odd error

Bzzzz lazyvirus at gmx.com
Mon Mar 9 18:43:33 EDT 2020


BB pip3 intall v1.1.11
Debian Stretch
=====================================
Hi listers,

on a BB server with a good disk, one of my old machine is making an odd
error.

As it's content isn't very important, I erased it's repo and recreated a
brand new one :
	borg init -e keyfile-blake2 /BORG
/BORG being a NFS directory mounted on the client (, just like all other
clients.

This machine has been memtest86+ tested (several full cycles) without any
problem.

However, even the first backup failed as follow :

[…]
A /usr/local/etc/ssl/cert.pem
A /usr/local/etc/ssl/openssl.cnf
A /usr/local/etc/ssl/x509v3.cnf
A /usr/local/firefox-63.0.tar.bz2
Repository index missing or corrupted, trying to recover from: File
failed integrity check: /BORG/index.19
Checking repository transaction due to previous error: File failed
integrity check: /BORG/index.19
segment 20 not found, but listed in compaction data
Local Exception Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/borg/repository.py", line
1347, in get_fd ts, fd = self.fds[segment]
  File "/usr/local/lib/python3.5/dist-packages/borg/lrucache.py", line
21, in __getitem__ value = self._cache[key]  # raise KeyError if not
found
KeyError: 20

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line
4529, in main exit_code = archiver.run(args)
  File "/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line
4461, in run return set_ec(func(args))
  File "/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line
166, in wrapper return method(self, args, repository=repository,
**kwargs) File
"/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line 574, in
do_create create_inner(archive, cache) File
"/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line 537, in
create_inner read_special=args.read_special, dry_run=dry_run, st=st)
File "/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line
651, in _process read_special=read_special, dry_run=dry_run) File
"/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line 651, in
_process read_special=read_special, dry_run=dry_run) File
"/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line 651, in
_process read_special=read_special, dry_run=dry_run) File
"/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line 651, in
_process read_special=read_special, dry_run=dry_run) File
"/usr/local/lib/python3.5/dist-packages/borg/archiver.py", line 625, in
_process status = archive.process_file(path, st, cache) File
"/usr/local/lib/python3.5/dist-packages/borg/archive.py", line 1071, in
process_file self.chunk_file(item, cache, self.stats,
backup_io_iter(self.chunker.chunkify(fd, fh))) File
"/usr/local/lib/python3.5/dist-packages/borg/archive.py", line 1011, in
chunk_file from_chunk, part_number = self.write_part_file(item,
from_chunk, part_number) File
"/usr/local/lib/python3.5/dist-packages/borg/archive.py", line 981, in
write_part_file self.write_checkpoint() File
"/usr/local/lib/python3.5/dist-packages/borg/archive.py", line 480, in
write_checkpoint self.cache.chunk_decref(self.id, self.stats) File
"/usr/local/lib/python3.5/dist-packages/borg/cache.py", line 926, in
chunk_decref self.repository.delete(id, wait=wait) File
"/usr/local/lib/python3.5/dist-packages/borg/repository.py", line 1155,
in delete size = self.io.read(segment, offset, id, read_data=False) File
"/usr/local/lib/python3.5/dist-packages/borg/repository.py", line 1467,
in read fd = self.get_fd(segment) File
"/usr/local/lib/python3.5/dist-packages/borg/repository.py", line 1349,
in get_fd fd = open_fd() File
"/usr/local/lib/python3.5/dist-packages/borg/repository.py", line 1330,
in open_fd fd = open(self.segment_filename(segment), 'rb')
FileNotFoundError: [Errno 2] No such file or directory: '/BORG/data/0/20'

Platform: Linux apophis 4.9.0-12-rt-686-pae #1 SMP PREEMPT RT Debian
4.9.210-1 (2020-01-20) i686 Linux: debian 9.12 
Borg: 1.1.11  Python: CPython 3.5.3 msgpack: 0.5.6
PID: 7671  CWD: /root
sys.argv: ['/usr/local/bin/borg', 'create', '--verbose',
'--exclude-caches', '--show-rc', '--filter', 'AME', '--list', '--stats',
'--checkpoint-interval', '600', '--compression', 'auto,zlib,6',
'--exclude-from', '/usr/local/sbin/BORG_EXCLUSIONS.list',
'::{hostname}-{utcnow}Z', '/'] SSH_ORIGINAL_COMMAND: None

terminating with error status, rc 2

=================================

Relaunching the same backup script also failed with the same "KeyError:
20" error :/

From here, I'm a bit lost.

Jean-Yves


More information about the Borgbackup mailing list