[Buildbot] #2951: AttributeError: 'NoneType' object has no attribute 'append'

Buildbot trac trac at buildbot.net
Mon Oct 20 19:42:30 UTC 2014

#2951: AttributeError: 'NoneType' object has no attribute 'append'
Reporter:  Ben     |       Owner:
    Type:  defect  |      Status:  new
Priority:  major   |   Milestone:  0.9.0
 Version:  0.8.9   |  Resolution:
Keywords:          |

Comment (by dustin):

 It looks like some newly-asynchronous method is being called *after* the
 `run` method finishes.  `run` has:

     def run(self):
         self._start_deferred = defer.Deferred()
         unhandled = self._start_unhandled_deferreds = []
             self._start_deferred = None
             unhandled = self._start_unhandled_deferreds
             self._start_unhandled_deferreds = None

 The issue is that both `addLog` and `log.addStdout` are now asynchronous,
 so a call to `log.addStdout` needs to wait until `addLog`'s deferred
 fires, and *then* queue up a call to its `addStdout` method.  If
 `addLog`'s deferred doesn't fire until after the "finally" block above
 runs, then `_catchup` has nowhere to put the deferred returned by

 So probably the better approach is to iteratively wait for Deferreds in
 `_start_unhandled_deferreds` until the list is empty.

Ticket URL: <http://trac.buildbot.net/ticket/2951#comment:2>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation

More information about the bugs mailing list