Closed Bug 253987 Opened 20 years ago Closed 17 years ago

Mozilla hangs in IMAP ConnectionTimeOut

Categories

(MailNews Core :: Networking: IMAP, defect)

defect
Not set
critical

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: mozeditor, Assigned: Bienvenu)

Details

(Keywords: hang)

Attachments

(1 file)

Moz 1.7 on OSX.

Here's the stack on what I suspect is the key thread:
 start
 _start
 main
 main1(int, char**, nsISupports*)
 nsAppShell::Run()
 nsMacMessagePump::DoMessagePump()
 nsMacMessagePump::GetEvent(EventRecord&)
 0x927fdb80
 0x927ece68
 0x927d92b4
 0x927d9100
 0x927f8b90
 0x927e892c
 0x927e4a34
 0x927d25a4
 0x927d23ec
 0x927e30a4
 0x927d6a0c
 0x927d25a4
 0x927d2330
 _md_EventReceiverProc
 PL_ProcessPendingEvents
 PL_HandleEvent
 handleTimerEvent(TimerEventType*)
 nsTimerImpl::Fire()
 nsMsgBiffManager::PerformBiff()
 nsImapIncomingServer::PerformBiff(nsIMsgWindow*)
 nsImapMailFolder::GetNewMessages(nsIMsgWindow*, nsIUrlListener*)
 nsImapMailFolder::UpdateFolder(nsIMsgWindow*)
 nsImapService::SelectFolder(nsIEventQueue*, nsIMsgFolder*, nsIUrlListener*,
nsIMsgWindow*, nsIURI**)
 nsImapService::GetImapConnectionAndLoadUrl(nsIEventQueue*, nsIImapUrl*,
nsISupports*, nsIURI**)
 nsImapIncomingServer::GetImapConnectionAndLoadUrl(nsIEventQueue*, nsIImapUrl*,
nsISupports*)
 nsImapIncomingServer::GetImapConnection(nsIEventQueue*, nsIImapUrl*,
nsIImapProtocol**)
 nsImapIncomingServer::ConnectionTimeOut(nsIImapProtocol*)
 nsImapProtocol::TellThreadToDie(int)
 nsImapProtocol::EndIdle()
 nsImapServerResponseParser::ParseIMAPServerResponse(char const*, int)
 nsIMAPGenericParser::GetNextToken()
 nsIMAPGenericParser::AdvanceToNextLine()
 nsImapServerResponseParser::GetNextLineForParser(char**)
 nsImapProtocol::CreateNewLineFromSocket()
 nsMsgLineStreamBuffer::ReadNextLine(nsIInputStream*, unsigned&, int&, unsigned*)
 nsPipeInputStream::ReadSegments(unsigned (*)(nsIInputStream*, void*, char
const*, unsigned, unsigned, unsigned*), void*, unsigned, unsigned*)
 nsPipeInputStream::Wait()
 PR_Wait
 PR_WaitCondVar
 _pthread_cond_wait
 semaphore_wait_signal_trap
 semaphore_wait_signal_trap


In case I'm nuts the complete report is attached.
To get this all I have to do is leave a mail folder window open while using Moz.
 The mailserver I'm connected to is UWash IMAP.  Oher IMAP clients do not have a
problem with this mail server.

Here's the greating from the server when telnetting to it, in case that helps:

* OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS AUTH=LOGIN] [192.168.0.17] IMAP4rev1
2001.309 at Mon, 2 Aug 2004 02:43:50 -0700 (PDT)
The build that has this problem is rv:1.7 Gecko/20040514, which I know I
downloaded from mozilla.org as a release build.  I just grabbed 1.7 again, and
now it is: rv:1.7 Gecko/20040616.  So I guess there was an update of 1.7
somewhere along the way?

Anyway, I'm trying with this later build now.
Keywords: hang
    if (TestFlag(IMAP_CONNECTION_IS_OPEN) && m_idle)
      EndIdle(PR_FALSE);

