[tahoe-lafs-trac-stream] [tahoe-lafs] #1955: Allow deep-check to continue after error

tahoe-lafs trac at tahoe-lafs.org
Thu Apr 25 18:20:59 UTC 2013


#1955: Allow deep-check to continue after error
-------------------------+----------------------------
 Reporter:  killyourtv   |          Owner:  davidsarah
     Type:  enhancement  |         Status:  new
 Priority:  normal       |      Milestone:  undecided
Component:  unknown      |        Version:  1.9.2
 Keywords:               |  Launchpad Bug:
-------------------------+----------------------------
 It would be useful to have `tahoe deep-check --repair` continue, even if
 one file cannot be repaired due to encountering a "not enough shares"
 error.

 Such as

 {{{
 'debian/pool/main/b/bitcoin': not healthy
  repair successful
 'debian/pool/main/b/bitcoin/bitcoin-qt_0.5.2-1_amd64.deb': not healthy
  repair successful
 'debian/pool/main/b/bitcoin/bitcoin-qt_0.5.2-1_i386.deb': not healthy
  repair successful
 'debian/pool/main/b/bitcoin/bitcoin-qt_0.5.2-1squeeze1_amd64.deb': not
 healthy
  repair successful
 ERROR: NotEnoughSharesError(ran out of shares: complete=sh5
 pending=Share(sh9-on-5ithai) overdue= unused= need 5. Last failure: None)
 "[Failure instance: Traceback (failure with no frames): <class
 'allmydata.interfaces.NotEnoughSharesError'>: ran out of shares:
 complete=sh5 pending=Share(sh9-on-5ithai) overdue= unused= need 5. Last
 failure: None"

 }}}

 At this point the deep-check aborts, even though the subsequent files can
 be successfully repaired.

 To work around this I created a shoddy script that runs "tahoe deep-check
 -v --add-lease", saves the output to a file, then runs an individual
 repair on each file/directory that was reported as 'Unhealthy|Not
 Healthy'. My workaround may be kinda daft but until I remove the
 irreparable file(s)/director(y|ies), deep-checking won't complete.

 ----
 Note: IIRC directories are '''Unhealthy''' and files are '''Not Healthy'''
 when deep-check is run without --repair. If run with --repair, '''not
 healthy''' is in lower case as shown above. I don't know if the
 inconsistency (i.e. ''case'' or ''not healthy'' VS ''unhealthy'') is a bug
 (which is why I didn't file one for this), but I didn't expect it.

-- 
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1955>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list