[Buildbot-devel] SlaveLock across several slaves on same computer?

Stefan Seefeld seefeld at sympatico.ca
Tue Jan 5 16:48:50 UTC 2010


On 01/05/2010 11:33 AM, Dustin J. Mitchell wrote:
> On Tue, Jan 5, 2010 at 4:40 AM, Marcus Lindblom<macke at yar.nu>  wrote:
>    
>> I'm about to setup the third and fourth slave prcocess on two slave
>> computers respectively, and I was thinking that a SlaveLock that is
>> system wide (SystemLock?) would be good to have here. (We're already
>> getting timeouts in some multithreading tests due to interference.)
>>      
> To be honest, rather than try to get several independent Python apps
> to cooperate (which seems like it will be Hard once you get into the
> details), I'd rather see a way for a single slave to service multiple
> buildmasters.
>    

I don't quite agree. Being able to limit resource usage based on the 
system's load (etc.) is very useful, specifically because the machine 
may be running other things beside a single buildbot slave. (I have 
filed a request for enhancement to support proper load balancing in part 
to address this, many years ago, see issue #42.)

How hard this would be obviously depends on what metric you use to 
measure 'load'. In the simplest cases it could be a global lock 
structure (anything from flock to semaphores could work), or a query of 
the machine's load.

Once buildbot supports some form of "resource awareness", I believe it 
would be better to support multiple co-existing buildbot instances 
running in parallel, instead of lumping multiple projects / repositories 
into a single instance.

     Stefan

-- 

       ...ich hab' noch einen Koffer in Berlin...





More information about the devel mailing list