[tahoe-lafs-trac-stream] [Tahoe-LAFS] #3779: Ensure IStorageServer-using code doesn't have interactions that conflict with HTTP implementation
Tahoe-LAFS
trac at tahoe-lafs.org
Wed Aug 25 17:00:46 UTC 2021
#3779: Ensure IStorageServer-using code doesn't have interactions that conflict
with HTTP implementation
--------------------------+-----------------------------------
Reporter: itamarst | Owner: itamarst
Type: task | Status: new
Priority: normal | Milestone: HTTP Storage Protocol
Component: unknown | Version: n/a
Resolution: | Keywords:
Launchpad Bug: |
--------------------------+-----------------------------------
Comment (by itamarst):
To go the manual audit route, given a whole bunch of arbitrary fakes:
1. For each method in IStorageServer and related objects (bucket
reader/writer), grep for method definitions; eventually this should
discover all fakes. E.g. allmydata.test.mutable.util.FakeStorageServer is
not annotated with the IStorageServer interface but implements it.
2. For each fake, temporarily add logic to print tracebacks(?) to file.
3. Temporarily add logic to print tracebacks to file for real code too.
4. Run unit and integration tests.
5. Uniquify file.
6. Permanently add interface implementation annotation, so in the future
we can just use grep.
At this point we should have locations of all calls into Foolscap storage
protocol, and can audit it for bad assumptions like "order of calls
matches order of delivery".
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3779#comment:2>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list