View topic - Spring 87 crash


All times are UTC + 1 hour


Post new topic Reply to topic  [ 11 posts ] 
Author Message
 Post subject: Spring 87 crash
PostPosted: 17 Mar 2012, 19:55 

Joined: 13 Aug 2007, 12:19
Crashed mid game, twice. Can someone help me identify what the cause is?

http://pastebin.com/sAa0WiTb
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 17 Mar 2012, 23:15 

Joined: 13 Aug 2007, 12:19
Is more information needed?
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 18 Mar 2012, 08:05 
Evolution RTS Developer
User avatar

Joined: 17 Nov 2005, 02:43
Repeated

[f=0044270] Warning: [Watchdog] Hang detection triggered for Spring 87.0.

You should turn off hang detection. It's a serious pain in the cock.

In springsettings.cfg add: hangtimeout = 0
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 18 Mar 2012, 09:02 

Joined: 13 Aug 2007, 12:19
Was that the cause of the crash? I added it so i guess time will tell. Thanks.
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 19 Mar 2012, 01:10 
Spring Developer

Joined: 16 Dec 2006, 20:59
Some lua gadget/widget is stuck in an endless loop:

https://github.com/spring/spring/tree/8 ... m.cpp#L251 0x009E370D
https://github.com/spring/spring/tree/8 ... m.cpp#L577 0x009E4EA6
https://github.com/spring/spring/tree/8 ... o.cpp#L377 0x009E87C0
https://github.com/spring/spring/tree/8 ... i.cpp#L813 0x009D6A31
https://github.com/spring/spring/tree/8 ... o.cpp#L119 0x009E7F8A
https://github.com/spring/spring/tree/8 ... o.cpp#L464 0x009E8009
https://github.com/spring/spring/tree/8 ... i.cpp#L834 0x009D687A
https://github.com/spring/spring/tree/8 ... e.cpp#L447 0x0051F643
https://github.com/spring/spring/tree/8 ... e.cpp#L476 0x0051F7AD
https://github.com/spring/spring/tree/8 ... dle.h#L110 0x0052A0A2
https://github.com/spring/spring/tree/8 ... r.cpp#L684 0x0089D6E5
https://github.com/spring/spring/tree/8 ... r.cpp#L390 0x004C6634
https://github.com/spring/spring/tree/8 ... ut.cpp#L98 0x008F4D1E
/slave/mingwlibs/include/boost/signals/detail/slot_call_iterator.hpp#L61 0x00D19410
/slave/mingwlibs/include/boost/optional/optional.hpp#L438 0x00C5CE87
https://github.com/spring/spring/tree/8 ... .cpp#L1003 0x0091A324
https://github.com/spring/spring/tree/8 ... in.cpp#L51 0x009013A1
https://github.com/spring/spring/tree/8 ... in.cpp#L65 0x00901904
https://github.com/spring/spring/tree/8 ... n.cpp#L101 0x00901A21
SkirmishAIWrapper.cpp#L0 0x0099D6F9
/root/mingw/mingw32-runtime-3.15.2/build_dir/src/mingwrt-3.15.2-mingw32/crt1.c#L237 0x004010B4
/root/mingw/mingw32-runtime-3.15.2/build_dir/src/mingwrt-3.15.2-mingw32/crt1.c#L271 0x00401128
??#L0 0x758B339A
??#L0 0x776C9EF2
??#L0 0x776C9EC5
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 19 Mar 2012, 01:15 
Spring Developer

Joined: 16 Dec 2006, 20:59
Forboding Angel wrote:
You should turn off hang detection. It's a serious pain in the cock.

In springsettings.cfg add: hangtimeout = 0

You should only do this if you have problems with hang detection spam even though the game did not actually hang. With hang detection disabled, we have no information to help us fix bugs that cause hangs.
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 19 Mar 2012, 08:57 

Joined: 13 Aug 2007, 12:19
zerver wrote:
Some lua gadget/widget is stuck in an endless loop:

