Hi,
Do you have some sort of background job that calls "ns_server
active" (or similar) regularly? That could lead to random crashes.
The description in http://dev.aolserver.com/trac/ticket/152 is
accurate: The code, by design, is not strictly safe as it's assumed
to only be used interactively and occasionally as part of debugging
and performance monitoring/optimization.
To make it safe would require adding mutex locks around areas that are
assumed read-only and/or single-threaded which could possibly lead to
lock contention. I can't say it those assumptions have ever been
proven true or false but that was my thinking when the code was first
written.
-Jim
On May 14, 2009, at 4:16 AM, Sep Ng wrote:
Hi,
I'm trying to debug an AOLserver crash and the point of crash seems to
be AppendConn in NS_GetProcInfo... I will post the stack trace after
just for reference.
Looking through the ticket tracker on AOLserver, I found two tickets
of particular interest:
http://dev.aolserver.com/trac/ticket/325
--> My question with this ticket is was it ever resolved?
and the second ticket:
http://dev.aolserver.com/trac/ticket/152
--> This problem should only happen if the command ns_server was
called in a multi-threaded environment, right?
Here is the call stack trace I'm working with. I'm more interested in
Ticket #325 as it may be related to my problem.
----- Call Stack Trace -----
calling call entry argument values in
hex
location type point (? means dubious
value)
-------------------- -------- --------------------
----------------------------
kpedbg_dmp_stack()+ call B5B81884 B45FFB74 ? 0 ?
219
kpeDbgCrash()+72 call B5B75E14 0 ? 5 ? 0 ?
80BD810 ?
B45FFC08 ?
B45FFBF0 ?
kpeDbgSignalHandler call B5B867B4 0 ? 5 ? B72A331C ?
2 ? 4 ?
()+107 5F ? 4 ? B4600C5D ?
skgesig_sigactionHa call 00000000 B45FFC54 ?
B739FFE0 ?
ndler()+214
gsignal()+71 signal 00000000 6 ? B460110C ?
B460118C ?
abort()+265 call gsignal() 6 ? B460152C ? 0 ?
B7FC1E84 ?
B4601550 ?
B4601564 ?
NsBlockSignals() call B7F749F0 3 ? B7FB9ED5 ? B ?
30 ? 46 ?
B7F565F0 ?
B7FC2420 call 00000000 B ? 33 ? 0 ? 7B ?
7B ? C ?
AppendConn()+117 call B7F74E20 B4601AE8 ? C ?
51C5 ? 0 ? 1 ?
B7E46FF4 ?
NsConnArgProc()+61 call AppendConn() B4601AE8 ?
80B0C1C ?
B7FB51A2 ?
FFFFFFFF ?
228E24D8 ? 0 ?
Ns_GetProcInfo()+16 call 00000000 B4601AE8 ?
CD298C0 ?
1 B4601A28 ?
B7F33C33 ?
B4DF4EA1 ?
B7E46BA0 ?
ThreadArgProc()+43 call B7F74410 B4601AE8 ?
B7F8E9B6 ?
CD298C0 ?
B7F6337C ?
CCF7A20 ?
Ns_ThreadList()+207 call 00000000 B4601AE8 ?
B7F8E9B6 ?
CD298C0 ? 0 ?
4A0935D9 ?
B7FBB174 ?
NsTclInfoObjCmd()+5 call B7F73B30 B4601AE8 ?
B7F8917B ?
46 B7FBC080 ?
B7FB34D3 ? 0 ?
B4601AE4 ?
TclEvalObjvInternal call 00000000 EF0B1C0 ? CE907D0 ?
2 ?
()+819 EC701D8 ?
B304D010 ?
A7DBAE50 ?
TclExecuteByteCode( call _init()+184 CE907D0 ? 2 ?
EC701D8 ? 0 ?
)+10713 0 ? 0 ?
TclCompEvalObj()+15 call TclExecuteByteCode( CE907D0 ? 0 ? 0 ?
0 ?
2 ) B4602924 ? 34ECE ?
TclObjInterpProc()+ call B7EBE8E0 CE907D0 ?
ABF19440 ?
645 120C4660 ? 1 ?
B7F565F0 ?
18 ?
TclEvalObjvInternal call 00000000 ABF78CE8 ?
CE907D0 ? 1 ?
()+819 EC701D4 ?
B7F565F0 ?
A7DBB540 ?
TclExecuteByteCode( call _init()+184 CE907D0 ? 1 ?
EC701D4 ? 0 ?
)+10713 0 ? 0 ?
TclCompEvalObj()+15 call TclExecuteByteCode( CE907D0 ? 3 ? 3 ?
B7F565F0 ?
2 ) B4602924 ? 34EC2 ?
TclObjInterpProc()+ call B7EBE8E0 CE907D0 ?
ABF19320 ?
645 120C4260 ? 1 ?
100 ? 100 ?
TclEvalObjvInternal call 00000000 ABF76E28 ?
CE907D0 ? 2 ?
()+819 EC701CC ?
B7F565F0 ?
A7DBAE50 ?
TclExecuteByteCode( call _init()+184 CE907D0 ? 2 ?
EC701CC ? 0 ?
)+10713 0 ? 0 ?
TclCompEvalObj()+15 call TclExecuteByteCode( CE907D0 ? 0 ?
B7F2F0AB ?
2 ) B7F565F0 ?
A7DB7010 ? 87D6 ?
TclObjInterpProc()+ call B7EBE8E0 CE907D0 ?
ABF19158 ?
645 120C4260 ? 1 ?
CDDA468 ?
CC014B8 ?
TclEvalObjvInternal call 00000000 ABF3E9B0 ?
CE907D0 ? 3 ?
()+819 B460326C ?
A7DB6FC8 ?
EED6930 ?
Tcl_EvalEx()+1037 call _init()+184 CE907D0 ? 3 ?
B460326C ?
EED6908 ? 2D ? 0 ?
Ns_TclEval()+79 call B7F745A0 CE907D0 ? EED6908 ?
2D ? 0 ?
B7FBFC60 ?
B7FBFC60 ?
NsTclThread()+109 call B7F74610 0 ? 805FA80 ?
EED6908 ?
B4603420 ?
B4603330 ?
B46033DC ?
NsThreadMain()+117 call 00000000 EED6900 ?
B7F61CFE ?
B4603BB0 ? 0 ? 0 ?
0 ?
ThreadMain()+29 call B7F5EBC0 EED7480 ?
B7E9EFF4 ?
B46034C8 ?
B7E950BD ?
EED7480 ?
B4603490 ?
start_thread()+109 call 00000000 EED7480 ?
B4603490 ?
B4603490 ?
B4603490 ?
__clone()+94 call 00000000 B4603BB0 ? 0 ? 0 ?
0 ? 0 ?
0 ?
----- End of Call Stack Trace -----
--
AOLserver - http://www.aolserver.com/
To Remove yourself from this list, simply send an email to <lists...@listserv.aol.com
> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the
Subject: field of your email blank.
--
AOLserver - http://www.aolserver.com/
To Remove yourself from this list, simply send an email to
<lists...@listserv.aol.com> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject:
field of your email blank.