Skip to content

borg2: crash while compact #9850

Description

@ThomasWaldmann

Code from #9843 (repo index was rebuilt from packs a while ago, some other delete / compact runs before this one):

(borg-env) tw@MacBook-Pro-2 borg % borg repo-list          
f99329b4  Fri, 2026-07-03 04:53:30 +0200  arch                         tw          MacBook-Pro-2  
bb64fc8d  Fri, 2026-07-03 04:53:48 +0200  arch                         tw          MacBook-Pro-2  

(borg-env) tw@MacBook-Pro-2 borg % borg delete aid:bb64fc8d 
Done. Run "borg compact" to free space.

(borg-env) tw@MacBook-Pro-2 borg % borg compact -v         
Starting compaction / garbage collection...
Getting object IDs from the cached chunks index...
Computing object IDs used by archives...
Analyzing archive arch 2026-07-03 04:53:30.236226+02:00 f99329b443184ff05e651c5fb18d555df44360f75d5486024ca5abcd5fa23825 (1/1)
Cleaning archives directory from soft-deleted archives...
Deleting 53320 unused objects...
Local Exception

Error:

ObjectNotFound: packs/c7/c70f238b16e55154f12fbb1f08697e8625e430e3391ca3022ee406eb6a212d62

If reporting bugs, please include the following:

Traceback (most recent call last):
  File "/Users/tw/w/borg/src/borg/archiver/__init__.py", line 636, in main
    exit_code = archiver.run(args)
                ^^^^^^^^^^^^^^^^^^
  File "/Users/tw/w/borg/src/borg/archiver/__init__.py", line 513, in run
    rc = func(args)
         ^^^^^^^^^^
  File "/Users/tw/w/borg/src/borg/archiver/_common.py", line 173, in wrapper
    return method(self, args, repository=repository, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tw/w/borg/src/borg/archiver/compact_cmd.py", line 279, in do_compact
    ).garbage_collect()
      ^^^^^^^^^^^^^^^^^
  File "/Users/tw/w/borg/src/borg/archiver/compact_cmd.py", line 48, in garbage_collect
    self.report_and_delete()
  File "/Users/tw/w/borg/src/borg/archiver/compact_cmd.py", line 168, in report_and_delete
    self.compact_packs()
  File "/Users/tw/w/borg/src/borg/archiver/compact_cmd.py", line 261, in compact_packs
    self.repository.store_delete("packs/" + bin_to_hex(pid))
  File "/Users/tw/w/borg/src/borg/repository.py", line 947, in store_delete
    return self.store.delete(name, deleted=deleted)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tw/w/borg-env/lib/python3.11/site-packages/borgstore/store.py", line 478, in delete
    self._backend_call(lambda: self.backend.delete(nested_name), key="delete", volume=0)
  File "/Users/tw/w/borg-env/lib/python3.11/site-packages/borgstore/store.py", line 283, in _backend_call
    result = operation()
             ^^^^^^^^^^^
  File "/Users/tw/w/borg-env/lib/python3.11/site-packages/borgstore/store.py", line 478, in <lambda>
    self._backend_call(lambda: self.backend.delete(nested_name), key="delete", volume=0)
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tw/w/borg-env/lib/python3.11/site-packages/borgstore/backends/posixfs.py", line 276, in delete
    raise ObjectNotFound(name) from None
borgstore.backends.errors.ObjectNotFound: packs/c7/c70f238b16e55154f12fbb1f08697e8625e430e3391ca3022ee406eb6a212d62

Platform: Darwin MacBook-Pro-2.local 24.6.0 Darwin Kernel Version 24.6.0: Tue Apr 21 20:16:56 PDT 2026; root:xnu-11417.140.69.710.16~1/RELEASE_ARM64_T6030 arm64
Borg: 2.0.0b23.dev221+g15d55d48e.d20260702  Python: CPython 3.11.15 msgpack: 1.2.0 fuse: llfuse 1.5.2 [mfusepy,pyfuse3,llfuse]
PID: 12546  CWD: /Users/tw/w/borg
sys.argv: ['/Users/tw/w/borg-env/bin/borg', 'compact', '-v']
SSH_ORIGINAL_COMMAND: None

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions