[tahoe-lafs-trac-stream] [Tahoe-LAFS] #2510: test failures with foolscap-0.9.1

Tahoe-LAFS trac at tahoe-lafs.org
Wed Sep 23 00:30:23 UTC 2015


#2510: test failures with foolscap-0.9.1
--------------------------+--------------------
     Reporter:  warner    |      Owner:  warner
         Type:  defect    |     Status:  new
     Priority:  critical  |  Milestone:  1.11.0
    Component:  code      |    Version:  1.10.1
   Resolution:            |   Keywords:
Launchpad Bug:            |
--------------------------+--------------------

Comment (by warner):

 I've got a fix in https://github.com/warner/tahoe-lafs/tree/2510-new-
 foolscap .

 There were three places that looked at connection hints, all serving the
 introducer's status page. I removed the one that pulled hints from an rref
 (to populate the "subscribers are advertising these IP addresses" column),
 and the one that counted distinct IP addresses for servers (only included
 in the JSON output at `http://introducer/?t=json`).

 The remaining one was populating the "servers are advertising these IP
 addresses" column. I replaced that with entire connection hints, instead
 of just IP addresses. Since those are pretty wide, I also removed the
 "Advertised IPs" column entirely, and display the connection hints as a
 tooltip/popup on the "Advertised" (timestamp) column.

 Note that these columns have been broken since August 2014 when
 foolscap-0.6.5 was released, changing the internal hints tuple from
 `("ipv4",host,port)` to `("tcp",host,port)`. So removing them isn't much
 of a loss.

 I *think* these should work, but it's hard to test them locally, because
 tahoe's over-agressive version checks were throwing errors when I tried to
 run tahoe against my local checkout of foolscap. I had to comment those
 out, which breaks (at least) the tests that expect their output to look a
 certain way.

 There's another set of problems that might be happening with the new
 foolscap-0.9.1, which is !DirtyReactorError as tests finish up. I
 simplified the Tub shutdown code in the new foolscap, which enabled some
 further code simplifications, but I think the consequence might be that
 Tubs with pending connections don't shut them down properly (or maybe just
 quickly enough) when the Tub is shut down, and that shows up as dirty
 reactors. I think that avoiding IP-address autodetection helps (at least
 in the one case that I tested manually). Anyways, the upshot is that this
 patch may not be sufficient to fix tahoe+foolscap-0.9.1, and we might
 either need a foolscap-0.9.2 which cleans up better, or change Tahoe to
 stop defaulting to IP-address autodetection, or some combination of both.

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


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