[tahoe-lafs-trac-stream] [Tahoe-LAFS] #3761: Fake client/server pair implementing proposed GBS Python interface (part 1: immutables)

Tahoe-LAFS trac at tahoe-lafs.org
Fri Aug 20 12:45:47 UTC 2021


#3761: Fake client/server pair implementing proposed GBS Python interface (part 1:
immutables)
--------------------------+-----------------------------------
     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):

 IStorageServer is actually pretty close for immutables; will look at
 mutables next. So plausibly could make HTTP-based IStorageServer
 implementation and not change existing code.

 There's a caveat though: the current implementation has Assumptions,
 namely that:

 1. Method calls happen _sequentially_, since it's all over the same TCP
 connection.
 2. Some method implementations are synchronous on the server(!!!).

 For example, https://github.com/tahoe-lafs/tahoe-
 lafs/blob/0125deb6032369ca19e0f098719bc49129eec35f/src/allmydata/mutable/servermap.py#L611

 So the real work may be:

 1. Going through the code and manually auditing it for places where these
 assumptions hold.
 2. Perhaps simulating arbitrary delays in messages to automatically find
 places in the code that make this assumption.

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3761#comment:5>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list