From b7b91b7090be3164ad3a6d481d23ea0f2b86694a Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Sun, 12 Jul 2026 00:17:40 +0200 Subject: [PATCH] create a separate pack for archive items --- src/borg/archive.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/borg/archive.py b/src/borg/archive.py index 853b1f0784..6e107896a7 100644 --- a/src/borg/archive.py +++ b/src/borg/archive.py @@ -712,6 +712,10 @@ def save(self, name=None, comment=None, timestamp=None, stats=None, additional_m metadata |= additional_metadata or {} if metadata.get("cwd") is None: del metadata["cwd"] + # flushing here will empty the pack writer buffer, + # so that the ArchiveItem will create a tiny separate pack, + # which will perform better for borg repo-list. + self.repository.flush() metadata = ArchiveItem(metadata) data = self.key.pack_metadata(metadata.as_dict()) self.id = self.repo_objs.id_hash(data)