Closed Bug 1488554 Opened Last year Closed 11 months ago

Enable the launcher process by default on Nightly

Categories

(Firefox :: General, enhancement, P1)

Unspecified
Windows
enhancement

Tracking

()

RESOLVED FIXED
Firefox 64
Tracking Status
firefox63 --- unaffected
firefox64 --- fixed

People

(Reporter: aklotz, Assigned: aklotz)

References

(Blocks 1 open bug)

Details

(Whiteboard: inj+)

Attachments

(4 files)

We want this to ride the 64 train if possible, but we need to enable on Nightly first.
The launcher process needs a couple of flags to work correctly under talos.
This patch sets those flags.
When the launcher process is enabled, the firefox.exe process that we want to
track for main thread I/O isn't the first firefox process that started, but
rather the second firefox.exe process, i.e. the first child process of the first
firefox.exe process.

Depends on D4970
Comment on attachment 9006361 [details]
Bug 1488554: Part 3 - Set default value of --enable-launcher-process to true on Windows Nightly builds; r=froydnj!

Nathan Froyd [:froydnj] has approved the revision.
Attachment #9006361 - Flags: review+
Comment on attachment 9006356 [details]
Bug 1488554: Part 1 - Modify Talos to work with bootstrap process; r=jmaher!

Joel Maher ( :jmaher ) (UTC-4) has approved the revision.
Attachment #9006356 - Flags: review+
Comment on attachment 9006358 [details]
Bug 1488554: Part 2 - Modify talos/xperf to work with bootstrap process; r=jmaher!

Joel Maher ( :jmaher ) (UTC-4) has approved the revision.
Attachment #9006358 - Flags: review+
https://hg.mozilla.org/integration/mozilla-inbound/rev/0d03acc584bc60a593f8b2865e82b78cfca9adaf
Bug 1488554: Part 1 - Modify Talos to work with bootstrap process; r=jmaher!

https://hg.mozilla.org/integration/mozilla-inbound/rev/6a34f57792812095e45386c276940b652f947d7a
Bug 1488554: Part 2 - Modify talos/xperf to work with bootstrap process; r=jmaher!

https://hg.mozilla.org/integration/mozilla-inbound/rev/a21462dc142ad715926864ac5ccccadcdc2595f7
Bug 1488554: Part 3 - Set default value of --enable-launcher-process to true on Windows Nightly builds; r=froydnj!
Backed out 3 changesets (bug 1488554) for build bustage at configure\test_toolchain_configure.py on a CLOSED TREE

Backout link: https://hg.mozilla.org/integration/mozilla-inbound/rev/9dc064f701b6df79d4fd3ca7ab8f7cecc5870aaa

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=a21462dc142ad715926864ac5ccccadcdc2595f7

Log link: https://treeherder.mozilla.org/logviewer.html#?job_id=197508927&repo=mozilla-inbound&lineNumber=46785

Log snippet: 
00:43:04     INFO - ============================= test session starts =============================
00:43:04     INFO - platform win32 -- Python 2.7.14, pytest-3.6.2, py-1.5.4, pluggy-0.6.0 -- z:\build\build\src\obj-firefox\_virtualenvs\src-5kxztrTV-2.7\Scripts\python.exe
00:43:04     INFO - rootdir: z:\build\build\src, inifile: z:\build\build\src\config\mozunit\mozunit\pytest.ini
00:43:04     INFO - collecting ... collected 52 items
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_absolute_path PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_atypical_name PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_guess_cxx PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_guess_cxx_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_mismatched_compiler PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_mismatched_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_mixed_compilers PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_no_supported_compiler PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_overridden_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_unsupported_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxToolchainTest::test_unsupported_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxSimpleCrossToolchainTest::test_cross_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxSimpleCrossToolchainTest::test_cross_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxX86_64CrossToolchainTest::test_cross_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxX86_64CrossToolchainTest::test_cross_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OSXToolchainTest::test_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OSXToolchainTest::test_forced_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OSXToolchainTest::test_forced_unsupported_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OSXToolchainTest::test_not_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OSXToolchainTest::test_unsupported_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_cannot_cross PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_clang_cl PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_msvc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_overridden_unsupported_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_overridden_unsupported_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::WindowsToolchainTest::test_unsupported_msvc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_cannot_cross PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_clang_cl PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_msvc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_overridden_unsupported_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_overridden_unsupported_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::Windows64ToolchainTest::test_unsupported_msvc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cannot_cross PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_atypical_clang PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_clang PASSED
00:43:04  WARNING - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_gcc_misc TEST-UNEXPECTED-FAIL
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_ppc_ppc64 PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_sparc_sparc64 PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_cross_x86_x64 PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_guess_cross_cxx PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_overridden_cross_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::LinuxCrossCompileToolchainTest::test_overridden_unsupported_cross_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OSXCrossToolchainTest::test_cannot_osx_cross PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OSXCrossToolchainTest::test_osx_cross PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::OpenBSDToolchainTest::test_gcc PASSED
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py::RustTest::test_rust_target PASSED
00:43:04     INFO - ================================== FAILURES ===================================
00:43:04     INFO - _____________ LinuxCrossCompileToolchainTest.test_cross_gcc_misc ______________
00:43:04     INFO - self = <test_toolchain_configure.LinuxCrossCompileToolchainTest testMethod=test_cross_gcc_misc>
00:43:04     INFO -     def test_cross_gcc_misc(self):
00:43:04     INFO -         for target in self.PLATFORMS:
00:43:04     INFO -             if not target.endswith('-pc-linux-gnu'):
00:43:04     INFO - >               self.do_test_cross_gcc('x86_64-pc-linux-gnu', target)
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py:1309:
00:43:04     INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py:1301: in do_test_cross_gcc
00:43:04     INFO -     'host_cxx_compiler': self.DEFAULT_GXX_RESULT,
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\test_toolchain_configure.py:402: in do_toolchain_test
00:43:04     INFO -     logger=self.logger)
00:43:04     INFO - ..\python\mozbuild\mozbuild\test\configure\common.py:295: in get_sandbox
00:43:04     INFO -     sandbox.include_file(os.path.join(topsrcdir, 'moz.configure'))
00:43:04     INFO - ..\python\mozbuild\mozbuild\configure\__init__.py:390: in include_file
00:43:04     INFO -     exec_(code, self)
00:43:04     INFO - ..\python\mozbuild\mozbuild\util.py:59: in exec_
00:43:04     INFO -     exec(object, globals, locals)
00:43:04     INFO - ..\moz.configure:7: in <module>
00:43:04     INFO -     include('build/moz.configure/init.configure')
00:43:04     INFO - ..\python\mozbuild\mozbuild\configure\__init__.py:694: in include_impl
00:43:04     INFO -     self.include_file(what)
00:43:04     INFO - ..\python\mozbuild\mozbuild\configure\__init__.py:390: in include_file
00:43:04     INFO -     exec_(code, self)
00:43:04     INFO - ..\python\mozbuild\mozbuild\util.py:59: in exec_
00:43:04     INFO -     exec(object, globals, locals)
00:43:04     INFO - ..\build\moz.configure\init.configure:155: in <module>
00:43:04     INFO -     @imports(_from='mozbuild.mozconfig', _import='MozconfigLoader')
00:43:04     INFO - ..\python\mozbuild\mozbuild\configure\__init__.py:677: in decorator
00:43:04     INFO -     depends = DependsFunction(self, func, dependencies, when=when)
Flags: needinfo?(aklotz)
Depends on: 1488627
Please note that there are also test failures for MnH jobs like the following:

