-
- 2013-07-19 12:47:29-0700 [-] Shutting down, but these builders have someone waiting for them: [<Builder ''builder2-test-slave'' at 36320176>]
-
-
-
- --- master.py 2013-07-19 12:53:29.542900626 -0700
- +++ master_fixed.py 2013-07-19 12:53:22.811653814 -0700
- @@ -161,9 +161,19 @@
- return sorted(builders, self._sortfunc)
-
- def _get_processors(self):
- - if self.shuttingDown:
- - return []
- - builders = self.builders.values()
- + if not self.shuttingDown:
- + builders = self.builders.values()
- + else:
- + # Allow builders to run if they have something waiting on them.
- + # SMELL: this is pretty tightly coupled to the Triggerable scheduler implementation.
- + builders = list(set(
- + self.builders[bname]
- + for waiting in self.parent.allSchedulers()
- + for bname in waiting.builderNames
- + if getattr(waiting, '_waiters', None)
- + ))
- + if builders:
- + log.msg("Shutting down, but these builders have someone waiting for them: %r" % builders)
- sorter = self.prioritizeBuilders or self._sort_builders
- try:
- builders = sorter(self.parent, builders)
-