Firefox keeps turning "cookies.sqlite" into .bak since it updated to version 74.0
Immediately after updating to version 74.0, I noticed Firefox had logged me out from all sites I usually am automatically logged into at the start of a session. It was not the first time I encountered this problem, as it had been happening at irregular intervals, and found that it was caused by firefox replacing the "cookies.sqlite" file in my profile folder with a new one, while also dubbing the old one "cookies.sqlite.bak". I always resolved the problem by:
-Deleting the recently created "cookies.sqlite" in my profile folder
-Renaming "cookies.sqlite.bak" into "cookies.sqlite"
-(Usually) Creating a copy of the .bak file and keeping it in a folder as insurance, in case I found no recent .bak the next time it happened or it got corrupted somehow
After doing this, upon starting firefox I would find all my cookies in place and myself logged in all sites I cared about (I set it up so that firefox restores a long-running, multi-windowed session at startup).
On a side note, I was always able to know whether my "cookies.sqlite" file had been rewritten by checking its size: if it had been just created, it would always be 512 Kb; the backup .bak file is instead 1.50 Mb.
Onto the problem at hand: after updating to 74.0 and finding that I lost all cookies and logins, I repeated the process highlighted above, as usual. It didn't resolve the problem though: I still didn't recover any cookie even though I switched the "good" .bak file with the newly created "cookies.sqlite". Upon starting firefox, instead of loading my 1.50 Mb .sqlite it keeps immediately renaming it .bak and creating its own cookies.sqlite. I even tried using a slightly older .bak, one that I had successfully switched before: the result was the same.
I am at my wits' end: I checked and tried various cookie and privacy settings, but since firefox updated it seems determined to shun my old cookie backup in favor of creating its own empty, useless file. There also doesn't seem to be any recent documentation on this problem I can find. I even considered opening and checking both .sqlite and .bak files for any obvious differences, but I'm afraid I just don't know how.
Those cookies are critical for my navigation. "Major Annoyance" wouldn't even begin to describe starting a session without those.
由 chibi95 於 修改
I suspect that .bak means something similar to corrupted.
Here's a similar thread that didn't reach a successful conclusion: https://support.mozilla.org/questions/1281684
I also suspected a .bak corruption of some sorts at first, but since I also tried using (to no avail) a .bak that successfully restored my cookies once before the update, I personally find that unlikely.
In the mean time, I will try out some methods proposed in the thread that was linked, and report afterwards. It does sound like it is the same issue, after all.
I'll also try to test out older ".bak"s which were sitting in my recycle bin, for good measure.
Update: So far, nothing I've tried solved the issue.
I tried experimenting with a new test profile, shutting down/rebooting my pc, and using an older .bak which I'm sure isn't corrupted since it previously worked.
At the very least, I made a discovery using this tool that was linked in the other thread to read the ".sqlite"s
The brand new .sqlite that firefox keeps pumping out, understandably, is only 16 rows long, comprised mostly from cookies from this site. It also weighs 512 Kb.
My old "good" .sqlite, with all the cookies I need and that I desperately need firefox to use, is more than 2800 rows long. Both it and slightly older "good" .sqlites I have as backups weigh 1.50 Mb, even if they have a slightly different amount of lines.
The "cookies.sqlite.bak" that firefox keeps creating together with its brand new .sqlite also weighs 1.50 Mb: until now, I presumed it was just my "good" .sqlite renamed by firefox for its convenience.
Checking it with the tool, however, revealed that it is 0 lines long, even though it weighs 1.50 Mb.
So firefox not only refuses to use my .sqlite (which worked perfectly until the other day), it also wipes out any records it might have and keeps it around as a .bak for no reason I can think of.
Is there any reason not to downgrade back to my previous version, at this point? Because I can't navigate properly without these cookies, I can't seem to make them work with 74.0, and the update is the only thing I can think of blaming here.
You can try reinstalling Firefox 73.0.1. What should happen is Firefox should create a new profile for any downgrade. Then you can transplant your "good" cookies.sqlite to the new profile and see whether it is readable. If so, you can migrate other data files from your Firefox 74.0 profile.
The about:profiles page provides access to the root folders of each profile.
Did you confirm that the old cookies.sqlite and cookies.sqlite created in the current Firefox release has the same structure ?
I see these columns in cookies.sqlite 72 when I export to CSV Scheme version: 2 User version: 10 "id","baseDomain","originAttributes","name","value","host","path","expiry","lastAccessed","creationTime","isSecure","isHttpOnly","inBrowserElement","sameSite","rawSameSite"
I see these columns in cookies.sqlite 74 when I export to CSV. Scheme version: 5 User version: 11 "id","originAttributes","name","value","host","path","expiry","lastAccessed","creationTime","isSecure","isHttpOnly","inBrowserElement","sameSite","rawSameSite"
So the baseDomain column appears to be dropped.
- Bug 1609176 - Stop using the obsolete baseDomain field of moz_cookies
(please do not comment in bug reports
What User version does your old cookies.sqlite database have ?
See also this migration code:
Hi chibi95, did you install the Facebook Container extension before, during, or after your update? Some users reported their cookies were deleted when they installed it.