Closed Bug 932110 Opened 11 years ago Closed 10 years ago

Sessionstore.js wrote only null bytes after Windows hang

Categories

(Firefox :: Session Restore, defect)

25 Branch
x86_64
Windows 8.1
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 33

People

(Reporter: silverbacknet, Unassigned)

References

Details

(Whiteboard: [dupeme?])

User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0 (Beta/Release)
Build ID: 20131025150754

Steps to reproduce:

I started up windows, restored my session, and spent the day doing the usual stuff. My system froze up (windows 8.1) after locking it, requiring a hard powercycle. Afterward, Firefox loaded the default home page only.


Actual results:

sessionstore.bak and sessionstore.bak-20131025150754 are both 5.9 MB of null bytes.


Expected results:

sessionstore.bak and sessionstore.bak-20131025150754 should have contained the last session's JSON data.
Component: Untriaged → Session Restore
Joshua, could you please try the following, to see if you still reproduce the issue :

1) using a clean profile: http://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles

2) running in Safe mode: http://support.mozilla.org/en-US/kb/troubleshoot-firefox-issues-using-safe-mode
Flags: needinfo?(silverbacknet)
Doubtful, I think, that the items in comment 1 will help.  see bug 961752
Summary: Sessionstore wrote only null bytes → Sessionstore.js wrote only null bytes after Windows hang
Whiteboard: [dupeme?]
Sorry, I haven't had a hard Windows freeze since then, or if I have, it hasn't caused a problem. None of the previous ones did. I'm not quite sure how I'd go about forcing one, or whether I really want to. 

I once had a laptop that showed similar behavior across ALL written files on the system when the disk driver malfunctioned, but that was on XP five years ago. Firefox is the only one that did it this time. None of the sqlite databases were affected, either. (Fortunately I had a backup of the sessions.)
Flags: needinfo?(silverbacknet)
This just happened to me on the current Nightly. A few hours earlier I set my notebook to standby and when I turned it on just now, it had crashed. When I started Firefox again, the session was blank. I looked for my sessionstore.js and noticed that only approximately the first half was written correctly, the rest is null bytes as OP said.

Interestingly, this broken sessionstore prevented Firefox from storing anything about the new session as well. Usually when the session gets corrupted (for whatever reason), Firefox will start with a blank one and just overwrite the existing sessionstore.js—in this case, it didn’t touch the broken one at all.

Luckily my .bak was from the time when I put the machine to standby, so I didn’t lose anything.
FF29.0.1 all te same.
More importantly is that if ff finds sessionstore.js filled with zeros, it starts new session and overrides(!) sessionstore.bak with contents of sessionstore.js(i.e. zeros).
So if i launch ff after crush without previously saving my sessionstore.bak - i'll lose all.=(
Marking as fixed by bug 883609. We should recover a lot better from corrupted sessionstore files now.
Status: UNCONFIRMED → RESOLVED
Closed: 10 years ago
Depends on: 883609
Resolution: --- → FIXED
Target Milestone: --- → Firefox 33
You need to log in before you can comment on or make changes to this bug.