| 1 | Hi list, |
|---|
| 2 | this is a problem I observed only on OSX so I suspect it's due to |
|---|
| 3 | some portability issue on this OS. |
|---|
| 4 | |
|---|
| 5 | ------------------------------------------------------------------------ |
|---|
| 6 | -- |
|---|
| 7 | $ buildbot restart . |
|---|
| 8 | buildbot process 24190 is dead |
|---|
| 9 | now restarting buildbot process.. |
|---|
| 10 | Following twistd.log until startup finished.. |
|---|
| 11 | |
|---|
| 12 | The buildmaster took more than 10 seconds to start, so we were unable to |
|---|
| 13 | confirm that it started correctly. Please 'tail twistd.log' and look |
|---|
| 14 | for a |
|---|
| 15 | line that says 'configuration update complete' to verify correct |
|---|
| 16 | startup. |
|---|
| 17 | ------------------------------------------------------------------------ |
|---|
| 18 | -- |
|---|
| 19 | |
|---|
| 20 | I *always* get this error, for both the buildmaster and the |
|---|
| 21 | buildslaves, it's systematic. However, the buildmaster/buildslave |
|---|
| 22 | always starts properly. I think the error is solely due to the fact |
|---|
| 23 | that buildbot fails to track the content of twistd.log, for some reason. |
|---|
| 24 | |
|---|
| 25 | I patched my installation with the following patch: |
|---|
| 26 | ------------------------------------------------------------------------ |
|---|
| 27 | -- |
|---|
| 28 | --- buildbot/scripts/logwatcher.py 2007-10-01 04:48:39.000000000 |
|---|
| 29 | +0200 |
|---|
| 30 | +++ _inst/lib/python2.4/site-packages/buildbot/scripts/ |
|---|
| 31 | logwatcher.py 2007-11-13 11:48:30.000000000 +0100 |
|---|
| 32 | @@ -27,6 +27,7 @@ |
|---|
| 33 | self.transport = FakeTransport() |
|---|
| 34 | self.f = None |
|---|
| 35 | self.processtype = "buildmaster" |
|---|
| 36 | + print "LogWatcher ctor" |
|---|
| 37 | def start(self): |
|---|
| 38 | # return a Deferred that fires when the reconfig process has |
|---|
| 39 | @@ -36,6 +37,7 @@ |
|---|
| 40 | # an IOError. |
|---|
| 41 | self.running = True |
|---|
| 42 | d = defer.maybeDeferred(self._start) |
|---|
| 43 | + print "LogWatcher start" |
|---|
| 44 | return d |
|---|
| 45 | def _start(self): |
|---|
| 46 | @@ -48,6 +50,7 @@ |
|---|
| 47 | reactor.callLater(self.TIMEOUT_DELAY, self.timeout) |
|---|
| 48 | self.poller = task.LoopingCall(self.poll) |
|---|
| 49 | self.poller.start(self.POLL_INTERVAL) |
|---|
| 50 | + print "LogWatcher _start, logfile=" + self.logfile |
|---|
| 51 | return self.d |
|---|
| 52 | def timeout(self): |
|---|
| 53 | @@ -62,7 +65,9 @@ |
|---|
| 54 | self.d.callback(results) |
|---|
| 55 | def lineReceived(self, line): |
|---|
| 56 | + print "lineReceived" |
|---|
| 57 | if not self.running: |
|---|
| 58 | + print "not self.running" |
|---|
| 59 | return |
|---|
| 60 | if "Log opened." in line: |
|---|
| 61 | self.in_reconfig = True |
|---|
| 62 | @@ -72,6 +77,7 @@ |
|---|
| 63 | self.processtype = "buildslave" |
|---|
| 64 | if self.in_reconfig: |
|---|
| 65 | + print "not self.in_reconfig" |
|---|
| 66 | print line |
|---|
| 67 | if "message from master: attached" in line: |
|---|
| 68 | @@ -90,6 +96,8 @@ |
|---|
| 69 | while True: |
|---|
| 70 | data = self.f.read(1000) |
|---|
| 71 | if not data: |
|---|
| 72 | + print "LogWatcher poll not data: " + str(data) |
|---|
| 73 | return |
|---|
| 74 | + print "LogWatcher poll HAS data" |
|---|
| 75 | self.dataReceived(data) |
|---|
| 76 | |
|---|
| 77 | ------------------------------------------------------------------------ |
|---|
| 78 | -- |
|---|
| 79 | |
|---|
| 80 | And this yields: |
|---|
| 81 | ------------------------------------------------------------------------ |
|---|
| 82 | -- |
|---|
| 83 | $ buildbot restart . |
|---|
| 84 | buildbot process 24305 is dead |
|---|
| 85 | now restarting buildbot process.. |
|---|
| 86 | Following twistd.log until startup finished.. |
|---|
| 87 | LogWatcher ctor |
|---|
| 88 | LogWatcher poll not data: |
|---|
| 89 | LogWatcher _start, logfile=twistd.log |
|---|
| 90 | LogWatcher start |
|---|
| 91 | LogWatcher poll not data: |
|---|
| 92 | [same line repeated many times] |
|---|
| 93 | LogWatcher poll not data: |
|---|
| 94 | |
|---|
| 95 | The buildmaster took more than 10 seconds to start, so we were unable to |
|---|
| 96 | confirm that it started correctly. Please 'tail twistd.log' and look |
|---|
| 97 | for a |
|---|
| 98 | line that says 'configuration update complete' to verify correct |
|---|
| 99 | startup. |
|---|
| 100 | |
|---|
| 101 | LogWatcher poll not data: |
|---|
| 102 | ------------------------------------------------------------------------ |
|---|
| 103 | -- |
|---|
| 104 | |
|---|
| 105 | I don't have time to trace the problem further but if someone wants |
|---|
| 106 | me to try something else, let me know. |
|---|
| 107 | |
|---|
| 108 | Version Information |
|---|
| 109 | Buildbot: 0.7.6 |
|---|
| 110 | Twisted: 2.5.0 |
|---|
| 111 | Python: 2.4.3 (#1, Mar 22 2007, 02:04:59) [GCC 4.0.1 (Apple Computer, |
|---|
| 112 | Inc. build 5367)] |
|---|
| 113 | Buildmaster platform: darwin |
|---|
| 114 | |
|---|
| 115 | Cheers, |
|---|
| 116 | |
|---|
| 117 | -- |
|---|
| 118 | Benoit Sigoure aka Tsuna |
|---|
| 119 | EPITA Research and Development Laboratory |
|---|
| 120 | |
|---|
| 121 | |
|---|