I'm writing out the newsrc file too often. namely, when the nsNNTPProtocol instance gets destroyed, which happens frequently because we don't have a nntp connection pool. something to work on when I get time.
moving to m16.
really accepting this time.
Triage to M17. Please add beta2 keyword if this must make beta2. Please let me know if this must be done by M16 feature freeze.
David, Based on Seth's comments, if we do the NNTP connection cache is this going to disappear?
it will disappear, and re-appear as "we're not writing out the newsrc file often enough". So there will still be a problem. We should be writing out the newsrc file on a timer, like 4.x, e.g., every 5 or 10 minutes.
M18 and nsbeta3
Mail Triage is marking [nsbeta3-]
Now the bug is that we never write out the newsrc file, unless we shutdown and aren't leaking nsNNTPProtocol objects. That seems rather risky to me. People lose the readness of news messages with this bug, which is data loss.
ok. changed the summary and removed the nsbeta3- for reevaluation.
removing perf keyword since this now seems to be a correctness problem.
+ per mail triage, also reassign to david.
accepting. Adding Alec to cc list in case he has any thoughts on this. Timers are probably the way to go, probably hanging off the nntp server object. An other choice would be to keep track of how many read/unread changes have been made and commit after x changes - this would have to take ranges into account, probably...
hrm.. I guess a timer is the best solution, as long as we can some how avoid writing the file if it hasn't changed (it would be wrong if we hit the disk no matter what, ever x minutes)
setting to p1 because I have a fix in hand and don't want anyone nsbeta3 minussing this bug.
fix checked in.
How to verify this ?
1. Open a newsgroup. 2. Mark some messages read (or unread) 3. Wait 5 minutes or 6 minutes 4. Kill netscape/mozilla without shutting down app(simulates crash) 5. Start up again, open newsgroup, and see if the read/unread state is remembered
changing qa to suresh
Marking Verified. Tested on 9/29 Branch builds on all platforms.
removing mail2 keyword.