From e4e678790610a67ef866d569143157d80c7f6c26 Mon Sep 17 00:00:00 2001 From: Marian Beermann Date: Sat, 27 Aug 2016 14:31:57 +0200 Subject: [PATCH] recreate: fix crash if recompress and deduplication beyond autocommit_threshold ie. it means that if all the recompressed chunks were already in the repo no data would be written, so there would be no active txn, so failure ensues. --- src/borg/archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/borg/archive.py b/src/borg/archive.py index 209effc4e..9546cb0af 100644 --- a/src/borg/archive.py +++ b/src/borg/archive.py @@ -1450,7 +1450,7 @@ class ArchiveRecreater: chunk_id, size, csize = self.cache.add_chunk(chunk_id, chunk, target.stats, overwrite=overwrite) new_chunks.append((chunk_id, size, csize)) self.seen_chunks.add(chunk_id) - if self.recompress: + if self.recompress and self.cache.seen_chunk(chunk_id) == 1: # This tracks how many bytes are uncommitted but compactable, since we are recompressing # existing chunks. target.recreate_uncomitted_bytes += csize