Intermittent TEST-UNEXPECTED-TIMEOUT | toolkit/components/extensions/test/xpcshell/test_ext_downloads_download.js | Test timed out

NEW
Unassigned

Status

()

Toolkit
WebExtensions: General
P3
normal
8 months ago
5 months ago

People

(Reporter: Treeherder Bug Filer, Unassigned)

Tracking

({intermittent-failure})

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [downloads])

(Reporter)

Description

8 months ago
treeherder
Filed by: philringnalda [at] gmail.com

https://treeherder.mozilla.org/logviewer.html#?job_id=35275413&repo=mozilla-inbound

https://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-inbound-win32-debug/1472911645/mozilla-inbound_xp_ix-debug_test-xpcshell-bm127-tests1-windows-build386.txt.gz

Comment 1

8 months ago
Hm, the interesting bits from the log are:

 10:25:11     INFO -  "CONSOLE_MESSAGE: (error) [JavaScript Error: "NS_ERROR_XPC_GS_RETURNED_FAILURE: Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]" {file: "resource://gre/modules/Webapps.jsm" line: 20}]"
 10:25:11     INFO -  "CONSOLE_MESSAGE: (error) [JavaScript Error: "A promise chain failed to handle a rejection. Did you forget to '.catch', or did you forget to 'return'?
 10:25:11     INFO -  See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise
 10:25:11     INFO -  Date: Sat Sep 03 2016 10:20:14 GMT-0700 (Pacific Standard Time)
 10:25:11     INFO -  Full Message: DownloadError: [Exception... "Failure"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/DownloadCore.jsm :: this.DownloadError :: line 1516"  data: no]
 10:25:11     INFO -  Full Stack: this.DownloadError@resource://gre/modules/DownloadCore.jsm:1552:16
 10:25:11     INFO -  task_D_start@resource://gre/modules/DownloadCore.jsm:544:18
 10:25:11     INFO -  D_start@resource://gre/modules/DownloadCore.jsm:440:26
 10:25:11     INFO -  download/<@chrome://extensions/content/ext-downloads.js:468:13
 10:25:11     INFO -  Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:937:23
 10:25:11     INFO -  this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
 10:25:11     INFO -  Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
 10:25:11     INFO -  this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
 10:25:11     INFO -  this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:714:7
 10:25:11     INFO -  get _worker/worker.onmessage@resource://gre/modules/PromiseWorker.jsm:231:9
 10:25:11     INFO -  _do_main@C:\\slave\\test\\build\\tests\\xpcshell\\head.js:210:5
 10:25:11     INFO -  _execute_test@C:\\slave\\test\\build\\tests\\xpcshell\\head.js:545:5
10:25:11 INFO - @-e:1:1 

So download.start() didn't immediately throw with an invalid URL.  At the least, we should terminate the promise that start() returns by chaining an error handler, that error handler could also undo the obfuscation that DownloadError has applied to the actual error which might point to the source of the underlying problem here...
Whiteboard: [downloads]

Updated

5 months ago
Component: WebExtensions: Untriaged → WebExtensions: General
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.