this check is apparently not working - we check if the connection is open before
trying to end the idle. You can turn off the use of the IDLE command in the imap
advanced server settings. Maybe we don't want to EndIdle in the case of timeout
in general when "safeToClose" is false.
I haven't been able to repro this lately.  And I did have my mailserver hang a
couple of times around this problem.  Perhaps if a mailserver becomes
non-responsive, Mozilla can get hung?
Product: MailNews → Core
(Joe in comment #5)
> I haven't been able to repro this lately.  And I did have my mailserver hang a
> couple of times around this problem.  Perhaps if a mailserver becomes
> non-responsive, Mozilla can get hung?

Joe indicates not able to reproduce this - so is it still a problem?
I am constantly seeing this - if the network connectivity goes away long enough for the IMAP connection to time out, an IP address changes, a NAT device in the middle is rebooted (loosing the connections), etc, Thunderbird hangs (forever) - the window is blank and never refreshes. 

Most recently I have seen this with thunderbird-1.5.0.8-0.1.el4 under Red Hat Enterprise Linux ES 4 (Nahant Update 4).

(gdb) thread apply all bt

Thread 16 (Thread -1211806800 (LWP 11538)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x003441d4 in poll () from /lib/tls/libc.so.6
#2  0x00d9a2f8 in PR_Poll (pds=0x9c60ce8, npds=1, timeout=4294967295) at ptio.c:3877
#3  0x00b35395 in nsSocketTransportService::Poll (this=0x9c60800, interval=0x7fffffff) at nsSocketTransportService2.cpp:359
#4  0x00b358f4 in nsSocketTransportService::Run (this=0x9c60800) at nsSocketTransportService2.cpp:568
#5  0x0064a752 in nsThread::Main (arg=0x9c548b0) at ../../dist/include/xpcom/nsCOMPtr.h:848
#6  0x00d9b233 in _pt_root (arg=0x9c54930) at ptthread.c:220
#7  0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#8  0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 15 (Thread -1222329424 (LWP 11539)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0x9c07e40, timeout=4294967295) at ptsynch.c:405
#3  0x0064c0ed in TimerThread::Run (this=0x9bfec08) at TimerThread.cpp:318
#4  0x0064a752 in nsThread::Main (arg=0x9e7c4e0) at ../../dist/include/xpcom/nsCOMPtr.h:848
#5  0x00d9b233 in _pt_root (arg=0x9e7c560) at ptthread.c:220
#6  0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#7  0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 14 (Thread -1253798992 (LWP 12170)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x003441d4 in poll () from /lib/tls/libc.so.6
#2  0x00d97b24 in pt_Continue (op=0xb5447f64) at ptio.c:598
#3  0x00d9839b in pt_Read (fd=0xa2cefb8, buf=0xb5447fec, amount=1024) at ptio.c:1306
#4  0x00d85e89 in PR_Read (fd=0xfffffffc, buf=0xb5447fec, amount=1024) at priometh.c:141
#5  0x051d83e4 in nsPipeConsole::Run ()
   from /home/nogin/.thunderbird/ri7rehbf.default/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components/libenigmime.so
#6  0x0064a752 in nsThread::Main (arg=0xb581f268) at ../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x00d9b233 in _pt_root (arg=0xb581f2e8) at ptthread.c:220
#8  0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#9  0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 13 (Thread -1397679184 (LWP 12171)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x003441d4 in poll () from /lib/tls/libc.so.6
#2  0x00d97b24 in pt_Continue (op=0xacb10f64) at ptio.c:598
#3  0x00d9839b in pt_Read (fd=0xacce048, buf=0xacb10fec, amount=1024) at ptio.c:1306
#4  0x00d85e89 in PR_Read (fd=0xfffffffc, buf=0xacb10fec, amount=1024) at priometh.c:141
#5  0x051d83e4 in nsPipeConsole::Run ()
   from /home/nogin/.thunderbird/ri7rehbf.default/extensions/{847b3a00-7ab1-11d4-8f02-006008948af5}/components/libenigmime.so
#6  0x0064a752 in nsThread::Main (arg=0xb581ffc8) at ../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x00d9b233 in _pt_root (arg=0xb5820048) at ptthread.c:220
#8  0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#9  0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 12 (Thread -1418658896 (LWP 12173)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x003441d4 in poll () from /lib/tls/libc.so.6
#2  0x00d9a2f8 in PR_Poll (pds=0xab70f278, npds=1, timeout=4294967295) at ptio.c:3877
#3  0x00d9d896 in WaitPidDaemonThread (unused=0x0) at uxproces.c:712
#4  0x00d9b233 in _pt_root (arg=0xb58213d0) at ptthread.c:220
#5  0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#6  0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 11 (Thread -1232819280 (LWP 9044)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xa795440, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xa798f60, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xa3e2938) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xba16608, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xb7ac9d8, proxyInfo=0xa796c30)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xb7ac9d8, methodIndex=31, methodInfo=0xb49baad8, params=0xb684a170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xa361a18, methodIndex=31, info=0xb49baad8, params=0xb684a170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaa29c4d8) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaa29c4d8) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaa29c4d8) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xaa2b1a20) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xaead5d30) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 10 (Thread -1277158480 (LWP 9045)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xa5bcd00, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xa29f950, timeout=4294967295) at ptsynch.c:584
---Type <return> to continue, or q <return> to quit---
#4  0x00647969 in PL_WaitForEvent (self=0xa3ccf18) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xc18ff28, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xb09661b0, proxyInfo=0xbb47170)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xb09661b0, methodIndex=31, methodInfo=0xb49baad8, params=0xb3e01170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xb0963168, methodIndex=31, info=0xb49baad8, params=0xb3e01170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaa233e88) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaa233e88) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaa233e88) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xb5864868) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xb5864af8) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 9 (Thread -1289401424 (LWP 9046)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xb1998b8, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xb2ebcb8, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xaad2d10) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xaec8e20, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xbb59508, proxyInfo=0xbd0acd0)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xbb59508, methodIndex=31, methodInfo=0xb49baad8, params=0xb3254170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xab58e18, methodIndex=31, info=0xb49baad8, params=0xb3254170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaec09a28) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaec09a28) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaec09a28) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xb5dce2b8) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xaeade770) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 8 (Thread -1440744528 (LWP 9047)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xa3e24b0, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xa75aef0, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xb9550a0) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xab11b98, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xb09502f8, proxyInfo=0xc1add98)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xb09502f8, methodIndex=31, methodInfo=0xb49baad8, params=0xaa1ff170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xb49416a0, methodIndex=31, info=0xb49baad8, params=0xaa1ff170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaa2b0408) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaa2b0408) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaa2b0408) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xaa284750) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xaa2fdbd8) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 7 (Thread -1319126096 (LWP 9048)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xa535b30, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xbb999b8, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xb981fa0) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xba4ce48, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xaec35300, proxyInfo=0xa573db8)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xaec35300, methodIndex=31, methodInfo=0xb49baad8, params=0xb15fb170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xaa2e39c0, methodIndex=31, info=0xb49baad8, params=0xb15fb170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaece5d60) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaece5d60) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaece5d60) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xb588b270) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xaa2c8c20) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 6 (Thread -1482703952 (LWP 9049)):
---Type <return> to continue, or q <return> to quit---
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xba43ae0, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xb9f7218, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xa3ccb10) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xbbd6d50, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xbcc6ae0, proxyInfo=0xaaec430)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xbcc6ae0, methodIndex=31, methodInfo=0xb49baad8, params=0xa79fb170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xb217ca0, methodIndex=31, info=0xb49baad8, params=0xa79fb170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaece1778) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaece1778) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaece1778) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xaea556a8) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xae9ae350) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 5 (Thread -1451234384 (LWP 9050)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xb134ab8, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xad58db8, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xbb8edb8) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xa5354a8, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xb151bc8, proxyInfo=0xa522828)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xb151bc8, methodIndex=31, methodInfo=0xb49baad8, params=0xa97fe170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xbc5fa60, methodIndex=31, info=0xb49baad8, params=0xa97fe170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaa2a32d0) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaa2a32d0) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaa2a32d0) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xb5840768) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xaec37dd0) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 4 (Thread -1429148752 (LWP 9051)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x007331de in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0
#2  0x0072fe50 in _L_mutex_lock_215 () from /lib/tls/libpthread.so.0
#3  0x00000065 in ?? ()
#4  0x00da3464 in ?? () from /usr/lib/thunderbird-1.5.0.8/libnspr4.so
#5  0x09bd9964 in ?? ()
#6  0xaad0ebb0 in ?? ()
#7  0xaad0e038 in ?? ()
#8  0x00d96eaf in PR_Lock (lock=0x7331de) at ptsynch.c:206
#9  0x00d96eaf in PR_Lock (lock=0xaad0ebb0) at ptsynch.c:206
#10 0x00d973ed in PR_EnterMonitor (mon=0x9bd9960) at ptsynch.c:531
#11 0x00d8a257 in PR_CEnterMonitor (address=0xa4645c8) at prcmon.c:327
#12 0x033ea179 in nsImapIncomingServer::RemoveConnection (this=0xa4645c8, aImapConnection=0xb585fbb0)
    at nsImapIncomingServer.cpp:648
#13 0x03413fd9 in nsImapProtocol::CloseStreams (this=0xb585fbb0) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x03420dba in nsImapProtocol::TellThreadToDie (this=0xb585fbb0, isSafeToClose=0) at nsImapProtocol.cpp:1040
#15 0x0341c9a3 in nsImapProtocol::CreateNewLineFromSocket (this=0xb585fbb0) at nsImapProtocol.cpp:4333
#16 0x0341ca45 in nsImapProtocol::EstablishServerConnection (this=0xb585fbb0) at nsImapProtocol.cpp:1198
#17 0x03420470 in nsImapProtocol::ProcessCurrentURL (this=0xb585fbb0) at nsImapProtocol.cpp:1311
#18 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xb585fbb0) at nsImapProtocol.cpp:1142
#19 0x03421169 in nsImapProtocol::Run (this=0xb585fbb0) at nsImapProtocol.cpp:933
#20 0x0064a752 in nsThread::Main (arg=0xb58bd308) at ../../dist/include/xpcom/nsCOMPtr.h:848
#21 0x00d9b233 in _pt_root (arg=0xaa2708f8) at ptthread.c:220
#22 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#23 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 3 (Thread -1299891280 (LWP 9052)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xbb3f058, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xbb32258, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xb365098) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xbad4c58, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xaa224340, proxyInfo=0xb140970)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xaa224340, methodIndex=31, methodInfo=0xb49baad8, params=0xb2853170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xaa2fb450, methodIndex=31, info=0xb49baad8, params=0xb2853170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
---Type <return> to continue, or q <return> to quit---
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xaa2466c8) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xaa2466c8) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xaa2466c8) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xaa2faf48) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xaa2c9cd8) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 2 (Thread -1472214096 (LWP 9053)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00730b26 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/libpthread.so.0
#2  0x00d971f2 in PR_WaitCondVar (cvar=0xba30e40, timeout=4294967295) at ptsynch.c:405
#3  0x00d97485 in PR_Wait (mon=0xb2ef600, timeout=4294967295) at ptsynch.c:584
#4  0x00647969 in PL_WaitForEvent (self=0xbcf6370) at plevent.c:808
#5  0x00648a01 in nsEventQueueImpl::WaitForEvent (this=0xad907d8, aResult=0x1) at nsEventQueue.cpp:498
#6  0x0064cda2 in nsProxyObject::PostAndWait (this=0xb4954210, proxyInfo=0xab43b60)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#7  0x0064d114 in nsProxyObject::Post (this=0xb4954210, methodIndex=31, methodInfo=0xb49baad8, params=0xa83fc170,
    interfaceInfo=0xb490e8b0) at nsProxyEvent.cpp:511
