[webkit-reviews] review granted: [Bug 54071] nrwt multiprocessing: spawn multiple workers : [Attachment 82183] update w/ feedback from tony
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Feb 11 16:57:34 PST 2011
Tony Chang <tony at chromium.org> has granted Dirk Pranke <dpranke at chromium.org>'s
request for review:
Bug 54071: nrwt multiprocessing: spawn multiple workers
https://bugs.webkit.org/show_bug.cgi?id=54071
Attachment 82183: update w/ feedback from tony
https://bugs.webkit.org/attachment.cgi?id=82183&action=review
------- Additional Comments from Tony Chang <tony at chromium.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=82183&action=review
> Tools/Scripts/webkitpy/layout_tests/layout_package/test_runner2.py:52
> + def __init__(self, number, worker):
> + self.worker = worker
Should we name this param something other than |worker| to avoid shadowing the
module?
> Tools/Scripts/webkitpy/layout_tests/layout_package/test_runner2.py:76
> + def _worker_is_done(self, worker):
> + # FIXME: check if the worker is wedged.
> + return worker.done
What about this param?
> Tools/Scripts/webkitpy/layout_tests/layout_package/test_runner2.py:120
> + # FIXME: If we start workers up too quickly, DumpRenderTree
appears
> + # to thrash on something and time out its first few tests. Until
> + # we can figure out what's going on, sleep a bit in between
> + # workers.
> + time.sleep(0.1)
This is fine for now, but it sounds like this could lead to flakiness. Any
ideas why the old code doesn't have this problem?
> Tools/Scripts/webkitpy/layout_tests/layout_package/test_runner2.py:130
> + # We post one 'stop' message for each worker. Because the stop
message
> + # are sent after all of the tests, and because each worker will stop
> + # reading messsages after receiving a stop, we can be sure each
> + # worker will get a stop message and hence they will all shut down.
> + for i in xrange(num_workers):
> + manager_connection.post_message('stop')
This is also fine, but maybe ManagerConnection should have a stop_all_workers
method?
> Tools/Scripts/webkitpy/layout_tests/layout_package/test_runner2.py:155
> + def handle_done(self, source):
> + worker = self._workers[source]
> + worker.done = True
worker -> worker_state?
More information about the webkit-reviews
mailing list