author | Mihnea Dobrescu-Balaur <mihneadb@gmail.com> |
Tue, 03 Sep 2013 13:56:08 -0700 | |
changeset 145473 | cb07c1c976f0ce7c624e72dda9dc8eecd6d82b84 |
parent 145472 | ecd7cbc7c1790fdc8e74d7db98c27c7f53549803 |
child 145474 | 1f401bf37ef400bcd98fefa243a5fc726dcfab8e |
push id | 25213 |
push user | kwierso@gmail.com |
push date | Wed, 04 Sep 2013 23:18:26 +0000 |
treeherder | mozilla-central@dffedf20a02d [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | ted |
bugs | 911249 |
milestone | 26.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/testing/xpcshell/runxpcshelltests.py +++ b/testing/xpcshell/runxpcshelltests.py @@ -1326,20 +1326,21 @@ class XPCShellTests(object): self.event.wait(1) self.event.clear() # find what tests are done (might be more than 1) done_tests = set() for test in running_tests: if test.done: done_tests.add(test) - test.join() + test.join(1) # join with timeout so we don't hang on blocked threads # if the test had trouble, we will try running it again # at the end of the run - if test.retry: + if test.retry or test.is_alive(): + # if the join call timed out, test.is_alive => True self.try_again_list.append(test.test_object) continue # did the test encounter any exception? if test.exception: exceptions.append(test.exception) tracebacks.append(test.traceback) # we won't add any more tests, will just wait for # the currently running ones to finish