Opened at 2008-11-21T23:41:57Z
Closed at 2009-02-09T01:43:13Z
#538 closed enhancement (fixed)
add get_version() method to Referenceable objects, describe our versioning scheme
Reported by: | warner | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 1.3.0 |
Component: | code-network | Version: | 1.2.0 |
Keywords: | Cc: | ||
Launchpad Bug: |
Description
Zooko and I hammered out a versioning scheme on the mailing list: http://allmydata.org/pipermail/tahoe-dev/2008-November/000879.html has the discussion.
The action items are:
- add remote_get_version methods to our four main Referenceable objects:
- storage server
- introducer server
- helper
- chk-upload-helper
- add web pages for the URLs referenced therein
- add code to call storage.get_version and stash it somewhere
- add code to upload to respect max-immutable-share-size
- add code to introducer client to get_version and require v1
- add code to helper client to get_version and require v1
Change History (4)
comment:1 Changed at 2008-11-22T02:37:17Z by warner
comment:2 Changed at 2009-02-07T19:49:54Z by zooko
- Resolution set to fixed
- Status changed from new to closed
comment:3 Changed at 2009-02-07T19:50:20Z by zooko
- Resolution fixed deleted
- Status changed from closed to reopened
Oh, it according to the most recent comment, this might not be thoroughly tested. What shall we do with this ticket?
comment:4 Changed at 2009-02-09T01:43:13Z by warner
- Resolution set to fixed
- Status changed from reopened to closed
89683a39062edc6e adds the test (confirm that the upload code honors maximum-immutable-share-size), so I think we can close this one completely now.
Note: See
TracTickets for help on using
tickets.
Mostly done, in 0eb6b324a4fcda2f, bf06492a90a3cc49, 0fab511be531c6f3, and 3e25efc010876b42. The URLs used as protocol identifiers are:
The version information is attached to the RemoteReference, in the form of a VersionedRemoteReference wrapper with a .version attribute.
The upload code has been modified to look for maximum-immutable-share-size and skip any servers which can't handle the share we want to give them. This still needs tests, though.