[Buildbot] #3081: buildbot.test.integration.test_try_client is flaky

Buildbot trac trac at buildbot.net
Fri Dec 26 16:00:56 UTC 2014


#3081: buildbot.test.integration.test_try_client is flaky
-------------------+-----------------------
Reporter:  Ben     |       Owner:  dustin
    Type:  defect  |      Status:  assigned
Priority:  major   |   Milestone:  0.9.0
 Version:  master  |  Resolution:
Keywords:          |
-------------------+-----------------------

Comment (by dustin):

 OK, I have a better picture now.

  * PBChangeSource service starts
  * _activityPoll begins, but needs to make 2 DB queries which take a
 little while
  * buildslave registers the PB port
  * PBChange.stopService is called and waits for the _activityPollDeferred
  * buildslave unregisters the PB port
  * _activityPoll calls _stopActivityPolling (but too late), sets
 self.active = True, and calls activate
  * activate registers the PB port
  * _activityPoll completes
  * _activityPollDeferred fires
  * stopService's deactivate_if_needed calls deactivate
  * stopService returns

 So this is a bit of an awkward ordering, since the port isn't even
 registered yet when stopService is called, but I think the approach is
 correct: let _activityPoll finish its work, then undo the damage if
 required.

 It's the undoing that doesn't work, though: deactivate doesn't end up
 waiting for the deactivation to complete.  Which is a whole different pile
 of code to annotate!

--
Ticket URL: <http://trac.buildbot.net/ticket/3081#comment:14>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation


More information about the bugs mailing list