Closed Bug 105183 Opened 23 years ago Closed 23 years ago

Trunk crash downloading newsgroup headers [@ nsMsgDatabase::GetThreadContainingMsgHdr]

Categories

(MailNews Core :: Networking: NNTP, defect, P1)

defect

Tracking

(Not tracked)

VERIFIED FIXED
mozilla0.9.6

People

(Reporter: jay, Assigned: sspitzer)

References

Details

(Keywords: crash, topcrash)

Crash Data

Attachments

(1 file)

This is being reported as a topcrasher on the MozillaTrunk with recent builds on
Windows and Linux.  Here is the info from Talkback reports:

nsMsgDatabase::GetThreadContainingMsgHdr   21 
BBID range: 36467244 - 36700512
Min/Max Seconds since last crash: 25 - 128133
Min/Max Runtime: 125 - 131438
Crash data range: 2001-10-09 to 2001-10-14
Build ID range: 2001100711 to 2001101311
Keyword List : mail(4), news(8), 
Stack Trace: 

	 nsMsgDatabase::GetThreadContainingMsgHdr
[d:\builds\seamonkey\mozilla\mailnews\db\msgdb\src\nsMsgDatabase.cpp  line 3394]
	 nsMsgDBView::GetKeyOfFirstMsgInThread
[d:\builds\seamonkey\mozilla\mailnews\base\src\nsMsgDBView.cpp  line 2556]
	 nsMsgDBView::FindKey
[d:\builds\seamonkey\mozilla\mailnews\base\src\nsMsgDBView.cpp  line 2591]
	 nsMsgDBView::RestoreSelection
[d:\builds\seamonkey\mozilla\mailnews\base\src\nsMsgDBView.cpp  line 461]
	 nsMsgDBView::SelectMsgByKey
[d:\builds\seamonkey\mozilla\mailnews\base\src\nsMsgDBView.cpp  line 4533]
	 XPTC_InvokeByIndex
[d:\builds\seamonkey\mozilla\xpcom\reflect\xptcall\src\md\win32\xptcinvoke.cpp 
line 154]
	 XPCWrappedNative::CallMethod
[d:\builds\seamonkey\mozilla\js\src\xpconnect\src\xpcwrappednative.cpp  line 1953]
	 XPC_WN_CallMethod
[d:\builds\seamonkey\mozilla\js\src\xpconnect\src\xpcwrappednativejsops.cpp 
line 1267]
	 js_Invoke
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c  line 811]
	 js_Interpret
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c  line 2733]
	 js_Invoke
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c  line 827]
	 nsXPCWrappedJSClass::CallMethod
[d:\builds\seamonkey\mozilla\js\src\xpconnect\src\xpcwrappedjsclass.cpp  line 1024]
	 nsXPCWrappedJS::CallMethod
[d:\builds\seamonkey\mozilla\js\src\xpconnect\src\xpcwrappedjs.cpp  line 430]
	 PrepareAndDispatch
[d:\builds\seamonkey\mozilla\xpcom\reflect\xptcall\src\md\win32\xptcstubs.cpp 
line 117]
	 SharedStub
[d:\builds\seamonkey\mozilla\xpcom\reflect\xptcall\src\md\win32\xptcstubs.cpp 
line 139]
	 nsMsgMailSession::OnItemEvent
[d:\builds\seamonkey\mozilla\mailnews\base\src\nsMsgMailSession.cpp  line 332]
	 nsMsgFolder::NotifyFolderEvent
[d:\builds\seamonkey\mozilla\mailnews\base\util\nsMsgFolder.cpp  line 2452]
	 nsMsgDBFolder::OnStopRunningUrl
[d:\builds\seamonkey\mozilla\mailnews\base\util\nsMsgDBFolder.cpp  line 1172]
	 nsUrlListenerManager::BroadcastChange
[d:\builds\seamonkey\mozilla\mailnews\base\src\nsUrlListenerManager.cpp  line 99]
	 nsUrlListenerManager::OnStopRunningUrl
[d:\builds\seamonkey\mozilla\mailnews\base\src\nsUrlListenerManager.cpp  line 128]
	 nsMsgMailNewsUrl::SetUrlState
[d:\builds\seamonkey\mozilla\mailnews\base\util\nsMsgMailNewsUrl.cpp  line 131]
	 nsNNTPProtocol::CleanupAfterRunningUrl
[d:\builds\seamonkey\mozilla\mailnews\news\src\nsNNTPProtocol.cpp  line 5358]
	 nsNNTPProtocol::ProcessProtocolState
[d:\builds\seamonkey\mozilla\mailnews\news\src\nsNNTPProtocol.cpp  line 5293]
	 nsMsgProtocol::OnDataAvailable
