[Buildbot-devel] buildbot from git hangs during setup until slave connects?

Dan Kegel dank at kegel.com
Fri Sep 28 18:17:10 UTC 2012


Interesting.  When buildbot is only listening on one of the two
expected ports, the log shows

...
2012-09-28 11:04:20-0700 [-] PBServerFactory starting on 60999
2012-09-28 11:04:20-0700 [-] Starting factory
<twisted.spread.pb.PBServerFactory instance at 0x2a31488>
2012-09-28 11:04:20-0700 [-] adding scheduler 'ho_nightly_force'
2012-09-28 11:04:20-0700 [-] adding scheduler 'ho_nightly'
2012-09-28 11:04:20-0700 [-] WebStatus using
(/home/buildbot/master-state/sandbox/hello/public_html)
2012-09-28 11:04:20-0700 [-] Loading builder ho_mr_u12's build 1 from
on-disk pickle
2012-09-28 11:04:20-0700 [-] RotateLogSite starting on 60020
2012-09-28 11:04:20-0700 [-] Starting factory
<buildbot.status.web.baseweb.RotateLogSite instance at 0x7f856c01a9e0>
2012-09-28 11:04:20-0700 [-] Setting up http.log rotating 10 files of
10000000 bytes each
2012-09-28 11:04:20-0700 [-] BuildMaster is running
2012-09-28 11:04:20-0700 [buildbot.status.web.baseweb.RotateLogSite]
(TCP Port 60020 Closed)
2012-09-28 11:04:20-0700 [buildbot.status.web.baseweb.RotateLogSite]
Stopping factory <buildbot.status.web.baseweb.RotateLogSite instance
at 0x7f856c01a9e0>
2012-09-28 11:09:20-0700 [-]
/home/buildbot/master-state/sandbox/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/internet/utils.py:25:
exceptions.DeprecationWarning: Argument strings and environment
keys/values passed to reactor.spawnProcess should be str, not unicode.
2012-09-28 11:09:20-0700 [-] gitpoller: processing 0 changes: [] from
"git.oblong.com:~dank/pub/hello.git"

Why'd it report port 60020 closed?
- Dan

p.s. Here's an improved test script.
I also fixed the last line of the C program to return 0 on success:
return (n_ok == i) ? 0 : 1;

#!/bin/sh
set -x
i=0
# This host is on a LAN, and it's ok if we shorten TIME_WAIT during this test
echo 10 | sudo tee /proc/sys/net/ipv4/tcp_fin_timeout
gcc connect.c -o connect

if netstat -at | egrep '60020|60999'
then
    sh master.sh stop hello
fi

while true
do
   i=`expr $i + 1`
   while netstat -at | egrep '60020|60999'
   do
      echo "Waiting for ports 60020 and 60999 to be free"
      sleep 1
   done

   sh master.sh start hello
   while ! ./connect 60020 60999
   do
       sleep 1
   done
   sh master.sh stop hello
   sleep 1
done




More information about the devel mailing list