Triggered builds containing steps synchronized by a SlaveLock (counting or exclusive) are sometimes not run.

Description

I have a test buildbot configuration with two builders (that build), one of which triggers six other test builds. There are only two test build slaves which use a SlaveLock? to ensure that a slave only runs one test at a time. In this configuration if I make changes to the monitored Git repository, which in turn fires off four builds, there will often be several test slaves which are never run. There is no evidence in either the master or slave logs to indicate the cause (that I can see).

Do the builds *never* run? One possibility here is that the release of the locks is not correctly initiating a check for runnable build requests. But if that's the case, then eventually (I think at a 30-minute interval) the builds would be run anyway. The 30-minute timer is a kind of backup process for missed triggers like this.