[d:\builds\seamonkey\mozilla\mailnews\base\util\nsMsgProtocol.cpp  line 263]
	 nsOnDataAvailableEvent::HandleEvent
[d:\builds\seamonkey\mozilla\netwerk\base\src\nsStreamListenerProxy.cpp  line 203]
	 PL_HandleEvent
[d:\builds\seamonkey\mozilla\xpcom\threads\plevent.c  line 591]
	 PL_ProcessPendingEvents
[d:\builds\seamonkey\mozilla\xpcom\threads\plevent.c  line 524]
	 _md_EventReceiverProc
[d:\builds\seamonkey\mozilla\xpcom\threads\plevent.c  line 1072]
	 KERNEL32.DLL + 0x248f7 (0xbff848f7)
	 0x00688b5e
	 0x00058f64
	 0x8bfe3fba
 
 	Source File :
http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/mailnews/db/msgdb/src/nsMsgDatabase.cpp
line : 3394
     (36685647)	Comments: Retreiving newsgroups articles
     (36644755)	Comments: I was trying to add the mozilla rdf newsgroup - had jsut finsished
with the newsgroup wizard and it crashed after I allowed it to download "all"
newsgroup headers. i belive I saw that there were 1600 some headers that were
going to be downloaded
     (36640880)	Comments: Selected a Newsgroup from the sidebar in Mail/News
     (36624935)	URL: news://starnews.sun.com/staroffice.com.betatest.misc
(36624935)
Comments: Selected 'download all headers' (of 509) total after selecting the
"s.c.b.misc" group from the "starnews.sun.com" news server (StarOffice 6 beta
feedback); see http://www.sun.com/staroffice/6.0beta/feedback for the
"Miscellaneous" link
     (36624693)	Comments: trying to connect to news:// at the StarOffice 6 beta site;
clicked on the news group name in the listing of available groups: boom!
     (36620227)	Comments: Using mail
     (36599137)	URL: www.startfrenzy.com
(36599137)
Comments: was trying to set up newsgroups in the email and just clicked to join
the mozilla newsgroup and everything crashed ...
     (36498162)	Comments: tried out new nntp:// function at page for bug on nntp in
bugzilla.  program crash when downloading headers for newsgroup..  (didn't put
in any identification info before downloading headers)
     (36467244)	Comments: in mail & news  while fetching all headers for alt.tv.simpsons
Keywords: crash, topcrash
I saw this today myself, just doing an auto-subscribe as such:
snews://secnews/netscape.champions.  I authenticated with the server, expanded
the twisty, clicked on the newsgroup and crashed.  Nominating. (win32)
Keywords: nsbeta1
Stephend, not sure what you are talking about is this particular crash. But 
anyways, any reproducible steps to share with us?
Hwaara, yes it is exactly the same crash, I got the stack from Talkback.  See my
2001-10-16 20:10 comments for steps to reproduce.
I don't have access to your in-firewall newsgroups, can you please provide a
testcase that is public?
Read the comments from Talkback, or just fiddle around with auto-subscription
schemes.  There is nothing magic about snews://secnews.netscape.com/champions. 
Try schemes like news://news.mozilla.org/netscape.public.test, etc.
I have a (for me) 100% testcase:

1.  Already have netscape.public.test setup on news.mozilla.org.
2.  Close mail.
3.  In the browser's url field, use news://news.mozilla.org/netscape.public.test

This fails in:

{
	if (!result)
		return NS_ERROR_NULL_POINTER;

	*result = nsnull;
	nsMsgKey threadId = nsMsgKey_None;
-->	(void)msgHdr->GetThreadId(&threadId);
	if (threadId != nsMsgKey_None)
		*result = GetThreadForThreadId(threadId);

	return (*result) ? NS_OK : NS_ERROR_FAILURE;
Keywords: nsbeta1nsbeta1+
Priority: -- → P1
Target Milestone: --- → mozilla0.9.6
NTDLL! 77fa018c()
nsDebug::Assertion(const char * 0x058da0e0, const char * 0x058da0d4, const char
* 0x058da094, int 1571) line 290 + 13 bytes
nsDebug::WarnIfFalse(const char * 0x058da0e0, const char * 0x058da0d4, const
char * 0x058da094, int 1571) line 396 + 21 bytes
nsNntpIncomingServer::GroupNotFound(nsNntpIncomingServer * const 0x047b6e88,
nsIMsgWindow * 0x00000000, const char * 0x0481f770, int 1) line 1571 + 32 bytes
nsNNTPProtocol::SendFirstNNTPCommandResponse() line 2170
nsNNTPProtocol::ProcessProtocolState(nsIURI * 0x04c3ee5c, nsIInputStream *
0x04c64500, unsigned int 156, unsigned int 19) line 5042 + 11 bytes
nsMsgProtocol::OnDataAvailable(nsMsgProtocol * const 0x04c3f3bc, nsIRequest *
0x04c64780, nsISupports * 0x04c3ee58, nsIInputStream * 0x04c64500, unsigned int
156, unsigned int 19) line 262 + 32 bytes
nsOnDataAvailableEvent::HandleEvent() line 193 + 70 bytes
nsARequestObserverEvent::HandlePLEvent(PLEvent * 0x04d7ae04) line 80
PL_HandleEvent(PLEvent * 0x04d7ae04) line 590 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x00ca1420) line 520 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x009c0224, unsigned int 49441, unsigned int 0,
long 13243424) line 1071 + 9 bytes
USER32! 77e12e98()
USER32! 77e130e0()
USER32! 77e15824()
nsAppShellService::Run(nsAppShellService * const 0x00d7c958) line 303
main1(int 1, char * * 0x00357b68, nsISupports * 0x00000000) line 1285 + 32 bytes
main(int 1, char * * 0x00357b68) line 1607 + 37 bytes
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77e97d08()
Maybe David could help out with this...
Hardware: PC → All
Stephend, is this still crashing for you?
I have just seen this on FreeBSD4.4, with build ID: 2001102707, while
downloading all ~14000 unread articles on netscape.public.mozilla.wishlist from
news.mozilla.org.
this assertion:

NTDLL! 77fa018c()
nsDebug::Assertion(const char * 0x058da0e0, const char * 0x058da0d4, const char
* 0x058da094, int 1571) line 290 + 13 bytes
nsDebug::WarnIfFalse(const char * 0x058da0e0, const char * 0x058da0d4, const
char * 0x058da094, int 1571) line 396 + 21 bytes
nsNntpIncomingServer::GroupNotFound(nsNntpIncomingServer * const 0x047b6e88,
nsIMsgWindow * 0x00000000, const char * 0x0481f770, int 1) line 1571 + 32 bytes
nsNNTPProtocol::SendFirstNNTPCommandResponse() line 2170
nsNNTPProtocol::ProcessProtocolState(nsIURI * 0x04c3ee5c, nsIInputStream *
0x04c64500, unsigned int 156, unsigned int 19) line 5042 + 11 bytes
nsMsgProtocol::OnDataAvailable(nsMsgProtocol * const 0x04c3f3bc, nsIRequest *
0x04c64780, nsISupports * 0x04c3ee58, nsIInputStream * 0x04c64500, unsigned int
156, unsigned int 19) line 262 + 32 bytes
nsOnDataAvailableEvent::HandleEvent() line 193 + 70 bytes
nsARequestObserverEvent::HandlePLEvent(PLEvent * 0x04d7ae04) line 80
PL_HandleEvent(PLEvent * 0x04d7ae04) line 590 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x00ca1420) line 520 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x009c0224, unsigned int 49441, unsigned int 0,
long 13243424) line 1071 + 9 bytes
USER32! 77e12e98()
USER32! 77e130e0()
USER32! 77e15824()
nsAppShellService::Run(nsAppShellService * const 0x00d7c958) line 303
main1(int 1, char * * 0x00357b68, nsISupports * 0x00000000) line 1285 + 32 bytes
main(int 1, char * * 0x00357b68) line 1607 + 37 bytes
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77e97d08()

is fixed with my patch to http://bugzilla.mozilla.org/show_bug.cgi?id=108256

can you still reproduce this crash?

I've got a bullet proofing patch for the crash in GetThreadContainingMsgHdr() 
that will help us catch it.
Status: NEW → ASSIGNED
bullet proofing checked in.

stephend, can you try again on tomorrow's build?

if you've got a debug build, and you can reproduce it, can you let me come by 
and debug?

I'm not able to reproduce this.
Comment on attachment 56348 [details] [diff] [review]
patch, to prevent crash and to help us track it down.

r=hwaara
Attachment #56348 - Flags: review+
Actually, I was testing hwaara's autosubscribe confirm dialog fix today, so I
dealth with this on the trunk 2001-11-02 builds on mac OS 9.1, windows 2000, and
redhat linux 7.2, without crashing (while dowloading new headers).  I'll
continue checking it, but I used to see this 100% when doing auto-subscribe.
I'm going to claim victory.

when we start getting that assert, I can debug.
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
I've tried my testcase (which failed 100% of the time), and also looked at the
topcrash reports, the last one was on:

 2001103113   MozillaTrunk   Linux 2.4.9   2001-11-06 16:59:51  
nsMsgDatabase::GetThreadContainingMsgHdr() d8914afa

We're fine, all platforms, 2001-11-09 builds.

Verified FIXED.
Status: RESOLVED → VERIFIED
Product: MailNews → Core
Product: Core → MailNews Core
Crash Signature: [@ nsMsgDatabase::GetThreadContainingMsgHdr]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: