mirror of https://github.com/borgbackup/borg.git
recompress: only read metadata to check for ctype/clevel
This commit is contained in:
parent
06eab6a228
commit
b28d6ee657
|
@ -2269,7 +2269,7 @@ class ArchiveRecreater:
|
|||
overwrite = self.recompress
|
||||
if self.recompress and not self.always_recompress and chunk_id in self.cache.chunks:
|
||||
# Check if this chunk is already compressed the way we want it
|
||||
old_meta = self.repo_objs.parse_meta(chunk_id, self.repository.get(chunk_id))
|
||||
old_meta = self.repo_objs.parse_meta(chunk_id, self.repository.get(chunk_id, read_data=False))
|
||||
compr_hdr = bytes((old_meta["ctype"], old_meta["clevel"]))
|
||||
compressor_cls, level = Compressor.detect(compr_hdr)
|
||||
if (
|
||||
|
|
|
@ -1258,7 +1258,6 @@ class RepositoryCache(RepositoryNoCache):
|
|||
shutil.rmtree(self.basedir)
|
||||
|
||||
def get_many(self, keys, read_data=True, cache=True):
|
||||
# TODO: this currently always requests the full chunk from self.repository (read_data=True).
|
||||
# It could use different cache keys depending on read_data and cache full vs. meta-only chunks.
|
||||
unknown_keys = [key for key in keys if self.prefixed_key(key, complete=read_data) not in self.cache]
|
||||
repository_iterator = zip(unknown_keys, self.repository.get_many(unknown_keys, read_data=read_data))
|
||||
|
|
Loading…
Reference in New Issue