#8  0x0064db70 in nsProxyEventObject::CallMethod (this=0xad428a18, methodIndex=31, info=0xb49baad8, params=0xa83fc170)
    at ../../../dist/include/xpcom/nsAutoPtr.h:1040
#9  0x0065c7a8 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
) at xptcstubs_gcc_x86_unix.cpp:100
#10 0x034208ea in nsImapProtocol::ProcessCurrentURL (this=0xb09534c8) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#11 0x03421071 in nsImapProtocol::ImapThreadMainLoop (this=0xb09534c8) at nsImapProtocol.cpp:1142
#12 0x03421169 in nsImapProtocol::Run (this=0xb09534c8) at nsImapProtocol.cpp:933
#13 0x0064a752 in nsThread::Main (arg=0xaf382ac0) at ../../dist/include/xpcom/nsCOMPtr.h:848
#14 0x00d9b233 in _pt_root (arg=0xb494d690) at ptthread.c:220
#15 0x0072e371 in start_thread () from /lib/tls/libpthread.so.0
#16 0x0034dffe in clone () from /lib/tls/libc.so.6

Thread 1 (Thread -1208609088 (LWP 11537)):
#0  0x004b07a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x007331de in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0
#2  0x0072fe50 in _L_mutex_lock_215 () from /lib/tls/libpthread.so.0
#3  0x00000065 in ?? ()
#4  0x00da3464 in ?? () from /usr/lib/thunderbird-1.5.0.8/libnspr4.so
#5  0x09bd98b4 in ?? ()
#6  0xb7f616c0 in ?? ()
#7  0xbfe2233c in ?? ()
#8  0x00d96eaf in PR_Lock (lock=0x7331de) at ptsynch.c:206
#9  0x00d96eaf in PR_Lock (lock=0xb7f616c0) at ptsynch.c:206
#10 0x00d973ed in PR_EnterMonitor (mon=0x9bd98b0) at ptsynch.c:531
#11 0x00d8a257 in PR_CEnterMonitor (address=0xb585fbb0) at prcmon.c:327
#12 0x0340f488 in nsImapProtocol::GetLastActiveTimeStamp (this=0xb585fbb0, aTimeStamp=0xbfe223c0)
    at ../../../dist/include/xpcom/nsAutoLock.h:342
