I noticed very odd Firefox behavior on my WinXP box recently. Whenever I would attempt to download a file, the whole browser would freeze up for few seconds. It has been getting progressively worse as the days went by. Today I got fed up with it and decided to investigate. Quick google showed me that I’m an idiot – all I had to do was to clean my download list every once in a while.
You see, Firefox keeps the list of all your downloads in a file called downloads.rdf in your profile directory. Whenever you download new file, information such as file name, download date and etc it gets added to (wait for it..) the top o the file. In other words, whenever you download a file, Firefox needs to rebuild that file.
If you ever needed a proof that using XML based format such as RDF for logging purposes is not always a good idea, look no further. With a simple text based file, you could simply append to the file which is a relatively quick procedure. If you want to append to the top, you just rename the old file, create a new one and append the two. Easy! With XML it’s not this easy because your entries have shit above and below. So in most cases you need to parse the file, load it’s contents into memory and then write it back out.
My downloads.rdf file had like a billion entries, so no wonder Firefox was throwing up every time I was trying to download something. Solution is of course to clean your download list every once in a while. I wonder if this soft of behavior could be prevented. Perhaps accessing that file should be done in a separate thread (if it’s not already) or perhaps FF should purge old entries automatically after reaching some sort of threshold…
[tags]firefox, download.rdf, firefox freezing, browser, downloads[/tags]
Hmmm I would have thought ya already knew about that one. It is kinda an old issue and any time FF is acting flakey it NEVER hurts to like clean it up some (cookies history and such), might not help probably won’t but it certain can’t hurt. haha.
Sometimes I use FF’s download manager and sometimes I use an extension for downloads: DownThemAll! Useful ya know if ya find a whole directory full of (cough cough) MP3s. I don’t know if it has the same problem or not, I keep its history cleaned up so I’ve never noticed.
BTW don’t believe the “increases speed up to 400%” on the DownThemAll Mozilla page. I have never timed it but I can’t notice hardly any difference at all (in Ubuntu, been so long since i used it in windows who knows). A 400% increase I believe I would notice :)
Thinking about it I might be wrong on the speed increase. I seldom use it to download Really Large files (wget would be my preference there) or to download like 100s of files at once. DownThemAll might (and probably does) increase speed there. Any way its a cool add on and a bit more powerful than the built in download manager.
And yeah FF is buggy in some ways: this soft of behavior SHOULD if at all possible be prevented. Report it to them, I’m sure they know about it but enuff people bitch about it they might fix it ;)
And btw I kinda agree on the text file/ XML thing. XML has its uses and I actually like it but sometimes ya can’t beat simplicity!!
I’m pretty sure there’s an option somewhere to clear your download history when you close firefox, but it might be that it’s a part of “Download Statusbar”.
If you haven’t seen it, that’s an extension that puts download information into a statusbar at the bottom of the screen. Damn fine extension too – useful, unobtrusive, definite improvement over the download window… one of the first extensions I install if I’m setting up Firefox from scratch for some reason
@Starhawk – yeah, the DownThemAll thing is cool.
But, personally I doubt anything can speed up downloads that much – I mean, there is only so much download bandwidth you could use. ;)
@Matt` – yeah, it’s a core Firefox option, not an extension. But IMHO a browser should not clutter it’s own files to the point it hinders it’s function like that. When designing software you pretty much should assume that the average user will do no maintenance unless you remind him…
Yeah i agree “a browser should not clutter it’s own files to the point it hinders it’s function” and we all know how clueless Lusers can be, lol.
But I wouldn’t want FF to “purge old entries automatically after reaching some sort of threshold” unless I had some sorta control over it. Option to turn it on or off and the ability to set threshold to want I want it to be would be nice ya know.
I agree, they could add an option in the Privacy tab just below the one for history. It would be like:
Remember visited pages for the last ____ days.
Remember downloaded files for the last ____ days.
Firefox 2 uses mork data system which isn’t optimized a bit. Firefox 3 uses sqlite instead which might work better. Try it out :)