https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&filter-searchStr=mn&bugfiler&selectedJob=197520899

00:55:39     INFO -  {"thread": "MainThread", "level": "ERROR", "pid": 1152, "source": "Marionette test runner", "time": 1536108939592, "action": "log", "message": "Failure during harness execution", "stack": "Traceback (most recent call last):\n\n  File \"Z:\\task_1536108520\\build\\tests\\marionette\\harness\\marionette_harness\\runtests.py\", line 94, in cli\n    failed = harness_instance.run()\n\n  File \"Z:\\task_1536108520\\build\\tests\\marionette\\harness\\marionette_harness\\runtests.py\", line 74, in run\n    runner.run_tests(tests)\n\n  File \"Z:\\task_1536108520\\build\\venv\\lib\\site-packages\\marionette_harness\\runner\\base.py\", line 857, in run_tests\n    self.marionette = self.driverclass(**self._build_kwargs())\n\n  File \"Z:\\task_1536108520\\build\\venv\\lib\\site-packages\\marionette_driver\\marionette.py\", line 631, in __init__\n    self.start_binary(self.startup_timeout)\n\n  File \"Z:\\task_1536108520\\build\\venv\\lib\\site-packages\\marionette_driver\\marionette.py\", line 655, in start_binary\n    reraise(IOError, msg.format(timeout), tb)\n\n  File \"Z:\\task_1536108520\\build\\venv\\lib\\site-packages\\marionette_driver\\marionette.py\", line 646, in start_binary\n    self.raise_for_port(timeout=timeout)\n\n  File \"Z:\\task_1536108520\\build\\venv\\lib\\site-packages\\marionette_driver\\marionette.py\", line 726, in raise_for_port\n    self.host, self.port))\n\nIOError: Process killed after 120s because no connection to Marionette server could be established. Check gecko.log for errors\n"}
Depends on: 1488872
Depends on: 1489277
Flags: needinfo?(aklotz)
Depends on: 1492865
Depends on: 1492867
Depends on: 1493000
Depends on: 1493845
Comment on attachment 9011599 [details]
Bug 1488554: Part 4 - Make FirefoxRunner pass --wait-for-browser on Windows; r?ahal!

Andrew Halberstadt [:ahal] has approved the revision.
Attachment #9011599 - Flags: review+
Pushed by aklotz@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/aac4dc44ffda
Part 1 - Modify Talos to work with bootstrap process; r=jmaher
https://hg.mozilla.org/integration/autoland/rev/8461e2f532ed
Part 2 - Modify talos/xperf to work with bootstrap process; r=jmaher
https://hg.mozilla.org/integration/autoland/rev/cffbe101e63b
Part 3 - Set default value of --enable-launcher-process to true on Windows Nightly builds; r=froydnj
https://hg.mozilla.org/integration/autoland/rev/6e4da634fab4
Part 4 - Make FirefoxRunner pass --wait-for-browser on Windows; r=ahal
Blocks: 1494398
No longer depends on: 1492867
Depends on: 1495114
No longer depends on: 1495114
See Also: → 1495310
This is breaking Firefox nightly on startup with McAfee: bug 1496078
Depends on: 1496184
Part 2 - Modify talos/xperf to work with bootstrap process - got backed out from beta due to bug 1494698:
https://hg.mozilla.org/releases/mozilla-beta/rev/f76d65097eb36e929926ebf9ebe86052bbd2f67e
Depends on: 1498257
No longer depends on: 1498257
Depends on: 1496179
Depends on: 1523870
Depends on: 1528963
You need to log in before you can comment on or make changes to this bug.