mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2024-12-19 13:07:56 +00:00
The Tahoe-LAFS decentralized secure filesystem.
If a server did not respond to the pre-repair filecheck, but did respond to the repair, that server was not correctly added to the RepairResults.data["servers-responding"] list. (This resulted from a buggy usage of DictOfSets.union() in filenode.py). In addition, servers to which filecheck queries were sent, but did not respond, were incorrectly added to the servers-responding list anyawys. (This resulted from code in the checker.py not paying attention to the 'responded' flag). The first bug was neatly masked by the second: it's pretty rare to have a server suddenly start responding in the one-second window between a filecheck and a subsequent repair, and if the server was around for the filecheck, you'd never notice the problem. I only spotted the smelly code while I was changing it for IServer cleanup purposes. I added coverage to test_repairer.py for this. Trying to get that test to fail before fixing the first bug is what led me to discover the second bug. I also had to update test_corrupt_file_verno, since it was incorrectly asserting that 10 servers responded, when in fact one of them throws an error (but the second bug was causing it to be reported anyways). |
||
---|---|---|
bin | ||
darcsver-1.7.2.egg | ||
docs | ||
misc | ||
setuptools-0.6c16dev3.egg | ||
src | ||
static | ||
twisted/plugins | ||
.darcs-boringfile | ||
.gitignore | ||
COPYING.GPL | ||
COPYING.TGPPL.rst | ||
CREDITS | ||
Makefile | ||
MANIFEST.in | ||
NEWS.rst | ||
README.txt | ||
relnotes.txt | ||
setup.cfg | ||
setup.py | ||
Tahoe.home |
========== Tahoe-LAFS ========== Tahoe-LAFS is a Free Software/Open Source decentralized data store. It distributes your filesystem across multiple servers, and even if some of the servers fail or are taken over by an attacker, the entire filesystem continues to work correctly and to preserve your privacy and security. To get started please see `quickstart.rst`_ in the docs directory. LICENCE ======= Copyright 2006-2012 The Tahoe-LAFS Software Foundation You may use this package under the GNU General Public License, version 2 or, at your option, any later version. You may use this package under the Transitive Grace Period Public Licence, version 1.0, or at your option, any later version. (You may choose to use this package under the terms of either licence, at your option.) See the file `COPYING.GPL`_ for the terms of the GNU General Public License, version 2. See the file `COPYING.TGPPL.rst`_ for the terms of the Transitive Grace Period Public Licence, version 1.0. See `TGPPL.PDF`_ for why the TGPPL exists, graphically illustrated on three slides. .. _quickstart.rst: https://tahoe-lafs.org/source/tahoe-lafs/trunk/docs/quickstart.rst .. _COPYING.GPL: https://tahoe-lafs.org/trac/tahoe-lafs/browser/COPYING.GPL .. _COPYING.TGPPL.rst: https://tahoe-lafs.org/trac/tahoe-lafs/browser/COPYING.TGPPL.rst .. _TGPPL.PDF: https://tahoe-lafs.org/~zooko/tgppl.pdf