[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