[tahoe-lafs-trac-stream] [Tahoe-LAFS] #2768: intermittent DirtyReactor failures in test_system.Connections.test_rref

Tahoe-LAFS trac at tahoe-lafs.org
Mon Apr 4 05:23:25 UTC 2016


#2768: intermittent DirtyReactor failures in test_system.Connections.test_rref
--------------------+---------------------------
 Reporter:  warner  |          Owner:
     Type:  defect  |         Status:  new
 Priority:  minor   |      Milestone:  undecided
Component:  code    |        Version:  1.11.0
 Keywords:          |  Launchpad Bug:
--------------------+---------------------------
 With Foolscap-0.11.0 and Twisted-16.0.0, and a computer that is online
 (and thus has an external IP address, and thus auto-detected FURLs have
 two or more location hints {including localhost}), I occasionally see the
 following !DirtyReactorError in `test_system.Connections.test_rref`:

 {{{
 [ERROR]
 Traceback (most recent call last):
 Failure: twisted.trial.util.DirtyReactorAggregateError: Reactor was
 unclean.
 DelayedCalls: (set twisted.internet.base.DelayedCall.debug = True to
 debug)
 <DelayedCall 0x102f15440 [0.0305078029633s] called=0 cancelled=0
 LoopingCall<0.3>(iterateEndpoint, *(), **{})()>
 <DelayedCall 0x102f3dea8 [0.0598268508911s] called=0 cancelled=0
 LoopingCall<0.3>(iterateEndpoint, *(), **{})()>
 <DelayedCall 0x102fcb248 [0.18648314476s] called=0 cancelled=0
 LoopingCall<0.3>(iterateEndpoint, *(), **{})()>
 <DelayedCall 0x102fc72d8 [0.186053037643s] called=0 cancelled=0
 LoopingCall<0.3>(iterateEndpoint, *(), **{})()>

 allmydata.test.test_system.Connections.test_rref
 }}}

 This is a consequence of [https://twistedmatrix.com/trac/ticket/8223
 Twisted#8223], which is fixed in the upcoming Twisted-16.1.0 .

 * Foolscap-0.11.0 is necessary to expose the bug because that's the first
 version to use Twisted's `HostnameEndpoint`
 * Twisted-16.0.0 is necessary to expose the bug because previous versions
 didn't work at all ([https://twistedmatrix.com/trac/ticket/8014
 Twisted#8014])
 * multiple network addresses are necessary to expose the bug because 8223
 involves cancelling an endpoint.connect, which only happens when Foolscap
 succeeds with one hint (and thus cancels the others).

 I don't know if we need to fix anything in Tahoe to deal with this. I
 suppose we could bump the Twisted dependency to 16.1.0, once it comes out
 (probably in the next few weeks). I'm mostly just filing this ticket to
 help others who run into this same problem before it goes away by itself.

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2768>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


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