Open Bug 538034 Opened 15 years ago Updated 4 years ago

deadlock if error doing status checks - chaining imap status calls, if previous url had a network error, we can be locked on a monitor on the server when the next url tries to run

Categories

(MailNews Core :: Networking: IMAP, defect)

x86
Windows 7
defect
Not set
critical

Tracking

(Not tracked)

People

(Reporter: Bienvenu, Unassigned)

References

Details

(Keywords: hang, stackwanted)

If we are chaining imap status calls, using nsImapIncomingServer::OnStopRunningUrl to chain them, if the previous url had a network error, such that nsImapIncomingServer::DoomUrlIfChannelHasError is called, we can end up locked on a monitor on the server when the next url tries to run. Running the next url tries to get the same monitor on the server, iirc. I need to investigate this a bit more, but I don't want to forget about it...I don't think this is a common occurrence; in particular, I haven't seen the relevant stack trace in any of the hang on shutdown logs I've looked at.
Assignee: dbienvenu → nobody
Severity: normal → critical
Keywords: hang, stackwanted
Summary: deadlock when we have an error doing status checks → deadlock if error doing status checks - chaining imap status calls, if previous url had a network error, we can be locked on a monitor on the server when the next url tries to run
See Also: → 649323
You need to log in before you can comment on or make changes to this bug.