[Buildbot-devel] Severe issues with buildbot 0.7.4
Kenneth Lareau
Ken.Lareau at nominum.com
Thu Apr 19 21:00:48 UTC 2007
Brian Warner wrote:
> Kenneth Lareau <Ken.Lareau at nominum.com> writes:
>
>> buildbot 0.7.4
>
>> "/usr/local/lib/python2.4/site-packages/buildbot/slave/commands.py", line 322, in _startCommand
>> argv = (" ".join(self.command) % os.environ).split()
>
> These line numbers don't match up.. is your version of commands.py patched?
No, it's not patched; I just checked a system on which there's no
problem and the file is precisely the same.
>
>> File "/usr/local/lib/python2.4/UserDict.py", line 17, in __getitem__
>> def __getitem__(self, key): return self.data[key]
>> exceptions.KeyError: 'workdir'
>
> Hrm, where did that UserDict come from? os.environ is a regular built-in dict
> type. And why would 'workdir' be present in os.environ? In ShellCommand that
> usually comes from self.workdir .
>
> And.. I can't find that argv= source line anywhere in commands.py .. it looks
> like you may have had to modify your version.. could you forward a copy to us?
UserDict.py is a standard file for Python 2.4.x, AFAIK, or are you
questioning why it's being called? An 'env' on the system shows
no setting of 'workdir' that I see, so I'm not sure why os.environ
is being used here. I will include a copy of the commands.py file
here.
>> 2007/04/19 12:08 -0700 [-] BuildStep.failed, traceback follows
>>
>>
>> At this point buildbot stops logging completely on the master,
>> though it still seems to be responsive to other builders being
>> run.
>
> My hunch here is that something in the traceback caused twisted's logging
> module to die as it attempted to log the error on the buildmaster side. Once
> upon a time, unicode characters in log messages could do this, although I
> believe that with twisted-2.5.0 there is at least some kind of message to
> help you spot the problem (like "hey, somebody tried to log unicode, please
> don't do that"). Something which has a customized __repr__ that might throw
> an exception could be involved.
As far as I know, there is no Unicode involved, and as I mentioned
before, this system was operating fine until last night and I know
of no changes that have been made on it, unfortunately.
> It is quite likely that the buildmaster will continue on fine, although
> obviously with logging disabled it becomes awfully hard to investigate the
> problem further :).
>
> So questions for you: what does your commands.py look like, how are those
> extra keys getting put into os.environ, is there any unicode involved, and
> what platforms are your buildmaster/buildslave running on?
Including the commands.py file, no clue how the extra keys are being
put into os.environ, no Unicode involved that I know, the buildmaster
is running on RHEL 3 with python 2.4.3 and the buildslave is running
on FreeBSD 6.2 with Python 2.4.4.
> thanks,
> -Brian
>
And thank you for your quick response!
Ken
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: commands.py
URL: <http://buildbot.net/pipermail/devel/attachments/20070419/2e9be7ae/attachment.ksh>
More information about the devel
mailing list