Closed
Bug 1303145
Opened 10 years ago
Closed 10 years ago
TypeError: PlacesUtils.history is undefined (no history data, broken browser)
Categories
(Firefox :: Untriaged, defect)
Tracking
()
RESOLVED
INCOMPLETE
People
(Reporter: kumar, Unassigned)
Details
When I updated Firefox Developer Edition today to 50.0a2 (2016-09-15), it seemed broken in many ways. Here are some obervations:
* All my tabs from last session were gone
* The awesomebar shows no results
* My installed add-ons (TestPilot, etc) are not working
* Command+click does not open tabs in new windows
* I cannot sign into Sync, it just hangs
In the console I see this repeatedly:
Full message: TypeError: PlacesUtils.history is undefined
Full stack: @resource://gre/modules/PlacesUtils.jsm:1938:7
XPCU_defineLazyGetter/<.get@resource://gre/modules/XPCOMUtils.jsm:198:21
this.PlacesUtils.withConnectionWrapper/<@resource://gre/modules/PlacesUtils.jsm:1279:11
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
Task_spawn@resource://gre/modules/Task.jsm:168:12
this.PlacesUtils.withConnectionWrapper@resource://gre/modules/PlacesUtils.jsm:1278:12
@resource://gre/modules/PlacesUtils.jsm:2132:3
XPCU_defineLazyGetter/<.get@resource://gre/modules/XPCOMUtils.jsm:198:21
fetch@resource://gre/modules/PlacesUtils.jsm:1997:5
Search.prototype._matchPlacesKeyword@resource://gre/components/UnifiedComplete.js:1119:23
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
Task_spawn@resource://gre/modules/Task.jsm:168:12
TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:388:16
TaskImpl_run@resource://gre/modules/Task.jsm:327:13
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
Task_spawn@resource://gre/modules/Task.jsm:168:12
TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:388:16
TaskImpl_run@resource://gre/modules/Task.jsm:327:13
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:937:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
Promise.prototype.then@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:454:5
UnifiedComplete.prototype.startSearch@resource://gre/components/UnifiedComplete.js:1939:5
onInput@chrome://browser/content/urlbarBindings.xml:899:13
onxblinput@chrome://global/content/bindings/autocomplete.xml:614:9
| Reporter | ||
Comment 1•10 years ago
|
||
I started in safe mode (no add-ons) and the same exact error occurs. Everything is still broken.
| Reporter | ||
Comment 2•10 years ago
|
||
By starting with --safe-mode and selecting 'freshen up Firefox Developer Edition' I was able to get a working browser again (and I don't see this exception in the console). However, I've lost all my saved data. Grrr. I'm trying to restore it with Sync.
Comment 3•10 years ago
|
||
Update issue? Did you update through Firefox's updater or the maintenance service on Windows, or by downloading something and pave-over installing?
If you unzip/tar/dmg a fresh copy into a new dir and use that (stop all other copies first), does that behave the same way? What about a new profile on either the new thing or your existing potentially busted setup?
(CC'ing some folks who know about update and/or places in case they have ideas.)
Component: General → Untriaged
Flags: needinfo?(kumar.mcmillan)
Comment 4•10 years ago
|
||
Gijs, doesn't 'freshen up Firefox Developer Edition' refresh the profile? If so, then it isn't app update since app update doesn't touch profiles.
Flags: needinfo?(gijskruitbosch+bugs)
Comment 5•10 years ago
|
||
(In reply to Robert Strong [:rstrong] (use needinfo to contact me) from comment #4)
> Gijs, doesn't 'freshen up Firefox Developer Edition' refresh the profile? If
> so, then it isn't app update since app update doesn't touch profiles.
Oh, I missed comment #2.
(In reply to Kumar McMillan [:kumar] (needinfo all the things) from comment #2)
> By starting with --safe-mode and selecting 'freshen up Firefox Developer
> Edition' I was able to get a working browser again (and I don't see this
> exception in the console). However, I've lost all my saved data. Grrr. I'm
> trying to restore it with Sync.
All your old data is in a folder on your desktop. Refresh does not delete anything.
Also, what saved data particularly? We normally keep all your bookmarks, history and a number of other things.
Flags: needinfo?(gijskruitbosch+bugs)
Comment 6•10 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #5)
> (In reply to Robert Strong [:rstrong] (use needinfo to contact me) from
> comment #4)
> > Gijs, doesn't 'freshen up Firefox Developer Edition' refresh the profile? If
> > so, then it isn't app update since app update doesn't touch profiles.
>
> Oh, I missed comment #2.
>
> (In reply to Kumar McMillan [:kumar] (needinfo all the things) from comment
> #2)
> > By starting with --safe-mode and selecting 'freshen up Firefox Developer
> > Edition' I was able to get a working browser again (and I don't see this
> > exception in the console). However, I've lost all my saved data. Grrr. I'm
> > trying to restore it with Sync.
>
> All your old data is in a folder on your desktop. Refresh does not delete
> anything.
>
> Also, what saved data particularly? We normally keep all your bookmarks,
> history and a number of other things.
Actually, maybe I know what's going on. If you start devedition with the -P --no-remote switch, does it show the new dev-edition-default profile and a profile called default-<unixtimestamp> ? Then this is probably a dupe of bug 1122124.
| Reporter | ||
Comment 7•10 years ago
|
||
I was pretty freaked out because I use Dev Edition as my main browser. I had to repair my work/life setup ASAP so I apologize if some helpful debugging artifacts are now lost.
This isn't a dupe of bug 1122124 because the FF 35 "refresh" installer wasn't the cause of my broken state.
I will recap what happened:
- This was on Mac OS X 10.10.5
- I was running Dev Edition with the default profile (dev-edition-default)
- I had updated Dev Edition from the About Firefox menu as I normally do from time to time. After it downloaded, I clicked "restart to apply update"
- When it launched, I am *pretty sure* I was in my regular default profile (dev-edition-default) because it did have all my add-ons listed. This was when everything was broken.
- It's of course possible one of my add-ons caused me to enter the broken state, who knows
- I restarted it from the command line to get console output. The broken state was exactly the same. This is when I noted the stack trace.
- I restarted from the command line using the --safe-mode flag to see if removing my add-ons would fix it. It did not, same stack trace.
- I restarted from the command line again using --safe-mode but selecting "freshen up Firefox Developer Edition" so that I could try and rescue my profile.
- This worked. The stack trace went away and the browser seemed less broken (according to symptoms I posted)
- I used Sync to recover my saved passwords and awesomebar history
Flags: needinfo?(kumar.mcmillan)
| Reporter | ||
Comment 8•10 years ago
|
||
> If you start devedition with the -P --no-remote switch, does it show the new dev-edition-default profile and a profile called default-<unixtimestamp> ? Then this is probably a dupe of bug 1122124.
Yes, I did see two profiles named default-<unixtimestamp>
Comment 9•10 years ago
|
||
(In reply to Kumar McMillan [:kumar] (needinfo all the things) from comment #7)
> This isn't a dupe of bug 1122124 because the FF 35 "refresh" installer
> wasn't the cause of my broken state.
The "refresh" in bug 1122124 is the same as this:
> - I restarted from the command line again using --safe-mode but selecting
> "freshen up Firefox Developer Edition" so that I could try and rescue my
> profile.
This should have kept your passwords and history.
> - This worked. The stack trace went away and the browser seemed less broken
> (according to symptoms I posted)
So as I noted, there will be backups of your old profile on your desktop. It would be interesting to see why those cause brokenness.
> - I used Sync to recover my saved passwords and awesomebar history
This should not have been necessary. One possible explanation is that after the restart caused by refresh, the name of the profile is no longer 'dev-edition-default', and so when you next clean-start devedition, it will create a new profile which will have nothing in it (which would explain the missing passwords and history). So there are a number of things we should figure out:
1) why was your profile bust
2) why was your stuff not there after the refresh (and the answer to that might be bug 1122124, which means that using refresh/reset on devedition doesn't work quite right).
We can get the answer to (1) with your old profile (hopefully) if you restore that back into a separate dir and try to start Firefox with that (you can use the --profile switch and pass a path). The about:support data from it would be a good place to start.
For (2), as I asked in comment #6, it would be useful if you could tell us what the name is of the profile you're running right now, whether there are any others that show up in the profile manager, and whether that can help clarify where your data went.
Flags: needinfo?(kumar.mcmillan)
| Reporter | ||
Comment 10•10 years ago
|
||
> 1) why was your profile bust
Just to be super clear on the timeline of events, my Firefox was first busted after initiating an update from the About Firefox menu. It was not first busted by using the 'refresh' feature.
> 2) why was your stuff not there after the refresh (and the answer to that might be bug 1122124, which means that using refresh/reset on devedition doesn't work quite right).
When I did the refresh (as an attempt to unbust my browser), I can recall that my awesomebar definitely wasn't populated with history until after I signed into Sync.
> We can get the answer to (1) with your old profile (hopefully)
Unfortunately, I was banging on everything with a hammer trying to get it to work. Sorry. I tried copying my old corrupt profile folder to a new one and I also hand edited profiles.ini trying to switch things around. I honestly don't remember what all I did. I now see that I renamed an old one to dev-edition-default-CORRUPT but if I launch from the command line with it, I do not see the PlacesUtils.history stack trace -- no stack traces at all. It just looks like a brand new untouched profile (with none of my old data). I tried launching with another one that was named default-<timestamp> but that did not reproduce the stack trace either.
> For (2), as I asked in comment #6, it would be useful if you could tell us what the name is of the profile you're running right now
The one I'm running now is dev-edition-default but, again, I manually named this by editing profiles.ini in a fit of panic :/
I tried launching a bunch of other profiles, none of them reproduced the broken state.
Flags: needinfo?(kumar.mcmillan)
Comment 11•10 years ago
|
||
(In reply to Kumar McMillan [:kumar] (needinfo all the things) from comment #10)
> > 1) why was your profile bust
>
> Just to be super clear on the timeline of events, my Firefox was first
> busted after initiating an update from the About Firefox menu. It was not
> first busted by using the 'refresh' feature.
>
> > 2) why was your stuff not there after the refresh (and the answer to that might be bug 1122124, which means that using refresh/reset on devedition doesn't work quite right).
>
> When I did the refresh (as an attempt to unbust my browser), I can recall
> that my awesomebar definitely wasn't populated with history until after I
> signed into Sync.
>
> > We can get the answer to (1) with your old profile (hopefully)
>
> Unfortunately, I was banging on everything with a hammer trying to get it to
> work. Sorry. I tried copying my old corrupt profile folder to a new one and
> I also hand edited profiles.ini trying to switch things around. I honestly
> don't remember what all I did. I now see that I renamed an old one to
> dev-edition-default-CORRUPT but if I launch from the command line with it, I
> do not see the PlacesUtils.history stack trace -- no stack traces at all. It
> just looks like a brand new untouched profile (with none of my old data). I
> tried launching with another one that was named default-<timestamp> but that
> did not reproduce the stack trace either.
>
> > For (2), as I asked in comment #6, it would be useful if you could tell us what the name is of the profile you're running right now
>
> The one I'm running now is dev-edition-default but, again, I manually named
> this by editing profiles.ini in a fit of panic :/
>
> I tried launching a bunch of other profiles, none of them reproduced the
> broken state.
OK, then at this stage, I'm not sure there's anything we can do. The PlacesUtils.history thing could point to lots of different things, including but not limited to places DB corruption, but if there's no way to reproduce or get the data that reproduced this then I don't know how we'll investigate further, so closing as INCOMPLETE for now.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → INCOMPLETE
| Reporter | ||
Comment 12•10 years ago
|
||
> including but not limited to places DB corruption
Ah, interesting. I was having some disk space issues at the time (aggressive caching elsewhere was eating up space).
You need to log in
before you can comment on or make changes to this bug.
Description
•