1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2025-02-01 12:09:10 +00:00

Merge pull request #8512 from ThomasWaldmann/use-refcount-less

seen_chunk: do not use .refcount
This commit is contained in:
TW 2024-11-01 22:20:18 +01:00 committed by GitHub
commit 8bdf6b7ffb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -760,14 +760,17 @@ def chunks(self):
return self._chunks
def seen_chunk(self, id, size=None):
entry = self.chunks.get(id, ChunkIndexEntry(0, None))
if entry.refcount and size is not None:
assert isinstance(entry.size, int)
if not entry.size:
entry = self.chunks.get(id)
entry_exists = entry is not None
if entry_exists and size is not None:
if entry.size == 0:
# AdHocWithFilesCache:
# Here *size* is used to update the chunk's size information, which will be zero for existing chunks.
self.chunks[id] = entry._replace(size=size)
return entry.refcount != 0
else:
# in case we already have a size information in the entry, check consistency:
assert size == entry.size
return entry_exists
def reuse_chunk(self, id, size, stats):
assert isinstance(size, int) and size > 0