[Buildbot-commits] buildbot ChangeLog,1.555,1.556

Brian Warner warner at users.sourceforge.net
Fri Nov 25 01:25:13 UTC 2005


Update of /cvsroot/buildbot/buildbot
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14285

Modified Files:
	ChangeLog 
Log Message:
Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-434
Creator:  Brian Warner <warner at lothar.com>

fix test_config.StartService, by not using a fixed slavePort

	* buildbot/test/test_config.py (StartService): don't claim a fixed
	port number, instead set slavePort=0 on the first pass, figure out
	what port was allocated, then switch to a config file that uses
	the allocated port.

	* buildbot/master.py (BuildMaster.loadConfig): close the old
	slaveport before opening the new one, because unit tests might
	replace slavePort=0 with the same allocated portnumber, and if we
	don't wait for the old port to close first, we get a "port already
	in use" error. There is a tiny race condition here, but the only
	threat is from other programs that bind (statically) to the same
	port number we happened to be allocated, and only if those
	programs use SO_REUSEADDR, and only if they get control in between
	reactor turns.


Index: ChangeLog
===================================================================
RCS file: /cvsroot/buildbot/buildbot/ChangeLog,v
retrieving revision 1.555
retrieving revision 1.556
diff -u -d -r1.555 -r1.556
--- ChangeLog	25 Nov 2005 00:36:41 -0000	1.555
+++ ChangeLog	25 Nov 2005 01:25:11 -0000	1.556
@@ -1,5 +1,20 @@
 2005-11-24  Brian Warner  <warner at lothar.com>
 
+	* buildbot/test/test_config.py (StartService): don't claim a fixed
+	port number, instead set slavePort=0 on the first pass, figure out
+	what port was allocated, then switch to a config file that uses
+	the allocated port.
+
+	* buildbot/master.py (BuildMaster.loadConfig): close the old
+	slaveport before opening the new one, because unit tests might
+	replace slavePort=0 with the same allocated portnumber, and if we
+	don't wait for the old port to close first, we get a "port already
+	in use" error. There is a tiny race condition here, but the only
+	threat is from other programs that bind (statically) to the same
+	port number we happened to be allocated, and only if those
+	programs use SO_REUSEADDR, and only if they get control in between
+	reactor turns.
+
 	* Makefile (TRIALARGS): update to handle Twisted > 2.1.0
 
 	* buildbot/master.py (BuildMaster.loadConfig_Sources): remove all





More information about the Commits mailing list