#13 0x033ea8fe in nsImapIncomingServer::ConnectionTimeOut (this=0xa4645c8, aConnection=0xb585fbb0)
    at nsImapIncomingServer.cpp:678
#14 0x033f1574 in nsImapIncomingServer::GetImapConnection (this=0xa4645c8, aEventQueue=0x9c727a0, aImapUrl=0xb09acfe8,
    aImapConnection=0xbfe22530) at ../../../dist/include/xpcom/nsCOMPtr.h:842
#15 0x033f2189 in nsImapIncomingServer::GetImapConnectionAndLoadUrl (this=0xa4645c8, aClientEventQueue=0x9c727a0,
    aImapUrl=0xb09acfe8, aConsumer=0x0) at ../../../dist/include/xpcom/nsCOMPtr.h:1453
#16 0x03429832 in nsImapService::GetImapConnectionAndLoadUrl (this=0xa463ec8, aClientEventQueue=0x9c727a0,
    aImapUrl=0xb09acfe8, aConsumer=0x0, aURL=0xbfe226d4) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#17 0x0342f42a in nsImapService::UpdateFolderStatus (this=0xa463ec8, aClientEventQueue=0x9c727a0, aImapMailFolder=0xa490634,
    aUrlListener=0xa464664, aURL=0xbfe226d4) at ../../../dist/include/xpcom/nsCOMPtr.h:842
#18 0x033fc00a in nsImapMailFolder::UpdateStatus (this=0xa490610, aListener=0xa464664, aMsgWindow=0x0)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#19 0x033f31d5 in nsImapIncomingServer::OnStopRunningUrl (this=0xa4645c8, url=0xba651b4, exitCode=2147500037)
    at ../../../dist/include/xpcom/nsCOMArray.h:169
#20 0x03300e4c in nsUrlListenerManager::BroadcastChange (this=0xbca98c0, aUrl=0xba651b4, notification=nsUrlNotifyStopRunning,
    aErrorCode=2147500037) at ../../../dist/include/xpcom/nsCOMPtr.h:848
#21 0x03300e8a in nsUrlListenerManager::OnStopRunningUrl (this=0xbca98c0, aUrl=0xba651b4, aErrorCode=2147500037)
    at nsUrlListenerManager.cpp:123
#22 0x032f3d63 in nsMsgMailNewsUrl::SetUrlState (this=0xba651b4, aRunningUrl=0, aExitCode=2147500037)
    at ../../../dist/include/xpcom/nsCOMPtr.h:848
#23 0x033fa445 in nsImapMailFolder::SetUrlState (this=0xa490610, aProtocol=0xaa29c4d8, aUrl=0xba651b4, isRunning=0,
    statusCode=2147500037) at nsImapMailFolder.cpp:6229
