[pbs-devel] [PATCH proxmox-backup v2 0/4] fix local marker cleanup for unreferenced, s3 only chunks

Christian Ebner c.ebner at proxmox.com
Mon Nov 24 10:40:14 CET 2025


These patches fix an issue with garbage collection on S3 backends for an
edge case where the local chunk marker is missing and the chunk not
being referenced anymore by any index file. In that case garbage
collection failed when trying to remove the missing marker from the
local datastore cache.

Fix this by adapting the phase 2 logic such that the atime is now
optional, skipping over the chunk sweep logic if not set and adding the
chunk directly for deletion.

The followup patches improve docstrings and method names to be more
telling and reduce code duplication.

Changes since version 1 (thanks @ Thomas and Fabian for feedback):
- Instead of creating the marker just for it to be deleted again, skip
  over the whole atime check logic in this case
- Fix and extend docs and method names

Christian Ebner (4):
  GC: s3: fix local marker cleanup for unreferenced, s3 only chunks
  chunk store: fix and expand the clear_chunk_expected_mark() docstring
  chunk store: clarify chunk marker helper creates marker if missing
  datastore: refactor common delete list logic into closure

 pbs-datastore/src/chunk_store.rs              | 15 +++-
 pbs-datastore/src/datastore.rs                | 88 ++++++++++++-------
 .../src/local_datastore_lru_cache.rs          | 10 ++-
 3 files changed, 77 insertions(+), 36 deletions(-)

-- 
2.47.3





More information about the pbs-devel mailing list