Wed Dec 22 07:21:14 PST 2010 Kevan Carstensen * immutable: change 'shares.happy' to 'servers.happy'; change the default value of 'servers.happy' to 1 from 7 New patches: [immutable: change 'shares.happy' to 'servers.happy'; change the default value of 'servers.happy' to 1 from 7 Kevan Carstensen **20101222152114 Ignore-this: 9cf9d95f3d50c79cd97d53ecbc77ccfd ] { hunk ./docs/configuration.rst 282 ``shares.total = (int, optional) aka "N", N >= k, default 10`` -``shares.happy = (int, optional) 1 <= happy <= N, default 7`` +``servers.happy = (int, optional) 1 <= happy <= N, default 1`` These three values set the default encoding parameters. Each time a new file is uploaded, erasure-coding is used to break the ciphertext into hunk ./docs/configuration.rst 308 ``N`` cannot be larger than 256, because of the 8-bit erasure-coding algorithm that Tahoe-LAFS uses. - ``shares.happy`` allows you control over the distribution of your immutable + ``servers.happy`` allows you control over the distribution of your immutable file. For a successful upload, shares are guaranteed to be initially hunk ./docs/configuration.rst 310 - placed on at least ``shares.happy`` distinct servers, the correct + placed on at least ``servers.happy`` distinct servers, the correct functioning of any ``k`` of which is sufficient to guarantee the availability of the uploaded file. This value should not be larger than the number of servers on your grid. hunk ./docs/configuration.rst 315 - A value of ``shares.happy`` <= ``k`` is allowed, but does not provide any + A value of ``servers.happy`` <= ``k`` is allowed, but does not provide any redundancy if some servers fail or lose shares. (Mutable files use a different share placement algorithm that does not hunk ./docs/running.html 68 clients to connect to your node if it is behind a firewall or NAT device. -

A note about small grids

- -

By default, Tahoe-LAFS ships with the configuration parameter - shares.happy set to 7. If you are using Tahoe-LAFS on a - grid with fewer than 7 storage nodes, this won't work well for you - — none of your uploads will succeed. To fix this, see configuration.rst to learn how to set - shares.happy to a more suitable value for your - grid.

- -

Do Stuff With It

This is how to use your Tahoe-LAFS node.

hunk ./src/allmydata/client.py 127 # this many. 'total' is the total number of shares created by encoding. # If everybody has room then this is is how many we will upload. DEFAULT_ENCODING_PARAMETERS = {"k": 3, - "happy": 7, + "happy": 1, "n": 10, "max_segment_size": 128*KiB, } hunk ./src/allmydata/client.py 288 DEP = self.DEFAULT_ENCODING_PARAMETERS DEP["k"] = int(self.get_config("client", "shares.needed", DEP["k"])) DEP["n"] = int(self.get_config("client", "shares.total", DEP["n"])) - DEP["happy"] = int(self.get_config("client", "shares.happy", DEP["happy"])) + DEP["happy"] = int(self.get_config("client", "servers.happy", DEP["happy"])) self.init_client_storage_broker() self.history = History(self.stats_provider) hunk ./src/allmydata/scripts/create_node.py 120 c.write("#key_generator.furl =\n") c.write("#stats_gatherer.furl =\n") c.write("#shares.needed = 3\n") - c.write("#shares.happy = 7\n") + c.write("#servers.happy = 1\n") c.write("#shares.total = 10\n") c.write("\n") } Context: [docs/architecture.rst: correct rst syntax. david-sarah@jacaranda.org**20101212202003 Ignore-this: 3fbe12feb28bec6f1c63aedbc79aad21 ] [docs/architecture.rst: formatting. david-sarah@jacaranda.org**20101212201719 Ignore-this: 305fa5dfc2939355eaf6d0d2161eb1ff ] [docs: linkification, wording improvements. david-sarah@jacaranda.org**20101212201234 Ignore-this: 4e67287f527a8bc728cfbd93255d2aae ] [docs: formatting. david-sarah@jacaranda.org**20101212201115 Ignore-this: 2e0ed394ac7726651d3a4f2c4b0d3798 ] [docs/configuration.rst: more formatting tweaks; which -> that. david-sarah@jacaranda.org**20101212195522 Ignore-this: a7becb7021854ca5a90edd892b36fdd7 ] [docs/configuration.rst: more changes to formatting. david-sarah@jacaranda.org**20101212194511 Ignore-this: 491aac33e5f5268d224359f1447d10be ] [docs/configuration.rst: changes to formatting (mainly putting commands and filenames in monospace). david-sarah@jacaranda.org**20101212181828 Ignore-this: 8a1480e2d5f43bee678476424615b50f ] [scripts/backupdb.py: more accurate comment about path field. david-sarah@jacaranda.org**20101212170320 Ignore-this: 50e47a2228a85207bbcd188a78a0d4e6 ] [scripts/cli.py: fix missing 'put' in usage example for 'tahoe put'. david-sarah@jacaranda.org**20101212170207 Ignore-this: 2cbadf066fff611fc03d3c0ff97ce6ec ] [docs/frontends/CLI.rst: changes to formatting (mainly putting commands and filenames in monospace), and to command syntax to reflect that DIRCAP/... is accepted. Clarify the syntax of 'tahoe put' and other minor corrections. Tahoe -> Tahoe-LAFS. david-sarah@jacaranda.org**20101212165800 Ignore-this: a123ef6b564aa8624d1e79c97068ea12 ] [docs/frontends/CLI.rst: Unicode arguments to 'tahoe' work on Windows as of v1.7.1. david-sarah@jacaranda.org**20101212063740 Ignore-this: 3977a99dfa86ac33a44171deaf43aaab ] [docs/known_issues.rst: fix title and linkify another URL. refs #1225 david-sarah@jacaranda.org**20101212062817 Ignore-this: cc91287f7fb51c23440b3d2fe79c449c ] [docs/known_issues.rst: fix an external link. refs #1225 david-sarah@jacaranda.org**20101212062435 Ignore-this: b8cbf12f353131756c358965c48060ec ] [Fix a link from uri.rst to dirnodes.rst. refs #1225 david-sarah@jacaranda.org**20101212054502 Ignore-this: af6205299f5c9a33229cab259c00f9d5 ] [Fix a link from webapi.rst to FTP-and-SFTP.rst. refs #1225 david-sarah@jacaranda.org**20101212053435 Ignore-this: 2b9f88678c3447ea860d6b61e8799858 ] [More specific hyperlink to architecture.rst from helper.rst. refs #1225 david-sarah@jacaranda.org**20101212052607 Ignore-this: 50424c768fca481252fabf58424852dc ] [Update hyperlinks between docs, and linkify some external references. refs #1225 david-sarah@jacaranda.org**20101212051459 Ignore-this: cd43a4c3d3de1f832abfa88d5fc4ace1 ] [docs/specifications/dirnodes.rst: fix references to mutable.rst. refs #1225 david-sarah@jacaranda.org**20101212012720 Ignore-this: 6819b4b4e06e947ee48b365e840db37d ] [docs/specifications/mutable.rst: correct the magic string for v1 mutable containers. refs #1225 david-sarah@jacaranda.org**20101212011400 Ignore-this: 99a5fcdd40cef83dbb08f323f6cdaaca ] [Move .txt files in docs/frontends and docs/specifications to .rst. refs #1225 david-sarah@jacaranda.org**20101212010251 Ignore-this: 8796d35d928370f7dc6ad2dafdc1c0fe ] [Convert docs/frontends and docs/specifications to reStructuredText format (not including file moves). david-sarah@jacaranda.org**20101212004632 Ignore-this: e3ceb2d832d73875abe48624ddbb5622 ] [scripts/cli.py: remove the disclaimer in the help for 'tahoe cp' that it does not handle non-ASCII filenames well. (At least, we intend to handle them.) david-sarah@jacaranda.org**20101130002145 Ignore-this: 94c003efaa20b9eb4a83503d79844ca ] [relnotes.txt: fifth -> sixth labor-of-love release zooko@zooko.com**20101129045647 Ignore-this: 21c245015268b38916e3a138d256c09d ] [Makefile: BB_BRANCH is set to the empty string for trunk, not the string 'trunk'. david-sarah@jacaranda.org**20101128233512 Ignore-this: 5a7ef8eb10475636d21b91e25b56c369 ] [relnotes.txt: eleventh -> twelfth release. david-sarah@jacaranda.org**20101128223321 Ignore-this: 1e26410156a665271c1170803dea2c0d ] [relnotes.tst: point to known_issues.rst, not known_issues.txt. david-sarah@jacaranda.org**20101128222918 Ignore-this: 60194eb4544cac446fe4f60b3e34b887 ] [quickstart.html: fix link to point to allmydata-tahoe-1.8.1.zip. david-sarah@jacaranda.org**20101128221728 Ignore-this: 7b3ee86f8256aa12f5d862f689f3ee29 ] [TAG allmydata-tahoe-1.8.1 david-sarah@jacaranda.org**20101128212336 Ignore-this: 9c18bdeaef4822f590d2a0d879e00621 ] Patch bundle hash: cf95bacbc58d8601db8a29cf918e1f55260fdbb1