Broken extension registrations in the windows registry causes the extension manager to fail

VERIFIED FIXED in mozilla2.0b7

Status

()

VERIFIED FIXED
8 years ago
8 years ago

People

(Reporter: martin.herok, Assigned: mossop)

Tracking

Trunk
mozilla2.0b7
x86
Windows XP
Points:
---
Bug Flags:
in-testsuite +
in-litmus -

Firefox Tracking Flags

(blocking2.0 beta7+)

Details

(Whiteboard: [AOMTestday][in-litmus-bug-week])

Attachments

(5 attachments)

(Reporter)

Description

8 years ago
User-Agent:       Mozilla/5.0 (Windows NT 5.1; rv:2.0b7pre) Gecko/20100914 Firefox/4.0b7pre
Build Identifier: Mozilla/5.0 (Windows NT 5.1; rv:2.0b7pre) Gecko/20100914 Firefox/4.0b7pre



Reproducible: Always

Steps to Reproduce:
1. Install Firefox with new profile
2. Open a xpi-file from HDD
Actual Results:  
Error pop-up with "This add-on could not be installed because it appears to be corrupt" appears.


Bug appeared betweeen the following changesets:

http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=c59be8574f7a&tochange=fa6c83c1a10e

I´ve attached the extensions.log from my new profile with additional error messages that appear.
(Reporter)

Updated

8 years ago
Version: unspecified → Trunk
(Reporter)

Comment 1

8 years ago
Created attachment 475527 [details]
extensions.log
regression from bug 533038 ?
Component: General → Add-ons Manager
Product: Firefox → Toolkit
QA Contact: general → add-ons.manager
Which extension are you trying to install? Or are multiple or all extensions involved here?

Comment 4

8 years ago
I've installed extensions from my hard drive fine. Does this happen with all extensions? Are extensions installed from the internet fine? Does this happen in a clean profile?

Comment 5

8 years ago
(In reply to comment #4)
> Does this happen
> in a clean profile?
Nevermind looks like you've answered that. It would be good to know what sort of extensions this happens with and if installing from the network matters.
(Reporter)

Comment 6

8 years ago
Initally I tried it with noscript 2.0.3.

But I´ve just tested it with 3 random add-ons (flashgot, firebug, greasemonkey) via internet and harddrive and I always get the same error.

Comment 7

8 years ago
I've tested Adblock Plus (latest dev build) and NoScript 2.0.3.1rc2 on Windows 7. There were no apparent problems. Is there anything unusual about your system?
(Reporter)

Comment 8

8 years ago
I´m using a lifebook e8420 with xp sp3 and Intel GMA 4500. I don´t think that there is otherwise anything unusual about my system.
But another user reported this in the Win32 20100915 Trunk build post, also using xp sp3.

Comment 9

8 years ago
I can reproduce on my laptop running Windows XP SP2 with Intel GMA 965. Also to note I have layers-all set to false due to performance reasons.
Can confirm here on Win7 x64 Ultimate (german) with both latest x86 and x64 nigthly builds (different profiles). System is an Intel i7-920, 6 GB RAM, nVidia Geforce 260GTX.

With an existing profile from 4.0b6pre previous addons are still listed. installation of new ones looks ok but after restart they aren't listed. The xpi resides in the proper folder. Also updates for addons (ABP dev version) are loaded, request restart but after restart they are still in old state and update check reloads it again and again. Under "Appearance" it still shows "Standard 4.0b6pre" theme, incompatible with 4.0b7pre.

With a new profile addon manager is completely empty. Even "Plugins" is empty but i.e. flash works. Every new addon or language pack installation says corrupt and installation isn't possible, neither from a website nor from hard disk.

Can't tell the day when behaviour changed because there was a large gap of several days without builds in german localised x86 builds and in x64 build (I'm using it with de language pack) at all.

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b7pre) Gecko/20100915 Firefox/4.0b7pre
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:2.0b7pre) Gecko/20100915 Firefox/4.0b7pre
(Reporter)

Comment 11

8 years ago
Created attachment 475796 [details]
extensions.log with clean profile

When I install the latest hourly with a clean profile and the browser for the first time, I see the following errors in the extension.log in my profile folder.
(Assignee)

Updated

8 years ago
Attachment #475796 - Attachment mime type: application/octet-stream → text/plain
(Assignee)

Comment 12

8 years ago
The logs here seem to suggest a file in the filesystem that doesn't exist. That doesn't make a lot of sense. What is in the extensions directory of your profile and the Firefox installation directory? The output of a dir command in those places might be helpful.

Comment 13

8 years ago
Error: ERROR addons.xpi: Error creating statement getVisibleAddons_2 (SELECT * FROM addon WHERE visible=1 AND type IN (?1,?2))

