Index: gclient_utils.py |
diff --git a/gclient_utils.py b/gclient_utils.py |
index 2402519a3351d6011dc1252f7d8922e7192f0cf5..405f493ce5275a2495cc40994958446279f7c658 100644 |
--- a/gclient_utils.py |
+++ b/gclient_utils.py |
@@ -247,7 +247,7 @@ def MakeFileAutoFlush(fileobj, delay=10): |
return new_fileobj |
-def MakeFileAnnotated(fileobj): |
+def MakeFileAnnotated(fileobj, include_zero=False): |
"""Creates a file object clone to automatically prepends every line in worker |
threads with a NN> prefix.""" |
if hasattr(fileobj, 'output_buffers'): |
@@ -265,9 +265,11 @@ def MakeFileAnnotated(fileobj): |
def annotated_write(out): |
index = getattr(threading.currentThread(), 'index', None) |
if index is None: |
- # Undexed threads aren't buffered. |
- new_fileobj.old_annotated_write(out) |
- return |
+ if not include_zero: |
+ # Unindexed threads aren't buffered. |
+ new_fileobj.old_annotated_write(out) |
+ return |
+ index = 0 |
new_fileobj.lock.acquire() |
try: |
@@ -557,7 +559,7 @@ class ExecutionQueue(object): |
self._flush_terminated_threads() |
if (not self.queued and not self.running or |
self.jobs == len(self.running)): |
- # No more worker threads or can't queue anything. |
+ logging.debug('No more worker threads or can\'t queue anything.') |
break |
# Check for new tasks to start. |
@@ -644,7 +646,7 @@ class ExecutionQueue(object): |
"""One thread to execute one WorkItem.""" |
def __init__(self, item, index, args, kwargs): |
threading.Thread.__init__(self, name=item.name or 'Worker') |
- logging.info(item.name) |
+ logging.info('_Worker(%s) reqs:%s' % (item.name, item.requirements)) |
self.item = item |
self.index = index |
self.args = args |
@@ -652,7 +654,7 @@ class ExecutionQueue(object): |
def run(self): |
"""Runs in its own thread.""" |
- logging.debug('running(%s)' % self.item.name) |
+ logging.debug('_Worker.run(%s)' % self.item.name) |
work_queue = self.kwargs['work_queue'] |
try: |
self.item.run(*self.args, **self.kwargs) |
@@ -661,7 +663,7 @@ class ExecutionQueue(object): |
logging.info('Caught exception in thread %s' % self.item.name) |
logging.info(str(sys.exc_info())) |
work_queue.exceptions.put(sys.exc_info()) |
- logging.info('Task %s done' % self.item.name) |
+ logging.info('_Worker.run(%s) done' % self.item.name) |
work_queue.ready_cond.acquire() |
try: |