Closed Bug 1280561 Opened 8 years ago Closed 4 years ago

Intermittent browser_pluginCrashCommentAndURL.js | Test timed out -


(Core Graveyard :: Plug-ins, defect, P3)



(firefox50 wontfix, firefox73 fixed)

Tracking Status
firefox50 --- wontfix
firefox73 --- fixed


(Reporter: aryx, Assigned: gsvelto)




(Keywords: intermittent-failure, regression, Whiteboard: [retriggered][stockwell fixed:patch])


(1 file)

20:28:00     INFO -  62 INFO TEST-PASS | browser/base/content/test/plugins/browser_pluginCrashCommentAndURL.js | URL should be absent from extra data when opt-in not checked -
20:28:00     INFO -  63 INFO Leaving test bound
20:28:00     INFO -  64 INFO Entering test bound
20:28:00     INFO -  65 INFO Wait tab event: load
20:28:00     INFO -  66 INFO Tab event received: load
20:28:00     INFO -  67 INFO Console message: [JavaScript Error: "NS_ERROR_NOT_IMPLEMENTED: " {file: "resource://app/modules/PluginContent.jsm" line: 887}]
20:28:00     INFO -  68 INFO Console message: [JavaScript Error: "1466134024847	Toolkit.GMP	ERROR	GMPInstallManager.simpleCheckAndInstall Could not check for addons: Error: got node name: html, expected: updates (resource://gre/modules/addons/ProductAddonChecker.jsm:153:11) JS Stack trace: parseXML@ProductAddonChecker.jsm:153:11 < promise callback*ProductAddonChecker.getProductAddonList@ProductAddonChecker.jsm:320:12 < GMPInstallManager.prototype.checkForAddons@GMPInstallManager.jsm:107:5 < GMPInstallManager.prototype.simpleCheckAndInstall<@GMPInstallManager.jsm:204:29 < gBrowserInit._delayedStartup/<@browser.js:1346:7 < setTimeout handler*gBrowserInit._delayedStartup@browser.js:1342:5 < EventListener.handleEvent*gBrowserInit.onLoad@browser.js:1038:5 < onload@browser.xul:1:1" {file: "resource://gre/modules/Log.jsm" line: 753}]
20:28:00     INFO -  App_append@resource://gre/modules/Log.jsm:753:9
20:28:00     INFO -  Logger.prototype.log@resource://gre/modules/Log.jsm:389:7
20:28:00     INFO -  LoggerRepository.prototype.getLoggerWithMessagePrefix/proxy.log@resource://gre/modules/Log.jsm:504:44
20:28:00     INFO -  Logger.prototype.error@resource://gre/modules/Log.jsm:397:5
20:28:00     INFO -  GMPInstallManager.prototype.simpleCheckAndInstall<@resource://gre/modules/GMPInstallManager.jsm:285:7
20:28:00     INFO -  TaskImpl_run@resource://gre/modules/Task.jsm:320:40
20:28:00     INFO -  Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:940:21
20:28:00     INFO -  this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
20:28:00     INFO -  Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
20:28:00     INFO -  this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
20:28:00     INFO -  this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:714:7
20:28:00     INFO -  GMPInstallManager.prototype.checkForAddons/<@resource://gre/modules/GMPInstallManager.jsm:116:7
20:28:00     INFO -  promise callback*GMPInstallManager.prototype.checkForAddons@resource://gre/modules/GMPInstallManager.jsm:107:5
20:28:00     INFO -  GMPInstallManager.prototype.simpleCheckAndInstall<@resource://gre/modules/GMPInstallManager.jsm:204:29
20:28:00     INFO -  TaskImpl_run@resource://gre/modules/Task.jsm:319:40
20:28:00     INFO -  TaskImpl@resource://gre/modules/Task.jsm:280:3
20:28:00     INFO -  createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
20:28:00     INFO -  gBrowserInit._delayedStartup/<@chrome://browser/content/browser.js:1346:7
20:28:00     INFO -  setTimeout handler*gBrowserInit._delayedStartup@chrome://browser/content/browser.js:1342:5
20:28:00     INFO -  EventListener.handleEvent*gBrowserInit.onLoad@chrome://browser/content/browser.js:1038:5
20:28:00     INFO -  onload@chrome://browser/content/browser.xul:1:1
20:28:00     INFO -  69 INFO TEST-UNEXPECTED-FAIL | browser/base/content/test/plugins/browser_pluginCrashCommentAndURL.js | Test timed out -
Priority: -- → P3

There are 38 total failures in the last 7 days.

* debug: linux64
* opt: linux64-shippable, macosx1014-64-shippable

Recent failure log:

Gabriele, I believe this is from Bug 1420363, please take a look.

Flags: needinfo?(jmathies) → needinfo?(gsvelto)
Regressed by: 1420363
Whiteboard: [stockwell needswork:owner] → [retriggered][stockwell needswork:owner]

There must be a race somewhere in there and bug 1420363 made it more apparent. I'll investigate it.

I might have figured out what's going on here but it's not easy to prove it. Two of the four subtests submit the crash report: they do so without calling CrashManager.ensureCrashIsPresent() so they might potentially race the crash processing logic. It's possible that the test gets stuck because of that and it would explain why the crash report is left lying around at the end of the test instead of having been submitted.

Now, if this is the case it highlights a concrete issue: a very, very fast user (like our automation script) might click the "Submit" button in the tab crashed UI before we're done with the crash processing. So fixing this would require fixing both the actual issue and the tests.

Taking this.

Assignee: nobody → gsvelto
Flags: needinfo?(gsvelto)

The patch is looking good; i tried re-triggering the failing test 50 times and it didn't show up:

Not a regression, this has always been broken, it's just more apparent now.

Keywords: regression
Pushed by
Wait for crashes to be registered by the crash manager before submitting them r=mconley
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla73

No failures since December 7.

Whiteboard: [retriggered][stockwell needswork:owner] → [retriggered][stockwell fixed:patch]

Not a regression though it might have looked like one.

Keywords: regression
Has Regression Range: --- → yes
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.