From: Brian Warner Date: Fri, 26 Jun 2009 06:32:30 +0000 (-0700) Subject: repairer: raise a better exception when faced with a readonly filenode. Still X-Git-Tag: trac-4000~56 X-Git-Url: https://git.rkrishnan.org/simplejson//%22news.html/%22?a=commitdiff_plain;h=d0f80579a502e36f8dda7e0c697435e8a66e413f;p=tahoe-lafs%2Ftahoe-lafs.git repairer: raise a better exception when faced with a readonly filenode. Still produces an error, though. --- diff --git a/src/allmydata/mutable/repairer.py b/src/allmydata/mutable/repairer.py index b7d49bcd..d04e3c69 100644 --- a/src/allmydata/mutable/repairer.py +++ b/src/allmydata/mutable/repairer.py @@ -11,6 +11,9 @@ class RepairResults: def to_string(self): return "" +class RepairRequiresWritecapError(Exception): + """Repair currently requires a writecap.""" + class MustForceRepairError(Exception): pass @@ -86,7 +89,8 @@ class Repairer: # available, to avoid the extra roundtrip that would occur if we, # say, added an smap.get_privkey() method. - assert self.node.get_writekey() # repair currently requires a writecap + if not self.node.get_writekey(): + raise RepairRequiresWritecapError("Sorry, repair currently requires a writecap, to set the write-enabler properly.") best_version = smap.best_recoverable_version() d = self.node.download_version(smap, best_version, fetch_privkey=True)