Closed Bug 1241420 Opened 9 years ago Closed 9 years ago

IndexedDB doesn't work on some systems

Categories

(Core :: Storage: IndexedDB, defect, P2)

45 Branch
defect

Tracking

()

RESOLVED DUPLICATE of bug 879133

People

(Reporter: twanbraas, Unassigned)

Details

(Whiteboard: [triaged] dom-triaged)

Attachments

(1 file)

98.82 KB, application/x-xpinstall
Details
User Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0 Build ID: 20160105164030 Steps to reproduce: Try to port a Chrome extension to WebExtensions. Actual results: Almost everything works exept for the IndexedDB. The readystate is stuck on pending. I googled it and apparently it's not supported. Expected results: That it would more or less work the same as the extension already developed for chrome extensions.
Whiteboard: IndexedDB, Storage, WebExtensions
Whiteboard: IndexedDB, Storage, WebExtensions
Priority: -- → P2
Whiteboard: [triaged]
Can you please attach a testcase? Preferably the simplest add-on that can reproduce this issue?
Flags: needinfo?(twanbraas)
Keywords: testcase-wanted
Attached file testcase.xpi —
!It's not xul but Web Extension format
Flags: needinfo?(twanbraas)
Attachment #8712073 - Attachment mime type: application/vnd.mozilla.xul+xml → application/x-xpinstall
It seems to work for me. I get the following in the browser console: onupgradeneeded: undefined background.js:28:5 objectstore: [object IDBDatabase] background.js:41:18 success: [object IDBDatabase] background.js:45:18
It works on Chrome Extensions, but when i test it on firefox(developer edition 45.0a2) it says: IndexedDB UnknownErr: ActorsParent.cpp:592 <onbekend> request.onerror background.js:54:5 UnknownError background.js:25:27
Twan, could you test Nightly, please. https://nightly.mozilla.org/ Maybe it works in Nightly but not in Aurora.
Flags: needinfo?(twanbraas)
Tested in nightly 47.0a1 (2016-01-27) Same errors
I can't reproduce this. It works as expected for me in both 46 and 47
Ok, i'm gonna try it on some other systems tomorrow
Works on other systems... Should be some kind of security thing
even without using the add-on the console gives indexedDB errors: Could not read chrome manifest 'file:///C:/Program%20Files%20(x86)/Firefox%20Developer%20Edition/chrome.manifest'. 1454314884174 addons.xpi WARN Exception running bootstrap method startup on firebug@software.joehewitt.com: TypeError: FirebugGCLICommands is undefined (resource://gre/modules/addons/XPIProvider.jsm -> jar:file://///srv502/users$/twanb/Application%20Data/Mozilla/Firefox/Profiles/bs2c1o6e.dev-edition-default/extensions/firebug@software.joehewitt.com.xpi!/bootstrap.js:78:5) JS Stack trace: startup@resource://gre/modules/addons/XPIProvider.jsm -> jar:file://///srv502/users$/twanb/Application%20Data/Mozilla/Firefox/Profiles/bs2c1o6e.dev-edition-default/extensions/firebug@bootstrap.js:78:5 < this.XPIProvider.callBootstrapMethod@XPIProvider.jsm:4658:9 < this.XPIProvider.startup@XPIProvider.jsm:2727:13 < callProvider@AddonManager.jsm:227:12 < _startProvider@AddonManager.jsm:833:5 < AddonManagerInternal.startup@AddonManager.jsm:1016:9 < this.AddonManagerPrivate.startup@AddonManager.jsm:2783:5 < amManager.prototype.observe@addonManager.js:56:7 While creating services from category 'profile-after-change', could not create service for entry 'Sapi Speech Synth', contract ID '@mozilla.org/synthsapi;1' IndexedDB UnknownErr: ActorsParent.cpp:592 <onbekend> UnknownError <onbekend> IndexedDB UnknownErr: ActorsParent.cpp:592 <onbekend> UnknownError aboutHome.js:125:20 IndexedDB UnknownErr: ActorsParent.cpp:592 <onbekend> undefined Promise-backend.js:936 UnknownError
Flags: needinfo?(twanbraas)
Did you test with a fresh profile with Firefox DE?
Okay finally i know what the problem is. I was testing the add-on and the functionality of IndexedDB on a pc at work where i have 'user rights'. When i start firefox with admin rights it works fine. Still weird in Google chrome there is no difference. In Firefox i cannot use IndexedDB at all.
This doesn't seem to be a webextensions bug. Moving it to Core. More details on how to reproduce would still be useful.
Component: WebExtensions → DOM: IndexedDB
Product: Toolkit → Core
Summary: Support IndexedDB in WebExtensions → IndexedDB doesn't work on some systems
That's right. The problem lays somewhere in the setup i'm working here. We are working with thin-clients and the profiles settings are redirected to a network disk. Another college has his profile on the standard location C:/users/..... Mine is redirected to network/srv502.... But woth Google Chrome it works so it should be a FireFox bug
Ok, that's interesting. If I give you a build of Firefox that has some additional logging code in it for this problem will you be able to run it?
Flags: needinfo?(twanbraas)
Whiteboard: [triaged] → [triaged] dom-noted
Yes, i can run it here.
Flags: needinfo?(twanbraas)
Whiteboard: [triaged] dom-noted → [triaged] dom-triaged
@Kyle do you have the build of FireFox with the additional logging for me?
Flags: needinfo?(khuey)
Yes! If you download the build at http://archive.mozilla.org/pub/firefox/try-builds/khuey@mozilla.com-9f355481890ff8209a663f9725eba4526a4e7c05/try-win32/firefox-47.0a1.en-US.win32.zip and run it, when the problem appears the Browser Console (Ctrl-Shift-J) should have a message in it that says "Converting non-IndexedDB error code ..." I need to know what the non-IndexedDB error code it mentions is to track this down further.
Flags: needinfo?(khuey) → needinfo?(twanbraas)
I ran the program and at start-up it says: Could not read chrome manifest 'file:///C:/Users/twanb/Downloads/firefox/chrome.manifest'. Proxy.create and Proxy.createFunction are deprecated, use new Proxy instead AddonManager.jsm:692:15 formatURL: Couldn't find value for key: OLD_VERSION nsURLFormatter.js:130:0 Security Error: Content at chrome://browser/skin/tabbrowser/tab-selected-start.svg attempted to load chrome://pluginproblem/content/pluginFinderBinding.css, but may not load external data when being used as an image. Security Error: Content at chrome://browser/skin/tabbrowser/tab-selected-start.svg attempted to load chrome://pluginproblem/content/pluginProblemBinding.css, but may not load external data when being used as an image. Security Error: Content at chrome://browser/skin/tabbrowser/tab-selected-end.svg attempted to load chrome://pluginproblem/content/pluginFinderBinding.css, but may not load external data when being used as an image. Security Error: Content at chrome://browser/skin/tabbrowser/tab-selected-end.svg attempted to load chrome://pluginproblem/content/pluginProblemBinding.css, but may not load external data when being used as an image. Security Error: Content at chrome://browser/skin/identity-icon.svg#normal attempted to load chrome://browser/skin/identity-icon.svg#mask-ring-cutout, but may not load external data when being used as an image. Security Error: Content at chrome://browser/skin/tracking-protection-16.svg attempted to load chrome://browser/skin/tracking-protection-16.svg#mask-shield-cutout, but may not load external data when being used as an image. Converting non-IndexedDB error code (0x80520015) to NS_ERROR_DOM_INDEXEDDB_UNKNOWN_ERR IndexedDB UnknownErr: ActorsParent.cpp:589 <unknown> UnknownError <unknown> Converting non-IndexedDB error code (0x80520015) to NS_ERROR_DOM_INDEXEDDB_UNKNOWN_ERR IndexedDB UnknownErr: ActorsParent.cpp:589 <unknown> UnknownError aboutHome.js:125:20 Security Error: Content at chrome://browser/skin/identity-secure.svg attempted to load chrome://browser/skin/identity-secure.svg#mask-clasp-cutout, but may not load external data when being used as an image. downloadable font: kern: Too large subtable, table discarded (font-family: "Open Sans" style:normal weight:normal stretch:normal src index:1) source: https://www.mozilla.org/media/fonts/OpenSans-Regular-webfont.2696e36f12c5.woff responsive-bundle.d4a37f75f560.css:1:1575 downloadable font: kern: Too large subtable, table discarded (font-family: "Open Sans Light" style:normal weight:normal stretch:normal src index:1) source: https://www.mozilla.org/media/fonts/OpenSans-Light-webfont.1c8075cacedb.woff responsive-bundle.d4a37f75f560.css:1:554 Converting non-IndexedDB error code (0x80520015) to NS_ERROR_DOM_INDEXEDDB_UNKNOWN_ERR IndexedDB UnknownErr: ActorsParent.cpp:589 <unknown> undefined Promise-backend.js:940 UnknownError When i try to install the testcase it says (cannot install): 1455019457061 addons.webextension.<unknown> ERROR Loading extension 'null': Reading manifest: Error processing permissions.10: Error processing permissions.10: Invalid enumeration value "background" Log.jsm:751:0 1455019457085 addons.xpi WARN Invalid XPI: Error: Extension is invalid (resource://gre/modules/addons/XPIProvider.jsm:869:11) JS Stack trace: loadManifestFromWebManifest<@XPIProvider.jsm:869:11 < TaskImpl_run@Task.jsm:319:40 < Handler.prototype.process@Promise-backend.js:937:23 < this.PromiseWalker.walkerLoop@Promise-backend.js:816:7 < Promise*this.PromiseWalker.scheduleWalkerLoop@Promise-backend.js:747:11 < this.PromiseWalker.schedulePromise@Promise-backend.js:779:7 < this.PromiseWalker.completePromise@Promise-backend.js:714:7 < TaskImpl_run@Task.jsm:324:13 < promise callback*TaskImpl_handleResultValue@Task.jsm:395:7 < TaskImpl_run@Task.jsm:327:13 < Handler.prototype.process@Promise-backend.js:937:23 < this.PromiseWalker.walkerLoop@Promise-backend.js:816:7 < Promise*this.PromiseWalker.scheduleWalkerLoop@Promise-backend.js:747:11 < this.PromiseWalker.schedulePromise@Promise-backend.js:779:7 < Promise.prototype.then@Promise-backend.js:454:5 < TaskImpl_handleResultValue@Task.jsm:395:7 < TaskImpl_run@Task.jsm:327:13 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < Task_spawn@Task.jsm:168:12 < promiseLocales@Extension.jsm:675:30 < ExtensionData.prototype.initAllLocales<@Extension.jsm:704:25 < TaskImpl_run@Task.jsm:319:40 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < loadManifestFromWebManifest<@XPIProvider.jsm:865:23 < TaskImpl_run@Task.jsm:319:40 < promise callback*TaskImpl_handleResultValue@Task.jsm:395:7 < TaskImpl_run@Task.jsm:327:13 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < loadManifestFromZipReader<@XPIProvider.jsm:1360:21 < TaskImpl_run@Task.jsm:319:40 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < AddonInstall.prototype.loadManifest<@XPIProvider.jsm:5426:26 < TaskImpl_run@Task.jsm:319:40 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < AddonInstall.prototype.initLocalInstall@XPIProvider.jsm:5086:5 < AddonInstall.createInstall@XPIProvider.jsm:6101:5 < this.XPIProvider.getInstallForFile@XPIProvider.jsm:3777:5 < callProviderAsync@AddonManager.jsm:254:12 < AddonManagerInternal.getInstallForFile/<.nextObject@AddonManager.jsm:2006:9 < AsyncObjectCaller.prototype.callNext@AddonManager.jsm:381:7 < AsyncObjectCaller@AddonManager.jsm:361:3 < AddonManagerInternal.getInstallForFile@AddonManager.jsm:2004:5 < this.AddonManager.getInstallForFile@AddonManager.jsm:3142:5 < buildNextInstall@extensions.js:1273:11 < gViewController.commands.cmd_installFromFile.doCommand@extensions.js:1279:9 < gViewController.doCommand@extensions.js:1449:5 < initialize/<@extensions.js:96:5 < EventListener.handleEvent*initialize@extensions.js:95:3 < EventListener.handleEvent*@extensions.js:78:1 [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIURI.hostPort]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: resource://gre/modules/PopupNotifications.jsm :: PopupNotifications_refreshPanel/< :: line 667" data: no] PopupNotifications.jsm:671:0 1455019457177 addons.webextension.<unknown> ERROR Loading extension 'null': Reading manifest: Error processing permissions.10: Error processing permissions.10: Invalid enumeration value "background" Log.jsm:751:0 1455019457179 addons.xpi WARN Download of file:///W:/webdesign_gezamenlijk/Twan/Extensions/testcase/test.xpi failed: Error: Extension is invalid (resource://gre/modules/addons/XPIProvider.jsm:869:11) JS Stack trace: loadManifestFromWebManifest<@XPIProvider.jsm:869:11 < TaskImpl_run@Task.jsm:319:40 < Handler.prototype.process@Promise-backend.js:937:23 < this.PromiseWalker.walkerLoop@Promise-backend.js:816:7 < Promise*this.PromiseWalker.scheduleWalkerLoop@Promise-backend.js:747:11 < this.PromiseWalker.schedulePromise@Promise-backend.js:779:7 < this.PromiseWalker.completePromise@Promise-backend.js:714:7 < TaskImpl_run@Task.jsm:324:13 < promise callback*TaskImpl_handleResultValue@Task.jsm:395:7 < TaskImpl_run@Task.jsm:327:13 < Handler.prototype.process@Promise-backend.js:937:23 < this.PromiseWalker.walkerLoop@Promise-backend.js:816:7 < Promise*this.PromiseWalker.scheduleWalkerLoop@Promise-backend.js:747:11 < this.PromiseWalker.schedulePromise@Promise-backend.js:779:7 < Promise.prototype.then@Promise-backend.js:454:5 < TaskImpl_handleResultValue@Task.jsm:395:7 < TaskImpl_run@Task.jsm:327:13 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < Task_spawn@Task.jsm:168:12 < promiseLocales@Extension.jsm:675:30 < ExtensionData.prototype.initAllLocales<@Extension.jsm:704:25 < TaskImpl_run@Task.jsm:319:40 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < loadManifestFromWebManifest<@XPIProvider.jsm:865:23 < TaskImpl_run@Task.jsm:319:40 < promise callback*TaskImpl_handleResultValue@Task.jsm:395:7 < TaskImpl_run@Task.jsm:327:13 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < loadManifestFromZipReader<@XPIProvider.jsm:1360:21 < TaskImpl_run@Task.jsm:319:40 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < AddonInstall.prototype.loadManifest<@XPIProvider.jsm:5426:26 < TaskImpl_run@Task.jsm:319:40 < TaskImpl@Task.jsm:280:3 < createAsyncFunction/asyncFunction@Task.jsm:254:14 < AddonInstall.prototype.onStopRequest@XPIProvider.jsm:5739:9 [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIURI.hostPort]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: resource://gre/modules/PopupNotifications.jsm :: PopupNotifications_refreshPanel/< :: line 667" data: no] PopupNotifications.jsm:671:0 1455019457186 addons.xpi WARN Failed to remove temporary file C:\Users\twanb\AppData\Local\Temp\tmp-i4h.xpi for addon file:///W:/webdesign_gezamenlijk/Twan/Extensions/testcase/test.xpi: [Exception... "Component returned failure code: 0x80520015 (NS_ERROR_FILE_ACCESS_DENIED) [nsIFile.remove]" nsresult: "0x80520015 (NS_ERROR_FILE_ACCESS_DENIED)" location: "JS frame :: resource://gre/modules/addons/XPIProvider.jsm :: AddonInstall.prototype.removeTemporaryFile :: line 5281" data: no] Stack trace: AddonInstall.prototype.removeTemporaryFile()@resource://gre/modules/addons/XPIProvider.jsm:5281 < AddonInstall.prototype.downloadFailed()@resource://gre/modules/addons/XPIProvider.jsm:5788 < AddonInstall.prototype.onStopRequest/<()@resource://gre/modules/addons/XPIProvider.jsm:5751 < Handler.prototype.process()@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:940 < this.PromiseWalker.walkerLoop()@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816 Do you have enough information?
Flags: needinfo?(twanbraas)
Removing the testcase-wanted keyword since it was added in Comment 2.
Keywords: testcase-wanted
0x80520015 is NS_ERROR_FILE_ACCESS_DENIED. So it sounds like we're not allowed to write to the profile directory? Can your users write to the place on the network that the profile directory is stored?
Flags: needinfo?(twanbraas)
Yes i can write on the network location were the indexeddb and profile settings are stored.
Flags: needinfo?(twanbraas) → needinfo?(khuey)
I think this is a dupe of bug 879133.
Flags: needinfo?(khuey)
You're right!
Status: UNCONFIRMED → RESOLVED
Closed: 9 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: