[Buildbot] #3606: path_module is accessed even if latent worker did not connect

Buildbot trac trac at buildbot.net
Mon Sep 12 16:19:47 UTC 2016


#3606: path_module is accessed even if latent worker did not connect
----------------------+-----------------------
Reporter:  skelly     |      Owner:
    Type:  undecided  |     Status:  new
Priority:  major      |  Milestone:  undecided
 Version:  master     |   Keywords:
----------------------+-----------------------
 If a latent worker fails to connect, then when the `missing_timeout` fires
 and the worker is terminated and restarted, the following traceback
 occurs. This worked fine in the nine betas.

 {{{
 2016-09-12 16:08:03+0000 [-] OpenStackLatentWorker runner-4 terminating
 instance db0f91b8-9c88-4cab-9507-07b176cc30d7 (runner-4)
 2016-09-12 16:08:03+0000 [-] starting build <Build skelly-test>.. pinging
 the worker <LatentWorkerForBuilder builder=u'skelly-test'
 worker=u'runner-4' state=BUILDING>
 2016-09-12 16:08:03+0000 [-] from a running build; this is a serious error
 - please file a bug at http://buildbot.net
         Traceback (most recent call last):
           File "/usr/lib64/python2.7/site-
 packages/twisted/internet/defer.py", line 393, in callback
             self._startRunCallbacks(result)
           File "/usr/lib64/python2.7/site-
 packages/twisted/internet/defer.py", line 501, in _startRunCallbacks
             self._runCallbacks()
           File "/usr/lib64/python2.7/site-
 packages/twisted/internet/defer.py", line 587, in _runCallbacks
             current.result = callback(current.result, *args, **kw)
           File "/usr/lib64/python2.7/site-
 packages/twisted/internet/defer.py", line 1241, in gotResult
             _inlineCallbacks(r, g, deferred)
         --- <exception caught here> ---
           File "/usr/lib64/python2.7/site-
 packages/twisted/internet/defer.py", line 1185, in _inlineCallbacks
             result = g.send(result)
           File "/usr/lib/python2.7/site-
 packages/buildbot/process/build.py", line 325, in startBuild
             self.setupWorkerForBuilder(workerforbuilder)
           File "/usr/lib/python2.7/site-
 packages/buildbot/process/build.py", line 217, in setupWorkerForBuilder
             self.path_module = workerforbuilder.worker.path_module
         exceptions.AttributeError: 'OpenStackLatentWorker' object has no
 attribute 'path_module'
 }}}

 The code to set path_module doesn't happen until after the worker
 attaches. But that never happens if the worker never attaches.

--
Ticket URL: <http://trac.buildbot.net/ticket/3606>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation


More information about the bugs mailing list