Modified: trunk/Tools/ChangeLog (236578 => 236579)
--- trunk/Tools/ChangeLog 2018-09-28 00:23:37 UTC (rev 236578)
+++ trunk/Tools/ChangeLog 2018-09-28 00:50:28 UTC (rev 236579)
@@ -1,3 +1,19 @@
+2018-09-27 Ryan Haddad <[email protected]>
+
+ Increase the timeout for iOS Simulator data migration
+ https://bugs.webkit.org/show_bug.cgi?id=190059
+
+ Reviewed by Aakash Jain.
+
+ 3 minutes isn't always enough time for the data migrator to complete
+ when booting up multiple iOS Simulators. Change the timeout to 10 minutes.
+
+ * Scripts/webkitpy/xcode/simulated_device.py:
+ (SimulatedDeviceManager): Create a constant for the default timeout.
+ (SimulatedDeviceManager.initialize_devices): Use new constant.
+ (SimulatedDeviceManager.swap): Ditto.
+ (SimulatedDeviceManager.wait_until_data_migration_is_done): Ditto.
+
2018-09-27 Alex Christensen <[email protected]>
URLParser should use TextEncoding through an abstract class
Modified: trunk/Tools/Scripts/webkitpy/xcode/simulated_device.py (236578 => 236579)
--- trunk/Tools/Scripts/webkitpy/xcode/simulated_device.py 2018-09-28 00:23:37 UTC (rev 236578)
+++ trunk/Tools/Scripts/webkitpy/xcode/simulated_device.py 2018-09-28 00:50:28 UTC (rev 236579)
@@ -61,6 +61,8 @@
AVAILABLE_DEVICES = []
INITIALIZED_DEVICES = None
+ SIMULATOR_BOOT_TIMEOUT = 600
+
# FIXME: Simulators should only take up 2GB, but because of <rdar://problem/39393590> something in the OS thinks they're taking closer to 6GB
MEMORY_ESTIMATE_PER_SIMULATOR_INSTANCE = 6 * (1024 ** 3) # 6GB a simulator.
PROCESS_COUNT_ESTIMATE_PER_SIMULATOR_INSTANCE = 125
@@ -314,7 +316,7 @@
SimulatedDeviceManager.INITIALIZED_DEVICES.append(device)
@staticmethod
- def initialize_devices(requests, host=SystemHost(), name_base='Managed', simulator_ui=True, timeout=180, **kwargs):
+ def initialize_devices(requests, host=SystemHost(), name_base='Managed', simulator_ui=True, timeout=SIMULATOR_BOOT_TIMEOUT, **kwargs):
if SimulatedDeviceManager.INITIALIZED_DEVICES is not None:
return SimulatedDeviceManager.INITIALIZED_DEVICES
@@ -395,7 +397,7 @@
return min(max_supported_simulators_locally, max_supported_simulators_for_hardware)
@staticmethod
- def swap(device, request, host=SystemHost(), name_base='Managed', timeout=180):
+ def swap(device, request, host=SystemHost(), name_base='Managed', timeout=SIMULATOR_BOOT_TIMEOUT):
if SimulatedDeviceManager.INITIALIZED_DEVICES is None:
raise RuntimeError('Cannot swap when there are no initialized devices')
if device not in SimulatedDeviceManager.INITIALIZED_DEVICES:
@@ -419,7 +421,7 @@
SimulatedDeviceManager.wait_until_data_migration_is_done(host, max(0, deadline - time.time()))
@staticmethod
- def wait_until_data_migration_is_done(host, timeout=180):
+ def wait_until_data_migration_is_done(host, timeout=SIMULATOR_BOOT_TIMEOUT):
# The existence of a datamigrator process means that simulators are still booting.
deadline = time.time() + timeout
_log.debug('Waiting until no com.apple.datamigrator processes are found')