diff --git a/dedupestore/archiver.py b/dedupestore/archiver.py index cf1935ea1..50e4476a5 100644 --- a/dedupestore/archiver.py +++ b/dedupestore/archiver.py @@ -1,5 +1,4 @@ import os -import sys import hashlib import zlib import cPickle @@ -32,6 +31,7 @@ class Archive(object): def open(self, name): archive = cPickle.loads(zlib.decompress(self.store.get(NS_ARCHIVES, name))) self.items = archive['items'] + self.name = archive['name'] for i, (id, sum, csize, osize) in enumerate(archive['chunks']): self.chunk_idx[i] = id @@ -82,7 +82,8 @@ class Archive(object): for item in self.items: if item['type'] == 'FILE': for c in item['chunks']: - cache.chunk_decref(c) + id = self.chunk_idx[c] + cache.chunk_decref(id) self.store.commit() cache.archives.remove(self.name) cache.save()