robk-tahoe [Wed, 23 Apr 2008 21:39:41 +0000 (14:39 -0700)]
munin stats: add mutable/uploader traffic graphs
this adds munin graphs to present data already published by nodes to
the stats_gatherer, namely mutable files published/retrieved, and
immutable files uploaded, and the bytes thereof
Brian Warner [Wed, 23 Apr 2008 22:05:39 +0000 (15:05 -0700)]
introducer: only record one announcement per (tubid,service) tuple. Fixes #343.
Brian Warner [Wed, 23 Apr 2008 21:52:34 +0000 (14:52 -0700)]
client: don't start the IntroducerClient until the Tub is ready, otherwise we will sometimes connect to the introducer (or other clients) before we've done Tub.setLocation, which loses some information on the introducer status page
Brian Warner [Wed, 23 Apr 2008 21:03:23 +0000 (14:03 -0700)]
munin/tahoe-stats.py: category is 'counters' not 'stats', use DERIVE
Brian Warner [Wed, 23 Apr 2008 01:53:20 +0000 (18:53 -0700)]
test_mutable: test that all servers refusing our share means a publish fails
Brian Warner [Wed, 23 Apr 2008 00:25:14 +0000 (17:25 -0700)]
mutable: improve test coverage in Retrieve, when shares change after mapupdate
Brian Warner [Wed, 23 Apr 2008 00:14:26 +0000 (17:14 -0700)]
hush pyflakes warning about code that got moved in the recent StallMixin refactoring
Brian Warner [Tue, 22 Apr 2008 23:47:52 +0000 (16:47 -0700)]
mutable/servermap: improve test coverage
Brian Warner [Tue, 22 Apr 2008 23:47:15 +0000 (16:47 -0700)]
testutil: factor stall() out into a common location
Brian Warner [Tue, 22 Apr 2008 19:54:16 +0000 (12:54 -0700)]
test_introducer.py: don't log nodeids as binary goop
Brian Warner [Tue, 22 Apr 2008 18:51:14 +0000 (11:51 -0700)]
web/status: remove trailing whitespace
Brian Warner [Tue, 22 Apr 2008 18:49:53 +0000 (11:49 -0700)]
mutable: test write failures, uncoordinated write detection
Brian Warner [Tue, 22 Apr 2008 00:51:22 +0000 (17:51 -0700)]
mutable: remove some dead code, rearrange use of populate_pubkey
Brian Warner [Tue, 22 Apr 2008 00:50:50 +0000 (17:50 -0700)]
mutable: improve testing to exercise the non-cached case
Brian Warner [Tue, 22 Apr 2008 00:29:59 +0000 (17:29 -0700)]
check_speed: rearrange a bit to make it easy to disable certain portions
Brian Warner [Tue, 22 Apr 2008 00:29:12 +0000 (17:29 -0700)]
mutable status: make the 'total' timing value optional: unit tests fail otherwise
Brian Warner [Tue, 22 Apr 2008 00:27:50 +0000 (17:27 -0700)]
mutable read: enable the cache (written during mapupdate, read during retrieve). This speeds up small-file reads by about 30% over a link with an average 25ms RTT
Brian Warner [Mon, 21 Apr 2008 23:16:55 +0000 (16:16 -0700)]
mutable status: use google-chart-API to draw server response times for servermap update
Brian Warner [Mon, 21 Apr 2008 22:10:50 +0000 (15:10 -0700)]
mutable: improve test coverage slightly
Brian Warner [Mon, 21 Apr 2008 19:19:17 +0000 (12:19 -0700)]
download status: add time spent paused by the client (when we're serving over a slow HTTP link)
Zooko O'Whielacronx [Thu, 24 Apr 2008 16:57:04 +0000 (09:57 -0700)]
setup: test depends on build, which means it invokes setup.py every time, which is slower but does "the right thing" more often
There is a new target "quicktest" which depends on the .built and .checked-deps files. test-figleaf also depends on the build target now.
Zooko O'Whielacronx [Wed, 23 Apr 2008 20:41:56 +0000 (13:41 -0700)]
setup: remove the misc/hatch-eggs.py script, which we no longer use since [1937]
Peter Secor [Tue, 22 Apr 2008 00:38:04 +0000 (17:38 -0700)]
windows installer - removing uninstall tests, trying to get to a clean build that works as it's not clear that this latest build can update the virtual drive properly
Peter Secor [Mon, 21 Apr 2008 23:41:43 +0000 (16:41 -0700)]
windows installer - added -Q option to installer as well as to uninstaller, added back the SMB service stop
Peter Secor [Mon, 21 Apr 2008 23:18:29 +0000 (16:18 -0700)]
windows installer - added line to quit the system tray executable which automatically stops the SMB service, removed lnow redundant line to stop SMB service
Zooko O'Whielacronx [Tue, 22 Apr 2008 19:28:18 +0000 (12:28 -0700)]
key_generator: make default key size be a constructor argument instead of a class variable, pass default key size of 522 (the smallest that we can do) in unit tests to make them faster
Zooko O'Whielacronx [Tue, 22 Apr 2008 19:07:12 +0000 (12:07 -0700)]
setup: remove obsolete makefile target build-deps
Zooko O'Whielacronx [Mon, 21 Apr 2008 13:37:13 +0000 (06:37 -0700)]
setup: windows: make sub-ver.py treat None as 0
Brian Warner [Sat, 19 Apr 2008 03:13:28 +0000 (20:13 -0700)]
mutable/servermap: improve test coverage
Brian Warner [Sat, 19 Apr 2008 02:55:12 +0000 (19:55 -0700)]
mutable: improve test coverage, fix bug in privkey fetching, add .finished to stats, remove dead code
Zooko O'Whielacronx [Fri, 18 Apr 2008 20:24:59 +0000 (13:24 -0700)]
setup: remove the try: except: around the import of pkg_resources -- we now require setuptools at run time and at build time
Brian Warner [Fri, 18 Apr 2008 07:43:29 +0000 (00:43 -0700)]
mutable.node: avoid reentrancy problems in Deferred code on twisted2.5, by adding an eventual-send call
Zooko O'Whielacronx [Fri, 18 Apr 2008 19:17:22 +0000 (12:17 -0700)]
setup: don't try __import__(name) in _auto_deps.py
This happens to work, because all of our "distribution" (i.e. distributable packaged Python code) names to coincide with all of their "package" (i.e. a directory with a __init__.py in it, which is "import"-able) names, except, I think for Twisted on Brian's debian sid system.
But there's no reason why it should always work, and the only reason for that __import__() was to give us an explicit error message indicating missing requirements in the case that pkg_resources isn't importable or that the requirements don't have correct .egg-info metadata. So, by removing this stanza we may allow certain places to get a more ad-hoc failure message, i.e. an ImportError from somewhere, instead of an ImportError from _auto_deps.py, but that's okay.
Note that dependencies which do not have their .egg-info metadata with them are increasingly rare, since Python 2.5 distutils creates the .egg-info file by default, and Linux distributions have stopped their former practice of actively deleting the .egg-info files.
Zooko O'Whielacronx [Fri, 18 Apr 2008 18:58:00 +0000 (11:58 -0700)]
setup: trivial change to metadata to test patch/branch/build system
Zooko O'Whielacronx [Fri, 18 Apr 2008 04:32:38 +0000 (21:32 -0700)]
let MutableFileNode.__repr__() return something useful even if it isn't not initialize yet
This is because I sometimes log or examine a repr of an object from a function which is being called from that object's own __init__()...
(I'm committing this patch in order to test our patch management infrastructure.)
Zooko O'Whielacronx [Fri, 18 Apr 2008 04:09:12 +0000 (21:09 -0700)]
docs: tiny update to webapi.txt
I'm actually committing this just to test our patch management infrastructure.
Zooko O'Whielacronx [Fri, 18 Apr 2008 04:00:51 +0000 (21:00 -0700)]
docs: tiny change in webapi.txt
(I'm actually committing this patch only in order to test our patch management infrastructure.)
Zooko O'Whielacronx [Fri, 18 Apr 2008 03:57:41 +0000 (20:57 -0700)]
docs: merge conflicts between the patch to document "127.0.0.1" instead of "localhost" and some other patches (precisely which, I don't know)
Zooko O'Whielacronx [Fri, 18 Apr 2008 03:45:34 +0000 (20:45 -0700)]
docs: use "127.0.0.1" instead of "localhost"
Unfortunately there are occasionally configurations in the real world where "localhost" does not resolve to 127.0.0.1, and if a user has such a configuration then using 'localhost' could lead to an authority leak.
Zooko O'Whielacronx [Fri, 18 Apr 2008 05:07:52 +0000 (22:07 -0700)]
setup: a tiny tweak to setup to avoid requiring darcsver package if the user isn't invoking "./setup.py darcsver"
The real reason for this patch is to test our patch management infrastructure.
Brian Warner [Fri, 18 Apr 2008 03:06:06 +0000 (20:06 -0700)]
dirnode: return to 'delete fails if the child wasn't actually there' semantics, to make tests pass. There's a switch to enable/disable this
Brian Warner [Fri, 18 Apr 2008 02:57:55 +0000 (19:57 -0700)]
test_mutable: hush pyflakes
Brian Warner [Fri, 18 Apr 2008 02:57:04 +0000 (19:57 -0700)]
dirnode: update to use MutableFileNode.modify
Brian Warner [Fri, 18 Apr 2008 02:56:45 +0000 (19:56 -0700)]
testutil: minor reformatting
Brian Warner [Fri, 18 Apr 2008 02:55:51 +0000 (19:55 -0700)]
test_mutable: factor out ShouldFailMixin
Brian Warner [Fri, 18 Apr 2008 02:12:42 +0000 (19:12 -0700)]
mutable: implement MutableFileNode.modify, plus tests
Brian Warner [Fri, 18 Apr 2008 00:51:38 +0000 (17:51 -0700)]
mutable: replace MutableFileNode API, update tests. Changed all callers to use overwrite(), but that will change soon
Brian Warner [Thu, 17 Apr 2008 20:09:22 +0000 (13:09 -0700)]
mutable WIP: merge in patches from current trunk
Brian Warner [Thu, 17 Apr 2008 20:11:48 +0000 (13:11 -0700)]
mutable WIP: use fireOnOneErrback when using a DeferredList
Brian Warner [Thu, 17 Apr 2008 20:02:22 +0000 (13:02 -0700)]
mutable WIP: clean up status handling, shrink the code a lot, improve test coverage
Brian Warner [Thu, 17 Apr 2008 02:05:41 +0000 (19:05 -0700)]
mutable WIP: add servermap update status pages
Brian Warner [Thu, 17 Apr 2008 01:06:54 +0000 (18:06 -0700)]
mutable WIP: oops, fix test_mutable
Brian Warner [Thu, 17 Apr 2008 00:55:17 +0000 (17:55 -0700)]
mutable WIP: publish status doesn't know its size early enough to update the stats_provider
Brian Warner [Thu, 17 Apr 2008 00:49:06 +0000 (17:49 -0700)]
mutable WIP: re-enable publish/retrieve status
Brian Warner [Wed, 16 Apr 2008 23:29:53 +0000 (16:29 -0700)]
misc/sizes.py: update to match current defaults: 128KiB segsize, 3-of-10
Brian Warner [Wed, 16 Apr 2008 22:22:30 +0000 (15:22 -0700)]
mutable WIP: improve logging a bit
Brian Warner [Wed, 16 Apr 2008 21:49:47 +0000 (14:49 -0700)]
mutable WIP: rewrite ServerMap data structure, add tests
Brian Warner [Tue, 15 Apr 2008 23:08:32 +0000 (16:08 -0700)]
mutable WIP: rename NotEnoughPeersError to NotEnoughSharesError
Brian Warner [Tue, 15 Apr 2008 22:58:02 +0000 (15:58 -0700)]
mutable WIP: if corrupt shares cause a retrieve to fail, restart it once, ignoring those shares and using different ones
Brian Warner [Tue, 15 Apr 2008 22:57:28 +0000 (15:57 -0700)]
mutable WIP: merge conflicts in test_system.py
Brian Warner [Fri, 11 Apr 2008 21:31:16 +0000 (14:31 -0700)]
mutable WIP: split mutable.py into separate files. All tests pass.
Brian Warner [Fri, 11 Apr 2008 02:26:35 +0000 (19:26 -0700)]
mutable WIP: all tests pass, but publish/retrieve status is still stubbed out
Brian Warner [Fri, 11 Apr 2008 01:44:06 +0000 (18:44 -0700)]
mutable: WIP. make Publish work, remove some test scaffolding. test_system still fails.
Brian Warner [Tue, 8 Apr 2008 02:01:28 +0000 (19:01 -0700)]
mutable.py: checkpointing #303 work part 2, Publish is sketched out
Brian Warner [Sat, 5 Apr 2008 00:09:26 +0000 (17:09 -0700)]
mutable.py: checkpointing #303 work: retrieve does what I want, now starting in on publish
Brian Warner [Thu, 17 Apr 2008 18:13:39 +0000 (11:13 -0700)]
client: add 'node.uptime' to the stats we collect
Peter Secor [Wed, 16 Apr 2008 23:25:23 +0000 (16:25 -0700)]
native client (windows) - This update fixes Williams issue getting files to show up on the drive after
Peter Secor [Wed, 16 Apr 2008 17:52:21 +0000 (10:52 -0700)]
windows installer - added commands to stop the services if the user is installing over a running instance of Allmydata
Peter Secor [Wed, 16 Apr 2008 10:21:35 +0000 (03:21 -0700)]
native client - updated to correctly choose a drive letter if the previous drive letter has been otherwise taken while the client was not running
Brian Warner [Tue, 15 Apr 2008 23:06:09 +0000 (16:06 -0700)]
download: DownloadStopped isn't SCARY, lower the log severity
Brian Warner [Tue, 15 Apr 2008 18:20:38 +0000 (11:20 -0700)]
test_mutable.py: remove spurious Retrieve during a publish test
Brian Warner [Tue, 15 Apr 2008 18:20:04 +0000 (11:20 -0700)]
web/statistics: fix typo that make immutable-download stats missing
Brian Warner [Tue, 15 Apr 2008 18:14:58 +0000 (11:14 -0700)]
upload.py: add some notes: extensions are more like 419 than 1000 bytes
Brian Warner [Tue, 15 Apr 2008 18:11:29 +0000 (11:11 -0700)]
web: return a proper error upon POST with a bad t= value
Brian Warner [Tue, 15 Apr 2008 18:01:49 +0000 (11:01 -0700)]
misc/boodlegrid.tac: tweak sounds a bit
Brian Warner [Tue, 15 Apr 2008 06:42:20 +0000 (23:42 -0700)]
web: don't break status page when there is no helper running
Brian Warner [Tue, 15 Apr 2008 02:41:23 +0000 (19:41 -0700)]
helper: log SI in ciphertext-read-failed message
Brian Warner [Tue, 15 Apr 2008 02:26:53 +0000 (19:26 -0700)]
helper: add SI to logged progress messages
Brian Warner [Tue, 15 Apr 2008 01:36:27 +0000 (18:36 -0700)]
helper status: include percentage fetched+pushed, add helper-uploads to the upload/download list
Brian Warner [Mon, 14 Apr 2008 23:28:11 +0000 (16:28 -0700)]
webish: fix 'not running helper' status indicator on welcome page, add tests
Brian Warner [Mon, 14 Apr 2008 21:17:08 +0000 (14:17 -0700)]
stats: add /statistics web page to show them, add tests
Brian Warner [Mon, 14 Apr 2008 21:16:38 +0000 (14:16 -0700)]
offloaded: add fetched-percentage to the log message
Brian Warner [Mon, 14 Apr 2008 20:18:53 +0000 (13:18 -0700)]
helper stats: fix the /helper_status page, the recent conflict merging missed some uses. Added tests, updated the munin plugins to match
Brian Warner [Sat, 12 Apr 2008 05:51:54 +0000 (22:51 -0700)]
remove size constraint on ShareData: large directories caused errors which triggered massive memory usage. See #379 for details
Brian Warner [Sat, 12 Apr 2008 05:51:02 +0000 (22:51 -0700)]
mutable.py: catch errors during publish.. previously they were ignored. oops.
Zooko O'Whielacronx [Tue, 14 Aug 2007 16:33:49 +0000 (09:33 -0700)]
copy pyutil.time_format into src/allmydata/util
time_format() provides a good format for logging timestamps
Zooko O'Whielacronx [Mon, 14 Apr 2008 18:43:05 +0000 (11:43 -0700)]
doc: slightly clarify an error message
Zooko O'Whielacronx [Mon, 14 Apr 2008 18:08:23 +0000 (11:08 -0700)]
setup: mark Tahoe in the Trove classifiers as Production/Stable instead of Beta
Zooko O'Whielacronx [Mon, 14 Apr 2008 13:52:21 +0000 (06:52 -0700)]
setup: fix spacing in error output messages from makefile
Looking over Brian's shoulder the other day, I saw a message that said "Please seedocs/install.html".
Looking at the source code of the Makefile, it seems like it should say
@echo "ERROR: Not all of Tahoe's dependencies are in place. Please see \
docs/install.html for help on installing dependencies."
instead of its current:
@echo "ERROR: Not all of Tahoe's dependencies are in place. Please see\
docs/install.html for help on installing dependencies."
But, I remember changing this more than once in the past, so either there is a different version of make somewhere which interprets trailing backslashes differently, or someone (possibly me) has repeatedly gotten confused about this issue. Anyway, this time around, I'm trying:
@echo "ERROR: Not all of Tahoe's dependencies are in place. Please see docs/install.html for help on installing dependencies."
Even though it is > 80 chars.
Peter Secor [Fri, 11 Apr 2008 18:11:30 +0000 (11:11 -0700)]
native client - changing sector size to allow for larger uploads on Vista, XP doesn't seem to pay attention to those parameters on the virtual drive
Peter Secor [Fri, 11 Apr 2008 01:58:59 +0000 (18:58 -0700)]
native client - upgrading to 0.6 WinFUSE, need to add new files and remove old ones
Peter Secor [Fri, 11 Apr 2008 01:48:27 +0000 (18:48 -0700)]
native client - upgrade to WinFUSE 0.6, attempting to solve the issue where the Windows client thinks there isn't enough room on the virtual drive to do a copy
robk-tahoe [Fri, 11 Apr 2008 00:41:42 +0000 (17:41 -0700)]
stats_gatherer: fix typo in helper stats gathering.
robk-tahoe [Fri, 11 Apr 2008 00:25:44 +0000 (17:25 -0700)]
stats_gatherer: reconcile helper stats gathering
I'd implemented stats gathering hooks in the helper a while back.
Brian did the same without reference to my changes. This reconciles
those two changes, encompassing all the stats in both changes,
implemented through the stats_provider interface.
this also provide templates for all 10 helper graphs in the
tahoe-stats munin plugin.
robk-tahoe [Fri, 28 Mar 2008 00:25:16 +0000 (17:25 -0700)]
conflict reconciliation (part 1, stats gathering in helper)
robk-tahoe [Wed, 26 Mar 2008 01:30:46 +0000 (18:30 -0700)]
munin: added a series of munin graphs to report upload helper state
robk-tahoe [Wed, 26 Mar 2008 01:19:08 +0000 (18:19 -0700)]
stats: added stats reporting to the upload helper
adds a stats_producer for the upload helper, which provides a series of counters
to the stats gatherer, under the name 'chk_upload_helper'.
it examines both the 'incoming' directory, and the 'encoding' dir, providing
inc_count inc_size inc_size_old enc_count enc_size enc_size_old, respectively
the number of files in each dir, the total size thereof, and the aggregate
size of all files older than 48hrs
Brian Warner [Thu, 10 Apr 2008 23:47:52 +0000 (16:47 -0700)]
minor patch, to trigger the buildbot
Brian Warner [Thu, 10 Apr 2008 23:31:59 +0000 (16:31 -0700)]
back our runtime setuptools dependency down to 0.6a9 . We need a newer version to build, but can handle an older version to simply run a pre-built package
Brian Warner [Thu, 10 Apr 2008 23:29:59 +0000 (16:29 -0700)]
debian: use our own /usr/bin/tahoe, remove runtime dependency on setuptools (since it required egg-aware versions of all dependencies too)