Closed Bug 1677887 Opened 4 years ago Closed 3 years ago

Intermittent remote/cdp/test/browser/browser_agent.js | remote-listening observer notified - Didn't expect undefined, but got it | Uncaught exception - at chrome://*/browser_agent.js:66 - TypeError: can't access property "port", boundURL is undefined

Categories

(Remote Protocol :: CDP, defect, P5)

defect

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: intermittent-bug-filer, Unassigned)

References

(Depends on 1 open bug)

Details

(Keywords: intermittent-failure)

Filed by: btara [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=322115104&repo=mozilla-central
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/GG6tvdzHQZuLLafAlx7iVw/runs/0/artifacts/public/logs/live_backing.log


[task 2020-11-17T23:51:59.524Z] 23:51:59     INFO - TEST-START | remote/test/browser/browser_agent.js
[task 2020-11-17T23:51:59.589Z] 23:51:59     INFO - GECKO(1513) | !!! could not start server on port 39713: [Exception... "Component returned failure code: 0x804b0036 (NS_ERROR_SOCKET_ADDRESS_IN_USE) [nsIServerSocket.init]"  nsresult: "0x804b0036 (NS_ERROR_SOCKET_ADDRESS_IN_USE)"  location: "JS frame :: chrome://remote/content/server/HTTPD.jsm :: _start :: line 567"  data: no]
[task 2020-11-17T23:51:59.596Z] 23:51:59     INFO - GECKO(1513) | 1605657119590	RemoteAgent	ERROR	unable to stop listener: [Exception... "Unexpected error"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: chrome://remote/content/server/HTTPD.jsm :: stop :: line 621"  data: no] Stack trace: stop()@HTTPD.jsm:621
[task 2020-11-17T23:51:59.596Z] 23:51:59     INFO - GECKO(1513) | close()@RemoteAgent.jsm:127
[task 2020-11-17T23:51:59.597Z] 23:51:59     INFO - GECKO(1513) | asyncListen()@RemoteAgent.jsm:108
[task 2020-11-17T23:51:59.598Z] 23:51:59     INFO - GECKO(1513) | 1605657119591	RemoteAgent	ERROR	Unable to start remote agent: : [Exception... "Component is not available"  nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame :: chrome://remote/content/server/HTTPD.jsm :: _start :: line 612"  data: no] Stack trace: _start()@HTTPD.jsm:612
[task 2020-11-17T23:51:59.598Z] 23:51:59     INFO - GECKO(1513) | asyncListen()@RemoteAgent.jsm:101
[task 2020-11-17T23:51:59.599Z] 23:51:59     INFO - TEST-INFO | started process screentopng
[task 2020-11-17T23:52:00.120Z] 23:52:00     INFO - TEST-INFO | screentopng: exit 0
[task 2020-11-17T23:52:00.121Z] 23:52:00     INFO - Buffered messages logged at 23:51:59
[task 2020-11-17T23:52:00.121Z] 23:52:00     INFO - Entering test bound debuggerAddress
[task 2020-11-17T23:52:00.122Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | debuggerAddress set - 
[task 2020-11-17T23:52:00.122Z] 23:52:00     INFO - Leaving test bound debuggerAddress
[task 2020-11-17T23:52:00.123Z] 23:52:00     INFO - Entering test bound listening
[task 2020-11-17T23:52:00.124Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | Agent is not listening - 
[task 2020-11-17T23:52:00.124Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | Agent is listening - 
[task 2020-11-17T23:52:00.125Z] 23:52:00     INFO - Leaving test bound listening
[task 2020-11-17T23:52:00.125Z] 23:52:00     INFO - Entering test bound listen
[task 2020-11-17T23:52:00.126Z] 23:52:00     INFO - Buffered messages finished
[task 2020-11-17T23:52:00.126Z] 23:52:00     INFO - TEST-UNEXPECTED-FAIL | remote/test/browser/browser_agent.js | remote-listening observer notified - Didn't expect undefined, but got it
[task 2020-11-17T23:52:00.126Z] 23:52:00     INFO - Stack trace:
[task 2020-11-17T23:52:00.126Z] 23:52:00     INFO - chrome://mochikit/content/browser-test.js:test_isnot:1341
[task 2020-11-17T23:52:00.126Z] 23:52:00     INFO - chrome://mochitests/content/browser/remote/test/browser/browser_agent.js:listen:64
[task 2020-11-17T23:52:00.127Z] 23:52:00     INFO - Not taking screenshot here: see the one that was previously logged
[task 2020-11-17T23:52:00.127Z] 23:52:00     INFO - TEST-UNEXPECTED-FAIL | remote/test/browser/browser_agent.js | Uncaught exception - at chrome://mochitests/content/browser/remote/test/browser/browser_agent.js:66 - TypeError: can't access property "port", boundURL is undefined
[task 2020-11-17T23:52:00.127Z] 23:52:00     INFO - Stack trace:
[task 2020-11-17T23:52:00.128Z] 23:52:00     INFO - listen@chrome://mochitests/content/browser/remote/test/browser/browser_agent.js:66:1
[task 2020-11-17T23:52:00.129Z] 23:52:00     INFO - Leaving test bound listen
[task 2020-11-17T23:52:00.130Z] 23:52:00     INFO - Entering test bound listenWhenDisabled
[task 2020-11-17T23:52:00.131Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | undefined assertion name - 
[task 2020-11-17T23:52:00.133Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | undefined assertion name - 
[task 2020-11-17T23:52:00.134Z] 23:52:00     INFO - Leaving test bound listenWhenDisabled
[task 2020-11-17T23:52:00.134Z] 23:52:00     INFO - Entering test bound listenTakesString
[task 2020-11-17T23:52:00.134Z] 23:52:00     INFO - Leaving test bound listenTakesString
[task 2020-11-17T23:52:00.134Z] 23:52:00     INFO - Entering test bound listenNonURL
[task 2020-11-17T23:52:00.134Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | undefined assertion name - 
[task 2020-11-17T23:52:00.134Z] 23:52:00     INFO - Leaving test bound listenNonURL
[task 2020-11-17T23:52:00.135Z] 23:52:00     INFO - Entering test bound listenRestrictedToLoopbackDevice
[task 2020-11-17T23:52:00.135Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | undefined assertion name - 
[task 2020-11-17T23:52:00.135Z] 23:52:00     INFO - TEST-PASS | remote/test/browser/browser_agent.js | undefined assertion name - 
[task 2020-11-17T23:52:00.135Z] 23:52:00     INFO - Leaving test bound listenRestrictedToLoopbackDevice
[task 2020-11-17T23:52:00.135Z] 23:52:00     INFO - Entering test bound listenNonLoopbackDevice
[task 2020-11-17T23:52:00.135Z] 23:52:00     INFO - Leaving test bound listenNonLoopbackDevice
[task 2020-11-17T23:52:00.135Z] 23:52:00     INFO - Entering test bound test_close
[task 2020-11-17T23:52:00.136Z] 23:52:00     INFO - Leaving test bound test_close
[task 2020-11-17T23:52:00.136Z] 23:52:00     INFO - GECKO(1513) | MEMORY STAT vsizeMaxContiguous not supported in this build configuration.
[task 2020-11-17T23:52:00.136Z] 23:52:00     INFO - GECKO(1513) | MEMORY STAT | vsize 2950MB | residentFast 296MB | heapAllocated 110MB
[task 2020-11-17T23:52:00.136Z] 23:52:00     INFO - TEST-OK | remote/test/browser/browser_agent.js | took 145ms```

boundURL is being constructed when the remote-listening notification is received. But that isn't getting send because the Remote Agent could not be initialized after the previous call to close the connection for the former test failed:

[task 2020-11-17T23:51:59.596Z] 23:51:59     INFO - GECKO(1513) | 1605657119590	RemoteAgent	ERROR	unable to stop listener: [Exception... "Unexpected error"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"  location: "JS frame :: chrome://remote/content/server/HTTPD.jsm :: stop :: line 621"  data: no] Stack trace: stop()@HTTPD.jsm:621
[task 2020-11-17T23:51:59.596Z] 23:51:59     INFO - GECKO(1513) | close()@RemoteAgent.jsm:127

That means that close() doesn't correctly return exceptions, which would make the test failure message better observable.

It actually requires a fix for bug 1598832.

Depends on: 1598832
Summary: Intermittent remote/test/browser/browser_agent.js | remote-listening observer notified - Didn't expect undefined, but got it | Uncaught exception - at chrome://*/browser_agent.js:66 - TypeError: can't access property "port", boundURL is undefined → Intermittent remote/cdp/test/browser/browser_agent.js | remote-listening observer notified - Didn't expect undefined, but got it | Uncaught exception - at chrome://*/browser_agent.js:66 - TypeError: can't access property "port", boundURL is undefined
Component: Agent → CDP
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.