RSS breaks after compact folder

RESOLVED FIXED

Status

MailNews Core
Feed Reader
RESOLVED FIXED
14 years ago
9 years ago

People

(Reporter: Adrian Moisey, Assigned: Bienvenu)

Tracking

({fixed-aviary1.0})

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

14 years ago
User-Agent:       Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.7.2) Gecko/20040816 Firefox/0.9.1+
Build Identifier: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.7.2) version 0.7+ (20040820)

RSS breaks after you compact folder on one of the feeds

Reproducible: Always
Steps to Reproduce:
1. Subscribe to a feed
2. Right-click on it, click Compoct Folder
3. Attempt to get feed working (click "Get New Messages")

Actual Results:  
RSS doesnt work

Expected Results:  
RSS should update when new items are posted
(Assignee)

Comment 1

14 years ago
ah, probably losing the feed uri after the compaction. I can look into this.

Comment 2

14 years ago
could be a good 0.8 blocker
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Target Milestone: --- → Thunderbird0.8
(Assignee)

Comment 3

14 years ago
I've coded up a fix for this...it's not quite done, but basically it involves
saving all the db folder info from the original db and storing it in the new db
generated by compacting the folder.
Assignee: mscott → bienvenu
Status: ASSIGNED → NEW

Comment 4

14 years ago
Thanks for working on this David. Any chance the patch will also have a side
effect of making us rememmber the feed url when rebuilding the summary file for
cases like: Bug #255453?
(Assignee)

Comment 5

14 years ago
yes, if we do rebuild the summary file in that scenario, instead of just
noticing that the summary file is out of date and erroring out...
(Assignee)

Comment 6

14 years ago
Created attachment 156812 [details] [diff] [review]
proposed fix

this changes the way saving and restoring of dbfolderinfo's works - it saves
all the data blindly, which is nice because when new data is added, we don't
need to add new code to save+restore it, and it cuts down on code size. The
downside is that there's some data we don't want to restore, like timestamps,
so that data we have to explicitly set after restoring the db folder info.

I've also removed some unrelated trace statements that NS_ENSURE_TRUE was
generating.
(Assignee)

Updated

14 years ago
Attachment #156812 - Flags: superreview?(mscott)

Comment 7

14 years ago
(In reply to comment #5)
> yes, if we do rebuild the summary file in that scenario, instead of just
> noticing that the summary file is out of date and erroring out...

Actually I think what we saw was that the summary file was out of date and it
errored out. So this probably won't fix that particular case. 

Thanks for working on this.

Comment 8

14 years ago
Comment on attachment 156812 [details] [diff] [review]
proposed fix

1) These lines:

if (err == 0)

can just be

if (!err)

2) I assume that mProperties contains non string properties such as sort order,
sort type, view flags, etc. so we aren't losing those non strings during
compaction? 

3) I didn't see why LoadMemberVariables() now gets called in
InitFromTransferInfo, does that re-load the view flags, sort oder, etc. from
the property values we just read back in?
Attachment #156812 - Flags: superreview?(mscott) → superreview+
(Assignee)

Comment 9

14 years ago
1) I'll fix that.
2) everything in mork is a string - it's a text format db.
3) Yes, LoadMemberVariables gets the data back from the mork row into the member
vars of the dbfolderinfo.

Comment 10

14 years ago
We can close out this bug now right David? Looks like it's checked into the
branch and trunk.
(Assignee)

Comment 11

14 years ago
yep, sorry. Marking fixed.
Status: NEW → RESOLVED
Last Resolved: 14 years ago
Keywords: fixed-aviary1.0
Resolution: --- → FIXED
(Reporter)

Comment 12

14 years ago
You guys rock! Open Source rocks!

Updated

9 years ago
Component: RSS → Feed Reader
Product: Thunderbird → MailNews Core
Target Milestone: Thunderbird0.8 → ---
You need to log in before you can comment on or make changes to this bug.