https://github.com/spring/spring/tree/8 ... m.cpp#L251 0x009E370D
https://github.com/spring/spring/tree/8 ... m.cpp#L577 0x009E4EA6
https://github.com/spring/spring/tree/8 ... o.cpp#L377 0x009E87C0
https://github.com/spring/spring/tree/8 ... i.cpp#L813 0x009D6A31
https://github.com/spring/spring/tree/8 ... o.cpp#L119 0x009E7F8A
https://github.com/spring/spring/tree/8 ... o.cpp#L464 0x009E8009
https://github.com/spring/spring/tree/8 ... i.cpp#L834 0x009D687A
https://github.com/spring/spring/tree/8 ... e.cpp#L447 0x0051F643
https://github.com/spring/spring/tree/8 ... e.cpp#L476 0x0051F7AD
https://github.com/spring/spring/tree/8 ... dle.h#L110 0x0052A0A2
https://github.com/spring/spring/tree/8 ... r.cpp#L684 0x0089D6E5
https://github.com/spring/spring/tree/8 ... r.cpp#L390 0x004C6634
https://github.com/spring/spring/tree/8 ... ut.cpp#L98 0x008F4D1E
/slave/mingwlibs/include/boost/signals/detail/slot_call_iterator.hpp#L61 0x00D19410
/slave/mingwlibs/include/boost/optional/optional.hpp#L438 0x00C5CE87
https://github.com/spring/spring/tree/8 ... .cpp#L1003 0x0091A324
https://github.com/spring/spring/tree/8 ... in.cpp#L51 0x009013A1
https://github.com/spring/spring/tree/8 ... in.cpp#L65 0x00901904
https://github.com/spring/spring/tree/8 ... n.cpp#L101 0x00901A21
SkirmishAIWrapper.cpp#L0 0x0099D6F9
/root/mingw/mingw32-runtime-3.15.2/build_dir/src/mingwrt-3.15.2-mingw32/crt1.c#L237 0x004010B4
/root/mingw/mingw32-runtime-3.15.2/build_dir/src/mingwrt-3.15.2-mingw32/crt1.c#L271 0x00401128
??#L0 0x758B339A
??#L0 0x776C9EF2
??#L0 0x776C9EC5



What way would you recommend to track down which gadget/widget causes this? Should it give this loop every time it runs or might it need triggers in game?
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 19 Mar 2012, 12:36 
Spring Developer

Joined: 16 Dec 2006, 20:59
If you study the trace above, you can see that it hangs in MouseRelease().

A first step would be to search all widgets gadgets for "MouseRelease" and then maybe add some debug prints Spring.Echo(...) at the start of those to help you find which was the last one that executed before the hang.

In the unlikely event that this still yields nothing, another option would be to temporarily remove/disable the "MouseRelease" code first in all widgets/gadgets just to confirm that it helps and then in one at a time until you have pinpointed the bug.
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 19 Mar 2012, 12:46 

Joined: 13 Aug 2007, 12:19
zerver wrote:
A first step would be to search all widgets gadgets for "MouseRelease" and then maybe add some debug prints Spring.Echo(...) at the start of those to help you find which was the last one that executed before the hang.


I can search all normal widgets in my widget dir for Mouserelease but 'adding debug prints' might be a big over my head. Dan i copy Spring.Echo(...) at the start of the line in which mouserelease is? Or at the start of that section? Should there be something in between the brackets? (...)

zerver wrote:
In the unlikely event that this still yields nothing, another option would be to temporarily remove/disable the "MouseRelease" code first in all widgets/gadgets just to confirm that it helps and then in one at a time until you have pinpointed the bug.


The crash shows up very irregularly (as in, i could play 10 games in a row without problems and the next few games it happens multiple times).
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 19 Mar 2012, 15:08 
Spring Developer

Joined: 31 May 2009, 23:08
you can try to use that widget:

https://github.com/spring/spring/blob/d ... tchdog.lua

this widget decects other widgets, that "hang" and print a stacktrace then.
Top
 Offline Profile  
 
 Post subject: Re: Spring 87 crash
PostPosted: 19 Mar 2012, 16:19 

Joined: 13 Aug 2007, 12:19
Cool, ill try that when I have time.
Top
 Offline Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 11 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Site layout created by Roflcopter et al.