Skip to content

Commit

Permalink
Merge pull request #8512 from ThomasWaldmann/use-refcount-less
Browse files Browse the repository at this point in the history
seen_chunk: do not use .refcount
  • Loading branch information
ThomasWaldmann authored Nov 1, 2024
2 parents 3c38b2f + de1b7e0 commit 8bdf6b7
Showing 1 changed file with 8 additions and 5 deletions.
13 changes: 8 additions & 5 deletions src/borg/cache.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit 8bdf6b7

Please sign in to comment.