diff options
author | Lars Wirzenius <liw@liw.fi> | 2011-08-20 17:32:27 +0100 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2011-08-20 17:32:27 +0100 |
commit | 0d79bf89a24dfd9395143ccfe9bf04a3ec8413d5 (patch) | |
tree | c68e36645eeffe60e07c4c99ce24c7fb503c81d8 | |
parent | 8879e2627fc26229e76a70347633b1a213d9a20f (diff) | |
download | obnam-0d79bf89a24dfd9395143ccfe9bf04a3ec8413d5.tar.gz |
Fix all plugins to close live data and repository filesystems properly.
-rw-r--r-- | obnamlib/plugins/force_lock_plugin.py | 1 | ||||
-rw-r--r-- | obnamlib/plugins/forget_plugin.py | 1 | ||||
-rw-r--r-- | obnamlib/plugins/fsck_plugin.py | 1 | ||||
-rw-r--r-- | obnamlib/plugins/show_plugin.py | 4 | ||||
-rw-r--r-- | obnamlib/plugins/verify_plugin.py | 3 |
5 files changed, 10 insertions, 0 deletions
diff --git a/obnamlib/plugins/force_lock_plugin.py b/obnamlib/plugins/force_lock_plugin.py index 84b32aa3..a5a6671e 100644 --- a/obnamlib/plugins/force_lock_plugin.py +++ b/obnamlib/plugins/force_lock_plugin.py @@ -55,4 +55,5 @@ class ForceLockPlugin(obnamlib.ObnamPlugin): repo.fs.remove(lockname) else: logging.info('Client is not locked') + repo.fs.close() diff --git a/obnamlib/plugins/forget_plugin.py b/obnamlib/plugins/forget_plugin.py index 8d2c70a1..d2cce343 100644 --- a/obnamlib/plugins/forget_plugin.py +++ b/obnamlib/plugins/forget_plugin.py @@ -60,6 +60,7 @@ class ForgetPlugin(obnamlib.ObnamPlugin): self.remove(genid) self.repo.commit_client() + self.repo.fs.close() def remove(self, genid): if self.app.settings['pretend']: diff --git a/obnamlib/plugins/fsck_plugin.py b/obnamlib/plugins/fsck_plugin.py index 79864f9d..c3e09b6e 100644 --- a/obnamlib/plugins/fsck_plugin.py +++ b/obnamlib/plugins/fsck_plugin.py @@ -31,6 +31,7 @@ class FsckPlugin(obnamlib.ObnamPlugin): logging.debug('fsck on %s' % self.app.settings['repository']) self.repo = self.app.open_repository() self.check_root() + self.repo.fs.close() def check_root(self): '''Check the root node.''' diff --git a/obnamlib/plugins/show_plugin.py b/obnamlib/plugins/show_plugin.py index 13595738..3f9b043d 100644 --- a/obnamlib/plugins/show_plugin.py +++ b/obnamlib/plugins/show_plugin.py @@ -51,6 +51,7 @@ class ShowPlugin(obnamlib.ObnamPlugin): self.open_repository() for client_name in self.repo.list_clients(): print client_name + self.repo.fs.close() def generations(self, args): '''List backup generations for client.''' @@ -67,12 +68,14 @@ class ShowPlugin(obnamlib.ObnamPlugin): self.format_time(start), self.format_time(end), checkpoint)) + self.repo.fs.close() def genids(self, args): '''List generation ids for client.''' self.open_repository() for gen in self.repo.list_generations(): sys.stdout.write('%s\n' % gen) + self.repo.fs.close() def ls(self, args): '''List contents of a generation.''' @@ -83,6 +86,7 @@ class ShowPlugin(obnamlib.ObnamPlugin): ended = self.format_time(0) print 'Generation %s (%s - %s)' % (gen, started, ended) self.show_objects(gen, '/') + self.repo.fs.close() def format_time(self, timestamp): return time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(timestamp)) diff --git a/obnamlib/plugins/verify_plugin.py b/obnamlib/plugins/verify_plugin.py index acd50fcd..db421231 100644 --- a/obnamlib/plugins/verify_plugin.py +++ b/obnamlib/plugins/verify_plugin.py @@ -75,6 +75,9 @@ class VerifyPlugin(obnamlib.ObnamPlugin): except Fail, e: self.log_fail(e) + self.fs.close() + self.repo.fs.close() + if self.failed: sys.exit(1) print "Verify did not find problems." |