[Buildbot] #3567: buildbot nine master trigger traceback in old 'slave'

Buildbot trac trac at buildbot.net
Mon Jun 20 15:01:49 UTC 2016


#3567: buildbot nine master trigger traceback in old 'slave'
------------------------+--------------------
Reporter:  tardyp       |       Owner:
    Type:  enhancement  |      Status:  new
Priority:  major        |   Milestone:  0.9.0
 Version:  master       |  Resolution:
Keywords:               |
------------------------+--------------------
Description changed by tardyp:

Old description:

> worker_1   | 2016-06-20 14:50:36+0000 [Broker,client] message from
> master: attached
> worker_1   | 2016-06-20 14:50:36+0000 [Broker,client] Peer will receive
> following PB traceback:
> worker_1   | 2016-06-20 14:50:36+0000 [Broker,client] Unhandled Error
> worker_1   |    Traceback (most recent call last):
> worker_1   |      File "/usr/local/lib/python2.7/dist-
> packages/twisted/spread/banana.py", line 153, in gotItem
> worker_1   |        self.callExpressionReceived(item)
> worker_1   |      File "/usr/local/lib/python2.7/dist-
> packages/twisted/spread/banana.py", line 116, in callExpressionReceived
> worker_1   |        self.expressionReceived(obj)
> worker_1   |      File "/usr/local/lib/python2.7/dist-
> packages/twisted/spread/pb.py", line 565, in expressionReceived
> worker_1   |        method(*sexp[1:])
> worker_1   |      File "/usr/local/lib/python2.7/dist-
> packages/twisted/spread/pb.py", line 877, in proto_message
> worker_1   |        self._recvMessage(self.localObjectForID, requestID,
> objectID, message, answerRequired, netArgs, netKw)
> worker_1   |    --- <exception caught here> ---
> worker_1   |      File "/usr/local/lib/python2.7/dist-
> packages/twisted/spread/pb.py", line 891, in _recvMessage
> worker_1   |        netResult = object.remoteMessageReceived(self,
> message, netArgs, netKw)
> worker_1   |      File "/usr/local/lib/python2.7/dist-
> packages/twisted/spread/flavors.py", line 112, in remoteMessageReceived
> worker_1   |        raise NoSuchMethod("No such method: remote_%s" %
> (message,))
> worker_1   |    twisted.spread.flavors.NoSuchMethod: No such method:
> remote_getWorkerInfo
> worker_1   |
>

> I believe this is a harmless traceback. but still I had to question
> myself before understanding the problem.
>
> We should use auto-detect method, which does not trigger tracebacks on
> the old slaves.
>

> One of the easy way is to test slave first, and swallow the traceback
> inside the buildbot-worker package.
>
> Putting to 0.9.0 as this is the last time we have the change to fix the
> protocol.

New description:

 {{{
 worker_1   | 2016-06-20 14:50:36+0000 [Broker,client] message from master:
 attached
 worker_1   | 2016-06-20 14:50:36+0000 [Broker,client] Peer will receive
 following PB traceback:
 worker_1   | 2016-06-20 14:50:36+0000 [Broker,client] Unhandled Error
 worker_1   |    Traceback (most recent call last):
 worker_1   |      File "/usr/local/lib/python2.7/dist-
 packages/twisted/spread/banana.py", line 153, in gotItem
 worker_1   |        self.callExpressionReceived(item)
 worker_1   |      File "/usr/local/lib/python2.7/dist-
 packages/twisted/spread/banana.py", line 116, in callExpressionReceived
 worker_1   |        self.expressionReceived(obj)
 worker_1   |      File "/usr/local/lib/python2.7/dist-
 packages/twisted/spread/pb.py", line 565, in expressionReceived
 worker_1   |        method(*sexp[1:])
 worker_1   |      File "/usr/local/lib/python2.7/dist-
 packages/twisted/spread/pb.py", line 877, in proto_message
 worker_1   |        self._recvMessage(self.localObjectForID, requestID,
 objectID, message, answerRequired, netArgs, netKw)
 worker_1   |    --- <exception caught here> ---
 worker_1   |      File "/usr/local/lib/python2.7/dist-
 packages/twisted/spread/pb.py", line 891, in _recvMessage
 worker_1   |        netResult = object.remoteMessageReceived(self,
 message, netArgs, netKw)
 worker_1   |      File "/usr/local/lib/python2.7/dist-
 packages/twisted/spread/flavors.py", line 112, in remoteMessageReceived
 worker_1   |        raise NoSuchMethod("No such method: remote_%s" %
 (message,))
 worker_1   |    twisted.spread.flavors.NoSuchMethod: No such method:
 remote_getWorkerInfo
 worker_1   |
 }}}

 I believe this is a harmless traceback. but still I had to question myself
 before understanding the problem.

 We should use auto-detect method, which does not trigger tracebacks on the
 old slaves.


 One of the easy way is to test slave first, and swallow the traceback
 inside the buildbot-worker package.

 Putting to 0.9.0 as this is the last time we have the change to fix the
 protocol.

--

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


More information about the bugs mailing list