[tahoe-lafs-trac-stream] [tahoe-lafs] #2107: don't place shares on servers that already have shares

tahoe-lafs trac at tahoe-lafs.org
Mon Dec 2 11:33:04 UTC 2013


#2107: don't place shares on servers that already have shares
-------------------------+-------------------------------------------------
     Reporter:  zooko    |      Owner:
         Type:           |     Status:  new
  enhancement            |  Milestone:  undecided
     Priority:  normal   |    Version:  1.10.0
    Component:  code-    |   Keywords:  upload servers-of-happiness brians-
  peerselection          |  opinion-needed
   Resolution:           |
Launchpad Bug:           |
-------------------------+-------------------------------------------------

Comment (by amontero):

 Replying to [comment:13 zooko]:
 > Thanks, markberger!
 >
 > Replying to [comment:10 markberger]:
 > > Servers of happiness is not a boolean value. It is a measurement of
 how effectively shares are distributed. For each distinctive server with
 any nonzero number of shares, the servers of happiness value increases by
 1. In terms of how we model the problem, the servers of happiness value is
 len(E) where E is the set of edges used in the maximum matching bipartite
 graph of shares to servers.
 > >
 > > In terms of your example zooko, when you place a share on one server,
 you are constructing an edge between that share and that server in the
 bipartite graph. Therefore, the servers of happiness value is 1.
 >
 > Hm, isn't this true only if that share isn't already provided by another
 server? Or more precisely true only if ''some'' combination of the servers
 already holding shares wouldn't be able to provide the file in just as
 many cases ''without'' the addition of this new share?
 >
 >
 > Okay, so I ''think'' what this means is that sickness and amontero and
 me would be satisfied with Rule 3:
 >
 >    ''Rule 3: "Don't put a share on a server unless doing so would
 increase the Servers-of-Happiness-Level."''
 >
 > Does everyone agree that this is a good rule to enforce on an uploader
 or repairer? markberger? daira? sickness? amontero? brian?


 Looks like to me it would fulfill the needs of my scenario of "not wasting
 space in any storage node (waste=shares >k)" (#2123).

 Also, sickness' RAIC 1:2:2 example looks very appealing to me, with one
 question: would this modification allow you to add a 3rd. hot-spare node
 that would get its own share when repair is run? (ex. before
 decomissioning a soon-to-fail node)

 In other words: would this place shares above N's limit on new nodes not
 having none?

-- 
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2107#comment:17>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage


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