Commit Graph

2391 Commits

Author SHA1 Message Date
Brian Warner
124d531b41 filetree: mark leaf nodes by adding is_leaf_subtree(), stop traversing when we hit them, to make vdrive._get_file_uri() work 2007-01-21 13:31:16 -07:00
Brian Warner
9e7dbf20bc filetree: test NoSuchDirectoryError in vdrive.list() 2007-01-21 04:50:37 -07:00
Brian Warner
7b8c524d7c more filetree, workqueue-boxes now hold serialized Nodes, move NodeMaker out to a separate module 2007-01-21 04:18:54 -07:00
Brian Warner
324033c9e2 filetree: start testing IVirtualDrive, beginning with list() 2007-01-20 21:14:41 -07:00
Brian Warner
8c7d33f4a2 filetree: put SubTreeMaker and NodeMaker in separate classes 2007-01-20 17:04:56 -07:00
Brian Warner
ce4610c3e6 more filetree work, more tests now pass 2007-01-20 15:50:21 -07:00
Brian Warner
b61a4ff371 more filetree, it's actually starting to make sense now 2007-01-20 14:41:51 -07:00
Brian Warner
3d76250894 filetree: more tests, still very early 2007-01-20 05:13:15 -07:00
Brian Warner
c808d5a5ef filetree: refactor INode serialization, start on tests 2007-01-20 04:52:53 -07:00
Brian Warner
8921c1b666 snapshot filetree work: fix pyflakes complaints 2007-01-19 02:35:36 -07:00
Brian Warner
ff6b09d973 snapshot filetree work: it's getting close 2007-01-19 02:23:03 -07:00
Brian Warner
56df1a48f4 improve test coverage a bit 2007-01-17 15:34:29 -07:00
Brian Warner
c94098b93a split filetree_new.py up into smaller pieces, in a new subpackage 2007-01-17 13:54:38 -07:00
Brian Warner
18ec38acf0 hush pyflakes warnings 2007-01-16 21:34:34 -07:00
Brian Warner
4101bcf218 update URI format, include codec name 2007-01-16 21:29:59 -07:00
Brian Warner
56cf2dbd7e now that foolscap-0.0.7 accepts connect-to-self, allow peers to know about themselves. We now require foolscap-0.0.7 2007-01-16 15:12:49 -07:00
Brian Warner
2150ac0e53 hush pyflakes warnings 2007-01-15 21:31:10 -07:00
Brian Warner
3209fd5e09 rearrange encode/upload, add URIs, switch to ReplicatingEncoder
Added metadata to the bucket store, which is used to hold the share number
(but the bucket doesn't know that, it just gets a string).

Modified the codec interfaces a bit.

Try to pass around URIs to/from download/upload instead of verifierids.
URI format is still in flux.

Change the current (primitive) file encoder to use a ReplicatingEncoder
because it provides ICodecEncoder. We will be moving to the (less primitive)
file encoder (currently in allmydata.encode_new) eventually, but for now
this change lets us test out PyRS or zooko's upcoming C-based RS codec in
something larger than a single unit test. This primitive file encoder only
uses a single segment, and has no merkle trees.

Also added allmydata.util.deferredutil for a DeferredList wrapper that
errbacks (but only when all component Deferreds have fired) if there were
any errors, which unfortunately is not a behavior available from the standard
DeferredList.
2007-01-15 21:22:22 -07:00
Brian Warner
78a9e815c5 add simple metadata (a single string) to the storage protocol 2007-01-15 14:01:22 -07:00
Brian Warner
417c17755b use the word 'codec' for erasure coding, for now. 'encode' is used for file-level segmentation/hashing 2007-01-11 20:51:27 -07:00
Brian Warner
ceda350892 test_system.py: exercise queen.Roster._lost_node too 2007-01-09 19:40:36 -07:00
Brian Warner
aad0a9dfac workqueue: more tests 2007-01-09 01:58:50 -07:00
Brian Warner
d61c0a6ef6 workqueue: more tests, coverage now at 63.4%, yay 2007-01-09 01:36:12 -07:00
Brian Warner
b641f6cbc7 workqueue: more improvements, more tests 2007-01-08 22:29:42 -07:00
Brian Warner
b9edb02820 workqueue: start adding tests 2007-01-08 21:29:33 -07:00
Brian Warner
2567a26519 rename the new filetable code to 'filetree', since robk astutely pointed out that 'table' is misleading and implies a flat list of files in a single directory 2007-01-08 16:29:14 -07:00
Brian Warner
2566452091 test_encode_share.py: fix some pyflakes warnings 2007-01-05 18:53:22 -07:00
Brian Warner
4ba6f47d2c add some (disabled) encoder benchmarking code 2007-01-05 18:46:03 -07:00
Brian Warner
42c0d2e336 disable figleaf tracing during py_ecc, since it takes *forever*, especially on the slow buildslave 2007-01-05 18:12:04 -07:00
Brian Warner
409d92e746 only run a single (short) py_ecc test on slave3, since it is so slow the tests timeout 2007-01-05 00:42:52 -07:00
Brian Warner
e1c6ee9dcf encoding: fix the last py_ecc problem, tests pass now 2007-01-05 00:06:42 -07:00
Brian Warner
c91d14dca8 fix our use of py_ecc (set log2FieldSize=8 explicitly) 2007-01-04 23:50:21 -07:00
Brian Warner
f31fc06d89 establish IEncoder/IDecoder, create suitable interfaces for both the simple replicating encoder and the py_ecc one, add a (failing) unit test for it 2007-01-04 21:52:51 -07:00
Brian Warner
fa11c3f722 more pyflakes cleanups 2007-01-04 18:06:20 -07:00
Brian Warner
f97eec893e figleaf: move a copy into allmydata.util.figleaf, update Makefile/trial stuff 2007-01-03 21:38:29 -07:00
Brian Warner
e600571f82 checkpoint work-in-progress for WorkQueue, a disk-persistent list of work to be done 2007-01-01 23:47:16 -07:00
Brian Warner
cf53abab42 more filetable_new tests 2006-12-25 00:56:18 -07:00
Brian Warner
70f5c13e26 checkpointing new filetable work.. tests don't pass yet 2006-12-24 12:39:24 -07:00
Brian Warner
eb3b9b16af encode: start to fix a few problems, still a lot of work left to go 2006-12-14 04:31:17 -07:00
Brian Warner
3e5e2ee9fe make initial simple encode_new test pass 2006-12-14 04:17:01 -07:00
Brian Warner
3490378551 move all packages into src/, fix allmydata.Crypto build. Now you must perform a 'setup.py build' before using anything, and you must add the build directory (build/lib.linux-i686-2.4) to your PYTHONPATH before doing anything 2006-12-14 03:39:50 -07:00