idea
authorJoey Hess <joeyh@joeyh.name>
Mon, 12 Aug 2024 13:43:14 +0000 (09:43 -0400)
committerJoey Hess <joeyh@joeyh.name>
Mon, 12 Aug 2024 13:43:14 +0000 (09:43 -0400)
doc/design/balanced_preferred_content.mdwn
doc/todo/git-annex_proxies.mdwn

index c0e6507563bd67f3fbd789bd6643768eb21b8514..163c28b7d939831d52227006410ac0b5bdf90b4e 100644 (file)
@@ -41,6 +41,23 @@ always contain hashe. Also, including the concacenation of all the UUIDs
 of reposotories in the group makes it harder to generate a combination of
 key and repository UUID that makes that repository want to contain the key.
 
+## size balancing
+
+Beyond filtering balanced repos to those that have enough free space to
+store a key, the sizes of the repos can be used in other ways.
+
+If the maximum size of all the balanced repos is known, they can be filled
+with data proportional to their sizes.
+
+If the maximum size is not known of any balanced repos, a reasonable thing
+to do would be to assume they all have the same maximum size, and fill them
+proportionally also.
+
+If the maximum size of some but not others is known, what then?
+
+Balancing this way would fall back to the method above when several repos
+are equally good candidates to hold a key.
+
 ## stability
 
 Note that this preferred content expression will not be stable. A change in 
index 48e2df2189ef29db34d78fb85f3094bcb6e4d53f..6f1c737ffcd3f19bd90684d501e935d3ab35bd92 100644 (file)
@@ -45,6 +45,9 @@ Planned schedule of work:
   Also note that "fullybalanced=foo:2" is not currently actually
   implemented!
 
+* implement size-based balancing, either as the default or as another
+  preferred content expression.
+
 * `git-annex info` can use maxsize to display how full repositories are
 
 * balanced= and fullybalanced= need to limit the set of repositories to