Opened 13 years ago

Closed 13 years ago

#3424 defect closed fixed (fixed)

Intermittent failure of twisted.names.test.test_names.ServerDNSTestCase.testZoneTransfer on OS X

Reported by: Jean-Paul Calderone Owned by:
Priority: normal Milestone:
Component: names Keywords:
Cc: Branch: branches/dns-test-cleanup-3424
branch-diff, diff-cov, branch-cov, buildbot
Author: exarkun

Description

[ERROR]: twisted.names.test.test_names.ServerDNSTestCase.testZoneTransfer

Traceback (most recent call last):
Failure: twisted.trial.util.DirtyReactorAggregateError: Reactor was unclean.
Selectables:
<DNSProtocol #0 on 58948>

Change History (6)

comment:1 Changed 13 years ago by Jean-Paul Calderone

This is because the server side of the TCP connection established to perform the zone transfer isn't waited for when the test is finished. In fact, nothing about it is exposed through any interface, so it would be hard to wait for it to disconnect. DNSServerFactory needs a new method, I think.

comment:2 Changed 13 years ago by Jean-Paul Calderone

author: exarkun
Branch: branches/dns-test-cleanup-3424

(In [24788]) Branching to 'dns-test-cleanup-3424'

comment:3 Changed 13 years ago by Jean-Paul Calderone

Keywords: review added
Owner: Jean-Paul Calderone deleted

Should be fixed.

comment:4 Changed 13 years ago by therve

Keywords: review removed
Owner: set to Jean-Paul Calderone

One unrelated flake: twisted/names/test/test_dns.py:506: redefinition of function 'test_dname' from line 496

Everything else is fine, please merge.

comment:5 Changed 13 years ago by Jean-Paul Calderone

Resolution: fixed
Status: newclosed

(In [24813]) Merge dns-test-cleanup-3424

Author: exarkun Reviewer: therve Fixes: #3424

Change DNSServerFactory so that it keeps track of all the TCP clients connected to it. Use this information in the tests to make sure all selectables are cleaned up before the test ends so that trial does not report that the reactor is unclean.

comment:6 Changed 11 years ago by <automation>

Owner: Jean-Paul Calderone deleted
Note: See TracTickets for help on using tickets.