Closed Bug 1241466 Opened 10 years ago Closed 10 years ago

Component does not have requested interface, when using artifact build

Categories

(Firefox Build System :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: ato, Unassigned)

Details

Attachments

(1 file)

When running `./mach run` from an artifact build on Linux, I get an exception but the build starts fine and is usable: % ./mach run 0:00.12 /home/ato/1/gecko/build/artifact-desktop-release/dist/bin/firefox -no-remote -profile /home/ato/1/gecko/build/artifact-desktop-release/tmp/scratch_user console.error: [CustomizableUI] [Exception... "Component does not have requested interface" nsresult: "0x80004002 (NS_NOINTERFACE)" location: "JS frame :: resource://gre/modules/addons/XPIProvider.jsm -> file:///home/ato/1/gecko/build/artifact-desktop-release/dist/bin/browser/features/firefox@getpocket.com/bootstrap.js :: PocketOverlay.addStyles :: line 501" data: no] -- undefined:501 If you try to run, say, a Marionette test, the client is able to connect but the exception is thrown when a new session is started, and hangs: % xvfb-run ./mach marionette-test -vv --gecko-log - 0:00.00 LOG: MainThread INFO Using workspace for temporary data: "/home/ato/1/gecko/src" 0:00.00 LOG: MainThread INFO Profile destination is TMP 1453380497550 Marionette DEBUG Marionette enabled via build flag and pref 1453380497667 Marionette INFO Listening on port 2828 1453380497867 Marionette DEBUG Marionette enabled via command-line flag 1453380497890 Marionette DEBUG Accepted connection conn0 from 127.0.0.1:47088 1453380497917 Marionette DEBUG Closed connection conn0 1453380497918 Marionette DEBUG Accepted connection conn1 from 127.0.0.1:47089 1453380497925 Marionette DEBUG Accepted connection conn2 from 127.0.0.1:47090 1453380497930 Marionette DEBUG Closed connection conn2 1453380497931 Marionette TRACE conn1 -> [0,1,"newSession",{"sessionId":null,"capabilities":null}] 1453380497932 Marionette CONFIG Changing capabilities: {"browserName":"Firefox","browserVersion":"46.0a1","platformName":"Linux","platformVersion":"3.16.0-4-amd64","specificationLevel":"1","raisesAccessibilityExceptions":false,"rotatable":false,"acceptSslCerts":false,"takesElementScreenshot":true,"takesScreenshot":true,"proxy":{},"platform":"LINUX","XULappId":"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}","appBuildId":"20160118110931","device":"desktop","version":"46.0a1"} console.error: [CustomizableUI] [Exception... "Component does not have requested interface" nsresult: "0x80004002 (NS_NOINTERFACE)" location: "JS frame :: resource://gre/modules/addons/XPIProvider.jsm -> file:///home/ato/1/gecko/build/artifact-desktop-release/dist/bin/browser/features/firefox@getpocket.com/bootstrap.js :: PocketOverlay.addStyles :: line 501" data: no] -- undefined:501 Is this a limitation of artifact builds, or an actual bug?
I just pulled fx-team (on Windows) and can run marionette tests ok. I've seen NS_NOINTERFACE when updating to a revision without updating artifacts. ato, if this is reliably reproducible, can you provide the full output of mach build when this occurs? It should log the revision it's looking for and the revision for the artifacts it finds at the beginning.
(In reply to Chris Manchester [:chmanchester] from comment #1) > I just pulled fx-team (on Windows) and can run marionette tests ok. I've > seen NS_NOINTERFACE when updating to a revision without updating artifacts. That would make sense. How do I force an update of the artifacts in this case?
(In reply to Andreas Tolfsen (:ato) from comment #2) > (In reply to Chris Manchester [:chmanchester] from comment #1) > > I just pulled fx-team (on Windows) and can run marionette tests ok. I've > > seen NS_NOINTERFACE when updating to a revision without updating artifacts. > > That would make sense. How do I force an update of the artifacts in this > case? In my case I had updated to central without realizing it, so just updating to fx-team and re-building was enough. But this may be a case of what Nick explains in https://bugzilla.mozilla.org/show_bug.cgi?id=1222636#c2 -- updating to a revision with JS changes requiring corresponding C++ changes that don't yet have binaries available. In this case, updating the local tree back to the last revision with binaries available would fix things as a workaround.
Attached file artifact.log
Attaching build log.
(In reply to Chris Manchester [:chmanchester] from comment #3) > In my case I had updated to central without realizing it, so just updating > to fx-team and re-building was enough. But this may be a case of what Nick > explains in https://bugzilla.mozilla.org/show_bug.cgi?id=1222636#c2 -- > updating to a revision with JS changes requiring corresponding C++ changes > that don't yet have binaries available. In this case, updating the local > tree back to the last revision with binaries available would fix things as a > workaround. I’m not sure if this is the case. How can I tell if revision I’m on (tip) is one which doesn’t have binaries available? I did some further digging and doing `./mach run` on an artifact build off tip starts the chrome of the browser, but it’s impossible to navigate anywhere. I’m suspecting the browsers don’t actually start up.
(In reply to Andreas Tolfsen (:ato) from comment #5) > (In reply to Chris Manchester [:chmanchester] from comment #3) > > In my case I had updated to central without realizing it, so just updating > > to fx-team and re-building was enough. But this may be a case of what Nick > > explains in https://bugzilla.mozilla.org/show_bug.cgi?id=1222636#c2 -- > > updating to a revision with JS changes requiring corresponding C++ changes > > that don't yet have binaries available. In this case, updating the local > > tree back to the last revision with binaries available would fix things as a > > workaround. > > I’m not sure if this is the case. How can I tell if revision I’m on (tip) > is one which doesn’t have binaries available? > > I did some further digging and doing `./mach run` on an artifact build off > tip starts the chrome of the browser, but it’s impossible to navigate > anywhere. I’m suspecting the browsers don’t actually start up. The line starting with: "Installing from remote pushhead ..." will tell you the revision it found. Updating to this revision ought to help. Bug 1240667 should help significantly if you don't usually work on fx-team.
(In reply to Chris Manchester [:chmanchester] from comment #6) > (In reply to Andreas Tolfsen (:ato) from comment #5) > > (In reply to Chris Manchester [:chmanchester] from comment #3) > > I’m not sure if this is the case. How can I tell if revision I’m on (tip) > > is one which doesn’t have binaries available? > > > > I did some further digging and doing `./mach run` on an artifact build off > > tip starts the chrome of the browser, but it’s impossible to navigate > > anywhere. I’m suspecting the browsers don’t actually start up. > > The line starting with: > > "Installing from remote pushhead ..." > > will tell you the revision it found. Updating to this revision ought to > help. Bug 1240667 should help significantly if you don't usually work on > fx-team. Oh I see. It’s a shame it doesn’t work with central. I will resolve this.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → INVALID
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: