Closed
Bug 1096787
Opened 10 years ago
Closed 10 years ago
Reset Firefox losing saved passwords
Categories
(Firefox :: Migration, defect)
Tracking
()
People
(Reporter: danielcdawson, Assigned: Gijs)
References
Details
(Keywords: dataloss, regression)
Attachments
(1 file, 1 obsolete file)
2.17 KB,
patch
|
MattN
:
review+
lsblakk
:
approval-mozilla-aurora+
lmandel
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0 Build ID: 20141105223254 Steps to reproduce: 1. Create a new testing profile. 2. Populate it with one or more passwords. 3. Open Saved Passwords to confirm that your passwords are saved. 4. Go to the "Troubleshooting Information" page, and click on the "Reset Firefox…" button, and then on the "Reset Firefox" button in the popup window. Actual results: The Import Wizard confirms that some data was successfully imported, but notably absent is "Saved Passwords". Expected results: Saved passwords should also be imported.
Assignee | ||
Comment 1•10 years ago
|
||
Were the passwords actually gone in your new profile, or is the bug you're reporting merely that "Saved Passwords" isn't explicitly called out in the list of things the import wizard says you've imported?
Flags: needinfo?(danielcdawson)
Reporter | ||
Comment 2•10 years ago
|
||
Ah, sorry. I forgot that part. The passwords are really not in the new profile. Not only does Saved Passwords show an empty list, but there is no logins.json in the directory. I found out after reporting this about Old Firefox Data, the folder that Reset Firefox makes on a user's desktop to back up the old profile, so I realize the database can be copied over manually. But it's still something that is supposed to be handled automatically, right?
Flags: needinfo?(danielcdawson)
Assignee | ||
Comment 3•10 years ago
|
||
(In reply to Daniel Dawson from comment #2) > I found out after reporting this about Old Firefox Data, the folder that > Reset Firefox makes on a user's desktop to back up the old profile, so I > realize the database can be copied over manually. But it's still something > that is supposed to be handled automatically, right? Yes. So... to borrow a phrase from our UI, "well, this is embarrassing...". We switched to using json, and promptly forgot to include the file in the profile migration code: http://mxr.mozilla.org/mozilla-central/source/browser/components/migration/FirefoxProfileMigrator.js#96 which, um, would explain why it's not copied! I'm fairly sure that all it takes is updating that list. Right, Matt?
Blocks: 853549
Severity: normal → critical
Status: UNCONFIRMED → NEW
Points: --- → 2
Component: Untriaged → Migration
Ever confirmed: true
Flags: qe-verify+
Flags: needinfo?(MattN+bmo)
Flags: in-testsuite?
Flags: firefox-backlog+
Assignee | ||
Updated•10 years ago
|
status-firefox33:
--- → affected
status-firefox34:
--- → affected
status-firefox35:
--- → affected
status-firefox36:
--- → affected
Keywords: regression
Comment 4•10 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #3) > I'm fairly sure that all it takes is updating that list. Right, Matt? I imagine it might make sense to do a parse/stringify round trip (or something else) to ensure it's sane?
Comment 5•10 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #3) > I'm fairly sure that all it takes is updating that list. Right, Matt? Yep, I think so. (In reply to Mark Hammond [:markh] from comment #4) > I imagine it might make sense to do a parse/stringify round trip (or > something else) to ensure it's sane? We've been leaving that up to each consumer to do upon initialization since it should be doing it outside of a reset anyways. If storage-json doesn't already handle malformed files then we should fix that.
Flags: needinfo?(MattN+bmo)
Comment 6•10 years ago
|
||
We should have a moztrap test for all of the reset data types until we get bug 940954.
Assignee | ||
Comment 7•10 years ago
|
||
I suspect we might want to drop the signons.sqlite thing here, but I won't take the risk for beta uplift, in an effort to make last beta for this week so we can fix this in 34 still...
Attachment #8521046 -
Flags: review?(MattN+bmo)
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → gijskruitbosch+bugs
Status: NEW → ASSIGNED
Assignee | ||
Updated•10 years ago
|
Iteration: --- → 36.3
Points: 2 → 1
OS: Linux → All
Hardware: x86_64 → All
Assignee | ||
Comment 8•10 years ago
|
||
Anthony, are you the right person to talk to for comment #6 ?
Flags: in-testsuite?
Flags: in-testsuite-
Flags: in-qa-testsuite?(anthony.s.hughes)
Comment 9•10 years ago
|
||
Comment on attachment 8521046 [details] [diff] [review] copy new logins.json database when using fx reset, Review of attachment 8521046 [details] [diff] [review]: ----------------------------------------------------------------- Yes, we should remove signons.sqlite eventually.
Attachment #8521046 -
Flags: review?(MattN+bmo) → review+
Comment 10•10 years ago
|
||
Comment on attachment 8521046 [details] [diff] [review] copy new logins.json database when using fx reset, Review of attachment 8521046 [details] [diff] [review]: ----------------------------------------------------------------- ::: browser/components/migration/FirefoxProfileMigrator.js @@ +93,5 @@ > let types = MigrationUtils.resourceTypes; > let places = getFileResource(types.HISTORY, ["places.sqlite"]); > let cookies = getFileResource(types.COOKIES, ["cookies.sqlite"]); > let passwords = getFileResource(types.PASSWORDS, > + ["signons.sqlite", "logins.json", "key3.db"]); Actually, am I reading correctly that getFileResource will return `null` if any of the files don't exist? If so, that needs to be fixed since new profiles won't have signons.sqlite. I think you should change `return null;` to `continue` in getFileResource.
Attachment #8521046 -
Flags: review+ → feedback+
Assignee | ||
Comment 11•10 years ago
|
||
(In reply to Matthew N. [:MattN] (UTC+1 until Nov. 22) from comment #10) > Comment on attachment 8521046 [details] [diff] [review] > copy new logins.json database when using fx reset, > > Review of attachment 8521046 [details] [diff] [review]: > ----------------------------------------------------------------- > > ::: browser/components/migration/FirefoxProfileMigrator.js > @@ +93,5 @@ > > let types = MigrationUtils.resourceTypes; > > let places = getFileResource(types.HISTORY, ["places.sqlite"]); > > let cookies = getFileResource(types.COOKIES, ["cookies.sqlite"]); > > let passwords = getFileResource(types.PASSWORDS, > > + ["signons.sqlite", "logins.json", "key3.db"]); > > Actually, am I reading correctly that getFileResource will return `null` if > any of the files don't exist? If so, that needs to be fixed since new > profiles won't have signons.sqlite. Yeah, and that also explains why the wizard then goes on to say it's not been migrated (see comment #0)...
Assignee | ||
Comment 12•10 years ago
|
||
Attachment #8521327 -
Flags: review?(MattN+bmo)
Assignee | ||
Updated•10 years ago
|
Attachment #8521046 -
Attachment is obsolete: true
Updated•10 years ago
|
Attachment #8521327 -
Flags: review?(MattN+bmo) → review+
Assignee | ||
Comment 13•10 years ago
|
||
https://hg.mozilla.org/integration/fx-team/rev/210b1691f0c7
Assignee | ||
Comment 14•10 years ago
|
||
Comment on attachment 8521327 [details] [diff] [review] copy new logins.json database when using fx reset, Approval Request Comment [Feature/regressing bug #]: new logins/passwords format [User impact if declined]: dataloss when using firefox reset [Describe test coverage new/current, TBPL]: no :-( [Risks and why]: pretty low, targeted fix to the code to add extra file to import, ensuring all extant files get imported if doing a migration (reset). [String/UUID change made/needed]: no
Attachment #8521327 -
Flags: approval-mozilla-beta?
Attachment #8521327 -
Flags: approval-mozilla-aurora?
Updated•10 years ago
|
tracking-firefox34:
--- → +
Comment 15•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/210b1691f0c7
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 36
Updated•10 years ago
|
Attachment #8521327 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 16•10 years ago
|
||
Comment on attachment 8521327 [details] [diff] [review] copy new logins.json database when using fx reset, This patch looks simple enough and Gijs tells me he verified locally. Taking this in beta9 to avoid data loss. I would like to see this verified on Beta before we release.
Attachment #8521327 -
Flags: approval-mozilla-beta? → approval-mozilla-beta+
Comment 17•10 years ago
|
||
https://hg.mozilla.org/releases/mozilla-aurora/rev/cbd6dc3be1d5 https://hg.mozilla.org/releases/mozilla-beta/rev/b718e8c0d423
Comment 18•10 years ago
|
||
Reproduced the initial issue on Firefox 34 beta 8, verified that using Firefox 34 beta 9 and latest Nightly (I found no way to reset Developer Edition, no reset button present in about:support) on Windows 8.1 64bit, Mac OS X 10.7.5 and Ubuntu 12.04 32bit, the saved passwords are automatically imported after resetting Firefox and logins.json file is present in profile folder with the right data.
Updated•10 years ago
|
QA Contact: bogdan.maris
Comment 19•10 years ago
|
||
(In reply to Bogdan Maris, QA [:bogdan_maris] from comment #18) > (I found no way to reset Developer > Edition, no reset button present in about:support) Does anyone know why this is not showing up on Aurora?
Comment 20•10 years ago
|
||
(In reply to Florin Mezei, QA (:FlorinMezei) from comment #19) > (In reply to Bogdan Maris, QA [:bogdan_maris] from comment #18) > > (I found no way to reset Developer > > Edition, no reset button present in about:support) > > Does anyone know why this is not showing up on Aurora? It is for me - but note it is now labelled "Refresh" and I only tried my regular profile and not the devtools-specific one.
Assignee | ||
Comment 21•10 years ago
|
||
(In reply to Mark Hammond [:markh] from comment #20) > (In reply to Florin Mezei, QA (:FlorinMezei) from comment #19) > > (In reply to Bogdan Maris, QA [:bogdan_maris] from comment #18) > > > (I found no way to reset Developer > > > Edition, no reset button present in about:support) > > > > Does anyone know why this is not showing up on Aurora? > > It is for me - but note it is now labelled "Refresh" and I only tried my > regular profile and not the devtools-specific one. The button showing is related to whether the current profile is the default or not. I bet it regressed because of the separate devtools profile stuff. Florin, can you file a bug about this and cc me, MattN, and past, and needinfo MattN? I bet he knows what's up there. Thanks! (nb: that issue is orthogonal to this bug)
Flags: needinfo?(florin.mezei)
Comment 22•10 years ago
|
||
The thing is that the button is missing if I start Aurora with a brand new profile different from dev-edition default profile, logged bug 1100334 on that. Just tested across platforms using Developer Edition/Aurora and this issue is not reproducible anymore.
Flags: needinfo?(florin.mezei)
Comment 23•10 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #8) > Anthony, are you the right person to talk to for comment #6 ? I think QE verification should be sufficient here, and that's already been done. Moztrap is not well suited as a stopgap for automation. In the future you should use the in-moztrap flag to ask for Moztrap coverage, in-qa-testsuite for QA owned automation suites.
Flags: in-qa-testsuite?(anthony.s.hughes)
Assignee | ||
Comment 24•10 years ago
|
||
(In reply to Anthony Hughes, QA Mentor (:ashughes) from comment #23) > (In reply to :Gijs Kruitbosch from comment #8) > > Anthony, are you the right person to talk to for comment #6 ? > > I think QE verification should be sufficient here, and that's already been > done. Moztrap is not well suited as a stopgap for automation. In the future > you should use the in-moztrap flag to ask for Moztrap coverage, > in-qa-testsuite for QA owned automation suites. I think we'd like coverage of this feature in general in moztrap so we don't have dataloss-causing regressions again, considering we don't currently have the technical means to test this using the engineering-owned automation suites.
Flags: in-moztrap?(anthony.s.hughes)
Assignee | ||
Comment 25•10 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #24) > (In reply to Anthony Hughes, QA Mentor (:ashughes) from comment #23) > > (In reply to :Gijs Kruitbosch from comment #8) > > > Anthony, are you the right person to talk to for comment #6 ? > > > > I think QE verification should be sufficient here, and that's already been > > done. Moztrap is not well suited as a stopgap for automation. In the future > > you should use the in-moztrap flag to ask for Moztrap coverage, > > in-qa-testsuite for QA owned automation suites. > > I think we'd like coverage of this feature in general in moztrap so we don't > have dataloss-causing regressions again, considering we don't currently have > the technical means to test this using the engineering-owned automation > suites. Sorry, perhaps I should have read more carefully - but if you really don't want to do this because Moztrap is "not well suited as a stopgap for automation", can you expand on why that is the case?
Comment 26•10 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #25) > Sorry, perhaps I should have read more carefully - but if you really don't > want to do this because Moztrap is "not well suited as a stopgap for > automation", can you expand on why that is the case? I don't want to go too far down the rabbit hole in this bug. Moztrap should *only* be used to provide coverage for things that cannot be automated. Having a Moztrap test will not guarantee you have sufficient coverage to detect a regression as soon as it occurs. I can try to mitigate this by adding the test to our Beta Regression suite which gets cloned every version, but best case scenario that's only going to get run once every 6 weeks in Beta. The effectiveness of Moztrap tests largely depends on the person running the test. It's a perfectly valid concern if this can't be automated in an Engineering test suite. However, the escalation path for test coverage should then go to see if it can be covered in a QA test suite (Mozmill, Marionette, etc). Adding a Moztrap test should be an absolute last resort. I'm happy to discuss this further with you but not on this bug.
Flags: in-moztrap?(anthony.s.hughes) → in-qa-testsuite?(hskupin)
Comment 27•10 years ago
|
||
We could perfectly cover this with Mozmill for now. Andreea, can you please take care of it? Thanks.
Flags: needinfo?(andreea.matei)
Updated•10 years ago
|
Flags: in-qa-testsuite?(hskupin)
Comment 28•10 years ago
|
||
Henrik, Cosmin filed bug 1113217 for this. Thanks.
Flags: needinfo?(andreea.matei)
You need to log in
before you can comment on or make changes to this bug.
Description
•