Error: ERROR addons.manager: Exception calling provider.getAddonsByTypes: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [mozIStorageConnection.createStatement]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: resource://gre/modules/XPIProvider.jsm :: XPIDB_getStatement :: line 3128" data: no]
getting this while try to open add on mangers Extensions.

Comment 14

8 years ago
(In reply to comment #12)
> The logs here seem to suggest a file in the filesystem that doesn't exist. That
> doesn't make a lot of sense. What is in the extensions directory of your
> profile and the Firefox installation directory? The output of a dir command in
> those places might be helpful.

I'm getting the same errors as seen above.

Profile is located at:
C:\Documents and Settings\Peter\Application Data\Mozilla\Firefox\Profiles\BlueFyre\

extensions folder is empty

Firefox is located at:
D:\Programs\Firefox

Hope this helps
(Reporter)

Comment 15

8 years ago
Created attachment 476294 [details]
Content firefox and profile folder

Since I tried it with a fresh installation and a clean profile there is no extensions folder in my profile and I attached the content of the firefox and profile folder.

It is possible that the culprit for this behavior is a add-on that isn´t installed in the profile folder like for example mcafee siteadvisor or microsoft framework assistant? I found entries for this two "add-ons" I didn´t install or use in the registry.
(In reply to comment #15)
> It is possible that the culprit for this behavior is a add-on that isn´t
> installed in the profile folder like for example mcafee siteadvisor or
> microsoft framework assistant? I found entries for this two "add-ons" I didn´t
> install or use in the registry.

It's certainly plausible. I haven't been able to reproduce it but I use relatively clean windows VMs without any registry installed addons.
(Assignee)

Comment 17

8 years ago
Yeah I think I have just figured out what is going on. You likely have an extension registered in the windows registry that no longer exists on disk, this is a regression from bug 533038.Verifying that this is case for you would help me know that the problem I'm seeing is this one. If you open the windows registry editor and look in HKEY_CURRENT_USER\Software\Mozilla\Firefox\Extensions or HKEY_LOCAL_MACHINE\Software\Mozilla\Firefox\Extensions there should be an extension listed against a directory that doesn't exist.
Blocks: 533038
Status: UNCONFIRMED → NEW
Ever confirmed: true
(Assignee)

Comment 18

8 years ago
This leaves the extension manager in such a broken state that we need to block b7 on it
blocking2.0: --- → beta7+
(Reporter)

Comment 19

8 years ago
As Dave and I suspected it´t the missing registry extension. After I deleted the entries for siteadvisor and restarted the notebook, I don´t find any errors in the extension.log and the installation of new add-on does function without a problem.
(Assignee)

Comment 20

8 years ago
Created attachment 476321 [details] [diff] [review]
patch rev 1

There are two problems that this patch addresses. The basic problem is that we aren't ignoring registry entries that point to non-existent files. The fix for that is straightforward and tested.

The other problem is that we currently wrap both the database schema creation and the addition of the initial data to the database in a single overall transaction. This means that if the data import fails the schema creation gets rolled back too leaving us with an empty database and no good way to spot that on the next run. The fix is to pull the schema creation out where it runs in its own transaction. If that goes wrong things are pretty messed up and it is unclear how we would even solve that problem so for now it just deletes the database. If the data import goes wrong though we still have a database with a valid schema so the extension manager is usable to a certain extent and subsequent restarts will attempt to re-import the data. Having done this before would have lessened the impact of the registry bug.
Assignee: nobody → dtownsend
Status: NEW → ASSIGNED
Attachment #476321 - Flags: review?(robert.bugzilla)
(Assignee)

Updated

8 years ago
Summary: Can´t install an add-on (add-on appears to be corrupt) → Broken extension registrations in the windows registry causes the extension manager to fail
Attachment #476321 - Flags: review?(robert.bugzilla) → review+
(Assignee)

Comment 21

8 years ago
Created attachment 476333 [details] [diff] [review]
importable patch
Great catch. Here it really was an old entry in the registry. First I would write it doesn't work but I took a second look: On x64 windows one has to check

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Mozilla\Firefox\Extensions

too in addition to the both mentioned above! And there was the broken extension entry. Deleted and AOM working again, thx!
http://hg.mozilla.org/mozilla-central/rev/bb235f96b9af
Status: ASSIGNED → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla2.0b7
Dave, what about manual tests? I would tend to say we don't need ones...
Flags: in-testsuite+
Flags: in-litmus?
Whiteboard: [AOMTestday]
(Assignee)

Comment 25

8 years ago
The automated test should cover this well enough I believe.
Flags: in-litmus? → in-litmus-
Verified fixed with Mozilla/5.0 (Windows NT 5.1; rv:2.0b7pre) Gecko/20100918 Firefox/4.0b7pre
Status: RESOLVED → VERIFIED
Whiteboard: [AOMTestday] → [AOMTestday][in-litmus-bug-week]
You need to log in before you can comment on or make changes to this bug.