#24 0x0065bc45 in XPTC_InvokeByIndex () at xptcinvoke_gcc_x86_unix.cpp:51
#25 0x0064ca89 in EventHandler (self=0xadb16c8) at ../../../dist/include/xpcom/nsProxyEvent.h:109
#26 0x006473e3 in PL_HandleEvent (self=0xadb16c8) at plevent.c:688
#27 0x00647a31 in PL_ProcessPendingEvents (self=0x9c727d8) at plevent.c:623
#28 0x00648bd6 in nsEventQueueImpl::ProcessPendingEvents (this=0x9c727a0) at nsEventQueue.cpp:417
#29 0x00c994e4 in event_processor_callback (source=0x9f505e8, condition=G_IO_IN, data=0x9c727a0) at nsAppShell.cpp:67
#30 0x0088d907 in g_vasprintf () from /usr/lib/libglib-2.0.so.0
#31 0x0086974b in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#32 0x0086b1d2 in g_main_context_acquire () from /usr/lib/libglib-2.0.so.0
#33 0x0086b47f in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#34 0x067746c7 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#35 0x00c99a8e in nsAppShell::Run (this=0x9d65bb0) at nsAppShell.cpp:139
#36 0x006f3c68 in nsAppStartup::Run (this=0x9d65b70) at ../../../../dist/include/xpcom/nsCOMPtr.h:848
#37 0x0804f76a in XRE_main (argc=1, argv=0xbfe23054, aAppData=0x8058020) at ../../dist/include/xpcom/nsCOMPtr.h:848
#38 0x0804aded in main (argc=1, argv=0xbfe23054) at nsMailApp.cpp:62
#39 0x0029ade3 in __libc_start_main () from /lib/tls/libc.so.6
#40 0x0804ad45 in _start ()
OS: Mac OS X 10.2 → All
Hardware: Macintosh → All
I've made some fixes for this in 2.0/trunk builds - have you tried a 2.0 beta preview build?
(In reply to comment #8)
> have you tried a 2.0 beta preview build?
> 
No. Is there a place where I could grab an RPM? Bugs 91101, 247293, etc are still unresolved.

I don't know about rpm's - what we have is here:

ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/nightly/latest-mozilla1.8
I experience this or similar behavior still using Thunderbird 2.0.0.4. For some reason, connections hang after a while. At first I thought it might be my router timing-out idle connections until I realized that tb should be re-checking for new email every 3 minutes or so.

Not only does restarting tb fix this problem, but running tcpview, forcing the connections to the remote server to close, and then running a "fetch all mail" fixes this as well (and requires no app restart).

This evidence points to poor handling of connection timeouts and/or failures.

I'm happy to provide technical details if someone can show me what to do.
Aleksey - results of newer version ?

Christopher, are you wireless?  what happens with newer version, eg 2.0.0.9?

Note: reporter's (Joe's) last comment is he can't reproduce
QA Contact: grylchan → networking.imap
Wayne,

My experience has changed somewhat. Now, tb tells me that myt server is not an IMAP one (see bug #399061).

Yes, I am wireless. I experience bug #399061 on tb 2.0.0.9 but haven't noticed any long stalls lately (i.e. this bug).

Thanks for the followup.
(In reply to comment #4)
>     if (TestFlag(IMAP_CONNECTION_IS_OPEN) && m_idle)
>       EndIdle(PR_FALSE);
> 
> this check is apparently not working - we check if the connection is open before
> trying to end the idle. You can turn off the use of the IDLE command in the imap
> advanced server settings. Maybe we don't want to EndIdle in the case of timeout
> in general when "safeToClose" is false.

David, only Aleksey's issue comment 7 remains. But Aleksey's been gone from bz for 11 months
(In reply to comment #12)
> Aleksey - results of newer version ?

(In reply to comment #14)
> But Aleksey's been gone from bz for 11 months

I am still lurking around, but I am unable to answer the "newer version" questions as I gave up on using the "bleeding edge" releases due to mozilla.org is not willing to compile RPMs (see, for example, bug 247293) and my distro (RHEL 5) still being on TBird 1.5...
closing per reporter WFM and based on multiple WFM at version 2. If anyone still sees this problem running version 2 (not sure what the equivalent SM version would be) then please file a new bug.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → WORKSFORME
With 2.0.0.16 I still see hangs if the network connection goes away. Will open a new bug (and mention it here) as soon as I have some time to investigate this.
We're more interested if you can reproduce it with Shredder builds...
Aleksey, please leave a comment on /this bug/ that points to the other one, and vice versa, so we can track their relationship.
Product: Core → MailNews Core
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: