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
|
overwrite = self.recompress
|
||||||
if self.recompress and not self.always_recompress and chunk_id in self.cache.chunks:
|
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
|
# 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"]))
|
compr_hdr = bytes((old_meta["ctype"], old_meta["clevel"]))
|
||||||
compressor_cls, level = Compressor.detect(compr_hdr)
|
compressor_cls, level = Compressor.detect(compr_hdr)
|
||||||
if (
|
if (
|
||||||
|
|
|
@ -1258,7 +1258,6 @@ class RepositoryCache(RepositoryNoCache):
|
||||||
shutil.rmtree(self.basedir)
|
shutil.rmtree(self.basedir)
|
||||||
|
|
||||||
def get_many(self, keys, read_data=True, cache=True):
|
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.
|
# 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]
|
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))
|
repository_iterator = zip(unknown_keys, self.repository.get_many(unknown_keys, read_data=read_data))
|
||||||
|
|
Loading…
Reference in New Issue