Closed Bug 434559 Opened 16 years ago Closed 8 years ago

"ASSERTION: leaking stream event: 'Not Reached'"

Categories

(Core :: Networking, defect)

x86
macOS
defect
Not set
minor

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: gkw, Unassigned)

References

Details

(Keywords: assertion)

Attachments

(1 file)

I hit this assertion very unreliably, but probably a couple of times a week or so. I'm not sure how to come up with a reduced testcase for this unreliable assertion.

Here's the gdb backtrace:

###!!! ASSERTION: leaking stream event: 'Not Reached', file /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsStreamUtils.cpp, line 163

Program received signal SIGTRAP, Trace/breakpoint trap.
0x900720ea in __kill ()
(gdb) bt
#0  0x900720ea in __kill ()
#1  0x900720dd in kill$UNIX2003 ()
#2  0x900e93f2 in raise ()
#3  0x003b4de3 in Break (aMsg=0xbfffe50c "###!!! ASSERTION: leaking stream event: 'Not Reached', file /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsStreamUtils.cpp, line 163") at /Users/gk/gecko19-cvs/mozilla/xpcom/base/nsDebugImpl.cpp:474
#4  0x003b5118 in NS_DebugBreak_P (aSeverity=1, aStr=0x3f319c "leaking stream event", aExpr=0x3f1f14 "Not Reached", aFile=0x3f30d0 "/Users/gk/gecko19-cvs/mozilla/xpcom/io/nsStreamUtils.cpp", aLine=163) at /Users/gk/gecko19-cvs/mozilla/xpcom/base/nsDebugImpl.cpp:358
#5  0x003744a0 in nsOutputStreamReadyEvent::~nsOutputStreamReadyEvent (this=0x189b0f60) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsStreamUtils.cpp:163
#6  0x0037451d in nsOutputStreamReadyEvent::~nsOutputStreamReadyEvent (this=0x189b0f60) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsStreamUtils.cpp:169
#7  0x00372ee8 in nsOutputStreamReadyEvent::Release (this=0x189b0f60) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsStreamUtils.cpp:202
#8  0x00371b8e in nsCOMPtr<nsIOutputStreamCallback>::assign_assuming_AddRef (this=0xbfffeaec, newPtr=0x0) at nsCOMPtr.h:568
#9  0x00371bc0 in nsCOMPtr<nsIOutputStreamCallback>::assign_with_AddRef (this=0xbfffeaec, rawPtr=0x0) at nsCOMPtr.h:1267
#10 0x00371ee0 in nsCOMPtr<nsIOutputStreamCallback>::operator= (this=0xbfffeaec, rhs=0x0) at nsCOMPtr.h:713
#11 0x0036fc58 in nsPipeEvents::~nsPipeEvents (this=0xbfffeae0) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsPipe3.cpp:618
#12 0x0036fcbb in nsPipeEvents::~nsPipeEvents (this=0xbfffeae0) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsPipe3.cpp:621
#13 0x0037016f in nsPipe::OnPipeException (this=0x1c9c3e70, reason=2147500037, outputOnly=0) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsPipe3.cpp:600
#14 0x00370253 in nsPipeInputStream::CloseWithStatus (this=0x1c9c3e7c, reason=2147500037) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsPipe3.cpp:728
#15 0x012ddac1 in nsInputStreamPump::Cancel (this=0x1c518910, status=2147500037) at /Users/gk/gecko19-cvs/mozilla/netwerk/base/src/nsInputStreamPump.cpp:215
#16 0x013a9e73 in nsHttpChannel::Cancel (this=0x141eab10, status=2147500037) at /Users/gk/gecko19-cvs/mozilla/netwerk/protocol/http/src/nsHttpChannel.cpp:3425
#17 0x1b44ed4f in nsPluginStreamListenerPeer::OnDataAvailable (this=0x1b098480, request=0x141eab40, aContext=0x0, aIStream=0x16800ea0, sourceOffset=6228118, aLength=65536) at /Users/gk/gecko19-cvs/mozilla/modules/plugin/base/src/nsPluginHostImpl.cpp:2307
#18 0x01310dec in nsStreamListenerTee::OnDataAvailable (this=0x16819790, request=0x141eab40, context=0x0, input=0x1c9c3e7c, offset=6228118, count=65536) at /Users/gk/gecko19-cvs/mozilla/netwerk/base/src/nsStreamListenerTee.cpp:97
#19 0x013aa210 in nsHttpChannel::OnDataAvailable (this=0x141eab10, request=0x1c518910, ctxt=0x0, input=0x1c9c3e7c, offset=6228118, count=65536) at /Users/gk/gecko19-cvs/mozilla/netwerk/protocol/http/src/nsHttpChannel.cpp:4522
#20 0x012dddef in nsInputStreamPump::OnStateTransfer (this=0x1c518910) at /Users/gk/gecko19-cvs/mozilla/netwerk/base/src/nsInputStreamPump.cpp:508
#21 0x012de8f8 in nsInputStreamPump::OnInputStreamReady (this=0x1c518910, stream=0x1c9c3e7c) at /Users/gk/gecko19-cvs/mozilla/netwerk/base/src/nsInputStreamPump.cpp:398
#22 0x00373bba in nsInputStreamReadyEvent::Run (this=0x189b8320) at /Users/gk/gecko19-cvs/mozilla/xpcom/io/nsStreamUtils.cpp:111
#23 0x003a5dbe in nsThread::ProcessNextEvent (this=0x60f100, mayWait=1, result=0xbfffef2c) at /Users/gk/gecko19-cvs/mozilla/xpcom/threads/nsThread.cpp:510
#24 0x00330d76 in NS_ProcessNextEvent_P (thread=0x60f100, mayWait=1) at nsThreadUtils.cpp:227
#25 0x003a6455 in nsThread::Shutdown (this=0x61e760) at /Users/gk/gecko19-cvs/mozilla/xpcom/threads/nsThread.cpp:465
#26 0x0130d636 in nsSocketTransportService::Shutdown (this=0x844c00) at /Users/gk/gecko19-cvs/mozilla/netwerk/base/src/nsSocketTransportService2.cpp:445
#27 0x012e309f in nsIOService::SetOffline (this=0x61e4b0, offline=1) at /Users/gk/gecko19-cvs/mozilla/netwerk/base/src/nsIOService.cpp:617
#28 0x012e4e17 in nsIOService::Observe (this=0x61e4b0, subject=0x1acf52e0, topic=0x13f787 "profile-change-net-teardown", data=0x153b40) at /Users/gk/gecko19-cvs/mozilla/netwerk/base/src/nsIOService.cpp:774
#29 0x00346add in nsObserverList::NotifyObservers (this=0xa55ca4, aSubject=0x1acf52e0, aTopic=0x13f787 "profile-change-net-teardown", someData=0x153b40) at /Users/gk/gecko19-cvs/mozilla/xpcom/ds/nsObserverList.cpp:128
#30 0x0034812c in nsObserverService::NotifyObservers (this=0x61eec0, aSubject=0x1acf52e0, aTopic=0x13f787 "profile-change-net-teardown", someData=0x153b40) at /Users/gk/gecko19-cvs/mozilla/xpcom/ds/nsObserverService.cpp:181
#31 0x0010346a in nsXREDirProvider::DoShutdown (this=0xbffff47c) at /Users/gk/gecko19-cvs/mozilla/toolkit/xre/nsXREDirProvider.cpp:837
#32 0x000ecd4f in ScopedXPCOMStartup::~ScopedXPCOMStartup (this=0xbffff51c) at /Users/gk/gecko19-cvs/mozilla/toolkit/xre/nsAppRunner.cpp:905
#33 0x000ecdaf in ScopedXPCOMStartup::~ScopedXPCOMStartup (this=0xbffff51c) at /Users/gk/gecko19-cvs/mozilla/toolkit/xre/nsAppRunner.cpp:912
#34 0x000f4619 in XRE_main (argc=2, argv=0xbffff81c, aAppData=0x60df10) at /Users/gk/gecko19-cvs/mozilla/toolkit/xre/nsAppRunner.cpp:3211
#35 0x000026d3 in main (argc=2, argv=0xbffff81c) at /Users/gk/gecko19-cvs/mozilla/browser/app/nsBrowserApp.cpp:158
(gdb)
This is the full |bt full| trace.
Note, i have hit this Assertion during Automated Global Topsite Tests and got a Memory Leak Report (Bug 467782)
Note that the code comment says that this can happen if the target thread is dead and that it's better to leak than crash in that case...
I do assume people here see the "PostEvent failed" warning right before the assert, right?
Depends on: 224783
When I hit this assertion, I do see the "PostEvent failed" warning right before it.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: