Closed Bug 1576061 Opened 5 years ago Closed 1 year ago

Intermittent Wd | <random> - setup error: UnknownErrorException: unknown error (500): Failed to decode response from marionette [due to crash of Firefox - file a crash report instead]

Categories

(Remote Protocol :: Marionette, defect, P5)

Version 3
defect

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: intermittent-bug-filer, Unassigned)

References

(Depends on 1 open bug)

Details

(Keywords: intermittent-failure, regression)

Filed by: ncsoregi [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=263051573&repo=autoland
Full log: https://queue.taskcluster.net/v1/task/bgZvPu-IRL2INUtXs0htcw/runs/0/artifacts/public/logs/live_backing.log


[task 2019-08-23T00:50:52.405Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.405Z] 00:50:52 INFO - TEST-UNEXPECTED-ERROR | /webdriver/tests/element_clear/clear.py | test_null_response_value - setup error
[task 2019-08-23T00:50:52.405Z] 00:50:52 INFO - capabilities = {}
[task 2019-08-23T00:50:52.405Z] 00:50:52 INFO - configuration = {'capabilities': {'moz:firefoxOptions': {'binary': '/builds/worker/workspace/build/application/firefox/firefox', 'pref...platform.test,www2.www.not-web-platform.test', 'network.process.enabled': False}}}, 'host': '127.0.0.1', 'port': 48912}
[task 2019-08-23T00:50:52.406Z] 00:50:52 INFO - request = <SubRequest 'session' for <Function 'test_null_response_value'>>
[task 2019-08-23T00:50:52.406Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.407Z] 00:50:52 INFO - @pytest.fixture(scope="function")
[task 2019-08-23T00:50:52.407Z] 00:50:52 INFO - def session(capabilities, configuration, request):
[task 2019-08-23T00:50:52.408Z] 00:50:52 INFO - """Create and start a session for a test that does not itself test session creation.
[task 2019-08-23T00:50:52.408Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.408Z] 00:50:52 INFO - By default the session will stay open after each test, but we always try to start a
[task 2019-08-23T00:50:52.408Z] 00:50:52 INFO - new one and assume that if that fails there is already a valid session. This makes it
[task 2019-08-23T00:50:52.408Z] 00:50:52 INFO - possible to recover from some errors that might leave the session in a bad state, but
[task 2019-08-23T00:50:52.408Z] 00:50:52 INFO - does not demand that we start a new session per test."""
[task 2019-08-23T00:50:52.408Z] 00:50:52 INFO - global _current_session
[task 2019-08-23T00:50:52.409Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.409Z] 00:50:52 INFO - # Update configuration capabilities with custom ones from the
[task 2019-08-23T00:50:52.409Z] 00:50:52 INFO - # capabilities fixture, which can be set by tests
[task 2019-08-23T00:50:52.409Z] 00:50:52 INFO - caps = copy.deepcopy(configuration["capabilities"])
[task 2019-08-23T00:50:52.410Z] 00:50:52 INFO - caps.update(capabilities)
[task 2019-08-23T00:50:52.410Z] 00:50:52 INFO - caps = {"alwaysMatch": caps}
[task 2019-08-23T00:50:52.410Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.410Z] 00:50:52 INFO - # If there is a session with different capabilities active, end it now
[task 2019-08-23T00:50:52.410Z] 00:50:52 INFO - if _current_session is not None and (
[task 2019-08-23T00:50:52.410Z] 00:50:52 INFO - caps != _current_session.requested_capabilities):
[task 2019-08-23T00:50:52.410Z] 00:50:52 INFO - _current_session.end()
[task 2019-08-23T00:50:52.411Z] 00:50:52 INFO - _current_session = None
[task 2019-08-23T00:50:52.411Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.411Z] 00:50:52 INFO - if _current_session is None:
[task 2019-08-23T00:50:52.411Z] 00:50:52 INFO - _current_session = webdriver.Session(
[task 2019-08-23T00:50:52.411Z] 00:50:52 INFO - configuration["host"],
[task 2019-08-23T00:50:52.411Z] 00:50:52 INFO - configuration["port"],
[task 2019-08-23T00:50:52.412Z] 00:50:52 INFO - capabilities=caps)
[task 2019-08-23T00:50:52.412Z] 00:50:52 INFO - try:
[task 2019-08-23T00:50:52.412Z] 00:50:52 INFO - > _current_session.start()
[task 2019-08-23T00:50:52.412Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.412Z] 00:50:52 INFO - capabilities = {}
[task 2019-08-23T00:50:52.412Z] 00:50:52 INFO - caps = {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/builds/worker/workspace/build/application/firefox/firefox', 'prefs...form.test,xn--lve-6lad.www2.not-web-platform.test,www2.www.not-web-platform.test', 'network.process.enabled': False}}}}
[task 2019-08-23T00:50:52.413Z] 00:50:52 INFO - configuration = {'capabilities': {'moz:firefoxOptions': {'binary': '/builds/worker/workspace/build/application/firefox/firefox', 'pref...platform.test,www2.www.not-web-platform.test', 'network.process.enabled': False}}}, 'host': '127.0.0.1', 'port': 48912}
[task 2019-08-23T00:50:52.413Z] 00:50:52 INFO - request = <SubRequest 'session' for <Function 'test_null_response_value'>>
[task 2019-08-23T00:50:52.413Z] 00:50:52 INFO -
[task 2019-08-23T00:50:52.413Z] 00:50:52 INFO - tests/web-platform/tests/webdriver/tests/support/fixtures.py:150:
[task 2019-08-23T00:50:52.413Z] 00:50:52 INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

This is due to "error: Address already in use", which means that some process is still running, and geckodriver can't get hold of the fixed port:

https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=263051573&repo=autoland&lineNumber=12343-12357

[task 2019-08-23T00:50:37.155Z] 00:50:37     INFO - STDOUT: =============================== warnings summary ===============================
[task 2019-08-23T00:50:37.155Z] 00:50:37     INFO - STDOUT: <undetermined location>
[task 2019-08-23T00:50:37.156Z] 00:50:37     INFO - STDOUT:   Module already imported so cannot be rewritten: mozlog
[task 2019-08-23T00:50:37.157Z] 00:50:37     INFO - STDOUT:   Module already imported so cannot be rewritten: tests.support.fixtures
[task 2019-08-23T00:50:37.158Z] 00:50:37     INFO - STDOUT: -- Docs: http://doc.pytest.org/en/latest/warnings.html
[task 2019-08-23T00:50:37.158Z] 00:50:37     INFO - STDOUT: ==================== 2 passed, 2 warnings in 14.06 seconds =====================
[task 2019-08-23T00:50:37.204Z] 00:50:37     INFO - ..
[task 2019-08-23T00:50:37.204Z] 00:50:37     INFO - TEST-OK | /webdriver/tests/delete_session/delete.py | took 14165ms
[task 2019-08-23T00:50:37.274Z] 00:50:37     INFO - Closing logging queue
[task 2019-08-23T00:50:37.274Z] 00:50:37     INFO - queue closed
[task 2019-08-23T00:50:37.276Z] 00:50:37     INFO - Starting runner
[task 2019-08-23T00:50:37.307Z] 00:50:37     INFO - WebDriver HTTP server listening at http://127.0.0.1:48912/
[task 2019-08-23T00:50:37.308Z] 00:50:37     INFO - TEST-START | /webdriver/tests/element_clear/clear.py
[task 2019-08-23T00:50:37.311Z] 00:50:37     INFO - PID 5112 | /builds/worker/workspace/build/tests/bin/geckodriver: error: Address already in use (os error 98)
[task 2019-08-23T00:50:37.312Z] 00:50:37     INFO - PID 5112 | geckodriver 0.24.0 (c789725af1e4 2019-08-22 22:44 +0000)
Depends on: 1574097
See Also: → 1571426
Summary: Intermittent /webdriver/tests/element_clear/clear.py | test_null_response_value - setup error → Intermittent /webdriver/tests/<random>/<random> | <random> - setup error [error: Address already in use]
Summary: Intermittent /webdriver/tests/<random>/<random> | <random> - setup error [error: Address already in use] → Intermittent Wd | <random> - setup error [error: Address already in use]
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → INCOMPLETE
Status: REOPENED → RESOLVED
Closed: 5 years ago4 years ago
Resolution: --- → INCOMPLETE

Recent failure log: https://treeherder.mozilla.org/logviewer?job_id=330177875&repo=mozilla-esr78&lineNumber=54373

[task 2021-02-17T01:31:27.037Z] 01:31:27 INFO - PID 1630 | 1613525487028 Marionette DEBUG 0 -> [0,62,"WebDriver:SwitchToFrame",{"id":null}]
[task 2021-02-17T01:31:27.038Z] 01:31:27 INFO - PID 1630 | 1613525487030 Marionette DEBUG 0 <- [1,62,null,{"value":null}]
[task 2021-02-17T01:31:27.038Z] 01:31:27 INFO - PID 1630 | 1613525487030 webdriver::server DEBUG <- 200 OK {"value":null}
[task 2021-02-17T01:31:27.039Z] 01:31:27 INFO - STDOUT: ==================================== ERRORS ====================================
[task 2021-02-17T01:31:27.040Z] 01:31:27 INFO - STDOUT: __________________ ERROR at setup of test_no_browsing_context __________________
[task 2021-02-17T01:31:27.040Z] 01:31:27 INFO - STDOUT: capabilities = {}
[task 2021-02-17T01:31:27.040Z] 01:31:27 INFO - STDOUT: configuration = {'capabilities': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/application/Firefox.app/...form.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}, 'host': '127.0.0.1', 'port': 60683}
[task 2021-02-17T01:31:27.042Z] 01:31:27 INFO - STDOUT: request = <SubRequest 'session' for <Function 'test_no_browsing_context'>>
[task 2021-02-17T01:31:27.042Z] 01:31:27 INFO - STDOUT: @pytest.fixture(scope="function")
[task 2021-02-17T01:31:27.043Z] 01:31:27 INFO - STDOUT: def session(capabilities, configuration, request):
[task 2021-02-17T01:31:27.044Z] 01:31:27 INFO - STDOUT: """Create and start a session for a test that does not itself test session creation.
[task 2021-02-17T01:31:27.044Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.045Z] 01:31:27 INFO - STDOUT: By default the session will stay open after each test, but we always try to start a
[task 2021-02-17T01:31:27.045Z] 01:31:27 INFO - STDOUT: new one and assume that if that fails there is already a valid session. This makes it
[task 2021-02-17T01:31:27.053Z] 01:31:27 INFO - STDOUT: possible to recover from some errors that might leave the session in a bad state, but
[task 2021-02-17T01:31:27.054Z] 01:31:27 INFO - STDOUT: does not demand that we start a new session per test."""
[task 2021-02-17T01:31:27.054Z] 01:31:27 INFO - STDOUT: global _current_session
[task 2021-02-17T01:31:27.055Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.055Z] 01:31:27 INFO - STDOUT: # Update configuration capabilities with custom ones from the
[task 2021-02-17T01:31:27.055Z] 01:31:27 INFO - STDOUT: # capabilities fixture, which can be set by tests
[task 2021-02-17T01:31:27.055Z] 01:31:27 INFO - STDOUT: caps = copy.deepcopy(configuration["capabilities"])
[task 2021-02-17T01:31:27.056Z] 01:31:27 INFO - STDOUT: caps.update(capabilities)
[task 2021-02-17T01:31:27.056Z] 01:31:27 INFO - STDOUT: caps = {"alwaysMatch": caps}
[task 2021-02-17T01:31:27.056Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.056Z] 01:31:27 INFO - STDOUT: # If there is a session with different capabilities active, end it now
[task 2021-02-17T01:31:27.056Z] 01:31:27 INFO - STDOUT: if _current_session is not None and (
[task 2021-02-17T01:31:27.057Z] 01:31:27 INFO - STDOUT: caps != _current_session.requested_capabilities):
[task 2021-02-17T01:31:27.057Z] 01:31:27 INFO - STDOUT: _current_session.end()
[task 2021-02-17T01:31:27.057Z] 01:31:27 INFO - STDOUT: _current_session = None
[task 2021-02-17T01:31:27.057Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.057Z] 01:31:27 INFO - STDOUT: if _current_session is None:
[task 2021-02-17T01:31:27.058Z] 01:31:27 INFO - STDOUT: _current_session = webdriver.Session(
[task 2021-02-17T01:31:27.058Z] 01:31:27 INFO - STDOUT: configuration["host"],
[task 2021-02-17T01:31:27.058Z] 01:31:27 INFO - STDOUT: configuration["port"],
[task 2021-02-17T01:31:27.058Z] 01:31:27 INFO - STDOUT: capabilities=caps)
[task 2021-02-17T01:31:27.059Z] 01:31:27 INFO - STDOUT: try:
[task 2021-02-17T01:31:27.059Z] 01:31:27 INFO - STDOUT: > _current_session.start()
[task 2021-02-17T01:31:27.059Z] 01:31:27 INFO - STDOUT: capabilities = {}
[task 2021-02-17T01:31:27.059Z] 01:31:27 INFO - STDOUT: caps = {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/application/Firefox.app/C....test,xn--lve-6lad.www2.not-web-platform.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}}
[task 2021-02-17T01:31:27.059Z] 01:31:27 INFO - STDOUT: configuration = {'capabilities': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/application/Firefox.app/...form.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}, 'host': '127.0.0.1', 'port': 60683}
[task 2021-02-17T01:31:27.059Z] 01:31:27 INFO - STDOUT: request = <SubRequest 'session' for <Function 'test_no_browsing_context'>>
[task 2021-02-17T01:31:27.060Z] 01:31:27 INFO - STDOUT: tests/web-platform/tests/webdriver/tests/support/fixtures.py
[task 2021-02-17T01:31:27.060Z] 01:31:27 INFO - STDOUT: :153:
[task 2021-02-17T01:31:27.060Z] 01:31:27 INFO - STDOUT: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2021-02-17T01:31:27.060Z] 01:31:27 INFO - STDOUT: tests/web-platform/tests/tools/webdriver/webdriver/client.py
[task 2021-02-17T01:31:27.060Z] 01:31:27 INFO - STDOUT: :426: in start
[task 2021-02-17T01:31:27.061Z] 01:31:27 INFO - STDOUT: value = self.send_command("POST", "session", body=body)
[task 2021-02-17T01:31:27.061Z] 01:31:27 INFO - STDOUT: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2021-02-17T01:31:27.061Z] 01:31:27 INFO - STDOUT: self = <Session (disconnected)>, method = 'POST', url = 'session'
[task 2021-02-17T01:31:27.061Z] 01:31:27 INFO - STDOUT: body = {'capabilities': {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/applicat...test,xn--lve-6lad.www2.not-web-platform.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}}}
[task 2021-02-17T01:31:27.065Z] 01:31:27 INFO - STDOUT: timeout = None
[task 2021-02-17T01:31:27.065Z] 01:31:27 INFO - STDOUT: def send_command(self, method, url, body=None, timeout=None):
[task 2021-02-17T01:31:27.065Z] 01:31:27 INFO - STDOUT: """
[task 2021-02-17T01:31:27.066Z] 01:31:27 INFO - STDOUT: Send a command to the remote end and validate its success.
[task 2021-02-17T01:31:27.066Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.066Z] 01:31:27 INFO - STDOUT: :param method: HTTP method to use in request.
[task 2021-02-17T01:31:27.066Z] 01:31:27 INFO - STDOUT: :param uri: "Command part" of the HTTP request URL,
[task 2021-02-17T01:31:27.066Z] 01:31:27 INFO - STDOUT: e.g. window/rect.
[task 2021-02-17T01:31:27.067Z] 01:31:27 INFO - STDOUT: :param body: Optional body of the HTTP request.
[task 2021-02-17T01:31:27.067Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.067Z] 01:31:27 INFO - STDOUT: :return: None if the HTTP response body was empty, otherwise
[task 2021-02-17T01:31:27.067Z] 01:31:27 INFO - STDOUT: the value field returned after parsing the response
[task 2021-02-17T01:31:27.068Z] 01:31:27 INFO - STDOUT: body as JSON.
[task 2021-02-17T01:31:27.068Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.068Z] 01:31:27 INFO - STDOUT: :raises error.WebDriverException: If the remote end returns
[task 2021-02-17T01:31:27.068Z] 01:31:27 INFO - STDOUT: an error.
[task 2021-02-17T01:31:27.089Z] 01:31:27 INFO - STDOUT: :raises ValueError: If the response body does not contain a
[task 2021-02-17T01:31:27.089Z] 01:31:27 INFO - STDOUT: value key.
[task 2021-02-17T01:31:27.089Z] 01:31:27 INFO - STDOUT: """
[task 2021-02-17T01:31:27.089Z] 01:31:27 INFO - STDOUT: response = self.transport.send(
[task 2021-02-17T01:31:27.091Z] 01:31:27 INFO - STDOUT: method, url, body,
[task 2021-02-17T01:31:27.092Z] 01:31:27 INFO - STDOUT: encoder=protocol.Encoder, decoder=protocol.Decoder,
[task 2021-02-17T01:31:27.092Z] 01:31:27 INFO - STDOUT: session=self, timeout=timeout)
[task 2021-02-17T01:31:27.099Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.099Z] 01:31:27 INFO - STDOUT: if response.status != 200:
[task 2021-02-17T01:31:27.099Z] 01:31:27 INFO - STDOUT: err = error.from_response(response)
[task 2021-02-17T01:31:27.100Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.100Z] 01:31:27 INFO - STDOUT: if isinstance(err, error.InvalidSessionIdException):
[task 2021-02-17T01:31:27.101Z] 01:31:27 INFO - STDOUT: # The driver could have already been deleted the session.
[task 2021-02-17T01:31:27.101Z] 01:31:27 INFO - STDOUT: self.session_id = None
[task 2021-02-17T01:31:27.101Z] 01:31:27 INFO - STDOUT:
[task 2021-02-17T01:31:27.101Z] 01:31:27 INFO - STDOUT: > raise err
[task 2021-02-17T01:31:27.102Z] 01:31:27 INFO - STDOUT: E UnknownErrorException: unknown error (500): Failed to decode response from marionette
[task 2021-02-17T01:31:27.102Z] 01:31:27 INFO - STDOUT: body = {'capabilities': {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/applicat...test,xn--lve-6lad.www2.not-web-platform.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}}}
[task 2021-02-17T01:31:27.102Z] 01:31:27 INFO - STDOUT: err = <UnknownErrorException http_status=500>
[task 2021-02-17T01:31:27.102Z] 01:31:27 INFO - STDOUT: method = 'POST'
[task 2021-02-17T01:31:27.103Z] 01:31:27 INFO - STDOUT: response = <Response status=500 error=<UnknownErrorException http_status=500>>
[task 2021-02-17T01:31:27.103Z] 01:31:27 INFO - STDOUT: self = <Session (disconnected)>
[task 2021-02-17T01:31:27.103Z] 01:31:27 INFO - STDOUT: timeout = None
[task 2021-02-17T01:31:27.103Z] 01:31:27 INFO - STDOUT: url = 'session'
[task 2021-02-17T01:31:27.104Z] 01:31:27 INFO - STDOUT: tests/web-platform/tests/tools/webdriver/webdriver/client.py
[task 2021-02-17T01:31:27.104Z] 01:31:27 INFO - STDOUT: :477: UnknownErrorException
[task 2021-02-17T01:31:27.113Z] 01:31:27 INFO - STDOUT: ====================== 3 passed, 1 error in 6.95 seconds =======================
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - TEST-UNEXPECTED-ERROR | /webdriver/tests/get_named_cookie/get.py | test_no_browsing_context - setup error
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - capabilities = {}
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - configuration = {'capabilities': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/application/Firefox.app/...form.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}, 'host': '127.0.0.1', 'port': 60683}
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - request = <SubRequest 'session' for <Function 'test_no_browsing_context'>>
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - @pytest.fixture(scope="function")
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - def session(capabilities, configuration, request):
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - """Create and start a session for a test that does not itself test session creation.
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - By default the session will stay open after each test, but we always try to start a
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - new one and assume that if that fails there is already a valid session. This makes it
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - possible to recover from some errors that might leave the session in a bad state, but
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - does not demand that we start a new session per test."""
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - global _current_session
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.114Z] 01:31:27 INFO - # Update configuration capabilities with custom ones from the
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - # capabilities fixture, which can be set by tests
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - caps = copy.deepcopy(configuration["capabilities"])
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - caps.update(capabilities)
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - caps = {"alwaysMatch": caps}
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - # If there is a session with different capabilities active, end it now
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - if _current_session is not None and (
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - caps != _current_session.requested_capabilities):
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - _current_session.end()
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - _current_session = None
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - if _current_session is None:
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - _current_session = webdriver.Session(
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - configuration["host"],
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - configuration["port"],
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - capabilities=caps)
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - try:
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - > _current_session.start()
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - capabilities = {}
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - caps = {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/application/Firefox.app/C....test,xn--lve-6lad.www2.not-web-platform.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}}
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - configuration = {'capabilities': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/application/Firefox.app/...form.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}, 'host': '127.0.0.1', 'port': 60683}
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - request = <SubRequest 'session' for <Function 'test_no_browsing_context'>>
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - tests/web-platform/tests/webdriver/tests/support/fixtures.py:153:
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:426: in start
[task 2021-02-17T01:31:27.115Z] 01:31:27 INFO - value = self.send_command("POST", "session", body=body)
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - self = <Session (disconnected)>, method = 'POST', url = 'session'
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - body = {'capabilities': {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/applicat...test,xn--lve-6lad.www2.not-web-platform.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}}}
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - timeout = None
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - def send_command(self, method, url, body=None, timeout=None):
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - """
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - Send a command to the remote end and validate its success.
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - :param method: HTTP method to use in request.
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - :param uri: "Command part" of the HTTP request URL,
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - e.g. window/rect.
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - :param body: Optional body of the HTTP request.
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - :return: None if the HTTP response body was empty, otherwise
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - the value field returned after parsing the response
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - body as JSON.
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - :raises error.WebDriverException: If the remote end returns
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - an error.
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - :raises ValueError: If the response body does not contain a
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - value key.
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - """
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - response = self.transport.send(
[task 2021-02-17T01:31:27.116Z] 01:31:27 INFO - method, url, body,
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - encoder=protocol.Encoder, decoder=protocol.Decoder,
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - session=self, timeout=timeout)
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - if response.status != 200:
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - err = error.from_response(response)
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - if isinstance(err, error.InvalidSessionIdException):
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - # The driver could have already been deleted the session.
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - self.session_id = None
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - > raise err
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - E UnknownErrorException: unknown error (500): Failed to decode response from marionette
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - body = {'capabilities': {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1613523678/build/applicat...test,xn--lve-6lad.www2.not-web-platform.test', 'network.process.enabled': False, 'toolkit.asyncshutdown.log': True}}}}}
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - err = <UnknownErrorException http_status=500>
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - method = 'POST'
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - response = <Response status=500 error=<UnknownErrorException http_status=500>>
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - self = <Session (disconnected)>
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - timeout = None
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - url = 'session'
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO -
[task 2021-02-17T01:31:27.117Z] 01:31:27 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:477: UnknownErrorException
[task 2021-02-17T01:31:27.118Z] 01:31:27 INFO - ...
[task 2021-02-17T01:31:27.118Z] 01:31:27 INFO - TEST-OK | /webdriver/tests/get_named_cookie/get.py | took 7266ms

Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---
Status: REOPENED → RESOLVED
Closed: 4 years ago4 years ago
Resolution: --- → INCOMPLETE
Summary: Intermittent Wd | <random> - setup error [error: Address already in use] → Intermittent Wd | <random> - setup error: UnknownErrorException: unknown error (500): Failed to decode response from marionette
Moving bug to Remote Protocol::Marionette component per bug 1815831.
Component: geckodriver → Marionette
Product: Testing → Remote Protocol
Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---

(In reply to Treeherder Bug Filer from comment #39)

New failure instance: https://treeherder.mozilla.org/logviewer?job_id=422571850&repo=autoland

That failure is actually bug 1825501.

Status: REOPENED → RESOLVED
Closed: 4 years ago1 year ago
Resolution: --- → INCOMPLETE
Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---

Those failures are related to crashes which show up in the log as well and as such have been wrongly classified.

Status: REOPENED → RESOLVED
Closed: 1 year ago1 year ago
Resolution: --- → INCOMPLETE
Summary: Intermittent Wd | <random> - setup error: UnknownErrorException: unknown error (500): Failed to decode response from marionette → Intermittent Wd | <random> - setup error: UnknownErrorException: unknown error (500): Failed to decode response from marionette [due to crash of Firefox - file a crash report instead]
Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---

Again this is a crash of Firefox and a related bug needs to be filed. I mentioned it on the #sheriffs channel.

Status: REOPENED → RESOLVED
Closed: 1 year ago1 year ago
Resolution: --- → INCOMPLETE
Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---

(In reply to Treeherder Bug Filer from comment #47)

New failure instance: https://treeherder.mozilla.org/logviewer?job_id=425761256&repo=autoland

This is a crash and has JS::Rooted<JSScript *>::~Rooted() in it's stack. As such it is bug 1848391.

Status: REOPENED → RESOLVED
Closed: 1 year ago1 year ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.