webkitpy: Ignore previously launched pid when system is under stress
authorjbedard@apple.com <jbedard@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 14 Apr 2017 20:52:36 +0000 (20:52 +0000)
committerjbedard@apple.com <jbedard@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 14 Apr 2017 20:52:36 +0000 (20:52 +0000)
https://bugs.webkit.org/show_bug.cgi?id=170741

Unreviewed infrastructure fix.

Drivers are destroyed between failing layout tests, which is not necessary and
prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.

* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker._kill_driver): Do not destroy drivers when they are stopped.
* Scripts/webkitpy/port/driver.py:
(Driver.stop): Reset driver values set in initializer.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@215374 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py
Tools/Scripts/webkitpy/port/driver.py

index b2b5b7d..11c2856 100644 (file)
@@ -1,3 +1,18 @@
+2017-04-14  Jonathan Bedard  <jbedard@apple.com>
+
+        webkitpy: Ignore previously launched pid when system is under stress
+        https://bugs.webkit.org/show_bug.cgi?id=170741
+
+        Unreviewed infrastructure fix.
+
+        Drivers are destroyed between failing layout tests, which is not necessary and
+        prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
+
+        * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
+        (Worker._kill_driver): Do not destroy drivers when they are stopped.
+        * Scripts/webkitpy/port/driver.py:
+        (Driver.stop): Reset driver values set in initializer.
+
 2017-04-14  Andy Estes  <aestes@apple.com>
 
         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
index f5cb283..35856f0 100644 (file)
@@ -314,11 +314,9 @@ class Worker(object):
     def _kill_driver(self):
         # Be careful about how and when we kill the driver; if driver.stop()
         # raises an exception, this routine may get re-entered via __del__.
-        driver = self._driver
-        self._driver = None
-        if driver:
+        if self._driver:
             _log.debug("%s killing driver" % self._name)
-            driver.stop()
+            self._driver.stop()
 
     def _run_test_with_or_without_timeout(self, test_input, timeout, stop_when_done):
         if self._options.run_singly:
index 0b242c9..1345064 100644 (file)
@@ -394,6 +394,12 @@ class Driver(object):
             self._target_host.filesystem.rmtree(self._driver_user_cache_directory)
             self._driver_user_cache_directory = None
 
+        self._crashed_process_name = None
+        self._crashed_pid = None
+        self._driver_timed_out = False
+        self.error_from_test = str()
+        self.err_seen_eof = False
+
     def cmd_line(self, pixel_tests, per_test_args):
         cmd = self._command_wrapper()
         cmd.append(self._port._path_to_driver())