Open Bug 864887 Opened 11 years ago Updated 2 years ago

nsAutoSyncState::ProcessExistingHeaders should not null the folder database reference

Categories

(MailNews Core :: Networking: IMAP, defect)

defect

Tracking

(Not tracked)

People

(Reporter: rkent, Unassigned)

References

Details

Something is arbitrarily nulling the message database, which can cause crashes and poor performance due to database reloads. At least one place that occurs is in nsAutoSyncState::ProcessExistingHeaders

We probably need a mechanism to get the message database without affecting the reference in the folder, or some other method that allows us to more effectively manage the lifetime of these critical database objects.

See https://bugzilla.mozilla.org/show_bug.cgi?id=837409#c13 as well.
Severity: normal → major
See Also: → 837409
Do you think some or most of this arbitrarily nulling are regressions introduced in the last 3-4 years?
The patch I am complaining about is from Bug 470221 - imap autosync leaves db's open, which is TB 3.0 timeframe.

bug 470221 comment 3 says "... it should help and this bug is causing a fair amount of pain. We can deal with any remaining issues as they come up." So I suppose my current complaint is that we need to deal with the issues.
the traditional way of dealing with this is to only null out the folder's db if your code actually opened the db. But that's usually for code that synchronously opens a db, does stuff, and returns, which is not what AutoSyncState does, iirc. We could lean more heavily on the db cache cleanup code that was added after this code.
Severity: major → normal
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.