[tahoe-lafs-trac-stream] [tahoe-lafs] #1566: if a stored share has a corrupt header, other shares held by that server for the file should still be accessible to clients

tahoe-lafs trac at tahoe-lafs.org
Tue Oct 18 16:36:02 PDT 2011


#1566: if a stored share has a corrupt header, other shares held by that server
for the file should still be accessible to clients
-------------------------+-------------------------------------------------
     Reporter:           |      Owner:  warner
  davidsarah             |     Status:  new
         Type:  defect   |  Milestone:  1.10.0
     Priority:  major    |    Version:  1.9.0b1
    Component:  code-    |   Keywords:  corruption preservation storage
  storage                |  design-review-needed
   Resolution:           |
Launchpad Bug:           |
-------------------------+-------------------------------------------------
Changes (by davidsarah):

 * keywords:  corruption preservation storage => corruption preservation
     storage design-review-needed
 * owner:  davidsarah => warner
 * status:  assigned => new
 * milestone:  undecided => 1.10.0


Comment:

 Replying to [comment:3 warner]:
 > I think the server should not report anything to the client about shares
 with corrupt headers. It should file a local corruption report (as if the
 remote client had called {{{remote_advise_corrupt_share()}}}, but with a
 flag that shows this was discovered locally, and probably in a part of the
 share that the client wouldn't be able to read anyways).
 >
 > I'd be ok with reporting "nope, no shares here" if all shares are
 corrupt, rather than returning an error. I don't think the client is in a
 good position to do much with information about shares that are so corrupt
 that it can't even see part of their contents (which is what header
 corruption would mean). The only interaction I can think of is how the
 client might try to repair this file: they can't replace the corrupt-
 header share (the server admin will need to delete it locally), they can't
 modify it's contents, so they ought to just put a new copy somewhere else.
 They'll probably try to put a new copy on this server, which it needs to
 refuse (refusal doesn't always mean no-space-available, although the
 client might have bugs which makes it interpret refusal that way).

 Good, that's essentially what I'd implemented in
 [5477/ticket999-S3-backend]. Please review! (I think that changeset is
 understandable independently of the other pluggable-backends changes.
 Comments particularly wanted on the behaviour when attempting to write
 shares with corrupted headers.)

-- 
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1566#comment:4>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage


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