diff options
author | Lars Wirzenius <liw@liw.fi> | 2017-06-24 16:07:47 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2017-06-24 16:07:47 +0300 |
commit | c534eb08d1bb525e485882e61858ed0083464fb7 (patch) | |
tree | dccac451b8c3f435cd4fce6c1da756a4187d3685 /obnamlib/fmt_ga/cowtree.py | |
parent | 7064569464478d79f800e3253382e525a1c73086 (diff) | |
download | obnam-c534eb08d1bb525e485882e61858ed0083464fb7.tar.gz |
Fix: remove old cowtree after new one's been committed
Diffstat (limited to 'obnamlib/fmt_ga/cowtree.py')
-rw-r--r-- | obnamlib/fmt_ga/cowtree.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/obnamlib/fmt_ga/cowtree.py b/obnamlib/fmt_ga/cowtree.py index 7f84d8e1..dbfdcf81 100644 --- a/obnamlib/fmt_ga/cowtree.py +++ b/obnamlib/fmt_ga/cowtree.py @@ -86,6 +86,7 @@ class CowTree(object): if len(leaf) > 0: self._add_leaf(leaf_list, leaf) leaf_id = self._put_leaf_list(leaf_list) + self._remove_old_tree(self._leaf_list) return leaf_id def _add_leaf(self, leaf_list, leaf): @@ -99,3 +100,7 @@ class CowTree(object): list_id = self._store.put_leaf(fake_leaf) self._store.flush() return list_id + + def _remove_old_tree(self, leaf_list): # pragma: no cover + for leaf_id in leaf_list.leaves(): + self._store.remove_leaf(leaf_id) |