#1778 closed defect (fixed)
increase maximum mutable share size
Reported by: | davidsarah | Owned by: | zooko |
---|---|---|---|
Priority: | normal | Milestone: | 1.9.2 |
Component: | code-storage | Version: | 1.9.1 |
Keywords: | mutable large | Cc: | warner, davidsarah |
Launchpad Bug: |
Description
Change History (11)
comment:1 Changed at 2012-06-22T15:46:51Z by david-sarah@…
comment:2 Changed at 2012-06-22T15:47:28Z by david-sarah@…
In 5526/1.9.2:
comment:3 Changed at 2012-06-22T16:46:45Z by david-sarah <david-sarah@…>
In 33e2d2962e2bc6cc:
comment:4 Changed at 2012-06-23T23:29:03Z by davidsarah
- Keywords review-needed added
- Owner set to zooko
comment:5 Changed at 2012-07-03T02:47:37Z by zooko
- Cc warner added
Hm...
version = { "http://allmydata.org/tahoe/protocols/storage/v1" : { "maximum-immutable-share-size": remaining_space, "maximum-mutable-share-size": MAX_MUTABLE_SHARE_SIZE, "tolerates-immutable-read-overrun": True, "delete-mutable-shares-with-zero-length-writev": True, "fills-holes-with-zero-bytes": True, "prevents-read-past-end-of-share-data": True, }, "application-version": str(allmydata.__full_version__), }
Wouldn't it be more consistent for maximum-mutable-share-size to be equal to remaining_space? Also more meaningful to potential future clients that are curious about approximately big of a mutable share they could upload. With this version (above), they would have to look at maximum-immutable-share-size in order to answer that question, and they would ignore maximum-mutable-share-size.
comment:6 Changed at 2012-07-03T02:48:46Z by zooko
- Cc davidsarah added
But otherwise I like the patch -- it makes minimal changes to the code (which is appropriate for the imminent 1.9.2 release) and it includes a unit test.
comment:7 Changed at 2012-07-03T04:35:52Z by davidsarah
The current storage code doesn't enforce remaining_space for mutables (#390). The filesystem will fill up at some point, but that would impose a limit of
min(MAX_MUTABLE_SHARE_SIZE, total_remaining_disk_space)
rather than remaining_space. We can always compute the limit more precisely if we fix #390; I don't think there's a significant forward-compatibility problem there.
comment:8 Changed at 2012-07-03T16:26:48Z by zooko
Okay, good enough for 1.9.2 IMO.
comment:9 Changed at 2012-07-03T16:27:49Z by davidsarah
- Keywords review-needed removed
- Resolution set to fixed
- Status changed from new to closed
comment:10 Changed at 2012-07-03T16:34:07Z by warner
I'm cool with it. At this point, I somewhat prefer fixed-max-size advertisements over min(MAXSIZE, remaining_disk_space), mostly because the latter will prevent uploads if the disk is full when the node is started (and the announcement produced), but then later frees up some space. Really, it's a tradeoff between delivering information ahead of time (in the announcement) versus discovering available space at the time of upload.
I'm a little bit weirded out by the funny magic 69105TB limit (subtle in-jokes like that are cute, but at least one person is going to be flummoxed in the future trying to figure out why the limit is that particular number and not e.g. 69106TB). But I don't have any 70 petabyte mutable files that need uploading, nor do I anticipate anyone else having that need this decade, so I don't really care very much.
In 33e2d2962e2bc6cc:
(The changeset message doesn't reference this ticket)